about summary refs log tree commit diff
path: root/pkgs/applications
diff options
context:
space:
mode:
Diffstat (limited to 'pkgs/applications')
-rw-r--r--pkgs/applications/accessibility/contrast/default.nix9
-rw-r--r--pkgs/applications/accessibility/dasher/default.nix2
-rw-r--r--pkgs/applications/accessibility/mousetweaks/default.nix2
-rw-r--r--pkgs/applications/audio/AMB-plugins/default.nix2
-rw-r--r--pkgs/applications/audio/FIL-plugins/default.nix2
-rw-r--r--pkgs/applications/audio/MMA/default.nix7
-rw-r--r--pkgs/applications/audio/a2jmidid/default.nix4
-rw-r--r--pkgs/applications/audio/aacgain/default.nix2
-rw-r--r--pkgs/applications/audio/abcde/default.nix2
-rw-r--r--pkgs/applications/audio/aeolus/default.nix6
-rw-r--r--pkgs/applications/audio/airwave/default.nix2
-rw-r--r--pkgs/applications/audio/aj-snapshot/default.nix2
-rw-r--r--pkgs/applications/audio/amarok/default.nix2
-rw-r--r--pkgs/applications/audio/ams/default.nix48
-rw-r--r--pkgs/applications/audio/ardour/default.nix164
-rw-r--r--pkgs/applications/audio/ario/default.nix2
-rw-r--r--pkgs/applications/audio/artyFX/default.nix2
-rw-r--r--pkgs/applications/audio/asunder/default.nix2
-rw-r--r--pkgs/applications/audio/aucatctl/default.nix37
-rw-r--r--pkgs/applications/audio/audacious/default.nix2
-rw-r--r--pkgs/applications/audio/audacious/qt-5.nix2
-rw-r--r--pkgs/applications/audio/audacity/default.nix2
-rw-r--r--pkgs/applications/audio/audio-recorder/default.nix2
-rw-r--r--pkgs/applications/audio/aumix/default.nix2
-rw-r--r--pkgs/applications/audio/avldrums-lv2/default.nix29
-rw-r--r--pkgs/applications/audio/axoloti/default.nix2
-rw-r--r--pkgs/applications/audio/axoloti/dfu-util.nix2
-rw-r--r--pkgs/applications/audio/axoloti/libusb1.nix2
-rw-r--r--pkgs/applications/audio/baudline/default.nix2
-rw-r--r--pkgs/applications/audio/beast/default.nix38
-rw-r--r--pkgs/applications/audio/bitmeter/default.nix4
-rw-r--r--pkgs/applications/audio/bitwig-studio/bitwig-studio1.nix2
-rw-r--r--pkgs/applications/audio/bristol/default.nix2
-rw-r--r--pkgs/applications/audio/bs1770gain/default.nix2
-rw-r--r--pkgs/applications/audio/bsequencer/default.nix6
-rw-r--r--pkgs/applications/audio/bshapr/default.nix6
-rw-r--r--pkgs/applications/audio/bslizr/default.nix6
-rw-r--r--pkgs/applications/audio/cadence/default.nix43
-rw-r--r--pkgs/applications/audio/calf/default.nix2
-rw-r--r--pkgs/applications/audio/cantata/default.nix15
-rw-r--r--pkgs/applications/audio/caps/default.nix2
-rw-r--r--pkgs/applications/audio/carla/default.nix6
-rw-r--r--pkgs/applications/audio/caudec/default.nix2
-rw-r--r--pkgs/applications/audio/cava/default.nix2
-rw-r--r--pkgs/applications/audio/cd-discid/default.nix2
-rw-r--r--pkgs/applications/audio/cdparanoia/default.nix2
-rw-r--r--pkgs/applications/audio/cheesecutter/0001-fix-impure-build-date-display.patch26
-rw-r--r--pkgs/applications/audio/cheesecutter/default.nix48
-rw-r--r--pkgs/applications/audio/chuck/default.nix6
-rw-r--r--pkgs/applications/audio/clementine/default.nix6
-rw-r--r--pkgs/applications/audio/clerk/default.nix2
-rw-r--r--pkgs/applications/audio/cmt/default.nix33
-rw-r--r--pkgs/applications/audio/cmus/default.nix2
-rw-r--r--pkgs/applications/audio/cmusfm/default.nix2
-rw-r--r--pkgs/applications/audio/cozy-audiobooks/default.nix2
-rw-r--r--pkgs/applications/audio/crip/default.nix2
-rw-r--r--pkgs/applications/audio/csa/default.nix2
-rw-r--r--pkgs/applications/audio/csound/csound-qt/default.nix2
-rw-r--r--pkgs/applications/audio/csound/default.nix2
-rw-r--r--pkgs/applications/audio/deadbeef/default.nix6
-rw-r--r--pkgs/applications/audio/deadbeef/fix-wildmidi.patch19
-rw-r--r--pkgs/applications/audio/deadbeef/plugins/headerbar-gtk3.nix2
-rw-r--r--pkgs/applications/audio/deadbeef/plugins/infobar.nix2
-rw-r--r--pkgs/applications/audio/deadbeef/plugins/mpris2.nix2
-rw-r--r--pkgs/applications/audio/denemo/default.nix2
-rw-r--r--pkgs/applications/audio/dfasma/default.nix6
-rw-r--r--pkgs/applications/audio/dirt/default.nix2
-rw-r--r--pkgs/applications/audio/distrho/default.nix2
-rw-r--r--pkgs/applications/audio/dr14_tmeter/default.nix2
-rw-r--r--pkgs/applications/audio/dragonfly-reverb/default.nix2
-rw-r--r--pkgs/applications/audio/drumgizmo/default.nix2
-rw-r--r--pkgs/applications/audio/drumkv1/default.nix6
-rw-r--r--pkgs/applications/audio/easytag/default.nix2
-rw-r--r--pkgs/applications/audio/ecasound/default.nix2
-rw-r--r--pkgs/applications/audio/eflite/default.nix2
-rw-r--r--pkgs/applications/audio/elisa/default.nix37
-rw-r--r--pkgs/applications/audio/ensemble-chorus/default.nix2
-rw-r--r--pkgs/applications/audio/eq10q/default.nix4
-rw-r--r--pkgs/applications/audio/espeak/default.nix2
-rw-r--r--pkgs/applications/audio/espeak/edit.nix2
-rw-r--r--pkgs/applications/audio/eteroj.lv2/default.nix2
-rw-r--r--pkgs/applications/audio/faust/faust1.nix4
-rw-r--r--pkgs/applications/audio/faust/faust2.nix10
-rw-r--r--pkgs/applications/audio/faust/faust2jack.nix4
-rw-r--r--pkgs/applications/audio/faust/faust2jaqt.nix6
-rw-r--r--pkgs/applications/audio/faust/faust2lv2.nix3
-rw-r--r--pkgs/applications/audio/faust/faustlive.nix2
-rw-r--r--pkgs/applications/audio/flac/default.nix2
-rw-r--r--pkgs/applications/audio/flac123/default.nix2
-rw-r--r--pkgs/applications/audio/flacon/default.nix2
-rw-r--r--pkgs/applications/audio/fluidsynth/default.nix2
-rw-r--r--pkgs/applications/audio/fmit/default.nix2
-rw-r--r--pkgs/applications/audio/fmsynth/default.nix2
-rw-r--r--pkgs/applications/audio/fomp/default.nix2
-rw-r--r--pkgs/applications/audio/foo-yc20/default.nix2
-rw-r--r--pkgs/applications/audio/freewheeling/default.nix2
-rw-r--r--pkgs/applications/audio/ft2-clone/default.nix30
-rw-r--r--pkgs/applications/audio/game-music-emu/default.nix2
-rw-r--r--pkgs/applications/audio/gbsplay/default.nix6
-rw-r--r--pkgs/applications/audio/gigedit/default.nix2
-rw-r--r--pkgs/applications/audio/gjay/default.nix2
-rw-r--r--pkgs/applications/audio/gmpc/default.nix4
-rw-r--r--pkgs/applications/audio/gmu/default.nix2
-rw-r--r--pkgs/applications/audio/gnome-podcasts/default.nix6
-rw-r--r--pkgs/applications/audio/google-play-music-desktop-player/default.nix2
-rw-r--r--pkgs/applications/audio/gpodder/default.nix6
-rw-r--r--pkgs/applications/audio/gradio/default.nix2
-rw-r--r--pkgs/applications/audio/grandorgue/default.nix32
-rw-r--r--pkgs/applications/audio/gtklick/default.nix2
-rw-r--r--pkgs/applications/audio/gtkpod/default.nix2
-rw-r--r--pkgs/applications/audio/guitarix/default.nix8
-rw-r--r--pkgs/applications/audio/gxmatcheq-lv2/default.nix2
-rw-r--r--pkgs/applications/audio/gxplugins-lv2/default.nix2
-rw-r--r--pkgs/applications/audio/helio-workstation/default.nix2
-rw-r--r--pkgs/applications/audio/helm/default.nix2
-rw-r--r--pkgs/applications/audio/hybridreverb2/default.nix2
-rw-r--r--pkgs/applications/audio/hydrogen/default.nix11
-rw-r--r--pkgs/applications/audio/hydrogen/unstable.nix34
-rw-r--r--pkgs/applications/audio/i-score/default.nix2
-rw-r--r--pkgs/applications/audio/iannix/default.nix6
-rw-r--r--pkgs/applications/audio/id3v2/default.nix2
-rw-r--r--pkgs/applications/audio/infamousPlugins/default.nix2
-rw-r--r--pkgs/applications/audio/ingen/default.nix2
-rw-r--r--pkgs/applications/audio/ir.lv2/default.nix2
-rw-r--r--pkgs/applications/audio/jaaa/default.nix2
-rw-r--r--pkgs/applications/audio/jack-capture/default.nix2
-rw-r--r--pkgs/applications/audio/jack-oscrolloscope/default.nix2
-rw-r--r--pkgs/applications/audio/jack-rack/default.nix6
-rw-r--r--pkgs/applications/audio/jackmeter/default.nix2
-rw-r--r--pkgs/applications/audio/jackmix/default.nix7
-rw-r--r--pkgs/applications/audio/jalv/default.nix2
-rw-r--r--pkgs/applications/audio/jamin/default.nix4
-rw-r--r--pkgs/applications/audio/japa/default.nix2
-rw-r--r--pkgs/applications/audio/keyfinder/default.nix2
-rw-r--r--pkgs/applications/audio/kid3/default.nix2
-rw-r--r--pkgs/applications/audio/klick/default.nix2
-rw-r--r--pkgs/applications/audio/ladspa-plugins/default.nix2
-rw-r--r--pkgs/applications/audio/ladspa-sdk/default.nix2
-rw-r--r--pkgs/applications/audio/ladspa-sdk/ladspah.nix2
-rw-r--r--pkgs/applications/audio/lash/default.nix2
-rw-r--r--pkgs/applications/audio/lastfmsubmitd/default.nix2
-rw-r--r--pkgs/applications/audio/lingot/default.nix42
-rw-r--r--pkgs/applications/audio/linuxband/default.nix2
-rw-r--r--pkgs/applications/audio/linuxsampler/default.nix2
-rw-r--r--pkgs/applications/audio/lmms/default.nix2
-rw-r--r--pkgs/applications/audio/lollypop/default.nix6
-rw-r--r--pkgs/applications/audio/lsp-plugins/default.nix7
-rw-r--r--pkgs/applications/audio/luppp/default.nix2
-rw-r--r--pkgs/applications/audio/lv2bm/default.nix2
-rw-r--r--pkgs/applications/audio/magnetophonDSP/CharacterCompressor/default.nix2
-rw-r--r--pkgs/applications/audio/magnetophonDSP/CompBus/default.nix2
-rw-r--r--pkgs/applications/audio/magnetophonDSP/ConstantDetuneChorus/default.nix2
-rw-r--r--pkgs/applications/audio/magnetophonDSP/LazyLimiter/default.nix2
-rw-r--r--pkgs/applications/audio/magnetophonDSP/MBdistortion/default.nix2
-rw-r--r--pkgs/applications/audio/magnetophonDSP/RhythmDelay/default.nix2
-rw-r--r--pkgs/applications/audio/magnetophonDSP/VoiceOfFaust/default.nix2
-rw-r--r--pkgs/applications/audio/magnetophonDSP/faustCompressors/default.nix4
-rw-r--r--pkgs/applications/audio/magnetophonDSP/pluginUtils/default.nix2
-rw-r--r--pkgs/applications/audio/magnetophonDSP/shelfMultiBand/default.nix2
-rw-r--r--pkgs/applications/audio/mda-lv2/default.nix2
-rw-r--r--pkgs/applications/audio/meterbridge/default.nix2
-rw-r--r--pkgs/applications/audio/meters_lv2/default.nix2
-rw-r--r--pkgs/applications/audio/mhwaveedit/default.nix2
-rw-r--r--pkgs/applications/audio/mid2key/default.nix2
-rw-r--r--pkgs/applications/audio/midas/m32edit.nix2
-rw-r--r--pkgs/applications/audio/midas/x32edit.nix2
-rw-r--r--pkgs/applications/audio/midisheetmusic/default.nix2
-rw-r--r--pkgs/applications/audio/mikmod/default.nix2
-rw-r--r--pkgs/applications/audio/milkytracker/default.nix2
-rw-r--r--pkgs/applications/audio/mimic/default.nix2
-rw-r--r--pkgs/applications/audio/mimms/default.nix2
-rw-r--r--pkgs/applications/audio/mixxx/default.nix22
-rw-r--r--pkgs/applications/audio/moc/default.nix2
-rw-r--r--pkgs/applications/audio/mod-distortion/default.nix2
-rw-r--r--pkgs/applications/audio/mopidy/default.nix81
-rw-r--r--pkgs/applications/audio/mopidy/gmusic.nix2
-rw-r--r--pkgs/applications/audio/mopidy/iris.nix6
-rw-r--r--pkgs/applications/audio/mopidy/local-images.nix2
-rw-r--r--pkgs/applications/audio/mopidy/local-sqlite.nix2
-rw-r--r--pkgs/applications/audio/mopidy/moped.nix2
-rw-r--r--pkgs/applications/audio/mopidy/mopidy.nix44
-rw-r--r--pkgs/applications/audio/mopidy/mopify.nix2
-rw-r--r--pkgs/applications/audio/mopidy/mpd.nix24
-rw-r--r--pkgs/applications/audio/mopidy/spotify.nix8
-rw-r--r--pkgs/applications/audio/mp3blaster/default.nix2
-rw-r--r--pkgs/applications/audio/mp3gain/default.nix2
-rw-r--r--pkgs/applications/audio/mp3info/default.nix2
-rw-r--r--pkgs/applications/audio/mp3splt/default.nix2
-rw-r--r--pkgs/applications/audio/mp3val/default.nix2
-rw-r--r--pkgs/applications/audio/mpc/default.nix2
-rw-r--r--pkgs/applications/audio/mpc123/default.nix2
-rw-r--r--pkgs/applications/audio/mpg123/default.nix2
-rw-r--r--pkgs/applications/audio/mpg321/default.nix2
-rw-r--r--pkgs/applications/audio/mup/default.nix41
-rw-r--r--pkgs/applications/audio/mup/ghostscript-permit-file-write.patch5
-rw-r--r--pkgs/applications/audio/muse/default.nix81
-rw-r--r--pkgs/applications/audio/muse/fix-parallel-building.patch93
-rw-r--r--pkgs/applications/audio/musescore/darwin.nix4
-rw-r--r--pkgs/applications/audio/musescore/default.nix10
-rw-r--r--pkgs/applications/audio/musescore/remove_qtwebengine_install_hack.patch16
-rw-r--r--pkgs/applications/audio/musikcube/default.nix56
-rw-r--r--pkgs/applications/audio/musikcube/dont-strip.patch14
-rw-r--r--pkgs/applications/audio/musly/default.nix2
-rw-r--r--pkgs/applications/audio/ncmpc/default.nix6
-rw-r--r--pkgs/applications/audio/ncmpcpp/default.nix2
-rw-r--r--pkgs/applications/audio/ncpamixer/default.nix2
-rw-r--r--pkgs/applications/audio/ncspot/default.nix13
-rw-r--r--pkgs/applications/audio/netease-cloud-music/default.nix3
-rw-r--r--pkgs/applications/audio/ninjas2/default.nix39
-rw-r--r--pkgs/applications/audio/noise-repellent/default.nix2
-rw-r--r--pkgs/applications/audio/non/default.nix6
-rw-r--r--pkgs/applications/audio/nootka/default.nix31
-rw-r--r--pkgs/applications/audio/nootka/unstable.nix33
-rw-r--r--pkgs/applications/audio/normalize/default.nix2
-rw-r--r--pkgs/applications/audio/nova-filters/default.nix4
-rw-r--r--pkgs/applications/audio/openmpt123/default.nix6
-rw-r--r--pkgs/applications/audio/opus-tools/default.nix2
-rw-r--r--pkgs/applications/audio/opusfile/default.nix2
-rw-r--r--pkgs/applications/audio/orca-c/default.nix31
-rw-r--r--pkgs/applications/audio/padthv1/default.nix6
-rw-r--r--pkgs/applications/audio/pamix/default.nix2
-rw-r--r--pkgs/applications/audio/pamixer/default.nix2
-rw-r--r--pkgs/applications/audio/paprefs/default.nix2
-rw-r--r--pkgs/applications/audio/parlatype/default.nix6
-rw-r--r--pkgs/applications/audio/patchage/default.nix4
-rw-r--r--pkgs/applications/audio/paulstretch/default.nix2
-rw-r--r--pkgs/applications/audio/pavucontrol/default.nix2
-rw-r--r--pkgs/applications/audio/pd-plugins/cyclone/default.nix2
-rw-r--r--pkgs/applications/audio/pd-plugins/helmholtz/default.nix2
-rw-r--r--pkgs/applications/audio/pd-plugins/maxlib/default.nix2
-rw-r--r--pkgs/applications/audio/pd-plugins/mrpeach/default.nix2
-rw-r--r--pkgs/applications/audio/pd-plugins/puremapping/default.nix2
-rw-r--r--pkgs/applications/audio/pd-plugins/timbreid/default.nix2
-rw-r--r--pkgs/applications/audio/pd-plugins/zexy/default.nix2
-rw-r--r--pkgs/applications/audio/petrifoo/default.nix2
-rw-r--r--pkgs/applications/audio/pianobar/default.nix4
-rw-r--r--pkgs/applications/audio/pianobooster/default.nix40
-rw-r--r--pkgs/applications/audio/pianobooster/pianobooster-0.6.4b-cmake-gcc4.7.patch11
-rw-r--r--pkgs/applications/audio/pianobooster/pianobooster-0.6.4b-cmake.patch44
-rw-r--r--pkgs/applications/audio/picard/default.nix33
-rw-r--r--pkgs/applications/audio/pithos/default.nix2
-rw-r--r--pkgs/applications/audio/playbar2/default.nix2
-rw-r--r--pkgs/applications/audio/plugin-torture/default.nix2
-rw-r--r--pkgs/applications/audio/pmidi/default.nix2
-rw-r--r--pkgs/applications/audio/polyphone/default.nix49
-rw-r--r--pkgs/applications/audio/ponymix/default.nix2
-rw-r--r--pkgs/applications/audio/praat/default.nix2
-rw-r--r--pkgs/applications/audio/projectm/default.nix4
-rw-r--r--pkgs/applications/audio/pt2-clone/default.nix30
-rw-r--r--pkgs/applications/audio/puddletag/default.nix2
-rw-r--r--pkgs/applications/audio/pulseaudio-ctl/default.nix2
-rw-r--r--pkgs/applications/audio/pulseaudio-dlna/zeroconf.nix2
-rw-r--r--pkgs/applications/audio/pulseaudio-modules-bt/default.nix2
-rw-r--r--pkgs/applications/audio/pulseeffects/default.nix11
-rw-r--r--pkgs/applications/audio/puredata/default.nix6
-rw-r--r--pkgs/applications/audio/qjackctl/default.nix6
-rw-r--r--pkgs/applications/audio/qmidiarp/default.nix49
-rw-r--r--pkgs/applications/audio/qmidinet/default.nix6
-rw-r--r--pkgs/applications/audio/qmmp/default.nix8
-rw-r--r--pkgs/applications/audio/qsampler/default.nix2
-rw-r--r--pkgs/applications/audio/qsynth/default.nix6
-rw-r--r--pkgs/applications/audio/qtractor/default.nix8
-rw-r--r--pkgs/applications/audio/qtscrobbler/default.nix2
-rw-r--r--pkgs/applications/audio/quodlibet/default.nix2
-rw-r--r--pkgs/applications/audio/radiotray-ng/default.nix2
-rw-r--r--pkgs/applications/audio/rakarrack/default.nix2
-rw-r--r--pkgs/applications/audio/reaper/default.nix2
-rw-r--r--pkgs/applications/audio/renoise/default.nix2
-rw-r--r--pkgs/applications/audio/rhvoice/default.nix4
-rw-r--r--pkgs/applications/audio/rhythmbox/default.nix2
-rw-r--r--pkgs/applications/audio/rkrlv2/default.nix2
-rw-r--r--pkgs/applications/audio/rofi-mpd/default.nix4
-rw-r--r--pkgs/applications/audio/rosegarden/default.nix6
-rw-r--r--pkgs/applications/audio/samplv1/default.nix6
-rw-r--r--pkgs/applications/audio/schismtracker/default.nix31
-rw-r--r--pkgs/applications/audio/seq24/default.nix2
-rw-r--r--pkgs/applications/audio/sfxr-qt/default.nix7
-rw-r--r--pkgs/applications/audio/shntool/default.nix4
-rw-r--r--pkgs/applications/audio/shortwave/default.nix87
-rw-r--r--pkgs/applications/audio/sidplayfp/default.nix2
-rw-r--r--pkgs/applications/audio/sisco.lv2/default.nix2
-rw-r--r--pkgs/applications/audio/snapcast/default.nix2
-rw-r--r--pkgs/applications/audio/snd/default.nix6
-rw-r--r--pkgs/applications/audio/sndpeek/default.nix2
-rw-r--r--pkgs/applications/audio/sonata/default.nix2
-rw-r--r--pkgs/applications/audio/sonic-lineup/default.nix10
-rw-r--r--pkgs/applications/audio/sonic-visualiser/default.nix10
-rw-r--r--pkgs/applications/audio/sooperlooper/default.nix2
-rw-r--r--pkgs/applications/audio/sorcer/default.nix2
-rw-r--r--pkgs/applications/audio/sound-juicer/default.nix3
-rw-r--r--pkgs/applications/audio/soundscape-renderer/default.nix4
-rw-r--r--pkgs/applications/audio/soundtracker/default.nix51
-rw-r--r--pkgs/applications/audio/spectmorph/default.nix2
-rw-r--r--pkgs/applications/audio/spectrojack/default.nix2
-rw-r--r--pkgs/applications/audio/speech-denoiser/default.nix2
-rw-r--r--pkgs/applications/audio/spek/default.nix2
-rw-r--r--pkgs/applications/audio/split2flac/default.nix2
-rw-r--r--pkgs/applications/audio/spotify-tui/default.nix14
-rw-r--r--pkgs/applications/audio/spotify/default.nix10
-rw-r--r--pkgs/applications/audio/spotifyd/default.nix8
-rw-r--r--pkgs/applications/audio/spotifywm/default.nix2
-rw-r--r--pkgs/applications/audio/squeezelite/default.nix2
-rw-r--r--pkgs/applications/audio/squishyball/default.nix2
-rw-r--r--pkgs/applications/audio/ssrc/default.nix2
-rw-r--r--pkgs/applications/audio/stone-phaser/default.nix2
-rw-r--r--pkgs/applications/audio/strawberry/default.nix4
-rw-r--r--pkgs/applications/audio/streamripper/default.nix2
-rw-r--r--pkgs/applications/audio/sunvox/default.nix4
-rw-r--r--pkgs/applications/audio/svox/default.nix2
-rw-r--r--pkgs/applications/audio/swh-lv2/default.nix2
-rw-r--r--pkgs/applications/audio/synthv1/default.nix6
-rw-r--r--pkgs/applications/audio/tambura/default.nix2
-rw-r--r--pkgs/applications/audio/tetraproc/default.nix2
-rw-r--r--pkgs/applications/audio/timemachine/default.nix2
-rw-r--r--pkgs/applications/audio/tony/default.nix37
-rw-r--r--pkgs/applications/audio/transcode/default.nix2
-rw-r--r--pkgs/applications/audio/transcribe/default.nix2
-rw-r--r--pkgs/applications/audio/traverso/default.nix8
-rw-r--r--pkgs/applications/audio/tree-from-tags/Gemfile.lock2
-rw-r--r--pkgs/applications/audio/tree-from-tags/default.nix2
-rw-r--r--pkgs/applications/audio/uade123/default.nix2
-rw-r--r--pkgs/applications/audio/vcv-rack/default.nix2
-rw-r--r--pkgs/applications/audio/vimpc/default.nix2
-rw-r--r--pkgs/applications/audio/vkeybd/default.nix2
-rw-r--r--pkgs/applications/audio/vocal/default.nix4
-rw-r--r--pkgs/applications/audio/vorbis-tools/default.nix8
-rw-r--r--pkgs/applications/audio/waon/default.nix2
-rw-r--r--pkgs/applications/audio/wavegain/default.nix2
-rw-r--r--pkgs/applications/audio/whipper/default.nix2
-rw-r--r--pkgs/applications/audio/wolf-shaper/default.nix2
-rw-r--r--pkgs/applications/audio/x42-avldrums/default.nix31
-rw-r--r--pkgs/applications/audio/x42-gmsynth/default.nix30
-rw-r--r--pkgs/applications/audio/x42-plugins/default.nix10
-rw-r--r--pkgs/applications/audio/yasr/default.nix2
-rw-r--r--pkgs/applications/audio/ympd/default.nix2
-rw-r--r--pkgs/applications/audio/yoshimi/default.nix2
-rw-r--r--pkgs/applications/audio/zam-plugins/default.nix8
-rw-r--r--pkgs/applications/audio/zita-ajbridge/default.nix31
-rw-r--r--pkgs/applications/audio/zita-at1/default.nix36
-rw-r--r--pkgs/applications/audio/zita-njbridge/default.nix2
-rw-r--r--pkgs/applications/audio/zynaddsubfx/default.nix2
-rw-r--r--pkgs/applications/backup/areca/default.nix2
-rw-r--r--pkgs/applications/backup/vorta/default.nix42
-rw-r--r--pkgs/applications/blockchains/aeon/default.nix2
-rw-r--r--pkgs/applications/blockchains/bitcoin-abc.nix6
-rw-r--r--pkgs/applications/blockchains/bitcoin-classic.nix2
-rw-r--r--pkgs/applications/blockchains/bitcoin-unlimited.nix2
-rw-r--r--pkgs/applications/blockchains/bitcoin.nix2
-rw-r--r--pkgs/applications/blockchains/btcdeb/default.nix30
-rw-r--r--pkgs/applications/blockchains/clightning.nix6
-rw-r--r--pkgs/applications/blockchains/cryptop/default.nix2
-rw-r--r--pkgs/applications/blockchains/dashpay.nix2
-rw-r--r--pkgs/applications/blockchains/dcrwallet.nix4
-rw-r--r--pkgs/applications/blockchains/dogecoin.nix2
-rw-r--r--pkgs/applications/blockchains/freicoin.nix2
-rw-r--r--pkgs/applications/blockchains/go-ethereum.nix7
-rw-r--r--pkgs/applications/blockchains/ledger-live-desktop/default.nix4
-rw-r--r--pkgs/applications/blockchains/litecoin.nix2
-rw-r--r--pkgs/applications/blockchains/lnd.nix8
-rw-r--r--pkgs/applications/blockchains/mist.nix2
-rw-r--r--pkgs/applications/blockchains/monero-gui/default.nix31
-rw-r--r--pkgs/applications/blockchains/monero-gui/move-log-file.patch17
-rw-r--r--pkgs/applications/blockchains/monero/default.nix6
-rw-r--r--pkgs/applications/blockchains/namecoin.nix6
-rw-r--r--pkgs/applications/blockchains/nano-wallet/default.nix6
-rw-r--r--pkgs/applications/blockchains/parity-ui/default.nix2
-rw-r--r--pkgs/applications/blockchains/particl/particl-core.nix6
-rw-r--r--pkgs/applications/blockchains/pivx.nix2
-rw-r--r--pkgs/applications/blockchains/polkadot/default.nix15
-rw-r--r--pkgs/applications/blockchains/quorum.nix35
-rw-r--r--pkgs/applications/blockchains/stellar-core.nix2
-rw-r--r--pkgs/applications/blockchains/tessera.nix26
-rw-r--r--pkgs/applications/blockchains/vertcoin.nix4
-rw-r--r--pkgs/applications/blockchains/wownero.nix2
-rw-r--r--pkgs/applications/blockchains/zcash/default.nix16
-rw-r--r--pkgs/applications/blockchains/zcash/librustzcash/default.nix18
-rw-r--r--pkgs/applications/display-managers/lightdm-enso-os-greeter/default.nix4
-rw-r--r--pkgs/applications/display-managers/lightdm-mini-greeter/default.nix7
-rw-r--r--pkgs/applications/display-managers/lightdm-tiny-greeter/default.nix46
-rw-r--r--pkgs/applications/display-managers/lightdm/default.nix2
-rw-r--r--pkgs/applications/display-managers/lightdm/gtk-greeter.nix2
-rw-r--r--pkgs/applications/display-managers/ly/default.nix2
-rw-r--r--pkgs/applications/display-managers/sddm/default.nix2
-rw-r--r--pkgs/applications/editors/aewan/default.nix2
-rw-r--r--pkgs/applications/editors/amp/default.nix13
-rw-r--r--pkgs/applications/editors/android-studio/common.nix15
-rw-r--r--pkgs/applications/editors/android-studio/default.nix18
-rw-r--r--pkgs/applications/editors/apostrophe/default.nix (renamed from pkgs/applications/editors/uberwriter/default.nix)21
-rw-r--r--pkgs/applications/editors/aseprite/default.nix4
-rw-r--r--pkgs/applications/editors/aseprite/skia.nix12
-rw-r--r--pkgs/applications/editors/atom/default.nix2
-rw-r--r--pkgs/applications/editors/bluefish/default.nix6
-rw-r--r--pkgs/applications/editors/brackets/default.nix2
-rw-r--r--pkgs/applications/editors/bvi/default.nix2
-rw-r--r--pkgs/applications/editors/bviplus/default.nix2
-rw-r--r--pkgs/applications/editors/codeblocks/default.nix2
-rw-r--r--pkgs/applications/editors/dhex/default.nix2
-rw-r--r--pkgs/applications/editors/dit/default.nix6
-rw-r--r--pkgs/applications/editors/eclipse/build-eclipse.nix8
-rw-r--r--pkgs/applications/editors/eclipse/default.nix48
-rw-r--r--pkgs/applications/editors/eclipse/plugins.nix58
-rw-r--r--pkgs/applications/editors/edit/default.nix4
-rw-r--r--pkgs/applications/editors/elvis/default.nix2
-rw-r--r--pkgs/applications/editors/emacs-modes/cedet/default.nix2
-rw-r--r--pkgs/applications/editors/emacs-modes/color-theme-solarized/default.nix2
-rw-r--r--pkgs/applications/editors/emacs-modes/elpa-generated.nix183
-rw-r--r--pkgs/applications/editors/emacs-modes/emacs2nix.nix4
-rw-r--r--pkgs/applications/editors/emacs-modes/emacspeak/default.nix43
-rw-r--r--pkgs/applications/editors/emacs-modes/ess-R-object-popup/default.nix2
-rw-r--r--pkgs/applications/editors/emacs-modes/filesets-plus/default.nix22
-rw-r--r--pkgs/applications/editors/emacs-modes/header2/default.nix23
-rw-r--r--pkgs/applications/editors/emacs-modes/helm-words/default.nix2
-rw-r--r--pkgs/applications/editors/emacs-modes/hexrgb/default.nix23
-rw-r--r--pkgs/applications/editors/emacs-modes/hol_light/default.nix4
-rw-r--r--pkgs/applications/editors/emacs-modes/hsc3/default.nix4
-rw-r--r--pkgs/applications/editors/emacs-modes/icicles/default.nix43
-rw-r--r--pkgs/applications/editors/emacs-modes/lib-requires/default.nix23
-rw-r--r--pkgs/applications/editors/emacs-modes/libgenerated.nix9
-rw-r--r--pkgs/applications/editors/emacs-modes/manual-packages.nix30
-rw-r--r--pkgs/applications/editors/emacs-modes/melpa-packages.nix167
-rw-r--r--pkgs/applications/editors/emacs-modes/ocaml/default.nix2
-rw-r--r--pkgs/applications/editors/emacs-modes/org-generated.nix14
-rw-r--r--pkgs/applications/editors/emacs-modes/org-mac-link/default.nix2
-rw-r--r--pkgs/applications/editors/emacs-modes/perl-completion/default.nix2
-rw-r--r--pkgs/applications/editors/emacs-modes/pod-mode/default.nix2
-rw-r--r--pkgs/applications/editors/emacs-modes/prolog/default.nix2
-rw-r--r--pkgs/applications/editors/emacs-modes/railgun/default.nix2
-rw-r--r--pkgs/applications/editors/emacs-modes/recipes-archive-melpa.json10077
-rw-r--r--pkgs/applications/editors/emacs-modes/rect-mark/default.nix2
-rw-r--r--pkgs/applications/editors/emacs-modes/session-management-for-emacs/default.nix2
-rw-r--r--pkgs/applications/editors/emacs-modes/sunrise-commander/default.nix4
-rw-r--r--pkgs/applications/editors/emacs-modes/sv-kalender/default.nix2
-rw-r--r--pkgs/applications/editors/emacs-modes/thingatpt-plus/default.nix23
-rw-r--r--pkgs/applications/editors/emacs-modes/tramp/default.nix2
-rw-r--r--pkgs/applications/editors/emacs-modes/yaoddmuse/default.nix30
-rw-r--r--pkgs/applications/editors/emacs-modes/zeitgeist/default.nix2
-rw-r--r--pkgs/applications/editors/emacs/25.nix2
-rw-r--r--pkgs/applications/editors/emacs/default.nix15
-rw-r--r--pkgs/applications/editors/emacs/macport.nix2
-rw-r--r--pkgs/applications/editors/featherpad/default.nix2
-rw-r--r--pkgs/applications/editors/flpsed/default.nix2
-rw-r--r--pkgs/applications/editors/focuswriter/default.nix6
-rw-r--r--pkgs/applications/editors/fte/default.nix2
-rw-r--r--pkgs/applications/editors/gnome-builder/default.nix27
-rw-r--r--pkgs/applications/editors/gnome-latex/default.nix2
-rw-r--r--pkgs/applications/editors/gobby/default.nix2
-rw-r--r--pkgs/applications/editors/heme/default.nix2
-rw-r--r--pkgs/applications/editors/hexcurse/default.nix6
-rw-r--r--pkgs/applications/editors/hexdino/default.nix2
-rw-r--r--pkgs/applications/editors/hexedit/default.nix2
-rw-r--r--pkgs/applications/editors/howl/default.nix2
-rw-r--r--pkgs/applications/editors/ht/default.nix2
-rw-r--r--pkgs/applications/editors/jedit/default.nix6
-rw-r--r--pkgs/applications/editors/jetbrains/common.nix6
-rw-r--r--pkgs/applications/editors/jetbrains/default.nix62
-rw-r--r--pkgs/applications/editors/joe/default.nix2
-rw-r--r--pkgs/applications/editors/jucipp/default.nix2
-rw-r--r--pkgs/applications/editors/jupp/default.nix12
-rw-r--r--pkgs/applications/editors/jupyter/kernel.nix2
-rw-r--r--pkgs/applications/editors/kakoune/default.nix2
-rw-r--r--pkgs/applications/editors/kdevelop5/kdev-php.nix4
-rw-r--r--pkgs/applications/editors/kdevelop5/kdev-python.nix4
-rw-r--r--pkgs/applications/editors/kdevelop5/kdevelop-pg-qt.nix6
-rw-r--r--pkgs/applications/editors/kdevelop5/kdevelop.nix4
-rw-r--r--pkgs/applications/editors/kile/default.nix2
-rw-r--r--pkgs/applications/editors/kodestudio/default.nix4
-rw-r--r--pkgs/applications/editors/leafpad/default.nix2
-rw-r--r--pkgs/applications/editors/leo-editor/default.nix22
-rw-r--r--pkgs/applications/editors/lighttable/default.nix2
-rw-r--r--pkgs/applications/editors/manuskript/default.nix2
-rw-r--r--pkgs/applications/editors/micro/default.nix10
-rw-r--r--pkgs/applications/editors/micro/deps.nix336
-rw-r--r--pkgs/applications/editors/mindforger/default.nix6
-rw-r--r--pkgs/applications/editors/moe/default.nix2
-rw-r--r--pkgs/applications/editors/music/tuxguitar/default.nix2
-rw-r--r--pkgs/applications/editors/nano/default.nix6
-rw-r--r--pkgs/applications/editors/nano/nanorc/default.nix2
-rw-r--r--pkgs/applications/editors/neovim/default.nix2
-rw-r--r--pkgs/applications/editors/neovim/gnvim/default.nix10
-rw-r--r--pkgs/applications/editors/neovim/neovim-remote.nix2
-rw-r--r--pkgs/applications/editors/neovim/ruby_provider/Gemfile.lock2
-rw-r--r--pkgs/applications/editors/neovim/wrapper.nix10
-rw-r--r--pkgs/applications/editors/netbeans/default.nix6
-rw-r--r--pkgs/applications/editors/notepadqq/default.nix2
-rw-r--r--pkgs/applications/editors/nvi/default.nix2
-rw-r--r--pkgs/applications/editors/nvpy/default.nix2
-rw-r--r--pkgs/applications/editors/okteta/default.nix4
-rw-r--r--pkgs/applications/editors/quartus-prime/default.nix121
-rw-r--r--pkgs/applications/editors/quilter/default.nix6
-rw-r--r--pkgs/applications/editors/qxmledit/default.nix28
-rw-r--r--pkgs/applications/editors/qxmledit/qxmledit.json6
-rw-r--r--pkgs/applications/editors/rednotebook/default.nix4
-rw-r--r--pkgs/applications/editors/retext/default.nix2
-rw-r--r--pkgs/applications/editors/rstudio/default.nix20
-rw-r--r--pkgs/applications/editors/scite/default.nix4
-rw-r--r--pkgs/applications/editors/sigil/default.nix2
-rw-r--r--pkgs/applications/editors/standardnotes/default.nix51
-rw-r--r--pkgs/applications/editors/sublime/2/default.nix8
-rw-r--r--pkgs/applications/editors/sublime/3/common.nix2
-rw-r--r--pkgs/applications/editors/supertux-editor/default.nix2
-rw-r--r--pkgs/applications/editors/tecoc/default.nix4
-rw-r--r--pkgs/applications/editors/texmacs/common.nix2
-rw-r--r--pkgs/applications/editors/texmaker/default.nix2
-rw-r--r--pkgs/applications/editors/texstudio/default.nix8
-rw-r--r--pkgs/applications/editors/textadept/default.nix4
-rw-r--r--pkgs/applications/editors/texworks/default.nix18
-rw-r--r--pkgs/applications/editors/thonny/default.nix6
-rw-r--r--pkgs/applications/editors/tiled/default.nix6
-rw-r--r--pkgs/applications/editors/tweak/default.nix2
-rw-r--r--pkgs/applications/editors/typora/default.nix4
-rw-r--r--pkgs/applications/editors/uemacs/default.nix4
-rw-r--r--pkgs/applications/editors/vbindiff/default.nix2
-rw-r--r--pkgs/applications/editors/vim/common.nix6
-rw-r--r--pkgs/applications/editors/vim/configurable.nix2
-rw-r--r--pkgs/applications/editors/vim/default.nix2
-rw-r--r--pkgs/applications/editors/vim/macvim-sparkle.patch106
-rw-r--r--pkgs/applications/editors/vim/macvim.nix64
-rw-r--r--pkgs/applications/editors/vim/macvim.patch50
-rw-r--r--pkgs/applications/editors/vim/qvim.nix4
-rw-r--r--pkgs/applications/editors/vim/vimacs.nix34
-rw-r--r--pkgs/applications/editors/vis/default.nix2
-rw-r--r--pkgs/applications/editors/vscode/generic.nix18
-rw-r--r--pkgs/applications/editors/vscode/vscode.nix12
-rw-r--r--pkgs/applications/editors/vscode/vscodium.nix14
-rw-r--r--pkgs/applications/editors/vscode/with-extensions.nix4
-rw-r--r--pkgs/applications/editors/wily/default.nix2
-rw-r--r--pkgs/applications/editors/wxhexeditor/default.nix4
-rw-r--r--pkgs/applications/editors/xmlcopyeditor/default.nix2
-rw-r--r--pkgs/applications/editors/zile/default.nix2
-rw-r--r--pkgs/applications/gis/grass/default.nix2
-rw-r--r--pkgs/applications/gis/openorienteering-mapper/default.nix6
-rw-r--r--pkgs/applications/gis/qgis/unwrapped.nix6
-rw-r--r--pkgs/applications/gis/saga/default.nix12
-rw-r--r--pkgs/applications/gis/whitebox-tools/default.nix2
-rw-r--r--pkgs/applications/graphics/ImageMagick/7.0.nix2
-rw-r--r--pkgs/applications/graphics/ImageMagick/default.nix2
-rw-r--r--pkgs/applications/graphics/PythonMagick/default.nix2
-rw-r--r--pkgs/applications/graphics/ahoviewer/default.nix2
-rw-r--r--pkgs/applications/graphics/alchemy/default.nix2
-rw-r--r--pkgs/applications/graphics/animbar/default.nix2
-rw-r--r--pkgs/applications/graphics/antimony/default.nix13
-rw-r--r--pkgs/applications/graphics/apitrace/default.nix47
-rw-r--r--pkgs/applications/graphics/autopanosiftc/default.nix6
-rw-r--r--pkgs/applications/graphics/autotrace/default.nix2
-rw-r--r--pkgs/applications/graphics/avocode/default.nix6
-rw-r--r--pkgs/applications/graphics/awesomebump/default.nix13
-rw-r--r--pkgs/applications/graphics/azpainter/default.nix15
-rw-r--r--pkgs/applications/graphics/batik/default.nix4
-rw-r--r--pkgs/applications/graphics/c3d/default.nix2
-rw-r--r--pkgs/applications/graphics/comical/default.nix2
-rw-r--r--pkgs/applications/graphics/cq-editor/default.nix2
-rw-r--r--pkgs/applications/graphics/darktable/default.nix6
-rw-r--r--pkgs/applications/graphics/deskew/default.nix2
-rw-r--r--pkgs/applications/graphics/dia/default.nix4
-rw-r--r--pkgs/applications/graphics/digikam/default.nix2
-rw-r--r--pkgs/applications/graphics/displaycal/default.nix4
-rw-r--r--pkgs/applications/graphics/dosage/default.nix2
-rw-r--r--pkgs/applications/graphics/draftsight/default.nix2
-rw-r--r--pkgs/applications/graphics/drawing/default.nix4
-rw-r--r--pkgs/applications/graphics/drawio/default.nix6
-rw-r--r--pkgs/applications/graphics/drawpile/default.nix8
-rw-r--r--pkgs/applications/graphics/epeg/default.nix2
-rw-r--r--pkgs/applications/graphics/exrdisplay/default.nix2
-rw-r--r--pkgs/applications/graphics/exrtools/default.nix2
-rw-r--r--pkgs/applications/graphics/fbida/default.nix2
-rw-r--r--pkgs/applications/graphics/feh/default.nix4
-rw-r--r--pkgs/applications/graphics/fig2dev/default.nix2
-rw-r--r--pkgs/applications/graphics/fluxus/default.nix6
-rw-r--r--pkgs/applications/graphics/fondo/default.nix2
-rw-r--r--pkgs/applications/graphics/fontmatrix/default.nix2
-rw-r--r--pkgs/applications/graphics/freepv/default.nix4
-rw-r--r--pkgs/applications/graphics/fstl/default.nix4
-rw-r--r--pkgs/applications/graphics/gcolor2/default.nix2
-rw-r--r--pkgs/applications/graphics/gcolor3/default.nix2
-rw-r--r--pkgs/applications/graphics/geeqie/default.nix2
-rw-r--r--pkgs/applications/graphics/gimp/plugins/default.nix16
-rw-r--r--pkgs/applications/graphics/glabels/default.nix2
-rw-r--r--pkgs/applications/graphics/gnome-photos/default.nix4
-rw-r--r--pkgs/applications/graphics/gnuclad/default.nix2
-rw-r--r--pkgs/applications/graphics/gocr/default.nix2
-rw-r--r--pkgs/applications/graphics/goxel/default.nix2
-rw-r--r--pkgs/applications/graphics/gpicview/default.nix4
-rw-r--r--pkgs/applications/graphics/gqview/default.nix4
-rw-r--r--pkgs/applications/graphics/grafx2/default.nix2
-rw-r--r--pkgs/applications/graphics/graphicsmagick/default.nix2
-rw-r--r--pkgs/applications/graphics/gscan2pdf/default.nix6
-rw-r--r--pkgs/applications/graphics/gthumb/default.nix9
-rw-r--r--pkgs/applications/graphics/guetzli/default.nix2
-rw-r--r--pkgs/applications/graphics/hugin/default.nix2
-rw-r--r--pkgs/applications/graphics/ideogram/default.nix2
-rw-r--r--pkgs/applications/graphics/image_optim/Gemfile.lock2
-rw-r--r--pkgs/applications/graphics/image_optim/default.nix2
-rw-r--r--pkgs/applications/graphics/imagej/default.nix2
-rw-r--r--pkgs/applications/graphics/imgcat/default.nix2
-rw-r--r--pkgs/applications/graphics/imlibsetroot/default.nix2
-rw-r--r--pkgs/applications/graphics/imv/default.nix2
-rw-r--r--pkgs/applications/graphics/inkscape/default.nix143
-rw-r--r--pkgs/applications/graphics/ipe/default.nix14
-rw-r--r--pkgs/applications/graphics/jbrout/default.nix42
-rw-r--r--pkgs/applications/graphics/jpegoptim/default.nix2
-rw-r--r--pkgs/applications/graphics/jpegrescan/default.nix2
-rw-r--r--pkgs/applications/graphics/k3d/default.nix4
-rw-r--r--pkgs/applications/graphics/kodelife/default.nix11
-rw-r--r--pkgs/applications/graphics/krita/default.nix5
-rw-r--r--pkgs/applications/graphics/krop/default.nix2
-rw-r--r--pkgs/applications/graphics/leocad/default.nix2
-rw-r--r--pkgs/applications/graphics/luminance-hdr/default.nix7
-rw-r--r--pkgs/applications/graphics/mandelbulber/default.nix4
-rw-r--r--pkgs/applications/graphics/meh/default.nix2
-rw-r--r--pkgs/applications/graphics/meshlab/default.nix2
-rw-r--r--pkgs/applications/graphics/minidjvu/default.nix4
-rw-r--r--pkgs/applications/graphics/mozjpeg/default.nix2
-rw-r--r--pkgs/applications/graphics/mtpaint/default.nix2
-rw-r--r--pkgs/applications/graphics/nomacs/default.nix4
-rw-r--r--pkgs/applications/graphics/openimageio/2.x.nix2
-rw-r--r--pkgs/applications/graphics/openimageio/default.nix2
-rw-r--r--pkgs/applications/graphics/openscad/default.nix2
-rw-r--r--pkgs/applications/graphics/panotools/default.nix2
-rw-r--r--pkgs/applications/graphics/paraview/default.nix2
-rw-r--r--pkgs/applications/graphics/pbrt/default.nix2
-rw-r--r--pkgs/applications/graphics/pdfcpu/default.nix2
-rw-r--r--pkgs/applications/graphics/photoflow/default.nix2
-rw-r--r--pkgs/applications/graphics/photoqt/default.nix2
-rw-r--r--pkgs/applications/graphics/phototonic/default.nix6
-rw-r--r--pkgs/applications/graphics/pinta/default.nix2
-rw-r--r--pkgs/applications/graphics/potrace/default.nix2
-rw-r--r--pkgs/applications/graphics/pqiv/default.nix2
-rw-r--r--pkgs/applications/graphics/processing/default.nix4
-rw-r--r--pkgs/applications/graphics/qcomicbook/default.nix6
-rw-r--r--pkgs/applications/graphics/qimgv/default.nix57
-rw-r--r--pkgs/applications/graphics/qimgv/qt5-12-compat.diff13
-rw-r--r--pkgs/applications/graphics/qiv/default.nix2
-rw-r--r--pkgs/applications/graphics/qscreenshot/default.nix2
-rw-r--r--pkgs/applications/graphics/rapid-photo-downloader/default.nix2
-rw-r--r--pkgs/applications/graphics/rawtherapee/default.nix6
-rw-r--r--pkgs/applications/graphics/renderdoc/default.nix12
-rw-r--r--pkgs/applications/graphics/runwayml/default.nix2
-rw-r--r--pkgs/applications/graphics/rx/default.nix12
-rw-r--r--pkgs/applications/graphics/sane/backends/airscan/default.nix27
-rw-r--r--pkgs/applications/graphics/sane/backends/brscan4/default.nix14
-rw-r--r--pkgs/applications/graphics/sane/backends/brscan4/udev_rules_type1.nix2
-rw-r--r--pkgs/applications/graphics/sane/backends/dsseries/default.nix2
-rw-r--r--pkgs/applications/graphics/sane/frontends.nix6
-rw-r--r--pkgs/applications/graphics/sane/xsane.nix6
-rw-r--r--pkgs/applications/graphics/scantailor/advanced.nix6
-rw-r--r--pkgs/applications/graphics/scantailor/default.nix2
-rw-r--r--pkgs/applications/graphics/screencloud/default.nix2
-rw-r--r--pkgs/applications/graphics/shotwell/default.nix6
-rw-r--r--pkgs/applications/graphics/shutter/default.nix2
-rw-r--r--pkgs/applications/graphics/smartdeblur/default.nix2
-rw-r--r--pkgs/applications/graphics/solvespace/default.nix4
-rw-r--r--pkgs/applications/graphics/swingsane/default.nix2
-rw-r--r--pkgs/applications/graphics/sxiv/default.nix2
-rw-r--r--pkgs/applications/graphics/synfigstudio/default.nix2
-rw-r--r--pkgs/applications/graphics/tesseract/tesseract3.nix2
-rw-r--r--pkgs/applications/graphics/tesseract/tesseract4.nix2
-rw-r--r--pkgs/applications/graphics/tev/default.nix5
-rw-r--r--pkgs/applications/graphics/timelapse-deflicker/default.nix2
-rw-r--r--pkgs/applications/graphics/ufraw/default.nix2
-rw-r--r--pkgs/applications/graphics/unigine-valley/default.nix2
-rw-r--r--pkgs/applications/graphics/viewnior/default.nix2
-rw-r--r--pkgs/applications/graphics/vimiv/default.nix2
-rw-r--r--pkgs/applications/graphics/wings/default.nix2
-rw-r--r--pkgs/applications/graphics/write_stylus/default.nix6
-rw-r--r--pkgs/applications/graphics/xaos/default.nix2
-rw-r--r--pkgs/applications/graphics/xara/default.nix2
-rw-r--r--pkgs/applications/graphics/xfractint/default.nix2
-rw-r--r--pkgs/applications/graphics/xournal/default.nix2
-rw-r--r--pkgs/applications/graphics/xournalpp/default.nix4
-rw-r--r--pkgs/applications/graphics/xzgv/default.nix2
-rw-r--r--pkgs/applications/graphics/zgv/default.nix4
-rw-r--r--pkgs/applications/kde/ark/default.nix4
-rw-r--r--pkgs/applications/kde/default.nix3
-rw-r--r--pkgs/applications/kde/elisa.nix46
-rw-r--r--pkgs/applications/kde/fetch.sh2
-rw-r--r--pkgs/applications/kde/ffmpeg-path.patch25
-rw-r--r--pkgs/applications/kde/kate.nix10
-rw-r--r--pkgs/applications/kde/kbreakout.nix22
-rw-r--r--pkgs/applications/kde/kdenlive.nix12
-rw-r--r--pkgs/applications/kde/keditbookmarks.nix2
-rw-r--r--pkgs/applications/kde/kipi-plugins.nix2
-rw-r--r--pkgs/applications/kde/kitinerary.nix6
-rw-r--r--pkgs/applications/kde/konqueror.nix10
-rw-r--r--pkgs/applications/kde/konsole.nix2
-rw-r--r--pkgs/applications/kde/krdc.nix2
-rw-r--r--pkgs/applications/kde/kspaceduel.nix22
-rw-r--r--pkgs/applications/kde/okular.nix13
-rw-r--r--pkgs/applications/kde/srcs.nix1728
-rw-r--r--pkgs/applications/kde/yakuake.nix2
-rw-r--r--pkgs/applications/misc/1password/default.nix33
-rw-r--r--pkgs/applications/misc/abook/default.nix2
-rw-r--r--pkgs/applications/misc/adobe-reader/default.nix2
-rw-r--r--pkgs/applications/misc/airtame/default.nix2
-rw-r--r--pkgs/applications/misc/alacritty/default.nix123
-rw-r--r--pkgs/applications/misc/albert/default.nix2
-rw-r--r--pkgs/applications/misc/almanah/default.nix4
-rw-r--r--pkgs/applications/misc/aminal/default.nix2
-rw-r--r--pkgs/applications/misc/antfs-cli/default.nix2
-rw-r--r--pkgs/applications/misc/appeditor/default.nix2
-rw-r--r--pkgs/applications/misc/apvlv/default.nix2
-rw-r--r--pkgs/applications/misc/archiver/default.nix6
-rw-r--r--pkgs/applications/misc/artha/default.nix2
-rw-r--r--pkgs/applications/misc/asciiquarium/default.nix2
-rw-r--r--pkgs/applications/misc/audio/sox/default.nix2
-rw-r--r--pkgs/applications/misc/audio/soxr/default.nix2
-rw-r--r--pkgs/applications/misc/audio/wavesurfer/default.nix4
-rw-r--r--pkgs/applications/misc/audio/wavrsocvt/default.nix2
-rw-r--r--pkgs/applications/misc/ausweisapp2/default.nix27
-rw-r--r--pkgs/applications/misc/autospotting/default.nix2
-rw-r--r--pkgs/applications/misc/avrdudess/default.nix2
-rw-r--r--pkgs/applications/misc/barrier/default.nix4
-rw-r--r--pkgs/applications/misc/bashSnippets/default.nix2
-rw-r--r--pkgs/applications/misc/bb/default.nix2
-rw-r--r--pkgs/applications/misc/bibletime/default.nix6
-rw-r--r--pkgs/applications/misc/bicon/default.nix2
-rw-r--r--pkgs/applications/misc/birdtray/default.nix15
-rw-r--r--pkgs/applications/misc/bitcoinarmory/default.nix92
-rw-r--r--pkgs/applications/misc/bleachbit/default.nix2
-rw-r--r--pkgs/applications/misc/blender/default.nix13
-rw-r--r--pkgs/applications/misc/blugon/default.nix4
-rw-r--r--pkgs/applications/misc/buku/default.nix7
-rw-r--r--pkgs/applications/misc/calcurse/default.nix6
-rw-r--r--pkgs/applications/misc/calibre/default.nix92
-rw-r--r--pkgs/applications/misc/candle/default.nix6
-rw-r--r--pkgs/applications/misc/cardpeek/default.nix2
-rw-r--r--pkgs/applications/misc/catclock/default.nix2
-rw-r--r--pkgs/applications/misc/cbatticon/default.nix2
-rw-r--r--pkgs/applications/misc/cgminer/default.nix2
-rw-r--r--pkgs/applications/misc/cheat/default.nix19
-rw-r--r--pkgs/applications/misc/cherrytree/default.nix30
-rw-r--r--pkgs/applications/misc/cli-visualizer/default.nix2
-rw-r--r--pkgs/applications/misc/clight/clightd.nix2
-rw-r--r--pkgs/applications/misc/clight/default.nix2
-rw-r--r--pkgs/applications/misc/clipit/default.nix30
-rw-r--r--pkgs/applications/misc/clipmenu/default.nix4
-rw-r--r--pkgs/applications/misc/cmatrix/default.nix2
-rw-r--r--pkgs/applications/misc/colort/default.nix2
-rw-r--r--pkgs/applications/misc/confclerk/default.nix2
-rw-r--r--pkgs/applications/misc/cool-retro-term/default.nix2
-rw-r--r--pkgs/applications/misc/copyq/default.nix6
-rw-r--r--pkgs/applications/misc/coursera-dl/default.nix2
-rw-r--r--pkgs/applications/misc/cpp-ethereum/default.nix2
-rw-r--r--pkgs/applications/misc/crumbs/default.nix2
-rw-r--r--pkgs/applications/misc/ctodo/default.nix2
-rw-r--r--pkgs/applications/misc/cura/default.nix10
-rw-r--r--pkgs/applications/misc/cura/lulzbot/curaengine-openmp-compat.patch47
-rw-r--r--pkgs/applications/misc/cura/lulzbot/curaengine.nix13
-rw-r--r--pkgs/applications/misc/cura/lulzbot/default.nix6
-rw-r--r--pkgs/applications/misc/cura/lulzbot/libarcus.nix4
-rw-r--r--pkgs/applications/misc/cura/lulzbot/libsavitar.nix4
-rw-r--r--pkgs/applications/misc/cura/lulzbot/uranium.nix4
-rw-r--r--pkgs/applications/misc/cura/stable.nix2
-rw-r--r--pkgs/applications/misc/curabydagoma/default.nix2
-rw-r--r--pkgs/applications/misc/curaengine/default.nix6
-rw-r--r--pkgs/applications/misc/curaengine/stable.nix2
-rw-r--r--pkgs/applications/misc/dbeaver/default.nix6
-rw-r--r--pkgs/applications/misc/dbvisualizer/default.nix4
-rw-r--r--pkgs/applications/misc/ddgr/default.nix27
-rw-r--r--pkgs/applications/misc/deco/default.nix2
-rw-r--r--pkgs/applications/misc/devilspie2/default.nix2
-rw-r--r--pkgs/applications/misc/dfilemanager/default.nix2
-rw-r--r--pkgs/applications/misc/diffpdf/default.nix4
-rw-r--r--pkgs/applications/misc/digitalbitbox/default.nix4
-rw-r--r--pkgs/applications/misc/ding/default.nix2
-rw-r--r--pkgs/applications/misc/direwolf/default.nix2
-rw-r--r--pkgs/applications/misc/dmensamenu/default.nix2
-rw-r--r--pkgs/applications/misc/dmenu/default.nix2
-rw-r--r--pkgs/applications/misc/dmenu/wayland.nix6
-rw-r--r--pkgs/applications/misc/dockbarx/default.nix2
-rw-r--r--pkgs/applications/misc/doing/Gemfile.lock2
-rw-r--r--pkgs/applications/misc/doing/default.nix2
-rw-r--r--pkgs/applications/misc/doomseeker/default.nix2
-rw-r--r--pkgs/applications/misc/dotfiles/default.nix2
-rw-r--r--pkgs/applications/misc/dozenal/default.nix2
-rw-r--r--pkgs/applications/misc/eaglemode/default.nix2
-rw-r--r--pkgs/applications/misc/electron-cash/default.nix19
-rw-r--r--pkgs/applications/misc/electrum/dash.nix2
-rw-r--r--pkgs/applications/misc/electrum/default.nix2
-rw-r--r--pkgs/applications/misc/electrum/ltc.nix2
-rw-r--r--pkgs/applications/misc/elogind/default.nix6
-rw-r--r--pkgs/applications/misc/emem/default.nix2
-rw-r--r--pkgs/applications/misc/epdfview/default.nix2
-rw-r--r--pkgs/applications/misc/eterm/default.nix2
-rw-r--r--pkgs/applications/misc/etesync-dav/default.nix4
-rw-r--r--pkgs/applications/misc/eureka-editor/default.nix2
-rw-r--r--pkgs/applications/misc/evilvte/default.nix4
-rw-r--r--pkgs/applications/misc/extract_url/default.nix2
-rw-r--r--pkgs/applications/misc/far2l/default.nix4
-rw-r--r--pkgs/applications/misc/fbreader/default.nix2
-rw-r--r--pkgs/applications/misc/fehlstart/default.nix2
-rw-r--r--pkgs/applications/misc/fetchmail/default.nix8
-rw-r--r--pkgs/applications/misc/fff/default.nix2
-rw-r--r--pkgs/applications/misc/filet/default.nix2
-rw-r--r--pkgs/applications/misc/firestarter/default.nix2
-rw-r--r--pkgs/applications/misc/fitnesstrax/default.nix43
-rw-r--r--pkgs/applications/misc/flamerobin/default.nix2
-rwxr-xr-xpkgs/applications/misc/fluxboxlauncher/default.nix56
-rw-r--r--pkgs/applications/misc/fme/default.nix2
-rw-r--r--pkgs/applications/misc/font-manager/default.nix2
-rw-r--r--pkgs/applications/misc/freemind/default.nix2
-rw-r--r--pkgs/applications/misc/fsv/default.nix2
-rw-r--r--pkgs/applications/misc/fusee-interfacee-tk/default.nix40
-rw-r--r--pkgs/applications/misc/gImageReader/default.nix2
-rw-r--r--pkgs/applications/misc/galculator/default.nix2
-rw-r--r--pkgs/applications/misc/gallery-dl/default.nix6
-rw-r--r--pkgs/applications/misc/gammu/default.nix2
-rw-r--r--pkgs/applications/misc/ganttproject-bin/default.nix4
-rw-r--r--pkgs/applications/misc/garmin-plugin/default.nix8
-rw-r--r--pkgs/applications/misc/gcal/default.nix2
-rw-r--r--pkgs/applications/misc/gcalcli/default.nix6
-rw-r--r--pkgs/applications/misc/geoipupdate/default.nix6
-rw-r--r--pkgs/applications/misc/get_iplayer/default.nix2
-rw-r--r--pkgs/applications/misc/getxbook/default.nix2
-rw-r--r--pkgs/applications/misc/gkrellm/default.nix2
-rw-r--r--pkgs/applications/misc/gksu/default.nix2
-rw-r--r--pkgs/applications/misc/glava/default.nix2
-rw-r--r--pkgs/applications/misc/glom/default.nix5
-rw-r--r--pkgs/applications/misc/gmrun/default.nix2
-rw-r--r--pkgs/applications/misc/gmtp/default.nix2
-rw-r--r--pkgs/applications/misc/gnome-firmware-updater/default.nix3
-rw-r--r--pkgs/applications/misc/gnome-multi-writer/default.nix4
-rw-r--r--pkgs/applications/misc/gnome-recipes/default.nix4
-rw-r--r--pkgs/applications/misc/gnome-usage/default.nix2
-rw-r--r--pkgs/applications/misc/golden-cheetah/default.nix10
-rw-r--r--pkgs/applications/misc/gollum/Gemfile.lock127
-rw-r--r--pkgs/applications/misc/gollum/default.nix9
-rw-r--r--pkgs/applications/misc/gollum/gemset.nix312
-rw-r--r--pkgs/applications/misc/gomatrix/default.nix22
-rw-r--r--pkgs/applications/misc/googleearth/default.nix2
-rw-r--r--pkgs/applications/misc/googler/default.nix4
-rw-r--r--pkgs/applications/misc/gosmore/default.nix4
-rw-r--r--pkgs/applications/misc/gpa/default.nix2
-rw-r--r--pkgs/applications/misc/gpg-mdp/default.nix2
-rw-r--r--pkgs/applications/misc/gphoto2/default.nix2
-rw-r--r--pkgs/applications/misc/gphoto2/gphotofs.nix2
-rw-r--r--pkgs/applications/misc/gpsbabel/default.nix4
-rw-r--r--pkgs/applications/misc/gpsbabel/gui.nix49
-rw-r--r--pkgs/applications/misc/gpsprune/default.nix12
-rw-r--r--pkgs/applications/misc/gpx-viewer/default.nix2
-rw-r--r--pkgs/applications/misc/gpx/default.nix2
-rw-r--r--pkgs/applications/misc/gpxsee/default.nix17
-rw-r--r--pkgs/applications/misc/gramps/default.nix2
-rw-r--r--pkgs/applications/misc/green-pdfviewer/default.nix2
-rw-r--r--pkgs/applications/misc/gremlin-console/default.nix2
-rw-r--r--pkgs/applications/misc/grip/default.nix6
-rw-r--r--pkgs/applications/misc/grsync/default.nix4
-rw-r--r--pkgs/applications/misc/gsctl/default.nix2
-rw-r--r--pkgs/applications/misc/gsimplecal/default.nix2
-rw-r--r--pkgs/applications/misc/gtk2fontsel/default.nix4
-rw-r--r--pkgs/applications/misc/gummi/default.nix20
-rw-r--r--pkgs/applications/misc/gv/default.nix2
-rw-r--r--pkgs/applications/misc/gxneur/default.nix2
-rw-r--r--pkgs/applications/misc/havoc/default.nix35
-rw-r--r--pkgs/applications/misc/haxor-news/default.nix2
-rw-r--r--pkgs/applications/misc/hdate/default.nix2
-rw-r--r--pkgs/applications/misc/heimer/default.nix4
-rw-r--r--pkgs/applications/misc/hello/default.nix2
-rw-r--r--pkgs/applications/misc/hivemind/default.nix2
-rw-r--r--pkgs/applications/misc/houdini/runtime.nix2
-rw-r--r--pkgs/applications/misc/hovercraft/default.nix2
-rw-r--r--pkgs/applications/misc/hr/default.nix2
-rw-r--r--pkgs/applications/misc/hstr/default.nix2
-rw-r--r--pkgs/applications/misc/hubstaff/default.nix2
-rw-r--r--pkgs/applications/misc/hugo/default.nix6
-rw-r--r--pkgs/applications/misc/hyper/default.nix2
-rw-r--r--pkgs/applications/misc/icesl/default.nix2
-rw-r--r--pkgs/applications/misc/ikiwiki/default.nix2
-rw-r--r--pkgs/applications/misc/img2pdf/default.nix6
-rw-r--r--pkgs/applications/misc/ipmicfg/default.nix8
-rw-r--r--pkgs/applications/misc/iterm2/default.nix2
-rw-r--r--pkgs/applications/misc/jbidwatcher/default.nix2
-rw-r--r--pkgs/applications/misc/jekyll/basic/Gemfile.lock2
-rw-r--r--pkgs/applications/misc/jekyll/default.nix2
-rw-r--r--pkgs/applications/misc/jekyll/full/Gemfile.lock2
-rw-r--r--pkgs/applications/misc/jgmenu/default.nix6
-rw-r--r--pkgs/applications/misc/jigdo/default.nix6
-rw-r--r--pkgs/applications/misc/joplin-desktop/default.nix8
-rw-r--r--pkgs/applications/misc/josm/default.nix6
-rw-r--r--pkgs/applications/misc/jotta-cli/default.nix8
-rw-r--r--pkgs/applications/misc/jp2a/default.nix2
-rw-r--r--pkgs/applications/misc/jrnl/default.nix2
-rw-r--r--pkgs/applications/misc/k2pdfopt/default.nix2
-rw-r--r--pkgs/applications/misc/kanboard/default.nix6
-rw-r--r--pkgs/applications/misc/kdeconnect/default.nix2
-rw-r--r--pkgs/applications/misc/keepass-plugins/keepasshttp/default.nix2
-rw-r--r--pkgs/applications/misc/keepass-plugins/keepassrpc/default.nix2
-rw-r--r--pkgs/applications/misc/keepass/default.nix2
-rw-r--r--pkgs/applications/misc/keepassx/2.0.nix2
-rw-r--r--pkgs/applications/misc/keepassx/community.nix24
-rw-r--r--pkgs/applications/misc/keepassx/darwin.patch4
-rw-r--r--pkgs/applications/misc/keepassx/default.nix2
-rw-r--r--pkgs/applications/misc/khal/default.nix9
-rw-r--r--pkgs/applications/misc/khard/default.nix6
-rw-r--r--pkgs/applications/misc/kitty/default.nix17
-rw-r--r--pkgs/applications/misc/kitty/no-lto.patch5
-rw-r--r--pkgs/applications/misc/kitty/png2icns.patch21
-rw-r--r--pkgs/applications/misc/kiwix/default.nix10
-rw-r--r--pkgs/applications/misc/kjv/default.nix2
-rw-r--r--pkgs/applications/misc/klayout/default.nix63
-rw-r--r--pkgs/applications/misc/kondo/default.nix22
-rw-r--r--pkgs/applications/misc/krename/default.nix2
-rw-r--r--pkgs/applications/misc/krusader/default.nix4
-rw-r--r--pkgs/applications/misc/latte-dock/default.nix4
-rw-r--r--pkgs/applications/misc/lenmus/default.nix2
-rw-r--r--pkgs/applications/misc/libosmocore/default.nix2
-rw-r--r--pkgs/applications/misc/lighthouse/default.nix2
-rw-r--r--pkgs/applications/misc/lilyterm/default.nix23
-rw-r--r--pkgs/applications/misc/llpp/default.nix2
-rw-r--r--pkgs/applications/misc/loxodo/default.nix2
-rw-r--r--pkgs/applications/misc/ltwheelconf/default.nix2
-rw-r--r--pkgs/applications/misc/lutris/chrootenv.nix6
-rw-r--r--pkgs/applications/misc/lutris/default.nix16
-rw-r--r--pkgs/applications/misc/lxterminal/default.nix2
-rw-r--r--pkgs/applications/misc/lyx/default.nix2
-rw-r--r--pkgs/applications/misc/madonctl/default.nix2
-rw-r--r--pkgs/applications/misc/makeself/Use-rm-from-PATH.patch43
-rw-r--r--pkgs/applications/misc/makeself/default.nix19
-rw-r--r--pkgs/applications/misc/mako/default.nix7
-rw-r--r--pkgs/applications/misc/mapproxy/default.nix4
-rw-r--r--pkgs/applications/misc/mdp/default.nix2
-rw-r--r--pkgs/applications/misc/mediainfo-gui/default.nix6
-rw-r--r--pkgs/applications/misc/mediainfo/default.nix6
-rw-r--r--pkgs/applications/misc/megacmd/default.nix6
-rw-r--r--pkgs/applications/misc/megasync/default.nix83
-rw-r--r--pkgs/applications/misc/memo/default.nix4
-rw-r--r--pkgs/applications/misc/menumaker/default.nix2
-rw-r--r--pkgs/applications/misc/merkaartor/default.nix2
-rw-r--r--pkgs/applications/misc/metar/default.nix2
-rw-r--r--pkgs/applications/misc/microcom/default.nix29
-rw-r--r--pkgs/applications/misc/milu/default.nix2
-rw-r--r--pkgs/applications/misc/minder/default.nix4
-rw-r--r--pkgs/applications/misc/minergate-cli/default.nix2
-rw-r--r--pkgs/applications/misc/minergate/default.nix2
-rw-r--r--pkgs/applications/misc/mlterm/default.nix6
-rw-r--r--pkgs/applications/misc/moolticute/default.nix4
-rw-r--r--pkgs/applications/misc/moonlight-embedded/default.nix2
-rw-r--r--pkgs/applications/misc/mop/default.nix2
-rw-r--r--pkgs/applications/misc/mpvc/default.nix2
-rw-r--r--pkgs/applications/misc/mqtt-bench/default.nix2
-rw-r--r--pkgs/applications/misc/mrxvt/default.nix4
-rw-r--r--pkgs/applications/misc/mucommander/default.nix2
-rw-r--r--pkgs/applications/misc/multibootusb/default.nix2
-rw-r--r--pkgs/applications/misc/mupdf/default.nix4
-rw-r--r--pkgs/applications/misc/mwic/default.nix6
-rw-r--r--pkgs/applications/misc/mysql-workbench/default.nix117
-rw-r--r--pkgs/applications/misc/mysql-workbench/fix-swig-build.patch12
-rw-r--r--pkgs/applications/misc/mystem/default.nix2
-rw-r--r--pkgs/applications/misc/nanoblogger/default.nix2
-rw-r--r--pkgs/applications/misc/navipowm/default.nix4
-rw-r--r--pkgs/applications/misc/navit/default.nix2
-rw-r--r--pkgs/applications/misc/neap/default.nix2
-rw-r--r--pkgs/applications/misc/netsurf/browser/default.nix2
-rw-r--r--pkgs/applications/misc/netsurf/buildsystem/default.nix2
-rw-r--r--pkgs/applications/misc/netsurf/libcss/default.nix2
-rw-r--r--pkgs/applications/misc/netsurf/libdom/default.nix2
-rw-r--r--pkgs/applications/misc/netsurf/libhubbub/default.nix2
-rw-r--r--pkgs/applications/misc/netsurf/libnsbmp/default.nix2
-rw-r--r--pkgs/applications/misc/netsurf/libnsfb/default.nix2
-rw-r--r--pkgs/applications/misc/netsurf/libnsgif/default.nix2
-rw-r--r--pkgs/applications/misc/netsurf/libnslog/default.nix2
-rw-r--r--pkgs/applications/misc/netsurf/libnspsl/default.nix2
-rw-r--r--pkgs/applications/misc/netsurf/libnsutils/default.nix2
-rw-r--r--pkgs/applications/misc/netsurf/libparserutils/default.nix2
-rw-r--r--pkgs/applications/misc/netsurf/libsvgtiny/default.nix2
-rw-r--r--pkgs/applications/misc/netsurf/libutf8proc/default.nix2
-rw-r--r--pkgs/applications/misc/netsurf/libwapcaplet/default.nix2
-rw-r--r--pkgs/applications/misc/netsurf/nsgenbind/default.nix2
-rw-r--r--pkgs/applications/misc/nix-tour/default.nix2
-rw-r--r--pkgs/applications/misc/nixnote2/default.nix2
-rw-r--r--pkgs/applications/misc/nnn/default.nix6
-rw-r--r--pkgs/applications/misc/noice/default.nix2
-rw-r--r--pkgs/applications/misc/notable/default.nix31
-rw-r--r--pkgs/applications/misc/notejot/default.nix6
-rw-r--r--pkgs/applications/misc/notify-osd-customizable/default.nix2
-rw-r--r--pkgs/applications/misc/notify-osd/default.nix2
-rw-r--r--pkgs/applications/misc/nrsc5/default.nix2
-rw-r--r--pkgs/applications/misc/nut/default.nix10
-rw-r--r--pkgs/applications/misc/obinskit/default.nix83
-rw-r--r--pkgs/applications/misc/ocropus/default.nix2
-rw-r--r--pkgs/applications/misc/octoprint/default.nix141
-rw-r--r--pkgs/applications/misc/octoprint/plugins.nix490
-rw-r--r--pkgs/applications/misc/omegat.nix4
-rw-r--r--pkgs/applications/misc/onboard/default.nix2
-rw-r--r--pkgs/applications/misc/openbox-menu/default.nix2
-rw-r--r--pkgs/applications/misc/openbrf/default.nix6
-rw-r--r--pkgs/applications/misc/opencpn/default.nix2
-rw-r--r--pkgs/applications/misc/openjump/default.nix4
-rw-r--r--pkgs/applications/misc/opentx/default.nix47
-rw-r--r--pkgs/applications/misc/orca/default.nix6
-rw-r--r--pkgs/applications/misc/orpie/default.nix2
-rw-r--r--pkgs/applications/misc/osmctools/default.nix6
-rw-r--r--pkgs/applications/misc/osmium-tool/default.nix4
-rw-r--r--pkgs/applications/misc/overmind/default.nix2
-rw-r--r--pkgs/applications/misc/pcmanfm/default.nix2
-rw-r--r--pkgs/applications/misc/pcmanx-gtk2/default.nix2
-rw-r--r--pkgs/applications/misc/pdf-quench/default.nix2
-rw-r--r--pkgs/applications/misc/pdfarranger/default.nix7
-rw-r--r--pkgs/applications/misc/pdfdiff/default.nix2
-rw-r--r--pkgs/applications/misc/pdfpc/default.nix2
-rw-r--r--pkgs/applications/misc/pdfsam-basic/default.nix4
-rw-r--r--pkgs/applications/misc/pell/default.nix2
-rw-r--r--pkgs/applications/misc/perkeep/default.nix8
-rw-r--r--pkgs/applications/misc/pgadmin/default.nix2
-rw-r--r--pkgs/applications/misc/pgmanage/default.nix2
-rw-r--r--pkgs/applications/misc/pgmodeler/default.nix4
-rw-r--r--pkgs/applications/misc/phwmon/default.nix2
-rw-r--r--pkgs/applications/misc/playonlinux/default.nix62
-rw-r--r--pkgs/applications/misc/polar-bookshelf/default.nix2
-rw-r--r--pkgs/applications/misc/polybar/default.nix5
-rw-r--r--pkgs/applications/misc/posterazor/default.nix2
-rw-r--r--pkgs/applications/misc/printrun/default.nix2
-rw-r--r--pkgs/applications/misc/procmail/default.nix6
-rw-r--r--pkgs/applications/misc/prusa-slicer/default.nix39
-rw-r--r--pkgs/applications/misc/pt/Gemfile.lock2
-rw-r--r--pkgs/applications/misc/pt/default.nix2
-rw-r--r--pkgs/applications/misc/ptask/default.nix2
-rw-r--r--pkgs/applications/misc/pueue/default.nix14
-rw-r--r--pkgs/applications/misc/pwsafe/default.nix9
-rw-r--r--pkgs/applications/misc/pydf/default.nix8
-rw-r--r--pkgs/applications/misc/pyditz/cerberus.nix2
-rw-r--r--pkgs/applications/misc/pyditz/default.nix2
-rw-r--r--pkgs/applications/misc/pytrainer/default.nix3
-rw-r--r--pkgs/applications/misc/qMasterPassword/default.nix2
-rw-r--r--pkgs/applications/misc/qcad/application-dir.patch35
-rw-r--r--pkgs/applications/misc/qcad/default.nix92
-rw-r--r--pkgs/applications/misc/qlandkartegt/default.nix2
-rw-r--r--pkgs/applications/misc/qlandkartegt/garmindev.nix6
-rw-r--r--pkgs/applications/misc/qlcplus/default.nix4
-rw-r--r--pkgs/applications/misc/qmapshack/default.nix6
-rw-r--r--pkgs/applications/misc/qmetro/default.nix2
-rw-r--r--pkgs/applications/misc/qolibri/default.nix2
-rw-r--r--pkgs/applications/misc/qpdfview/default.nix2
-rw-r--r--pkgs/applications/misc/qsyncthingtray/default.nix2
-rw-r--r--pkgs/applications/misc/qt-box-editor/default.nix7
-rw-r--r--pkgs/applications/misc/qtbitcointrader/default.nix2
-rw-r--r--pkgs/applications/misc/qtpass/default.nix2
-rw-r--r--pkgs/applications/misc/quicksynergy/default.nix2
-rw-r--r--pkgs/applications/misc/ranger/default.nix2
-rw-r--r--pkgs/applications/misc/redis-desktop-manager/default.nix2
-rw-r--r--pkgs/applications/misc/redshift-plasma-applet/default.nix2
-rw-r--r--pkgs/applications/misc/redshift/default.nix9
-rw-r--r--pkgs/applications/misc/regextester/default.nix2
-rw-r--r--pkgs/applications/misc/rescuetime/default.nix6
-rw-r--r--pkgs/applications/misc/robo3t/default.nix4
-rw-r--r--pkgs/applications/misc/robomongo/default.nix2
-rw-r--r--pkgs/applications/misc/rofi-emoji/0001-Patch-plugindir-to-output.patch25
-rw-r--r--pkgs/applications/misc/rofi-emoji/default.nix69
-rw-r--r--pkgs/applications/misc/rofi-file-browser/default.nix34
-rw-r--r--pkgs/applications/misc/rofi-menugen/default.nix2
-rw-r--r--pkgs/applications/misc/rofi/wrapper.nix21
-rw-r--r--pkgs/applications/misc/rsibreak/default.nix2
-rw-r--r--pkgs/applications/misc/rtv/default.nix2
-rw-r--r--pkgs/applications/misc/rxvt-unicode-plugins/urxvt-font-size/default.nix2
-rw-r--r--pkgs/applications/misc/rxvt-unicode-plugins/urxvt-perl/default.nix2
-rw-r--r--pkgs/applications/misc/rxvt-unicode-plugins/urxvt-perls/default.nix2
-rw-r--r--pkgs/applications/misc/rxvt-unicode-plugins/urxvt-tabbedex/default.nix2
-rw-r--r--pkgs/applications/misc/rxvt-unicode-plugins/urxvt-theme-switch/default.nix2
-rw-r--r--pkgs/applications/misc/rxvt-unicode-plugins/urxvt-vtwheel/default.nix2
-rw-r--r--pkgs/applications/misc/rxvt/default.nix2
-rw-r--r--pkgs/applications/misc/safeeyes/default.nix2
-rw-r--r--pkgs/applications/misc/sakura/default.nix2
-rw-r--r--pkgs/applications/misc/sampler/default.nix6
-rw-r--r--pkgs/applications/misc/sbagen/default.nix2
-rw-r--r--pkgs/applications/misc/sc-im/default.nix2
-rw-r--r--pkgs/applications/misc/sdcv/default.nix2
-rw-r--r--pkgs/applications/misc/sent/default.nix2
-rw-r--r--pkgs/applications/misc/sequeler/default.nix6
-rw-r--r--pkgs/applications/misc/sequelpro/default.nix2
-rw-r--r--pkgs/applications/misc/sidequest/default.nix4
-rw-r--r--pkgs/applications/misc/sigal/default.nix2
-rw-r--r--pkgs/applications/misc/simplenote/default.nix4
-rw-r--r--pkgs/applications/misc/slade/default.nix2
-rw-r--r--pkgs/applications/misc/slade/git.nix2
-rw-r--r--pkgs/applications/misc/sleepyhead/default.nix4
-rw-r--r--pkgs/applications/misc/slic3r/default.nix2
-rw-r--r--pkgs/applications/misc/slstatus/default.nix4
-rw-r--r--pkgs/applications/misc/solaar/default.nix2
-rw-r--r--pkgs/applications/misc/spacefm/default.nix2
-rw-r--r--pkgs/applications/misc/sqliteman/default.nix2
-rw-r--r--pkgs/applications/misc/ssocr/default.nix2
-rw-r--r--pkgs/applications/misc/st/default.nix8
-rw-r--r--pkgs/applications/misc/st/xst.nix2
-rw-r--r--pkgs/applications/misc/stag/default.nix4
-rw-r--r--pkgs/applications/misc/stog/default.nix2
-rw-r--r--pkgs/applications/misc/stretchly/default.nix203
-rw-r--r--pkgs/applications/misc/stupidterm/default.nix2
-rw-r--r--pkgs/applications/misc/styx/default.nix4
-rw-r--r--pkgs/applications/misc/subsurface/0001-core-fix-libgit-ifdef-to-handle-libgit2-v1.0-and-onw.patch41
-rw-r--r--pkgs/applications/misc/subsurface/default.nix32
-rw-r--r--pkgs/applications/misc/super_user_spark/default.nix2
-rw-r--r--pkgs/applications/misc/sweethome3d/default.nix8
-rw-r--r--pkgs/applications/misc/sweethome3d/editors.nix2
-rw-r--r--pkgs/applications/misc/synapse/default.nix2
-rw-r--r--pkgs/applications/misc/syncthing-tray/default.nix2
-rw-r--r--pkgs/applications/misc/syncthingtray/default.nix4
-rw-r--r--pkgs/applications/misc/synergy/default.nix8
-rw-r--r--pkgs/applications/misc/tabula/default.nix2
-rw-r--r--pkgs/applications/misc/taizen/default.nix2
-rw-r--r--pkgs/applications/misc/taskjuggler/2.x/default.nix2
-rw-r--r--pkgs/applications/misc/taskjuggler/3.x/Gemfile.lock2
-rw-r--r--pkgs/applications/misc/taskjuggler/3.x/default.nix2
-rw-r--r--pkgs/applications/misc/taskjuggler/Gemfile.lock2
-rw-r--r--pkgs/applications/misc/taskjuggler/default.nix2
-rw-r--r--pkgs/applications/misc/tasknc/default.nix2
-rw-r--r--pkgs/applications/misc/taskopen/default.nix2
-rw-r--r--pkgs/applications/misc/tasksh/default.nix2
-rw-r--r--pkgs/applications/misc/taskwarrior/default.nix2
-rw-r--r--pkgs/applications/misc/tdrop/default.nix2
-rw-r--r--pkgs/applications/misc/termdown/default.nix2
-rw-r--r--pkgs/applications/misc/terminal-notifier/default.nix2
-rw-r--r--pkgs/applications/misc/terminal-parrot/default.nix2
-rw-r--r--pkgs/applications/misc/terminator/default.nix62
-rw-r--r--pkgs/applications/misc/terminus/default.nix2
-rw-r--r--pkgs/applications/misc/termite/default.nix2
-rw-r--r--pkgs/applications/misc/termpdf.py/default.nix51
-rw-r--r--pkgs/applications/misc/teseq/default.nix2
-rw-r--r--pkgs/applications/misc/thinking-rock/default.nix4
-rw-r--r--pkgs/applications/misc/tilda/default.nix21
-rw-r--r--pkgs/applications/misc/tilix/default.nix2
-rw-r--r--pkgs/applications/misc/tint2/default.nix2
-rw-r--r--pkgs/applications/misc/tnef/default.nix2
-rw-r--r--pkgs/applications/misc/todoist-electron/default.nix6
-rw-r--r--pkgs/applications/misc/todoist/default.nix2
-rw-r--r--pkgs/applications/misc/toggldesktop/default.nix18
-rw-r--r--pkgs/applications/misc/tomboy/default.nix2
-rw-r--r--pkgs/applications/misc/toot/default.nix4
-rw-r--r--pkgs/applications/misc/tootle/default.nix2
-rw-r--r--pkgs/applications/misc/tpmmanager/default.nix2
-rw-r--r--pkgs/applications/misc/translate-shell/default.nix2
-rw-r--r--pkgs/applications/misc/tthsum/default.nix2
-rw-r--r--pkgs/applications/misc/tuir/default.nix4
-rw-r--r--pkgs/applications/misc/tut/default.nix24
-rw-r--r--pkgs/applications/misc/tut/deps.nix318
-rw-r--r--pkgs/applications/misc/tvbrowser/bin.nix2
-rw-r--r--pkgs/applications/misc/twmn/default.nix2
-rw-r--r--pkgs/applications/misc/udevil/default.nix4
-rw-r--r--pkgs/applications/misc/udiskie/default.nix2
-rw-r--r--pkgs/applications/misc/ulauncher/0001-Adjust-get_data_path-for-NixOS.patch55
-rw-r--r--pkgs/applications/misc/ulauncher/default.nix38
-rw-r--r--pkgs/applications/misc/ulauncher/fix-extensions.patch13
-rw-r--r--pkgs/applications/misc/upwork/default.nix55
-rw-r--r--pkgs/applications/misc/urlscan/default.nix2
-rw-r--r--pkgs/applications/misc/urlview/default.nix2
-rw-r--r--pkgs/applications/misc/usync/default.nix2
-rw-r--r--pkgs/applications/misc/valentina/default.nix6
-rw-r--r--pkgs/applications/misc/variety/default.nix2
-rw-r--r--pkgs/applications/misc/vcal/default.nix2
-rw-r--r--pkgs/applications/misc/veracrypt/default.nix2
-rw-r--r--pkgs/applications/misc/verbiste/default.nix2
-rw-r--r--pkgs/applications/misc/vifm/default.nix2
-rw-r--r--pkgs/applications/misc/viking/default.nix2
-rw-r--r--pkgs/applications/misc/visidata/default.nix33
-rw-r--r--pkgs/applications/misc/vit/default.nix2
-rw-r--r--pkgs/applications/misc/volnoti/default.nix2
-rw-r--r--pkgs/applications/misc/vp/default.nix2
-rw-r--r--pkgs/applications/misc/vym/default.nix2
-rw-r--r--pkgs/applications/misc/waybar/default.nix4
-rw-r--r--pkgs/applications/misc/wcalc/default.nix2
-rw-r--r--pkgs/applications/misc/weather/default.nix2
-rw-r--r--pkgs/applications/misc/wikicurses/default.nix12
-rw-r--r--pkgs/applications/misc/with-shell/default.nix2
-rw-r--r--pkgs/applications/misc/wmname/default.nix2
-rw-r--r--pkgs/applications/misc/wofi/default.nix20
-rw-r--r--pkgs/applications/misc/wordnet/default.nix4
-rw-r--r--pkgs/applications/misc/worker/default.nix2
-rw-r--r--pkgs/applications/misc/workrave/default.nix4
-rw-r--r--pkgs/applications/misc/wtf/default.nix6
-rw-r--r--pkgs/applications/misc/xastir/default.nix6
-rw-r--r--pkgs/applications/misc/xautoclick/default.nix2
-rw-r--r--pkgs/applications/misc/xca/default.nix2
-rw-r--r--pkgs/applications/misc/xcruiser/default.nix4
-rw-r--r--pkgs/applications/misc/xdgmenumaker/default.nix2
-rw-r--r--pkgs/applications/misc/xfe/default.nix2
-rw-r--r--pkgs/applications/misc/xfontsel/default.nix2
-rw-r--r--pkgs/applications/misc/xiphos/default.nix6
-rw-r--r--pkgs/applications/misc/xkbd/default.nix2
-rw-r--r--pkgs/applications/misc/xkblayout-state/default.nix2
-rw-r--r--pkgs/applications/misc/xkbmon/default.nix2
-rw-r--r--pkgs/applications/misc/xmind/default.nix2
-rw-r--r--pkgs/applications/misc/xmrig/default.nix4
-rw-r--r--pkgs/applications/misc/xneur/default.nix2
-rw-r--r--pkgs/applications/misc/xpad/default.nix2
-rw-r--r--pkgs/applications/misc/xpdf/libxpdf.nix10
-rw-r--r--pkgs/applications/misc/xrandr-invert-colors/default.nix2
-rw-r--r--pkgs/applications/misc/xrq/default.nix2
-rw-r--r--pkgs/applications/misc/xscope/default.nix2
-rw-r--r--pkgs/applications/misc/xterm/default.nix6
-rw-r--r--pkgs/applications/misc/xtermcontrol/default.nix2
-rw-r--r--pkgs/applications/misc/xxkb/default.nix2
-rw-r--r--pkgs/applications/misc/yaft/default.nix2
-rw-r--r--pkgs/applications/misc/yarssr/default.nix2
-rw-r--r--pkgs/applications/misc/yate/default.nix2
-rw-r--r--pkgs/applications/misc/yokadi/default.nix2
-rw-r--r--pkgs/applications/misc/zathura/cb/default.nix4
-rw-r--r--pkgs/applications/misc/zathura/core/default.nix10
-rw-r--r--pkgs/applications/misc/zathura/djvu/default.nix9
-rw-r--r--pkgs/applications/misc/zathura/pdf-mupdf/default.nix17
-rw-r--r--pkgs/applications/misc/zathura/pdf-poppler/default.nix8
-rw-r--r--pkgs/applications/misc/zathura/ps/default.nix7
-rw-r--r--pkgs/applications/misc/zathura/wrapper.nix4
-rw-r--r--pkgs/applications/misc/zk-shell/default.nix2
-rw-r--r--pkgs/applications/misc/zola/default.nix6
-rw-r--r--pkgs/applications/misc/zscroll/default.nix2
-rw-r--r--pkgs/applications/networking/Sylk/default.nix4
-rw-r--r--pkgs/applications/networking/brig/default.nix2
-rw-r--r--pkgs/applications/networking/browsers/arora/default.nix2
-rw-r--r--pkgs/applications/networking/browsers/brave/default.nix4
-rw-r--r--pkgs/applications/networking/browsers/browsh/default.nix4
-rw-r--r--pkgs/applications/networking/browsers/captive-browser/default.nix2
-rw-r--r--pkgs/applications/networking/browsers/chromium/browser.nix12
-rw-r--r--pkgs/applications/networking/browsers/chromium/common.nix55
-rw-r--r--pkgs/applications/networking/browsers/chromium/default.nix39
-rw-r--r--pkgs/applications/networking/browsers/chromium/patches/enable-vdpau-support-for-nvidia.patch (renamed from pkgs/applications/networking/browsers/chromium/patches/vaapi-fix.patch)42
-rw-r--r--pkgs/applications/networking/browsers/chromium/patches/enable-video-acceleration-on-linux.patch48
-rw-r--r--pkgs/applications/networking/browsers/chromium/plugins.nix4
-rw-r--r--pkgs/applications/networking/browsers/chromium/upstream-info.nix18
-rw-r--r--pkgs/applications/networking/browsers/dillo/default.nix2
-rw-r--r--pkgs/applications/networking/browsers/elinks/default.nix4
-rw-r--r--pkgs/applications/networking/browsers/eolie/default.nix2
-rw-r--r--pkgs/applications/networking/browsers/ephemeral/default.nix6
-rw-r--r--pkgs/applications/networking/browsers/falkon/default.nix2
-rw-r--r--pkgs/applications/networking/browsers/firefox-bin/beta_sources.nix770
-rw-r--r--pkgs/applications/networking/browsers/firefox-bin/default.nix4
-rw-r--r--pkgs/applications/networking/browsers/firefox-bin/devedition_sources.nix770
-rw-r--r--pkgs/applications/networking/browsers/firefox-bin/release_sources.nix770
-rw-r--r--pkgs/applications/networking/browsers/firefox/common.nix26
-rw-r--r--pkgs/applications/networking/browsers/firefox/no-buildconfig-ffx76.patch23
-rw-r--r--pkgs/applications/networking/browsers/firefox/packages.nix16
-rw-r--r--pkgs/applications/networking/browsers/firefox/wrapper.nix52
-rw-r--r--pkgs/applications/networking/browsers/google-chrome/default.nix4
-rw-r--r--pkgs/applications/networking/browsers/links2/default.nix2
-rw-r--r--pkgs/applications/networking/browsers/luakit/default.nix2
-rw-r--r--pkgs/applications/networking/browsers/lynx/default.nix2
-rw-r--r--pkgs/applications/networking/browsers/midori/default.nix2
-rw-r--r--pkgs/applications/networking/browsers/mozilla-plugins/bluejeans/default.nix55
-rw-r--r--pkgs/applications/networking/browsers/mozilla-plugins/flashplayer/default.nix12
-rw-r--r--pkgs/applications/networking/browsers/mozilla-plugins/flashplayer/standalone.nix8
-rw-r--r--pkgs/applications/networking/browsers/mozilla-plugins/fribid/builder.sh4
-rw-r--r--pkgs/applications/networking/browsers/mozilla-plugins/fribid/default.nix38
-rw-r--r--pkgs/applications/networking/browsers/mozilla-plugins/fribid/ipc-lazytrace.patch10
-rw-r--r--pkgs/applications/networking/browsers/mozilla-plugins/fribid/plugin-linkfix.patch11
-rw-r--r--pkgs/applications/networking/browsers/mozilla-plugins/fribid/translation-xgettext-to-intltool.patch16
-rw-r--r--pkgs/applications/networking/browsers/mozilla-plugins/google-talk-plugin/default.nix117
-rw-r--r--pkgs/applications/networking/browsers/mozilla-plugins/google-talk-plugin/preload.c60
-rw-r--r--pkgs/applications/networking/browsers/mozilla-plugins/mozplugger/default.nix31
-rw-r--r--pkgs/applications/networking/browsers/mozilla-plugins/mplayerplug-in/default.nix37
-rw-r--r--pkgs/applications/networking/browsers/mozilla-plugins/nspluginwrapper/default.nix40
-rw-r--r--pkgs/applications/networking/browsers/mozilla-plugins/nspluginwrapper/default.upstream4
-rw-r--r--pkgs/applications/networking/browsers/next/default.nix6
-rw-r--r--pkgs/applications/networking/browsers/next/next-gtk-webkit.nix2
-rw-r--r--pkgs/applications/networking/browsers/opera/default.nix4
-rw-r--r--pkgs/applications/networking/browsers/palemoon/default.nix98
-rw-r--r--pkgs/applications/networking/browsers/qutebrowser/default.nix6
-rw-r--r--pkgs/applications/networking/browsers/surf/default.nix2
-rw-r--r--pkgs/applications/networking/browsers/tor-browser-bundle-bin/default.nix8
-rw-r--r--pkgs/applications/networking/browsers/ungoogled-chromium/browser.nix94
-rw-r--r--pkgs/applications/networking/browsers/ungoogled-chromium/common.nix366
-rw-r--r--pkgs/applications/networking/browsers/ungoogled-chromium/default.nix215
-rw-r--r--pkgs/applications/networking/browsers/ungoogled-chromium/patches/dont-use-ANGLE-by-default.patch26
-rw-r--r--pkgs/applications/networking/browsers/ungoogled-chromium/patches/enable-vdpau-support-for-nvidia.patch74
-rw-r--r--pkgs/applications/networking/browsers/ungoogled-chromium/patches/enable-video-acceleration-on-linux.patch48
-rw-r--r--pkgs/applications/networking/browsers/ungoogled-chromium/patches/nix_plugin_paths_68.patch61
-rw-r--r--pkgs/applications/networking/browsers/ungoogled-chromium/patches/no-build-timestamps.patch17
-rw-r--r--pkgs/applications/networking/browsers/ungoogled-chromium/patches/remove-webp-include-69.patch11
-rw-r--r--pkgs/applications/networking/browsers/ungoogled-chromium/patches/widevine-79.patch13
-rw-r--r--pkgs/applications/networking/browsers/ungoogled-chromium/plugins.nix93
-rw-r--r--pkgs/applications/networking/browsers/ungoogled-chromium/ungoogled-src.nix6
-rw-r--r--pkgs/applications/networking/browsers/ungoogled-chromium/ungoogled.nix42
-rw-r--r--pkgs/applications/networking/browsers/ungoogled-chromium/update.nix271
-rwxr-xr-xpkgs/applications/networking/browsers/ungoogled-chromium/update.sh4
-rw-r--r--pkgs/applications/networking/browsers/ungoogled-chromium/upstream-info.nix18
-rw-r--r--pkgs/applications/networking/browsers/vimb/default.nix2
-rw-r--r--pkgs/applications/networking/browsers/vivaldi/default.nix6
-rw-r--r--pkgs/applications/networking/browsers/w3m/default.nix2
-rw-r--r--pkgs/applications/networking/browsers/webmacs/default.nix4
-rw-r--r--pkgs/applications/networking/c14/default.nix2
-rw-r--r--pkgs/applications/networking/calls/default.nix4
-rw-r--r--pkgs/applications/networking/cawbird/default.nix4
-rw-r--r--pkgs/applications/networking/charles/default.nix2
-rw-r--r--pkgs/applications/networking/cloudflared/default.nix4
-rw-r--r--pkgs/applications/networking/cluster/argo/default.nix6
-rw-r--r--pkgs/applications/networking/cluster/atlantis/default.nix8
-rw-r--r--pkgs/applications/networking/cluster/chronos/default.nix4
-rw-r--r--pkgs/applications/networking/cluster/click/default.nix2
-rw-r--r--pkgs/applications/networking/cluster/cni/default.nix11
-rw-r--r--pkgs/applications/networking/cluster/cni/plugins-deps.nix210
-rw-r--r--pkgs/applications/networking/cluster/cni/plugins.nix32
-rw-r--r--pkgs/applications/networking/cluster/docker-machine/default.nix16
-rw-r--r--pkgs/applications/networking/cluster/docker-machine/hyperkit.nix23
-rw-r--r--pkgs/applications/networking/cluster/docker-machine/kvm.nix2
-rw-r--r--pkgs/applications/networking/cluster/docker-machine/kvm2.nix33
-rw-r--r--pkgs/applications/networking/cluster/docker-machine/xhyve.nix2
-rw-r--r--pkgs/applications/networking/cluster/flink/default.nix6
-rw-r--r--pkgs/applications/networking/cluster/fluxctl/default.nix8
-rw-r--r--pkgs/applications/networking/cluster/habitat/default.nix31
-rw-r--r--pkgs/applications/networking/cluster/helm/default.nix8
-rw-r--r--pkgs/applications/networking/cluster/helmfile/default.nix8
-rw-r--r--pkgs/applications/networking/cluster/heptio-ark/default.nix4
-rw-r--r--pkgs/applications/networking/cluster/hetzner-kube/default.nix8
-rw-r--r--pkgs/applications/networking/cluster/jx/default.nix2
-rw-r--r--pkgs/applications/networking/cluster/k3s/default.nix235
-rw-r--r--pkgs/applications/networking/cluster/k3s/patches/00-k3s.patch74
-rw-r--r--pkgs/applications/networking/cluster/k9s/default.nix12
-rw-r--r--pkgs/applications/networking/cluster/kanif/default.nix2
-rw-r--r--pkgs/applications/networking/cluster/kompose/default.nix7
-rw-r--r--pkgs/applications/networking/cluster/kontemplate/default.nix2
-rw-r--r--pkgs/applications/networking/cluster/kops/default.nix40
-rw-r--r--pkgs/applications/networking/cluster/kube3d/default.nix10
-rw-r--r--pkgs/applications/networking/cluster/kubecfg/default.nix2
-rw-r--r--pkgs/applications/networking/cluster/kubernetes/default.nix8
-rw-r--r--pkgs/applications/networking/cluster/kubernix/default.nix24
-rw-r--r--pkgs/applications/networking/cluster/kubeseal/default.nix6
-rw-r--r--pkgs/applications/networking/cluster/kubetail/default.nix2
-rw-r--r--pkgs/applications/networking/cluster/kubeval/default.nix33
-rw-r--r--pkgs/applications/networking/cluster/kubeval/schema.nix15
-rw-r--r--pkgs/applications/networking/cluster/linkerd/default.nix2
-rw-r--r--pkgs/applications/networking/cluster/luigi/default.nix6
-rw-r--r--pkgs/applications/networking/cluster/marathon/default.nix4
-rw-r--r--pkgs/applications/networking/cluster/mesos/default.nix3
-rw-r--r--pkgs/applications/networking/cluster/minikube/default.nix86
-rw-r--r--pkgs/applications/networking/cluster/minishift/default.nix4
-rw-r--r--pkgs/applications/networking/cluster/node-problem-detector/default.nix50
-rw-r--r--pkgs/applications/networking/cluster/nomad/default.nix6
-rw-r--r--pkgs/applications/networking/cluster/openshift/default.nix35
-rw-r--r--pkgs/applications/networking/cluster/pachyderm/default.nix2
-rw-r--r--pkgs/applications/networking/cluster/pig/default.nix2
-rw-r--r--pkgs/applications/networking/cluster/prow/13918-fix-go-sum.patch22
-rw-r--r--pkgs/applications/networking/cluster/prow/default.nix75
-rw-r--r--pkgs/applications/networking/cluster/qbec/default.nix8
-rw-r--r--pkgs/applications/networking/cluster/spacegun/node-composition.nix2
-rw-r--r--pkgs/applications/networking/cluster/spacegun/node-packages.nix1783
-rw-r--r--pkgs/applications/networking/cluster/spark/default.nix2
-rw-r--r--pkgs/applications/networking/cluster/ssm-session-manager-plugin/default.nix29
-rw-r--r--pkgs/applications/networking/cluster/stern/default.nix14
-rw-r--r--pkgs/applications/networking/cluster/taktuk/default.nix2
-rw-r--r--pkgs/applications/networking/cluster/terraform-docs/default.nix4
-rw-r--r--pkgs/applications/networking/cluster/terraform-inventory/default.nix2
-rw-r--r--pkgs/applications/networking/cluster/terraform-landscape/Gemfile.lock2
-rw-r--r--pkgs/applications/networking/cluster/terraform-landscape/default.nix2
-rw-r--r--pkgs/applications/networking/cluster/terraform-providers/data.nix750
-rw-r--r--pkgs/applications/networking/cluster/terraform-providers/default.nix133
-rw-r--r--pkgs/applications/networking/cluster/terraform-providers/ibm/default.nix38
-rw-r--r--pkgs/applications/networking/cluster/terraform-providers/libvirt/default.nix7
-rw-r--r--pkgs/applications/networking/cluster/terraform-providers/lxd/default.nix25
-rw-r--r--pkgs/applications/networking/cluster/terraform-providers/providers.txt18
-rwxr-xr-xpkgs/applications/networking/cluster/terraform-providers/update-all162
-rw-r--r--pkgs/applications/networking/cluster/terraform-providers/vpsadmin/default.nix27
-rw-r--r--pkgs/applications/networking/cluster/terraform/default.nix26
-rw-r--r--pkgs/applications/networking/cluster/terragrunt/default.nix25
-rw-r--r--pkgs/applications/networking/cluster/terragrunt/deps.nix453
-rw-r--r--pkgs/applications/networking/cluster/tilt/default.nix2
-rw-r--r--pkgs/applications/networking/datovka/default.nix4
-rw-r--r--pkgs/applications/networking/davmail/default.nix2
-rw-r--r--pkgs/applications/networking/dnscontrol/default.nix24
-rw-r--r--pkgs/applications/networking/drive/default.nix2
-rw-r--r--pkgs/applications/networking/droopy/default.nix2
-rw-r--r--pkgs/applications/networking/dropbox/cli.nix6
-rw-r--r--pkgs/applications/networking/dropbox/default.nix2
-rw-r--r--pkgs/applications/networking/dyndns/cfdyndns/default.nix19
-rw-r--r--pkgs/applications/networking/enhanced-ctorrent/default.nix2
-rw-r--r--pkgs/applications/networking/errbot/default.nix2
-rw-r--r--pkgs/applications/networking/esniper/default.nix2
-rw-r--r--pkgs/applications/networking/feedreaders/canto-curses/default.nix2
-rw-r--r--pkgs/applications/networking/feedreaders/canto-daemon/default.nix2
-rw-r--r--pkgs/applications/networking/feedreaders/feedreader/default.nix2
-rw-r--r--pkgs/applications/networking/feedreaders/newsboat/default.nix25
-rw-r--r--pkgs/applications/networking/feedreaders/rawdog/default.nix2
-rw-r--r--pkgs/applications/networking/feedreaders/rss2email/default.nix2
-rw-r--r--pkgs/applications/networking/feedreaders/rssguard/default.nix6
-rw-r--r--pkgs/applications/networking/feedreaders/rsstail/default.nix8
-rw-r--r--pkgs/applications/networking/firehol/default.nix2
-rw-r--r--pkgs/applications/networking/firehol/iprange.nix2
-rw-r--r--pkgs/applications/networking/flent/http-getter.nix2
-rw-r--r--pkgs/applications/networking/flexget/default.nix2
-rw-r--r--pkgs/applications/networking/ftp/filezilla/default.nix23
-rw-r--r--pkgs/applications/networking/ftp/taxi/default.nix2
-rw-r--r--pkgs/applications/networking/gdrive/default.nix2
-rw-r--r--pkgs/applications/networking/gmailctl/default.nix27
-rw-r--r--pkgs/applications/networking/gns3/default.nix12
-rw-r--r--pkgs/applications/networking/gns3/gui.nix9
-rw-r--r--pkgs/applications/networking/gns3/server.nix13
-rw-r--r--pkgs/applications/networking/google-drive-ocamlfuse/default.nix2
-rw-r--r--pkgs/applications/networking/gopher/gopher/default.nix2
-rw-r--r--pkgs/applications/networking/gopher/gopherclient/default.nix45
-rw-r--r--pkgs/applications/networking/hydroxide/default.nix14
-rw-r--r--pkgs/applications/networking/ids/daq/default.nix2
-rw-r--r--pkgs/applications/networking/ids/snort/default.nix2
-rw-r--r--pkgs/applications/networking/ids/suricata/default.nix4
-rw-r--r--pkgs/applications/networking/ids/zeek/default.nix27
-rw-r--r--pkgs/applications/networking/ids/zeek/script.nix62
-rw-r--r--pkgs/applications/networking/ike/default.nix2
-rw-r--r--pkgs/applications/networking/instant-messengers/SkypeExport/default.nix2
-rw-r--r--pkgs/applications/networking/instant-messengers/amsn/default.nix4
-rw-r--r--pkgs/applications/networking/instant-messengers/baresip/default.nix2
-rw-r--r--pkgs/applications/networking/instant-messengers/bitlbee-discord/default.nix6
-rw-r--r--pkgs/applications/networking/instant-messengers/bitlbee-facebook/default.nix2
-rw-r--r--pkgs/applications/networking/instant-messengers/bitlbee-mastodon/default.nix4
-rw-r--r--pkgs/applications/networking/instant-messengers/bitlbee-steam/default.nix2
-rw-r--r--pkgs/applications/networking/instant-messengers/bitlbee/default.nix2
-rw-r--r--pkgs/applications/networking/instant-messengers/blink/default.nix4
-rw-r--r--pkgs/applications/networking/instant-messengers/bluejeans/default.nix123
-rw-r--r--pkgs/applications/networking/instant-messengers/bluejeans/localtime64_stub.c12
-rw-r--r--pkgs/applications/networking/instant-messengers/centerim/default.nix2
-rw-r--r--pkgs/applications/networking/instant-messengers/coyim/default.nix6
-rw-r--r--pkgs/applications/networking/instant-messengers/deltachat-electron/default.nix36
-rw-r--r--pkgs/applications/networking/instant-messengers/dino/default.nix2
-rw-r--r--pkgs/applications/networking/instant-messengers/discord/base.nix2
-rw-r--r--pkgs/applications/networking/instant-messengers/discord/default.nix10
-rwxr-xr-xpkgs/applications/networking/instant-messengers/discord/update-discord.sh36
-rw-r--r--pkgs/applications/networking/instant-messengers/fractal/default.nix4
-rw-r--r--pkgs/applications/networking/instant-messengers/franz/default.nix2
-rw-r--r--pkgs/applications/networking/instant-messengers/gajim/default.nix2
-rw-r--r--pkgs/applications/networking/instant-messengers/gomuks/default.nix25
-rw-r--r--pkgs/applications/networking/instant-messengers/gtmess/default.nix4
-rw-r--r--pkgs/applications/networking/instant-messengers/hipchat/default.nix2
-rw-r--r--pkgs/applications/networking/instant-messengers/jackline/default.nix19
-rw-r--r--pkgs/applications/networking/instant-messengers/jitsi-meet-electron/default.nix57
-rw-r--r--pkgs/applications/networking/instant-messengers/jitsi/default.nix2
-rw-r--r--pkgs/applications/networking/instant-messengers/linphone/default.nix251
-rw-r--r--pkgs/applications/networking/instant-messengers/linphone/fix_minizip_linking.patch13
-rw-r--r--pkgs/applications/networking/instant-messengers/matrix-dl/default.nix25
-rw-r--r--pkgs/applications/networking/instant-messengers/matrix-recorder/node-packages.nix2
-rw-r--r--pkgs/applications/networking/instant-messengers/mattermost-desktop/default.nix2
-rw-r--r--pkgs/applications/networking/instant-messengers/mcabber/default.nix2
-rw-r--r--pkgs/applications/networking/instant-messengers/mikutter/default.nix2
-rw-r--r--pkgs/applications/networking/instant-messengers/mm/default.nix2
-rw-r--r--pkgs/applications/networking/instant-messengers/nheko/default.nix113
-rw-r--r--pkgs/applications/networking/instant-messengers/oysttyer/default.nix2
-rw-r--r--pkgs/applications/networking/instant-messengers/pantalaimon/default.nix13
-rw-r--r--pkgs/applications/networking/instant-messengers/pidgin-plugins/carbons/default.nix8
-rw-r--r--pkgs/applications/networking/instant-messengers/pidgin-plugins/msn-pecan/default.nix4
-rw-r--r--pkgs/applications/networking/instant-messengers/pidgin-plugins/otr/default.nix2
-rw-r--r--pkgs/applications/networking/instant-messengers/pidgin-plugins/pidgin-latex/default.nix2
-rw-r--r--pkgs/applications/networking/instant-messengers/pidgin-plugins/pidgin-mra/default.nix2
-rw-r--r--pkgs/applications/networking/instant-messengers/pidgin-plugins/pidgin-opensteamworks/default.nix2
-rw-r--r--pkgs/applications/networking/instant-messengers/pidgin-plugins/pidgin-osd/default.nix2
-rw-r--r--pkgs/applications/networking/instant-messengers/pidgin-plugins/pidgin-skypeweb/default.nix2
-rw-r--r--pkgs/applications/networking/instant-messengers/pidgin-plugins/pidgin-xmpp-receipts/default.nix2
-rw-r--r--pkgs/applications/networking/instant-messengers/pidgin-plugins/purple-discord/default.nix2
-rw-r--r--pkgs/applications/networking/instant-messengers/pidgin-plugins/purple-hangouts/default.nix2
-rw-r--r--pkgs/applications/networking/instant-messengers/pidgin-plugins/purple-lurch/default.nix2
-rw-r--r--pkgs/applications/networking/instant-messengers/pidgin-plugins/purple-matrix/default.nix2
-rw-r--r--pkgs/applications/networking/instant-messengers/pidgin-plugins/purple-plugin-pack/default.nix2
-rw-r--r--pkgs/applications/networking/instant-messengers/pidgin-plugins/purple-slack/default.nix2
-rw-r--r--pkgs/applications/networking/instant-messengers/pidgin-plugins/purple-vk-plugin/default.nix2
-rw-r--r--pkgs/applications/networking/instant-messengers/pidgin-plugins/purple-xmpp-http-upload/default.nix2
-rw-r--r--pkgs/applications/networking/instant-messengers/pidgin-plugins/skype4pidgin/default.nix2
-rw-r--r--pkgs/applications/networking/instant-messengers/pidgin-plugins/telegram-purple/default.nix2
-rw-r--r--pkgs/applications/networking/instant-messengers/pidgin-plugins/tox-prpl/default.nix2
-rw-r--r--pkgs/applications/networking/instant-messengers/pidgin-plugins/window-merge/default.nix2
-rw-r--r--pkgs/applications/networking/instant-messengers/pidgin/default.nix2
-rw-r--r--pkgs/applications/networking/instant-messengers/poezio/default.nix2
-rw-r--r--pkgs/applications/networking/instant-messengers/profanity/default.nix2
-rw-r--r--pkgs/applications/networking/instant-messengers/psi-plus/default.nix17
-rw-r--r--pkgs/applications/networking/instant-messengers/pybitmessage/default.nix2
-rw-r--r--pkgs/applications/networking/instant-messengers/qtox/default.nix6
-rw-r--r--pkgs/applications/networking/instant-messengers/quaternion/default.nix79
-rw-r--r--pkgs/applications/networking/instant-messengers/rambox/default.nix10
-rw-r--r--pkgs/applications/networking/instant-messengers/rambox/pro.nix6
-rw-r--r--pkgs/applications/networking/instant-messengers/ratox/default.nix2
-rw-r--r--pkgs/applications/networking/instant-messengers/ricochet/default.nix6
-rw-r--r--pkgs/applications/networking/instant-messengers/ring-daemon/default.nix4
-rw-r--r--pkgs/applications/networking/instant-messengers/ring-daemon/restbed.nix2
-rw-r--r--pkgs/applications/networking/instant-messengers/riot/riot-desktop-package.json2
-rw-r--r--pkgs/applications/networking/instant-messengers/riot/riot-desktop-yarndeps.nix8
-rw-r--r--pkgs/applications/networking/instant-messengers/riot/riot-desktop.nix19
-rw-r--r--pkgs/applications/networking/instant-messengers/riot/riot-web.nix6
-rwxr-xr-xpkgs/applications/networking/instant-messengers/ripcord/default.nix69
-rw-r--r--pkgs/applications/networking/instant-messengers/salut-a-toi/default.nix2
-rw-r--r--pkgs/applications/networking/instant-messengers/scudcloud/default.nix2
-rw-r--r--pkgs/applications/networking/instant-messengers/signal-cli/default.nix6
-rw-r--r--pkgs/applications/networking/instant-messengers/signal-desktop/default.nix12
-rw-r--r--pkgs/applications/networking/instant-messengers/silc-client/default.nix2
-rw-r--r--pkgs/applications/networking/instant-messengers/sky/default.nix4
-rw-r--r--pkgs/applications/networking/instant-messengers/skype-call-recorder/default.nix2
-rw-r--r--pkgs/applications/networking/instant-messengers/skypeforlinux/default.nix10
-rw-r--r--pkgs/applications/networking/instant-messengers/slack-term/default.nix6
-rw-r--r--pkgs/applications/networking/instant-messengers/slack/dark-theme.nix19
-rw-r--r--pkgs/applications/networking/instant-messengers/slack/default.nix103
-rwxr-xr-xpkgs/applications/networking/instant-messengers/slack/update.sh19
-rw-r--r--pkgs/applications/networking/instant-messengers/stride/default.nix2
-rw-r--r--pkgs/applications/networking/instant-messengers/swift-im/default.nix8
-rw-r--r--pkgs/applications/networking/instant-messengers/teams/default.nix26
-rw-r--r--pkgs/applications/networking/instant-messengers/teamspeak/client.nix4
-rw-r--r--pkgs/applications/networking/instant-messengers/teamspeak/server.nix33
-rw-r--r--pkgs/applications/networking/instant-messengers/telegram/kotatogram-desktop/default.nix22
-rw-r--r--pkgs/applications/networking/instant-messengers/telegram/tdesktop/default.nix19
-rw-r--r--pkgs/applications/networking/instant-messengers/telepathy/gabble/default.nix2
-rw-r--r--pkgs/applications/networking/instant-messengers/telepathy/haze/default.nix2
-rw-r--r--pkgs/applications/networking/instant-messengers/telepathy/logger/default.nix2
-rw-r--r--pkgs/applications/networking/instant-messengers/telepathy/mission-control/default.nix13
-rw-r--r--pkgs/applications/networking/instant-messengers/tensor/default.nix6
-rw-r--r--pkgs/applications/networking/instant-messengers/torchat/default.nix2
-rw-r--r--pkgs/applications/networking/instant-messengers/turses/default.nix2
-rw-r--r--pkgs/applications/networking/instant-messengers/utox/default.nix2
-rw-r--r--pkgs/applications/networking/instant-messengers/vacuum/default.nix4
-rw-r--r--pkgs/applications/networking/instant-messengers/viber/default.nix2
-rw-r--r--pkgs/applications/networking/instant-messengers/vk-messenger/default.nix8
-rw-r--r--pkgs/applications/networking/instant-messengers/wavebox/default.nix2
-rw-r--r--pkgs/applications/networking/instant-messengers/wire-desktop/default.nix12
-rw-r--r--pkgs/applications/networking/instant-messengers/xmpp-client/default.nix2
-rw-r--r--pkgs/applications/networking/instant-messengers/zoom-us/default.nix4
-rw-r--r--pkgs/applications/networking/instant-messengers/zulip/default.nix6
-rw-r--r--pkgs/applications/networking/insync/default.nix2
-rw-r--r--pkgs/applications/networking/ipfs-cluster/default.nix8
-rw-r--r--pkgs/applications/networking/ipfs-migrator/default.nix2
-rw-r--r--pkgs/applications/networking/ipfs-migrator/deps.nix8
-rw-r--r--pkgs/applications/networking/ipfs/default.nix12
-rw-r--r--pkgs/applications/networking/ipget/default.nix2
-rw-r--r--pkgs/applications/networking/iptraf-ng/default.nix2
-rw-r--r--pkgs/applications/networking/iptraf/default.nix4
-rw-r--r--pkgs/applications/networking/irc/bip/default.nix2
-rw-r--r--pkgs/applications/networking/irc/communi/default.nix2
-rw-r--r--pkgs/applications/networking/irc/epic5/default.nix2
-rw-r--r--pkgs/applications/networking/irc/glowing-bear/default.nix2
-rw-r--r--pkgs/applications/networking/irc/hexchat/default.nix2
-rw-r--r--pkgs/applications/networking/irc/ii/default.nix2
-rw-r--r--pkgs/applications/networking/irc/irssi/default.nix2
-rw-r--r--pkgs/applications/networking/irc/irssi/fish/default.nix4
-rw-r--r--pkgs/applications/networking/irc/konversation/default.nix2
-rw-r--r--pkgs/applications/networking/irc/quassel/default.nix4
-rw-r--r--pkgs/applications/networking/irc/qweechat/default.nix4
-rw-r--r--pkgs/applications/networking/irc/sic/default.nix2
-rw-r--r--pkgs/applications/networking/irc/weechat/default.nix6
-rw-r--r--pkgs/applications/networking/irc/weechat/scripts/wee-slack/default.nix12
-rw-r--r--pkgs/applications/networking/irc/weechat/scripts/wee-slack/hardcode-json-file-path.patch12
-rw-r--r--pkgs/applications/networking/irc/weechat/scripts/weechat-autosort/default.nix4
-rw-r--r--pkgs/applications/networking/irc/weechat/scripts/weechat-matrix-bridge/default.nix2
-rw-r--r--pkgs/applications/networking/irc/weechat/scripts/weechat-matrix/default.nix14
-rw-r--r--pkgs/applications/networking/irc/wraith/default.nix2
-rw-r--r--pkgs/applications/networking/lieer/default.nix (renamed from pkgs/applications/networking/gmailieer/default.nix)12
-rw-r--r--pkgs/applications/networking/linssid/default.nix2
-rw-r--r--pkgs/applications/networking/maestral/default.nix41
-rw-r--r--pkgs/applications/networking/mailreaders/aerc/default.nix6
-rw-r--r--pkgs/applications/networking/mailreaders/afew/default.nix12
-rw-r--r--pkgs/applications/networking/mailreaders/astroid/default.nix2
-rw-r--r--pkgs/applications/networking/mailreaders/balsa/default.nix2
-rw-r--r--pkgs/applications/networking/mailreaders/claws-mail/default.nix2
-rw-r--r--pkgs/applications/networking/mailreaders/claws-mail/gtk3.nix121
-rw-r--r--pkgs/applications/networking/mailreaders/imapfilter.nix7
-rw-r--r--pkgs/applications/networking/mailreaders/lumail/default.nix2
-rw-r--r--pkgs/applications/networking/mailreaders/mailcheck/default.nix2
-rw-r--r--pkgs/applications/networking/mailreaders/mailnag/default.nix2
-rw-r--r--pkgs/applications/networking/mailreaders/mailpile/default.nix2
-rw-r--r--pkgs/applications/networking/mailreaders/mblaze/default.nix10
-rw-r--r--pkgs/applications/networking/mailreaders/mlarchive2maildir/default.nix2
-rw-r--r--pkgs/applications/networking/mailreaders/mmh/default.nix24
-rw-r--r--pkgs/applications/networking/mailreaders/msgviewer/default.nix2
-rw-r--r--pkgs/applications/networking/mailreaders/mutt/default.nix6
-rw-r--r--pkgs/applications/networking/mailreaders/neomutt/default.nix29
-rw-r--r--pkgs/applications/networking/mailreaders/notbit/default.nix2
-rw-r--r--pkgs/applications/networking/mailreaders/notmuch-addrlookup/default.nix2
-rw-r--r--pkgs/applications/networking/mailreaders/notmuch-bower/default.nix2
-rw-r--r--pkgs/applications/networking/mailreaders/notmuch/default.nix45
-rw-r--r--pkgs/applications/networking/mailreaders/notmuch/mutt.nix2
-rw-r--r--pkgs/applications/networking/mailreaders/sylpheed/default.nix2
-rw-r--r--pkgs/applications/networking/mailreaders/thunderbird-bin/default.nix4
-rw-r--r--pkgs/applications/networking/mailreaders/thunderbird-bin/release_sources.nix490
-rw-r--r--pkgs/applications/networking/mailreaders/thunderbird/default.nix6
-rw-r--r--pkgs/applications/networking/modem-manager-gui/default.nix13
-rw-r--r--pkgs/applications/networking/mpop/default.nix6
-rw-r--r--pkgs/applications/networking/msmtp/default.nix10
-rw-r--r--pkgs/applications/networking/mullvad-vpn/default.nix12
-rw-r--r--pkgs/applications/networking/mumble/default.nix4
-rw-r--r--pkgs/applications/networking/mumble/mumble-jack-support.patch457
-rw-r--r--pkgs/applications/networking/ndppd/default.nix2
-rw-r--r--pkgs/applications/networking/netperf/default.nix2
-rw-r--r--pkgs/applications/networking/newsreaders/liferea/default.nix2
-rw-r--r--pkgs/applications/networking/newsreaders/pan/default.nix2
-rw-r--r--pkgs/applications/networking/newsreaders/quiterss/default.nix11
-rw-r--r--pkgs/applications/networking/newsreaders/slrn/default.nix2
-rw-r--r--pkgs/applications/networking/nextcloud-client/default.nix6
-rw-r--r--pkgs/applications/networking/nload/default.nix2
-rw-r--r--pkgs/applications/networking/nntp-proxy/default.nix2
-rw-r--r--pkgs/applications/networking/nym/default.nix54
-rwxr-xr-xpkgs/applications/networking/nym/update.sh37
-rw-r--r--pkgs/applications/networking/offrss/default.nix4
-rw-r--r--pkgs/applications/networking/onionshare/default.nix113
-rw-r--r--pkgs/applications/networking/onionshare/fix-paths.patch134
-rw-r--r--pkgs/applications/networking/ostinato/default.nix2
-rw-r--r--pkgs/applications/networking/owamp/default.nix2
-rw-r--r--pkgs/applications/networking/owncloud-client/default.nix2
-rw-r--r--pkgs/applications/networking/p2p/deluge/1/default.nix (renamed from pkgs/applications/networking/p2p/deluge/default.nix)2
-rw-r--r--pkgs/applications/networking/p2p/deluge/2/default.nix44
-rw-r--r--pkgs/applications/networking/p2p/eiskaltdcpp/default.nix2
-rw-r--r--pkgs/applications/networking/p2p/freenet/default.nix6
-rw-r--r--pkgs/applications/networking/p2p/frostwire/default.nix2
-rw-r--r--pkgs/applications/networking/p2p/frostwire/frostwire-bin.nix6
-rw-r--r--pkgs/applications/networking/p2p/gnunet/default.nix2
-rw-r--r--pkgs/applications/networking/p2p/gnunet/git.nix4
-rw-r--r--pkgs/applications/networking/p2p/ktorrent/default.nix2
-rw-r--r--pkgs/applications/networking/p2p/magnetico/default.nix10
-rw-r--r--pkgs/applications/networking/p2p/mldonkey/default.nix4
-rw-r--r--pkgs/applications/networking/p2p/ncdc/default.nix2
-rw-r--r--pkgs/applications/networking/p2p/opentracker/default.nix2
-rw-r--r--pkgs/applications/networking/p2p/qbittorrent/default.nix6
-rw-r--r--pkgs/applications/networking/p2p/retroshare/default.nix2
-rw-r--r--pkgs/applications/networking/p2p/soulseekqt/default.nix76
-rw-r--r--pkgs/applications/networking/p2p/stig/default.nix22
-rw-r--r--pkgs/applications/networking/p2p/synapse-bt/default.nix2
-rw-r--r--pkgs/applications/networking/p2p/tixati/default.nix6
-rw-r--r--pkgs/applications/networking/p2p/torrential/default.nix2
-rw-r--r--pkgs/applications/networking/p2p/transgui/default.nix2
-rw-r--r--pkgs/applications/networking/p2p/transmission-remote-cli/default.nix2
-rw-r--r--pkgs/applications/networking/p2p/transmission-remote-gtk/default.nix2
-rw-r--r--pkgs/applications/networking/p2p/transmission/default.nix2
-rw-r--r--pkgs/applications/networking/p2p/tribler/default.nix11
-rw-r--r--pkgs/applications/networking/p2p/twister/default.nix2
-rw-r--r--pkgs/applications/networking/p2p/vuze/default.nix2
-rw-r--r--pkgs/applications/networking/ping/default.nix8
-rw-r--r--pkgs/applications/networking/pjsip/default.nix33
-rw-r--r--pkgs/applications/networking/protocol/default.nix2
-rw-r--r--pkgs/applications/networking/protonvpn-cli-ng/default.nix15
-rw-r--r--pkgs/applications/networking/protonvpn-cli/default.nix2
-rw-r--r--pkgs/applications/networking/ps2client/default.nix2
-rw-r--r--pkgs/applications/networking/pyload/beautifulsoup.nix2
-rw-r--r--pkgs/applications/networking/pyload/default.nix2
-rw-r--r--pkgs/applications/networking/remote/anydesk/default.nix6
-rw-r--r--pkgs/applications/networking/remote/citrix-workspace/default.nix21
-rw-r--r--pkgs/applications/networking/remote/freerdp/default.nix126
-rw-r--r--pkgs/applications/networking/remote/putty/default.nix2
-rw-r--r--pkgs/applications/networking/remote/rdesktop/default.nix12
-rw-r--r--pkgs/applications/networking/remote/remmina/default.nix6
-rw-r--r--pkgs/applications/networking/remote/teamviewer/default.nix2
-rw-r--r--pkgs/applications/networking/remote/waypipe/default.nix2
-rw-r--r--pkgs/applications/networking/remote/wayvnc/default.nix10
-rw-r--r--pkgs/applications/networking/remote/x2goclient/default.nix2
-rw-r--r--pkgs/applications/networking/remote/xrdp/default.nix2
-rw-r--r--pkgs/applications/networking/resilio-sync/default.nix2
-rw-r--r--pkgs/applications/networking/seafile-client/default.nix4
-rw-r--r--pkgs/applications/networking/sieve-connect/default.nix2
-rw-r--r--pkgs/applications/networking/siproxd/default.nix2
-rw-r--r--pkgs/applications/networking/sniffers/etherape/default.nix2
-rw-r--r--pkgs/applications/networking/sniffers/ettercap/default.nix2
-rw-r--r--pkgs/applications/networking/sniffers/kismet/default.nix33
-rw-r--r--pkgs/applications/networking/sniffers/whsniff/default.nix25
-rw-r--r--pkgs/applications/networking/sniffers/wireshark/default.nix6
-rw-r--r--pkgs/applications/networking/soapui/default.nix2
-rw-r--r--pkgs/applications/networking/soulseek/nicotine-plus/default.nix2
-rw-r--r--pkgs/applications/networking/spideroak/default.nix2
-rw-r--r--pkgs/applications/networking/ssb/patchwork/default.nix4
-rw-r--r--pkgs/applications/networking/super-productivity/default.nix2
-rw-r--r--pkgs/applications/networking/sync/acd_cli/default.nix2
-rw-r--r--pkgs/applications/networking/sync/backintime/common.nix2
-rw-r--r--pkgs/applications/networking/sync/casync/default.nix2
-rw-r--r--pkgs/applications/networking/sync/desync/default.nix2
-rw-r--r--pkgs/applications/networking/sync/lsyncd/default.nix2
-rw-r--r--pkgs/applications/networking/sync/rclone/default.nix29
-rw-r--r--pkgs/applications/networking/sync/rsync/base.nix2
-rw-r--r--pkgs/applications/networking/sync/unison/4.08-compatibility.patch52
-rw-r--r--pkgs/applications/networking/sync/unison/default.nix14
-rw-r--r--pkgs/applications/networking/sync/unison/lablgtk.patch31
-rw-r--r--pkgs/applications/networking/syncplay/default.nix2
-rw-r--r--pkgs/applications/networking/syncthing-gtk/default.nix13
-rw-r--r--pkgs/applications/networking/syncthing/default.nix17
-rw-r--r--pkgs/applications/networking/testssl/default.nix4
-rw-r--r--pkgs/applications/networking/trebleshot/default.nix2
-rw-r--r--pkgs/applications/networking/umurmur/default.nix2
-rw-r--r--pkgs/applications/networking/vnstat/default.nix2
-rw-r--r--pkgs/applications/networking/wayback_machine_downloader/Gemfile.lock2
-rw-r--r--pkgs/applications/networking/weather/meteo/default.nix2
-rw-r--r--pkgs/applications/networking/znc/default.nix2
-rw-r--r--pkgs/applications/networking/znc/modules.nix16
-rw-r--r--pkgs/applications/office/abiword/default.nix20
-rw-r--r--pkgs/applications/office/aesop/default.nix4
-rw-r--r--pkgs/applications/office/agenda/default.nix24
-rw-r--r--pkgs/applications/office/antiword/10_fix_buffer_overflow_wordole_c_CVE-2014-8123.patch (renamed from pkgs/applications/office/antiword/10_fix_buffer_overflow_wordole_c.patch)0
-rw-r--r--pkgs/applications/office/antiword/default.nix4
-rw-r--r--pkgs/applications/office/atlassian-cli/default.nix6
-rw-r--r--pkgs/applications/office/autokey/default.nix2
-rw-r--r--pkgs/applications/office/beancount/bean-add.nix2
-rw-r--r--pkgs/applications/office/bookworm/default.nix13
-rw-r--r--pkgs/applications/office/calligra/default.nix2
-rw-r--r--pkgs/applications/office/cb2bib/default.nix2
-rw-r--r--pkgs/applications/office/elementary-planner/default.nix45
-rw-r--r--pkgs/applications/office/fava/default.nix6
-rw-r--r--pkgs/applications/office/gnucash/default.nix7
-rw-r--r--pkgs/applications/office/gnumeric/default.nix2
-rw-r--r--pkgs/applications/office/grisbi/default.nix27
-rw-r--r--pkgs/applications/office/homebank/default.nix6
-rw-r--r--pkgs/applications/office/ib/controller/default.nix2
-rw-r--r--pkgs/applications/office/ib/tws/default.nix2
-rw-r--r--pkgs/applications/office/impressive/default.nix2
-rw-r--r--pkgs/applications/office/jabref/default.nix2
-rw-r--r--pkgs/applications/office/jameica/default.nix10
-rw-r--r--pkgs/applications/office/keepnote/default.nix2
-rw-r--r--pkgs/applications/office/kexi/default.nix2
-rw-r--r--pkgs/applications/office/khronos/default.nix4
-rw-r--r--pkgs/applications/office/kmymoney/default.nix2
-rw-r--r--pkgs/applications/office/ledger-autosync/default.nix6
-rw-r--r--pkgs/applications/office/ledger-web/Gemfile.lock2
-rw-r--r--pkgs/applications/office/ledger-web/default.nix2
-rw-r--r--pkgs/applications/office/ledger/2.6.3.nix41
-rw-r--r--pkgs/applications/office/ledger/default.nix2
-rw-r--r--pkgs/applications/office/libreoffice/default.nix15
-rw-r--r--pkgs/applications/office/libreoffice/src-fresh/download.nix8
-rw-r--r--pkgs/applications/office/libreoffice/src-fresh/primary.nix10
-rw-r--r--pkgs/applications/office/marp/default.nix2
-rw-r--r--pkgs/applications/office/mendeley/default.nix2
-rw-r--r--pkgs/applications/office/minetime/default.nix2
-rw-r--r--pkgs/applications/office/mmex/default.nix2
-rw-r--r--pkgs/applications/office/moneyplex/default.nix2
-rw-r--r--pkgs/applications/office/mytetra/default.nix2
-rw-r--r--pkgs/applications/office/notes-up/default.nix7
-rw-r--r--pkgs/applications/office/osmo/default.nix2
-rw-r--r--pkgs/applications/office/paperless/default.nix2
-rw-r--r--pkgs/applications/office/paperless/python-modules/django-crispy-forms.nix2
-rw-r--r--pkgs/applications/office/paperless/python-modules/django-filter.nix2
-rw-r--r--pkgs/applications/office/paperwork/backend.nix15
-rw-r--r--pkgs/applications/office/paperwork/default.nix51
-rw-r--r--pkgs/applications/office/pinpoint/default.nix2
-rw-r--r--pkgs/applications/office/planner/default.nix2
-rw-r--r--pkgs/applications/office/qnotero/default.nix2
-rw-r--r--pkgs/applications/office/qownnotes/default.nix2
-rw-r--r--pkgs/applications/office/scribus/default.nix2
-rw-r--r--pkgs/applications/office/scribus/unstable.nix50
-rw-r--r--pkgs/applications/office/skanlite/default.nix2
-rw-r--r--pkgs/applications/office/skrooge/default.nix2
-rw-r--r--pkgs/applications/office/softmaker/desktop_items.nix14
-rw-r--r--pkgs/applications/office/softmaker/freeoffice.nix4
-rw-r--r--pkgs/applications/office/softmaker/softmaker_office.nix4
-rw-r--r--pkgs/applications/office/spice-up/default.nix2
-rw-r--r--pkgs/applications/office/tagainijisho/default.nix4
-rw-r--r--pkgs/applications/office/timetrap/Gemfile.lock12
-rw-r--r--pkgs/applications/office/timetrap/default.nix2
-rw-r--r--pkgs/applications/office/timetrap/gemset.nix12
-rw-r--r--pkgs/applications/office/todo.txt-cli/default.nix2
-rw-r--r--pkgs/applications/office/todoman/default.nix2
-rw-r--r--pkgs/applications/office/treesheets/default.nix2
-rw-r--r--pkgs/applications/office/trilium/default.nix26
-rw-r--r--pkgs/applications/office/tryton/default.nix2
-rw-r--r--pkgs/applications/office/trytond/default.nix2
-rw-r--r--pkgs/applications/office/tudu/default.nix2
-rw-r--r--pkgs/applications/office/watson/default.nix14
-rw-r--r--pkgs/applications/office/wordgrinder/default.nix2
-rw-r--r--pkgs/applications/office/wpsoffice/default.nix165
-rw-r--r--pkgs/applications/office/zanshin/default.nix2
-rw-r--r--pkgs/applications/office/zim/default.nix2
-rw-r--r--pkgs/applications/office/zotero/default.nix13
-rw-r--r--pkgs/applications/radio/airspy/default.nix51
-rw-r--r--pkgs/applications/radio/aldo/default.nix2
-rw-r--r--pkgs/applications/radio/chirp/default.nix6
-rw-r--r--pkgs/applications/radio/cubicsdr/default.nix2
-rw-r--r--pkgs/applications/radio/dablin/default.nix6
-rw-r--r--pkgs/applications/radio/dmrconfig/default.nix2
-rw-r--r--pkgs/applications/radio/dump1090/default.nix8
-rw-r--r--pkgs/applications/radio/ebook2cw/default.nix2
-rw-r--r--pkgs/applications/radio/fldigi/default.nix6
-rw-r--r--pkgs/applications/radio/fllog/default.nix2
-rw-r--r--pkgs/applications/radio/flmsg/default.nix2
-rw-r--r--pkgs/applications/radio/flrig/default.nix6
-rw-r--r--pkgs/applications/radio/flwrap/default.nix2
-rw-r--r--pkgs/applications/radio/gnss-sdr/default.nix14
-rw-r--r--pkgs/applications/radio/gnuradio/ais.nix2
-rw-r--r--pkgs/applications/radio/gnuradio/default.nix2
-rw-r--r--pkgs/applications/radio/gnuradio/gsm.nix2
-rw-r--r--pkgs/applications/radio/gnuradio/limesdr.nix2
-rw-r--r--pkgs/applications/radio/gnuradio/nacl.nix2
-rw-r--r--pkgs/applications/radio/gnuradio/osmosdr.nix2
-rw-r--r--pkgs/applications/radio/gnuradio/rds.nix2
-rw-r--r--pkgs/applications/radio/gqrx/default.nix2
-rw-r--r--pkgs/applications/radio/hackrf/default.nix13
-rw-r--r--pkgs/applications/radio/kalibrate-hackrf/default.nix2
-rw-r--r--pkgs/applications/radio/kalibrate-rtl/default.nix2
-rw-r--r--pkgs/applications/radio/limesuite/default.nix2
-rw-r--r--pkgs/applications/radio/minimodem/default.nix2
-rw-r--r--pkgs/applications/radio/multimon-ng/default.nix2
-rw-r--r--pkgs/applications/radio/pyradio/default.nix4
-rw-r--r--pkgs/applications/radio/qradiolink/default.nix2
-rw-r--r--pkgs/applications/radio/qsstv/default.nix2
-rw-r--r--pkgs/applications/radio/rtl-sdr/default.nix6
-rw-r--r--pkgs/applications/radio/rtl_433/default.nix2
-rw-r--r--pkgs/applications/radio/sdrangel/default.nix4
-rw-r--r--pkgs/applications/radio/soapyairspy/default.nix2
-rw-r--r--pkgs/applications/radio/soapybladerf/default.nix2
-rw-r--r--pkgs/applications/radio/soapyhackrf/default.nix2
-rw-r--r--pkgs/applications/radio/soapyremote/default.nix2
-rw-r--r--pkgs/applications/radio/soapyrtlsdr/default.nix2
-rw-r--r--pkgs/applications/radio/soapysdr/default.nix6
-rw-r--r--pkgs/applications/radio/soapyuhd/default.nix2
-rw-r--r--pkgs/applications/radio/tlf/default.nix6
-rw-r--r--pkgs/applications/radio/tqsl/default.nix2
-rw-r--r--pkgs/applications/radio/uhd/default.nix150
-rw-r--r--pkgs/applications/radio/urh/default.nix4
-rw-r--r--pkgs/applications/radio/welle-io/default.nix6
-rw-r--r--pkgs/applications/radio/xlog/default.nix2
-rw-r--r--pkgs/applications/science/astronomy/astrolabe-generator/default.nix2
-rw-r--r--pkgs/applications/science/astronomy/celestia/default.nix2
-rw-r--r--pkgs/applications/science/astronomy/gildas/default.nix2
-rw-r--r--pkgs/applications/science/astronomy/gpredict/default.nix2
-rw-r--r--pkgs/applications/science/astronomy/gravit/default.nix2
-rw-r--r--pkgs/applications/science/astronomy/kstars/default.nix48
-rw-r--r--pkgs/applications/science/astronomy/openspace/default.nix2
-rw-r--r--pkgs/applications/science/astronomy/stellarium/default.nix6
-rw-r--r--pkgs/applications/science/astronomy/xplanet/default.nix2
-rw-r--r--pkgs/applications/science/biology/ants/default.nix2
-rw-r--r--pkgs/applications/science/biology/aragorn/default.nix2
-rw-r--r--pkgs/applications/science/biology/bcftools/default.nix2
-rw-r--r--pkgs/applications/science/biology/bedtools/default.nix2
-rw-r--r--pkgs/applications/science/biology/bftools/default.nix2
-rw-r--r--pkgs/applications/science/biology/blast/default.nix2
-rw-r--r--pkgs/applications/science/biology/bowtie2/default.nix2
-rw-r--r--pkgs/applications/science/biology/bwa/default.nix2
-rw-r--r--pkgs/applications/science/biology/cd-hit/default.nix2
-rw-r--r--pkgs/applications/science/biology/clustal-omega/default.nix2
-rw-r--r--pkgs/applications/science/biology/cmtk/default.nix2
-rw-r--r--pkgs/applications/science/biology/conglomerate/default.nix2
-rw-r--r--pkgs/applications/science/biology/dcm2niix/default.nix6
-rw-r--r--pkgs/applications/science/biology/deeptools/default.nix4
-rw-r--r--pkgs/applications/science/biology/diamond/default.nix4
-rw-r--r--pkgs/applications/science/biology/ecopcr/default.nix2
-rw-r--r--pkgs/applications/science/biology/eggnog-mapper/default.nix2
-rw-r--r--pkgs/applications/science/biology/emboss/default.nix2
-rw-r--r--pkgs/applications/science/biology/est-sfs/default.nix2
-rw-r--r--pkgs/applications/science/biology/exonerate/default.nix2
-rw-r--r--pkgs/applications/science/biology/freebayes/default.nix2
-rw-r--r--pkgs/applications/science/biology/hisat2/default.nix2
-rw-r--r--pkgs/applications/science/biology/hmmer/default.nix2
-rw-r--r--pkgs/applications/science/biology/igv/default.nix2
-rw-r--r--pkgs/applications/science/biology/itsx/default.nix2
-rw-r--r--pkgs/applications/science/biology/iv/default.nix2
-rw-r--r--pkgs/applications/science/biology/last/default.nix4
-rw-r--r--pkgs/applications/science/biology/megahit/default.nix2
-rw-r--r--pkgs/applications/science/biology/messer-slim/default.nix2
-rw-r--r--pkgs/applications/science/biology/migrate/default.nix2
-rw-r--r--pkgs/applications/science/biology/minc-tools/default.nix2
-rw-r--r--pkgs/applications/science/biology/minimap2/default.nix2
-rw-r--r--pkgs/applications/science/biology/mni_autoreg/default.nix2
-rw-r--r--pkgs/applications/science/biology/mosdepth/default.nix10
-rw-r--r--pkgs/applications/science/biology/mrbayes/default.nix2
-rw-r--r--pkgs/applications/science/biology/mrtrix/default.nix31
-rw-r--r--pkgs/applications/science/biology/muscle/default.nix2
-rw-r--r--pkgs/applications/science/biology/ncbi-tools/default.nix2
-rw-r--r--pkgs/applications/science/biology/neuron/default.nix2
-rw-r--r--pkgs/applications/science/biology/niftyreg/default.nix2
-rw-r--r--pkgs/applications/science/biology/niftyseg/default.nix2
-rw-r--r--pkgs/applications/science/biology/paml/default.nix2
-rw-r--r--pkgs/applications/science/biology/picard-tools/default.nix6
-rw-r--r--pkgs/applications/science/biology/platypus/default.nix2
-rw-r--r--pkgs/applications/science/biology/plink-ng/default.nix17
-rw-r--r--pkgs/applications/science/biology/plink/default.nix2
-rwxr-xr-xpkgs/applications/science/biology/poretools/default.nix2
-rw-r--r--pkgs/applications/science/biology/prodigal/default.nix2
-rw-r--r--pkgs/applications/science/biology/quast/default.nix58
-rw-r--r--pkgs/applications/science/biology/raxml/default.nix2
-rw-r--r--pkgs/applications/science/biology/samtools/default.nix2
-rw-r--r--pkgs/applications/science/biology/samtools/samtools_0_1_19.nix2
-rw-r--r--pkgs/applications/science/biology/seaview/default.nix6
-rw-r--r--pkgs/applications/science/biology/snpeff/default.nix2
-rw-r--r--pkgs/applications/science/biology/somatic-sniper/default.nix2
-rw-r--r--pkgs/applications/science/biology/sortmerna/default.nix2
-rw-r--r--pkgs/applications/science/biology/stacks/default.nix6
-rw-r--r--pkgs/applications/science/biology/strelka/default.nix2
-rw-r--r--pkgs/applications/science/biology/sumatools/default.nix2
-rwxr-xr-xpkgs/applications/science/biology/trimal/default.nix2
-rw-r--r--pkgs/applications/science/biology/varscan/default.nix2
-rwxr-xr-xpkgs/applications/science/biology/vcftools/default.nix2
-rw-r--r--pkgs/applications/science/chemistry/avogadro/default.nix2
-rw-r--r--pkgs/applications/science/chemistry/gwyddion/codegen.patch22
-rw-r--r--pkgs/applications/science/chemistry/gwyddion/default.nix75
-rw-r--r--pkgs/applications/science/chemistry/jmol/default.nix2
-rw-r--r--pkgs/applications/science/chemistry/marvin/default.nix6
-rw-r--r--pkgs/applications/science/chemistry/molden/default.nix4
-rw-r--r--pkgs/applications/science/chemistry/octopus/default.nix12
-rw-r--r--pkgs/applications/science/chemistry/openmolcas/default.nix6
-rw-r--r--pkgs/applications/science/chemistry/pymol/default.nix2
-rw-r--r--pkgs/applications/science/chemistry/quantum-espresso/default.nix4
-rw-r--r--pkgs/applications/science/chemistry/siesta/default.nix10
-rw-r--r--pkgs/applications/science/electronics/adms/default.nix2
-rw-r--r--pkgs/applications/science/electronics/alliance/default.nix2
-rw-r--r--pkgs/applications/science/electronics/archimedes/default.nix2
-rw-r--r--pkgs/applications/science/electronics/bitscope/common.nix2
-rw-r--r--pkgs/applications/science/electronics/caneda/default.nix6
-rw-r--r--pkgs/applications/science/electronics/dsview/default.nix6
-rw-r--r--pkgs/applications/science/electronics/dsview/libsigrok4dsl.nix6
-rw-r--r--pkgs/applications/science/electronics/dsview/libsigrokdecode4dsl.nix2
-rw-r--r--pkgs/applications/science/electronics/eagle/eagle.nix6
-rw-r--r--pkgs/applications/science/electronics/eagle/eagle7.nix2
-rw-r--r--pkgs/applications/science/electronics/fparser/default.nix26
-rw-r--r--pkgs/applications/science/electronics/fped/default.nix2
-rw-r--r--pkgs/applications/science/electronics/fritzing/default.nix2
-rw-r--r--pkgs/applications/science/electronics/geda/default.nix2
-rw-r--r--pkgs/applications/science/electronics/gerbv/default.nix4
-rw-r--r--pkgs/applications/science/electronics/gtkwave/default.nix2
-rw-r--r--pkgs/applications/science/electronics/kicad/default.nix4
-rw-r--r--pkgs/applications/science/electronics/kicad/libraries.nix17
-rwxr-xr-xpkgs/applications/science/electronics/kicad/update.sh30
-rw-r--r--pkgs/applications/science/electronics/kicad/versions.nix28
-rw-r--r--pkgs/applications/science/electronics/librepcb/default.nix2
-rw-r--r--pkgs/applications/science/electronics/magic-vlsi/0001-strip-bin-prefix.patch10
-rw-r--r--pkgs/applications/science/electronics/magic-vlsi/0002-fix-format-security.patch19
-rw-r--r--pkgs/applications/science/electronics/magic-vlsi/default.nix36
-rw-r--r--pkgs/applications/science/electronics/ngspice/default.nix2
-rw-r--r--pkgs/applications/science/electronics/pcb/default.nix2
-rw-r--r--pkgs/applications/science/electronics/pulseview/default.nix2
-rw-r--r--pkgs/applications/science/electronics/qfsm/default.nix2
-rw-r--r--pkgs/applications/science/electronics/qucs/default.nix2
-rw-r--r--pkgs/applications/science/electronics/tkgate/1.x.nix2
-rw-r--r--pkgs/applications/science/electronics/verilator/default.nix4
-rw-r--r--pkgs/applications/science/electronics/verilog/default.nix2
-rw-r--r--pkgs/applications/science/electronics/xcircuit/default.nix8
-rw-r--r--pkgs/applications/science/electronics/xoscope/default.nix2
-rw-r--r--pkgs/applications/science/geometry/drgeo/default.nix2
-rw-r--r--pkgs/applications/science/geometry/tetgen/1.4.nix2
-rw-r--r--pkgs/applications/science/geometry/tetgen/default.nix2
-rw-r--r--pkgs/applications/science/logic/abc/default.nix39
-rw-r--r--pkgs/applications/science/logic/abella/default.nix2
-rw-r--r--pkgs/applications/science/logic/acgtk/default.nix11
-rw-r--r--pkgs/applications/science/logic/aiger/default.nix2
-rw-r--r--pkgs/applications/science/logic/alt-ergo/default.nix47
-rw-r--r--pkgs/applications/science/logic/aspino/default.nix2
-rw-r--r--pkgs/applications/science/logic/avy/default.nix2
-rw-r--r--pkgs/applications/science/logic/beluga/default.nix40
-rw-r--r--pkgs/applications/science/logic/boolector/default.nix2
-rw-r--r--pkgs/applications/science/logic/cadical/default.nix29
-rw-r--r--pkgs/applications/science/logic/cedille/default.nix2
-rw-r--r--pkgs/applications/science/logic/celf/default.nix2
-rw-r--r--pkgs/applications/science/logic/clprover/clprover.nix2
-rw-r--r--pkgs/applications/science/logic/coq/default.nix3
-rw-r--r--pkgs/applications/science/logic/coq2html/default.nix2
-rw-r--r--pkgs/applications/science/logic/cryptominisat/default.nix6
-rw-r--r--pkgs/applications/science/logic/cubicle/default.nix2
-rw-r--r--pkgs/applications/science/logic/cvc3/default.nix2
-rw-r--r--pkgs/applications/science/logic/cvc4/default.nix2
-rw-r--r--pkgs/applications/science/logic/drat-trim/default.nix2
-rw-r--r--pkgs/applications/science/logic/elan/default.nix8
-rw-r--r--pkgs/applications/science/logic/eprover/default.nix2
-rw-r--r--pkgs/applications/science/logic/gappa/default.nix4
-rw-r--r--pkgs/applications/science/logic/hol/default.nix2
-rw-r--r--pkgs/applications/science/logic/hol_light/default.nix9
-rw-r--r--pkgs/applications/science/logic/iprover/default.nix2
-rw-r--r--pkgs/applications/science/logic/isabelle/default.nix2
-rw-r--r--pkgs/applications/science/logic/jonprl/default.nix2
-rw-r--r--pkgs/applications/science/logic/lean/default.nix5
-rw-r--r--pkgs/applications/science/logic/leo2/default.nix2
-rw-r--r--pkgs/applications/science/logic/lingeling/default.nix2
-rw-r--r--pkgs/applications/science/logic/logisim/default.nix2
-rw-r--r--pkgs/applications/science/logic/mcrl2/default.nix2
-rw-r--r--pkgs/applications/science/logic/mcy/default.nix17
-rw-r--r--pkgs/applications/science/logic/metis-prover/default.nix2
-rw-r--r--pkgs/applications/science/logic/minisat/default.nix2
-rw-r--r--pkgs/applications/science/logic/monosat/default.nix4
-rw-r--r--pkgs/applications/science/logic/open-wbo/default.nix2
-rw-r--r--pkgs/applications/science/logic/opensmt/default.nix2
-rw-r--r--pkgs/applications/science/logic/ott/default.nix2
-rw-r--r--pkgs/applications/science/logic/picosat/default.nix2
-rw-r--r--pkgs/applications/science/logic/poly/default.nix9
-rw-r--r--pkgs/applications/science/logic/potassco/clingcon.nix43
-rw-r--r--pkgs/applications/science/logic/prooftree/default.nix2
-rw-r--r--pkgs/applications/science/logic/prover9/default.nix4
-rw-r--r--pkgs/applications/science/logic/redprl/default.nix2
-rw-r--r--pkgs/applications/science/logic/sad/default.nix2
-rw-r--r--pkgs/applications/science/logic/satallax/default.nix7
-rw-r--r--pkgs/applications/science/logic/satallax/fix-declaration-gcc9.patch21
-rw-r--r--pkgs/applications/science/logic/symbiyosys/default.nix12
-rw-r--r--pkgs/applications/science/logic/tamarin-prover/default.nix2
-rw-r--r--pkgs/applications/science/logic/tlaplus/default.nix14
-rw-r--r--pkgs/applications/science/logic/tlaplus/tlaps.nix2
-rw-r--r--pkgs/applications/science/logic/tlaplus/toolbox.nix2
-rw-r--r--pkgs/applications/science/logic/twelf/default.nix2
-rw-r--r--pkgs/applications/science/logic/vampire/default.nix6
-rw-r--r--pkgs/applications/science/logic/verifast/default.nix2
-rw-r--r--pkgs/applications/science/logic/verit/default.nix2
-rw-r--r--pkgs/applications/science/logic/why3/default.nix12
-rw-r--r--pkgs/applications/science/logic/workcraft/default.nix6
-rw-r--r--pkgs/applications/science/machine-learning/fasttext/default.nix6
-rw-r--r--pkgs/applications/science/machine-learning/labelimg/default.nix2
-rw-r--r--pkgs/applications/science/machine-learning/shogun/default.nix8
-rw-r--r--pkgs/applications/science/machine-learning/streamlit/default.nix2
-rw-r--r--pkgs/applications/science/math/LiE/default.nix2
-rw-r--r--pkgs/applications/science/math/R/0001-Disable-test-pending-upstream-fix.patch26
-rw-r--r--pkgs/applications/science/math/R/default.nix27
-rw-r--r--pkgs/applications/science/math/R/fix-failing-test.patch25
-rw-r--r--pkgs/applications/science/math/almonds/default.nix2
-rw-r--r--pkgs/applications/science/math/bcal/default.nix2
-rw-r--r--pkgs/applications/science/math/bliss/default.nix2
-rw-r--r--pkgs/applications/science/math/caffe/default.nix6
-rw-r--r--pkgs/applications/science/math/calc/default.nix2
-rw-r--r--pkgs/applications/science/math/calculix/calculix.patch2
-rw-r--r--pkgs/applications/science/math/calculix/default.nix4
-rw-r--r--pkgs/applications/science/math/cbc/default.nix2
-rw-r--r--pkgs/applications/science/math/cemu/default.nix53
-rw-r--r--pkgs/applications/science/math/cntk/default.nix5
-rw-r--r--pkgs/applications/science/math/csdp/default.nix6
-rw-r--r--pkgs/applications/science/math/ecm/default.nix2
-rw-r--r--pkgs/applications/science/math/eukleides/default.nix2
-rw-r--r--pkgs/applications/science/math/form/default.nix2
-rw-r--r--pkgs/applications/science/math/fricas/default.nix2
-rw-r--r--pkgs/applications/science/math/gap/default.nix2
-rw-r--r--pkgs/applications/science/math/geogebra/default.nix6
-rw-r--r--pkgs/applications/science/math/getdp/default.nix23
-rw-r--r--pkgs/applications/science/math/gfan/default.nix2
-rw-r--r--pkgs/applications/science/math/giac/default.nix7
-rw-r--r--pkgs/applications/science/math/ginac/default.nix6
-rw-r--r--pkgs/applications/science/math/glsurf/default.nix2
-rw-r--r--pkgs/applications/science/math/gmsh/default.nix10
-rw-r--r--pkgs/applications/science/math/gurobi/default.nix2
-rw-r--r--pkgs/applications/science/math/hmetis/default.nix2
-rw-r--r--pkgs/applications/science/math/jags/default.nix8
-rw-r--r--pkgs/applications/science/math/lrcalc/default.nix2
-rw-r--r--pkgs/applications/science/math/mathematica/10.nix6
-rw-r--r--pkgs/applications/science/math/mathematica/11.nix6
-rw-r--r--pkgs/applications/science/math/mathematica/9.nix6
-rw-r--r--pkgs/applications/science/math/mathematica/default.nix13
-rw-r--r--pkgs/applications/science/math/mathematica/l10ns.nix6
-rw-r--r--pkgs/applications/science/math/maxima/5.41.nix2
-rw-r--r--pkgs/applications/science/math/maxima/default.nix2
-rw-r--r--pkgs/applications/science/math/msieve/default.nix4
-rw-r--r--pkgs/applications/science/math/mxnet/default.nix12
-rw-r--r--pkgs/applications/science/math/nasc/default.nix11
-rw-r--r--pkgs/applications/science/math/nauty/default.nix2
-rw-r--r--pkgs/applications/science/math/palp/default.nix8
-rw-r--r--pkgs/applications/science/math/pari/default.nix18
-rw-r--r--pkgs/applications/science/math/pari/gp2c.nix5
-rw-r--r--pkgs/applications/science/math/pcalc/default.nix4
-rw-r--r--pkgs/applications/science/math/perseus/default.nix2
-rw-r--r--pkgs/applications/science/math/pspp/default.nix2
-rw-r--r--pkgs/applications/science/math/pynac/default.nix2
-rw-r--r--pkgs/applications/science/math/qalculate-gtk/default.nix6
-rw-r--r--pkgs/applications/science/math/ratpoints/default.nix2
-rw-r--r--pkgs/applications/science/math/ries/default.nix2
-rw-r--r--pkgs/applications/science/math/ripser/default.nix4
-rw-r--r--pkgs/applications/science/math/rofi-calc/0001-Patch-plugindir-to-output.patch25
-rw-r--r--pkgs/applications/science/math/rofi-calc/default.nix54
-rw-r--r--pkgs/applications/science/math/sage/flask-oldsessions.nix2
-rw-r--r--pkgs/applications/science/math/sage/flask-openid.nix2
-rw-r--r--pkgs/applications/science/math/sage/patches/docutils-0.15.patch24
-rw-r--r--pkgs/applications/science/math/sage/python-openid.nix2
-rw-r--r--pkgs/applications/science/math/sage/sage-env.nix7
-rw-r--r--pkgs/applications/science/math/sage/sage-src.nix20
-rw-r--r--pkgs/applications/science/math/sage/sage-with-env.nix8
-rw-r--r--pkgs/applications/science/math/sage/sagelib.nix8
-rw-r--r--pkgs/applications/science/math/scilab-bin/default.nix2
-rw-r--r--pkgs/applications/science/math/scilab/default.nix2
-rw-r--r--pkgs/applications/science/math/scotch/default.nix2
-rw-r--r--pkgs/applications/science/math/singular/default.nix2
-rw-r--r--pkgs/applications/science/math/speedcrunch/default.nix2
-rw-r--r--pkgs/applications/science/math/symmetrica/default.nix70
-rw-r--r--pkgs/applications/science/math/weka/default.nix2
-rw-r--r--pkgs/applications/science/math/wxmaxima/default.nix10
-rw-r--r--pkgs/applications/science/math/yacas/default.nix2
-rw-r--r--pkgs/applications/science/medicine/aliza/default.nix2
-rw-r--r--pkgs/applications/science/misc/boinc/default.nix2
-rw-r--r--pkgs/applications/science/misc/colmap/default.nix2
-rw-r--r--pkgs/applications/science/misc/cytoscape/default.nix2
-rw-r--r--pkgs/applications/science/misc/fityk/default.nix2
-rw-r--r--pkgs/applications/science/misc/foldingathome/client.nix59
-rw-r--r--pkgs/applications/science/misc/foldingathome/control.nix60
-rw-r--r--pkgs/applications/science/misc/foldingathome/viewer.nix55
-rw-r--r--pkgs/applications/science/misc/gephi/default.nix2
-rw-r--r--pkgs/applications/science/misc/gplates/default.nix2
-rw-r--r--pkgs/applications/science/misc/megam/default.nix2
-rw-r--r--pkgs/applications/science/misc/netlogo/default.nix2
-rw-r--r--pkgs/applications/science/misc/openmodelica/default.nix8
-rw-r--r--pkgs/applications/science/misc/openmvg/default.nix2
-rw-r--r--pkgs/applications/science/misc/openmvs/default.nix2
-rw-r--r--pkgs/applications/science/misc/rink/default.nix13
-rw-r--r--pkgs/applications/science/misc/root/5.nix2
-rw-r--r--pkgs/applications/science/misc/root/default.nix2
-rw-r--r--pkgs/applications/science/misc/sasview/default.nix2
-rw-r--r--pkgs/applications/science/misc/sasview/xhtml2pdf.nix2
-rw-r--r--pkgs/applications/science/misc/simgrid/default.nix2
-rw-r--r--pkgs/applications/science/misc/snakemake/default.nix10
-rw-r--r--pkgs/applications/science/misc/tulip/default.nix2
-rw-r--r--pkgs/applications/science/misc/vite/default.nix2
-rw-r--r--pkgs/applications/science/molecular-dynamics/dl-poly-classic/default.nix2
-rw-r--r--pkgs/applications/science/molecular-dynamics/gromacs/default.nix6
-rw-r--r--pkgs/applications/science/molecular-dynamics/lammps/default.nix6
-rw-r--r--pkgs/applications/science/physics/elmerfem/default.nix49
-rw-r--r--pkgs/applications/science/physics/elmerfem/fix-cmake.patch13
-rw-r--r--pkgs/applications/science/physics/quantomatic/default.nix2
-rw-r--r--pkgs/applications/science/physics/sacrifice/default.nix2
-rw-r--r--pkgs/applications/science/physics/sherpa/default.nix16
-rw-r--r--pkgs/applications/science/physics/xfitter/default.nix6
-rw-r--r--pkgs/applications/science/programming/fdr/default.nix4
-rw-r--r--pkgs/applications/science/programming/groove/default.nix2
-rw-r--r--pkgs/applications/science/programming/scyther/default.nix2
-rw-r--r--pkgs/applications/science/robotics/apmplanner2/default.nix2
-rw-r--r--pkgs/applications/science/robotics/betaflight-configurator/default.nix2
-rw-r--r--pkgs/applications/science/robotics/gazebo/default.nix6
-rw-r--r--pkgs/applications/science/robotics/mavproxy/default.nix4
-rw-r--r--pkgs/applications/science/robotics/qgroundcontrol/default.nix2
-rw-r--r--pkgs/applications/science/robotics/yarp/default.nix2
-rw-r--r--pkgs/applications/search/doodle/default.nix2
-rw-r--r--pkgs/applications/search/grepcidr/default.nix2
-rw-r--r--pkgs/applications/search/grepm/default.nix2
-rw-r--r--pkgs/applications/search/recoll/default.nix2
-rw-r--r--pkgs/applications/system/glances/default.nix20
-rw-r--r--pkgs/applications/system/glances/skip-failing-tests.patch8
-rw-r--r--pkgs/applications/system/monitor/default.nix10
-rw-r--r--pkgs/applications/version-management/arch/default.nix15
-rw-r--r--pkgs/applications/version-management/bazaar/default.nix2
-rw-r--r--pkgs/applications/version-management/bazaar/tools.nix2
-rw-r--r--pkgs/applications/version-management/bitkeeper/default.nix2
-rw-r--r--pkgs/applications/version-management/cvs-fast-export/default.nix8
-rw-r--r--pkgs/applications/version-management/cvs/default.nix4
-rw-r--r--pkgs/applications/version-management/cvs2svn/default.nix2
-rw-r--r--pkgs/applications/version-management/cvsps/default.nix2
-rw-r--r--pkgs/applications/version-management/cvsq/default.nix6
-rw-r--r--pkgs/applications/version-management/dvc/default.nix2
-rw-r--r--pkgs/applications/version-management/fossil/default.nix2
-rw-r--r--pkgs/applications/version-management/gerrit/default.nix22
-rw-r--r--pkgs/applications/version-management/git-and-tools/bfg-repo-cleaner/default.nix2
-rw-r--r--pkgs/applications/version-management/git-and-tools/bitbucket-server-cli/Gemfile.lock2
-rw-r--r--pkgs/applications/version-management/git-and-tools/bitbucket-server-cli/default.nix2
-rw-r--r--pkgs/applications/version-management/git-and-tools/cgit/default.nix4
-rw-r--r--pkgs/applications/version-management/git-and-tools/darcs-to-git/default.nix2
-rw-r--r--pkgs/applications/version-management/git-and-tools/default.nix22
-rw-r--r--pkgs/applications/version-management/git-and-tools/delta/default.nix17
-rw-r--r--pkgs/applications/version-management/git-and-tools/diff-so-fancy/default.nix6
-rw-r--r--pkgs/applications/version-management/git-and-tools/fast-export/default.nix4
-rw-r--r--pkgs/applications/version-management/git-and-tools/gh/default.nix8
-rw-r--r--pkgs/applications/version-management/git-and-tools/ghq/default.nix2
-rw-r--r--pkgs/applications/version-management/git-and-tools/git-annex-metadata-gui/default.nix2
-rw-r--r--pkgs/applications/version-management/git-and-tools/git-annex-remote-dbx/default.nix2
-rw-r--r--pkgs/applications/version-management/git-and-tools/git-annex-remote-rclone/default.nix2
-rw-r--r--pkgs/applications/version-management/git-and-tools/git-annex-utils/default.nix4
-rw-r--r--pkgs/applications/version-management/git-and-tools/git-appraise/default.nix2
-rw-r--r--pkgs/applications/version-management/git-and-tools/git-big-picture/default.nix2
-rw-r--r--pkgs/applications/version-management/git-and-tools/git-bug/default.nix23
-rw-r--r--pkgs/applications/version-management/git-and-tools/git-bz/default.nix2
-rw-r--r--pkgs/applications/version-management/git-and-tools/git-cinnabar/default.nix50
-rw-r--r--pkgs/applications/version-management/git-and-tools/git-codereview/default.nix21
-rw-r--r--pkgs/applications/version-management/git-and-tools/git-cola/default.nix2
-rw-r--r--pkgs/applications/version-management/git-and-tools/git-crypt/default.nix2
-rw-r--r--pkgs/applications/version-management/git-and-tools/git-dit/default.nix9
-rw-r--r--pkgs/applications/version-management/git-and-tools/git-extras/default.nix2
-rw-r--r--pkgs/applications/version-management/git-and-tools/git-fame/Gemfile.lock2
-rw-r--r--pkgs/applications/version-management/git-and-tools/git-fame/default.nix2
-rw-r--r--pkgs/applications/version-management/git-and-tools/git-filter-repo/default.nix4
-rw-r--r--pkgs/applications/version-management/git-and-tools/git-gone/default.nix14
-rw-r--r--pkgs/applications/version-management/git-and-tools/git-ignore/default.nix9
-rw-r--r--pkgs/applications/version-management/git-and-tools/git-imerge/default.nix2
-rw-r--r--pkgs/applications/version-management/git-and-tools/git-machete/default.nix8
-rw-r--r--pkgs/applications/version-management/git-and-tools/git-my/default.nix2
-rw-r--r--pkgs/applications/version-management/git-and-tools/git-octopus/default.nix2
-rw-r--r--pkgs/applications/version-management/git-and-tools/git-open/default.nix2
-rw-r--r--pkgs/applications/version-management/git-and-tools/git-radar/default.nix2
-rw-r--r--pkgs/applications/version-management/git-and-tools/git-recent/default.nix2
-rw-r--r--pkgs/applications/version-management/git-and-tools/git-remote-gcrypt/default.nix2
-rw-r--r--pkgs/applications/version-management/git-and-tools/git-remote-hg/default.nix2
-rw-r--r--pkgs/applications/version-management/git-and-tools/git-secret/default.nix2
-rw-r--r--pkgs/applications/version-management/git-and-tools/git-secrets/default.nix2
-rw-r--r--pkgs/applications/version-management/git-and-tools/git-standup/default.nix4
-rw-r--r--pkgs/applications/version-management/git-and-tools/git-stree/default.nix2
-rw-r--r--pkgs/applications/version-management/git-and-tools/git-subrepo/default.nix2
-rw-r--r--pkgs/applications/version-management/git-and-tools/git-subtrac/default.nix4
-rw-r--r--pkgs/applications/version-management/git-and-tools/git-sync/default.nix2
-rw-r--r--pkgs/applications/version-management/git-and-tools/git-test/default.nix2
-rw-r--r--pkgs/applications/version-management/git-and-tools/git-trim/default.nix33
-rw-r--r--pkgs/applications/version-management/git-and-tools/git-workspace/default.nix6
-rw-r--r--pkgs/applications/version-management/git-and-tools/git/default.nix22
-rwxr-xr-xpkgs/applications/version-management/git-and-tools/git/update.sh9
-rw-r--r--pkgs/applications/version-management/git-and-tools/git2cl/default.nix2
-rw-r--r--pkgs/applications/version-management/git-and-tools/gita/default.nix6
-rw-r--r--pkgs/applications/version-management/git-and-tools/gitbatch/default.nix25
-rw-r--r--pkgs/applications/version-management/git-and-tools/gitbatch/deps.nix543
-rw-r--r--pkgs/applications/version-management/git-and-tools/gitflow/default.nix2
-rw-r--r--pkgs/applications/version-management/git-and-tools/gitstatus/default.nix10
-rw-r--r--pkgs/applications/version-management/git-and-tools/gitstatus/romkatv_libgit2.nix10
-rw-r--r--pkgs/applications/version-management/git-and-tools/gitui/default.nix24
-rw-r--r--pkgs/applications/version-management/git-and-tools/grv/default.nix29
-rw-r--r--pkgs/applications/version-management/git-and-tools/hub/default.nix19
-rw-r--r--pkgs/applications/version-management/git-and-tools/lab/default.nix2
-rw-r--r--pkgs/applications/version-management/git-and-tools/lefthook/default.nix6
-rw-r--r--pkgs/applications/version-management/git-and-tools/legit/default.nix30
-rw-r--r--pkgs/applications/version-management/git-and-tools/qgit/default.nix2
-rw-r--r--pkgs/applications/version-management/git-and-tools/scmpuff/default.nix24
-rw-r--r--pkgs/applications/version-management/git-and-tools/scmpuff/deps.nix273
-rw-r--r--pkgs/applications/version-management/git-and-tools/stgit/default.nix6
-rw-r--r--pkgs/applications/version-management/git-and-tools/subgit/default.nix2
-rw-r--r--pkgs/applications/version-management/git-and-tools/svn-all-fast-export/default.nix2
-rw-r--r--pkgs/applications/version-management/git-and-tools/svn2git/default.nix2
-rw-r--r--pkgs/applications/version-management/git-and-tools/thicket/default.nix14
-rw-r--r--pkgs/applications/version-management/git-and-tools/tig/default.nix23
-rw-r--r--pkgs/applications/version-management/git-and-tools/transcrypt/default.nix2
-rw-r--r--pkgs/applications/version-management/git-crecord/default.nix2
-rw-r--r--pkgs/applications/version-management/git-lfs/1.nix10
-rw-r--r--pkgs/applications/version-management/git-lfs/default.nix23
-rw-r--r--pkgs/applications/version-management/git-repo/default.nix6
-rw-r--r--pkgs/applications/version-management/git-review/default.nix2
-rw-r--r--pkgs/applications/version-management/git-up/default.nix2
-rw-r--r--pkgs/applications/version-management/gitea/default.nix42
-rw-r--r--pkgs/applications/version-management/gitea/static-root-path.patch16
-rw-r--r--pkgs/applications/version-management/gitinspector/default.nix2
-rw-r--r--pkgs/applications/version-management/gitkraken/default.nix6
-rw-r--r--pkgs/applications/version-management/gitlab/data.json10
-rw-r--r--pkgs/applications/version-management/gitlab/default.nix2
-rw-r--r--pkgs/applications/version-management/gitlab/gitaly/Gemfile.lock4
-rw-r--r--pkgs/applications/version-management/gitlab/gitaly/default.nix8
-rw-r--r--pkgs/applications/version-management/gitlab/gitaly/gemset.nix4
-rw-r--r--pkgs/applications/version-management/gitlab/gitlab-shell/default.nix6
-rw-r--r--pkgs/applications/version-management/gitlab/gitlab-workhorse/default.nix6
-rw-r--r--pkgs/applications/version-management/gitlab/rubyEnv/Gemfile2
-rw-r--r--pkgs/applications/version-management/gitlab/rubyEnv/Gemfile.lock20
-rw-r--r--pkgs/applications/version-management/gitlab/rubyEnv/gemset.nix20
-rwxr-xr-xpkgs/applications/version-management/gitlab/update.py23
-rw-r--r--pkgs/applications/version-management/gitless/default.nix2
-rw-r--r--pkgs/applications/version-management/gitolite/default.nix2
-rw-r--r--pkgs/applications/version-management/gitstats/default.nix2
-rw-r--r--pkgs/applications/version-management/gogs/default.nix11
-rw-r--r--pkgs/applications/version-management/gource/default.nix2
-rw-r--r--pkgs/applications/version-management/guitone/default.nix4
-rw-r--r--pkgs/applications/version-management/meld/default.nix2
-rw-r--r--pkgs/applications/version-management/mercurial/4.9.nix4
-rw-r--r--pkgs/applications/version-management/mercurial/default.nix8
-rw-r--r--pkgs/applications/version-management/monotone-viz/default.nix4
-rw-r--r--pkgs/applications/version-management/monotone-viz/graphviz-2.0.nix2
-rw-r--r--pkgs/applications/version-management/mr/default.nix2
-rw-r--r--pkgs/applications/version-management/nbstripout/default.nix6
-rw-r--r--pkgs/applications/version-management/nitpick/default.nix2
-rw-r--r--pkgs/applications/version-management/p4v/default.nix2
-rw-r--r--pkgs/applications/version-management/peru/default.nix2
-rw-r--r--pkgs/applications/version-management/pijul/default.nix2
-rw-r--r--pkgs/applications/version-management/rabbitvcs/default.nix2
-rw-r--r--pkgs/applications/version-management/rapidsvn/default.nix2
-rw-r--r--pkgs/applications/version-management/rcs/default.nix2
-rw-r--r--pkgs/applications/version-management/redmine/Gemfile4
-rw-r--r--pkgs/applications/version-management/redmine/Gemfile.lock123
-rw-r--r--pkgs/applications/version-management/redmine/default.nix8
-rw-r--r--pkgs/applications/version-management/redmine/gemset.nix308
-rw-r--r--pkgs/applications/version-management/reposurgeon/default.nix2
-rw-r--r--pkgs/applications/version-management/sit/default.nix12
-rw-r--r--pkgs/applications/version-management/smartgithg/default.nix2
-rw-r--r--pkgs/applications/version-management/sourcehut/builds.nix8
-rw-r--r--pkgs/applications/version-management/sourcehut/core.nix14
-rw-r--r--pkgs/applications/version-management/sourcehut/dispatch.nix6
-rw-r--r--pkgs/applications/version-management/sourcehut/git.nix9
-rw-r--r--pkgs/applications/version-management/sourcehut/hg.nix6
-rw-r--r--pkgs/applications/version-management/sourcehut/lists.nix6
-rw-r--r--pkgs/applications/version-management/sourcehut/man.nix6
-rw-r--r--pkgs/applications/version-management/sourcehut/meta.nix9
-rw-r--r--pkgs/applications/version-management/sourcehut/paste.nix6
-rw-r--r--pkgs/applications/version-management/sourcehut/scm.nix6
-rw-r--r--pkgs/applications/version-management/sourcehut/todo.nix6
-rw-r--r--pkgs/applications/version-management/srcml/default.nix2
-rw-r--r--pkgs/applications/version-management/sublime-merge/common.nix2
-rw-r--r--pkgs/applications/version-management/tkcvs/default.nix4
-rw-r--r--pkgs/applications/version-management/tortoisehg/default.nix2
-rw-r--r--pkgs/applications/version-management/vcprompt/default.nix2
-rw-r--r--pkgs/applications/version-management/vcsh/default.nix2
-rw-r--r--pkgs/applications/version-management/yadm/default.nix2
-rw-r--r--pkgs/applications/video/avidemux/default.nix2
-rw-r--r--pkgs/applications/video/avxsynth/default.nix2
-rw-r--r--pkgs/applications/video/bino3d/default.nix2
-rw-r--r--pkgs/applications/video/bombono/default.nix10
-rw-r--r--pkgs/applications/video/bomi/default.nix13
-rw-r--r--pkgs/applications/video/byzanz/default.nix4
-rw-r--r--pkgs/applications/video/celluloid/default.nix4
-rw-r--r--pkgs/applications/video/cinelerra/default.nix2
-rw-r--r--pkgs/applications/video/clickshare-csc1/default.nix6
-rw-r--r--pkgs/applications/video/clipgrab/default.nix6
-rw-r--r--pkgs/applications/video/coriander/default.nix2
-rw-r--r--pkgs/applications/video/devede/default.nix2
-rw-r--r--pkgs/applications/video/dvb-apps/default.nix2
-rw-r--r--pkgs/applications/video/dvd-slideshow/default.nix2
-rw-r--r--pkgs/applications/video/dvdauthor/default.nix2
-rw-r--r--pkgs/applications/video/dvdbackup/default.nix2
-rw-r--r--pkgs/applications/video/dvdstyler/default.nix2
-rw-r--r--pkgs/applications/video/ffmpeg-normalize/default.nix29
-rw-r--r--pkgs/applications/video/gnome-mplayer/default.nix2
-rw-r--r--pkgs/applications/video/gnomecast/default.nix2
-rw-r--r--pkgs/applications/video/gpac/default.nix2
-rw-r--r--pkgs/applications/video/handbrake/default.nix2
-rw-r--r--pkgs/applications/video/jellyfin-mpv-shim/default.nix49
-rw-r--r--pkgs/applications/video/jftui/default.nix23
-rw-r--r--pkgs/applications/video/k9copy/default.nix2
-rw-r--r--pkgs/applications/video/kazam/default.nix4
-rw-r--r--pkgs/applications/video/kino/default.nix4
-rw-r--r--pkgs/applications/video/kmplayer/default.nix2
-rw-r--r--pkgs/applications/video/kodi/default.nix107
-rw-r--r--pkgs/applications/video/kodi/plugins.nix37
-rw-r--r--pkgs/applications/video/lightworks/default.nix16
-rw-r--r--pkgs/applications/video/linuxstopmotion/default.nix2
-rw-r--r--pkgs/applications/video/lxdvdrip/default.nix2
-rw-r--r--pkgs/applications/video/makemkv/default.nix8
-rw-r--r--pkgs/applications/video/manim/default.nix2
-rw-r--r--pkgs/applications/video/mapmap/default.nix2
-rw-r--r--pkgs/applications/video/mediathekview/default.nix2
-rw-r--r--pkgs/applications/video/minitube/default.nix2
-rw-r--r--pkgs/applications/video/mkvtoolnix/default.nix6
-rw-r--r--pkgs/applications/video/motion/default.nix2
-rw-r--r--pkgs/applications/video/mpc-qt/default.nix16
-rw-r--r--pkgs/applications/video/mplayer/default.nix4
-rw-r--r--pkgs/applications/video/mpv/default.nix14
-rw-r--r--pkgs/applications/video/mpv/scripts/convert.nix9
-rw-r--r--pkgs/applications/video/mpv/scripts/mpris.nix29
-rw-r--r--pkgs/applications/video/mpv/wrapper.nix2
-rw-r--r--pkgs/applications/video/mythtv/default.nix2
-rw-r--r--pkgs/applications/video/natron/default.nix8
-rw-r--r--pkgs/applications/video/obs-studio/default.nix6
-rw-r--r--pkgs/applications/video/obs-studio/linuxbrowser.nix2
-rw-r--r--pkgs/applications/video/obs-studio/obs-ndi.nix2
-rw-r--r--pkgs/applications/video/obs-studio/v4l2sink.nix55
-rw-r--r--pkgs/applications/video/obs-studio/wlrobs.nix2
-rw-r--r--pkgs/applications/video/ogmtools/default.nix2
-rw-r--r--pkgs/applications/video/olive-editor/default.nix4
-rw-r--r--pkgs/applications/video/omxplayer/default.nix6
-rw-r--r--pkgs/applications/video/openshot-qt/default.nix15
-rw-r--r--pkgs/applications/video/openshot-qt/libopenshot-audio.nix6
-rw-r--r--pkgs/applications/video/openshot-qt/libopenshot.nix6
-rw-r--r--pkgs/applications/video/p2pvc/default.nix6
-rw-r--r--pkgs/applications/video/pitivi/default.nix2
-rw-r--r--pkgs/applications/video/plex-media-player/default.nix43
-rw-r--r--pkgs/applications/video/plex-media-player/deps.nix28
-rwxr-xr-xpkgs/applications/video/plex-media-player/update.sh71
-rw-r--r--pkgs/applications/video/plex-mpv-shim/default.nix4
-rw-r--r--pkgs/applications/video/pyca/default.nix2
-rw-r--r--pkgs/applications/video/qarte/default.nix4
-rw-r--r--pkgs/applications/video/qmediathekview/default.nix4
-rw-r--r--pkgs/applications/video/qstopmotion/default.nix59
-rw-r--r--pkgs/applications/video/quvi/library.nix2
-rw-r--r--pkgs/applications/video/quvi/scripts.nix2
-rw-r--r--pkgs/applications/video/quvi/tool.nix2
-rw-r--r--pkgs/applications/video/screenkey/default.nix2
-rw-r--r--pkgs/applications/video/shotcut/default.nix6
-rw-r--r--pkgs/applications/video/simplescreenrecorder/default.nix2
-rw-r--r--pkgs/applications/video/smplayer/default.nix2
-rw-r--r--pkgs/applications/video/smtube/default.nix2
-rw-r--r--pkgs/applications/video/streamlink/default.nix6
-rw-r--r--pkgs/applications/video/subdl/default.nix2
-rw-r--r--pkgs/applications/video/subtitleeditor/default.nix2
-rw-r--r--pkgs/applications/video/tartube/default.nix68
-rw-r--r--pkgs/applications/video/tivodecode/default.nix2
-rw-r--r--pkgs/applications/video/vdr/default.nix2
-rw-r--r--pkgs/applications/video/vdr/plugins.nix14
-rw-r--r--pkgs/applications/video/vdr/xineliboutput/default.nix21
-rw-r--r--pkgs/applications/video/vlc/default.nix2
-rw-r--r--pkgs/applications/video/vokoscreen/default.nix2
-rw-r--r--pkgs/applications/video/w_scan/default.nix2
-rw-r--r--pkgs/applications/video/webtorrent_desktop/default.nix2
-rw-r--r--pkgs/applications/video/wf-recorder/default.nix4
-rw-r--r--pkgs/applications/video/wxcam/default.nix2
-rw-r--r--pkgs/applications/video/xawtv/default.nix2
-rw-r--r--pkgs/applications/video/xine-ui/default.nix2
-rw-r--r--pkgs/applications/video/xscast/default.nix2
-rw-r--r--pkgs/applications/video/xvidcap/default.nix4
-rw-r--r--pkgs/applications/virtualization/8086tiny/default.nix2
-rw-r--r--pkgs/applications/virtualization/OVMF/default.nix4
-rw-r--r--pkgs/applications/virtualization/aqemu/default.nix6
-rw-r--r--pkgs/applications/virtualization/bochs/bochs-2.6.11-glibc-2.26.patch (renamed from pkgs/applications/virtualization/bochs/bochs-2.6.10-glibc-2.26.patch)0
-rw-r--r--pkgs/applications/virtualization/bochs/default.nix6
-rw-r--r--pkgs/applications/virtualization/bochs/fix-build-smp.patch21
-rw-r--r--pkgs/applications/virtualization/charliecloud/default.nix2
-rw-r--r--pkgs/applications/virtualization/cntr/default.nix2
-rw-r--r--pkgs/applications/virtualization/conmon/default.nix23
-rw-r--r--pkgs/applications/virtualization/containerd/default.nix21
-rw-r--r--pkgs/applications/virtualization/cri-o/default.nix69
-rw-r--r--pkgs/applications/virtualization/crosvm/default.nix15
-rwxr-xr-xpkgs/applications/virtualization/crosvm/update.py2
-rw-r--r--pkgs/applications/virtualization/crosvm/upstream-info.json22
-rw-r--r--pkgs/applications/virtualization/crun/default.nix7
-rw-r--r--pkgs/applications/virtualization/docker-compose/default.nix6
-rw-r--r--pkgs/applications/virtualization/docker-slim/default.nix6
-rw-r--r--pkgs/applications/virtualization/docker/default.nix20
-rw-r--r--pkgs/applications/virtualization/docker/gc.nix2
-rw-r--r--pkgs/applications/virtualization/docker/proxy.nix4
-rw-r--r--pkgs/applications/virtualization/driver/win-pvdrivers/default.nix2
-rw-r--r--pkgs/applications/virtualization/driver/win-qemu/default.nix2
-rw-r--r--pkgs/applications/virtualization/driver/win-signed-gplpv-drivers/default.nix2
-rw-r--r--pkgs/applications/virtualization/driver/win-spice/default.nix2
-rw-r--r--pkgs/applications/virtualization/driver/win-virtio/default.nix2
-rw-r--r--pkgs/applications/virtualization/firecracker/default.nix2
-rw-r--r--pkgs/applications/virtualization/firectl/default.nix2
-rw-r--r--pkgs/applications/virtualization/gvisor/containerd-shim.nix4
-rw-r--r--pkgs/applications/virtualization/gvisor/default.nix2
-rw-r--r--pkgs/applications/virtualization/hercules/default.nix18
-rw-r--r--pkgs/applications/virtualization/lkl/default.nix2
-rw-r--r--pkgs/applications/virtualization/looking-glass-client/default.nix2
-rw-r--r--pkgs/applications/virtualization/nvidia-docker/default.nix2
-rw-r--r--pkgs/applications/virtualization/nvidia-docker/libnvc-ldconfig-and-path-fixes.patch12
-rw-r--r--pkgs/applications/virtualization/nvidia-docker/libnvc.nix10
-rw-r--r--pkgs/applications/virtualization/open-vm-tools/default.nix2
-rw-r--r--pkgs/applications/virtualization/podman/default.nix36
-rw-r--r--pkgs/applications/virtualization/podman/wrapper.nix52
-rw-r--r--pkgs/applications/virtualization/qboot/default.nix2
-rw-r--r--pkgs/applications/virtualization/qemu/default.nix8
-rw-r--r--pkgs/applications/virtualization/qtemu/default.nix45
-rw-r--r--pkgs/applications/virtualization/railcar/default.nix12
-rw-r--r--pkgs/applications/virtualization/remotebox/default.nix2
-rw-r--r--pkgs/applications/virtualization/rkt/default.nix7
-rw-r--r--pkgs/applications/virtualization/runc/default.nix47
-rw-r--r--pkgs/applications/virtualization/seabios/default.nix8
-rw-r--r--pkgs/applications/virtualization/singularity/default.nix18
-rw-r--r--pkgs/applications/virtualization/spice-vdagent/default.nix6
-rw-r--r--pkgs/applications/virtualization/spike/default.nix6
-rw-r--r--pkgs/applications/virtualization/tini/default.nix6
-rw-r--r--pkgs/applications/virtualization/tinyemu/default.nix2
-rw-r--r--pkgs/applications/virtualization/virt-manager/default.nix2
-rw-r--r--pkgs/applications/virtualization/virt-manager/qt.nix2
-rw-r--r--pkgs/applications/virtualization/virt-top/default.nix6
-rw-r--r--pkgs/applications/virtualization/virtinst/default.nix2
-rw-r--r--pkgs/applications/virtualization/virtualbox/default.nix41
-rw-r--r--pkgs/applications/virtualization/virtualbox/extpack.nix9
-rw-r--r--pkgs/applications/virtualization/virtualbox/extra_symbols.patch21
-rw-r--r--pkgs/applications/virtualization/virtualbox/guest-additions/default.nix64
-rw-r--r--pkgs/applications/virtualization/virtualbox/hardened.patch52
-rwxr-xr-xpkgs/applications/virtualization/virtualbox/update.py85
-rwxr-xr-xpkgs/applications/virtualization/virtualbox/update.sh44
-rw-r--r--pkgs/applications/virtualization/x11docker/default.nix6
-rw-r--r--pkgs/applications/virtualization/xen/4.10.nix14
-rw-r--r--pkgs/applications/virtualization/xen/4.8.nix14
-rw-r--r--pkgs/applications/virtualization/xen/generic.nix2
-rw-r--r--pkgs/applications/virtualization/xhyve/default.nix2
-rw-r--r--pkgs/applications/window-managers/2bwm/default.nix2
-rw-r--r--pkgs/applications/window-managers/afterstep/default.nix2
-rw-r--r--pkgs/applications/window-managers/awesome/default.nix2
-rw-r--r--pkgs/applications/window-managers/bspwm/default.nix2
-rw-r--r--pkgs/applications/window-managers/bspwm/unstable.nix2
-rw-r--r--pkgs/applications/window-managers/btops/default.nix2
-rw-r--r--pkgs/applications/window-managers/cage/default.nix4
-rw-r--r--pkgs/applications/window-managers/clfswm/default.nix2
-rw-r--r--pkgs/applications/window-managers/dwm/default.nix2
-rw-r--r--pkgs/applications/window-managers/dwm/dwm-status.nix11
-rw-r--r--pkgs/applications/window-managers/dwm/git.nix2
-rw-r--r--pkgs/applications/window-managers/dzen2/default.nix2
-rw-r--r--pkgs/applications/window-managers/evilwm/default.nix4
-rw-r--r--pkgs/applications/window-managers/fluxbox/default.nix2
-rw-r--r--pkgs/applications/window-managers/fvwm/default.nix2
-rw-r--r--pkgs/applications/window-managers/herbstluftwm/default.nix47
-rw-r--r--pkgs/applications/window-managers/i3/blocks-gaps.nix2
-rw-r--r--pkgs/applications/window-managers/i3/blocks.nix4
-rw-r--r--pkgs/applications/window-managers/i3/default.nix10
-rw-r--r--pkgs/applications/window-managers/i3/easyfocus.nix2
-rw-r--r--pkgs/applications/window-managers/i3/gaps.nix11
-rw-r--r--pkgs/applications/window-managers/i3/i3ipc-glib.nix2
-rw-r--r--pkgs/applications/window-managers/i3/layout-manager.nix2
-rw-r--r--pkgs/applications/window-managers/i3/lock-color.nix6
-rw-r--r--pkgs/applications/window-managers/i3/lock-fancy.nix4
-rw-r--r--pkgs/applications/window-managers/i3/lock.nix2
-rw-r--r--pkgs/applications/window-managers/i3/pystatus.nix2
-rw-r--r--pkgs/applications/window-managers/i3/status-rust.nix2
-rw-r--r--pkgs/applications/window-managers/i3/status.nix2
-rw-r--r--pkgs/applications/window-managers/i3/wk-switch.nix8
-rw-r--r--pkgs/applications/window-managers/i3/wmfocus.nix17
-rw-r--r--pkgs/applications/window-managers/icewm/default.nix9
-rw-r--r--pkgs/applications/window-managers/ion-3/default.nix4
-rw-r--r--pkgs/applications/window-managers/jwm/default.nix2
-rw-r--r--pkgs/applications/window-managers/jwm/jwm-settings-manager.nix2
-rw-r--r--pkgs/applications/window-managers/kbdd/default.nix2
-rw-r--r--pkgs/applications/window-managers/larswm/default.nix4
-rw-r--r--pkgs/applications/window-managers/leftwm/cargo-lock.patch13
-rw-r--r--pkgs/applications/window-managers/leftwm/default.nix62
-rw-r--r--pkgs/applications/window-managers/lemonbar/default.nix2
-rw-r--r--pkgs/applications/window-managers/lemonbar/xft.nix2
-rw-r--r--pkgs/applications/window-managers/neocomp/default.nix2
-rw-r--r--pkgs/applications/window-managers/notion/default.nix14
-rw-r--r--pkgs/applications/window-managers/openbox/default.nix2
-rw-r--r--pkgs/applications/window-managers/oroborus/default.nix2
-rw-r--r--pkgs/applications/window-managers/pekwm/default.nix2
-rw-r--r--pkgs/applications/window-managers/qtile/default.nix2
-rw-r--r--pkgs/applications/window-managers/ratpoison/default.nix2
-rw-r--r--pkgs/applications/window-managers/sawfish/default.nix2
-rw-r--r--pkgs/applications/window-managers/spectrwm/default.nix38
-rw-r--r--pkgs/applications/window-managers/stalonetray/default.nix2
-rw-r--r--pkgs/applications/window-managers/stumpish/default.nix2
-rw-r--r--pkgs/applications/window-managers/stumpwm/default.nix2
-rw-r--r--pkgs/applications/window-managers/sway/default.nix2
-rw-r--r--pkgs/applications/window-managers/sway/lock-effects.nix40
-rw-r--r--pkgs/applications/window-managers/sway/wrapper.nix2
-rw-r--r--pkgs/applications/window-managers/tabbed/default.nix4
-rw-r--r--pkgs/applications/window-managers/trayer/default.nix2
-rw-r--r--pkgs/applications/window-managers/vwm/default.nix2
-rw-r--r--pkgs/applications/window-managers/weston/default.nix2
-rw-r--r--pkgs/applications/window-managers/windowmaker/default.nix2
-rw-r--r--pkgs/applications/window-managers/windowmaker/dockapps/alsamixer.app.nix4
-rw-r--r--pkgs/applications/window-managers/windowmaker/dockapps/wmcalclock.nix2
-rw-r--r--pkgs/applications/window-managers/windowmaker/dockapps/wmsm.app.nix4
-rw-r--r--pkgs/applications/window-managers/windowmaker/dockapps/wmsystemtray.nix4
-rw-r--r--pkgs/applications/window-managers/wmii-hg/default.nix4
-rw-r--r--pkgs/applications/window-managers/wtftw/default.nix42
-rw-r--r--pkgs/applications/window-managers/xmonad/log-applet/default.nix2
-rw-r--r--pkgs/applications/window-managers/yabar/build.nix2
2473 files changed, 28358 insertions, 16969 deletions
diff --git a/pkgs/applications/accessibility/contrast/default.nix b/pkgs/applications/accessibility/contrast/default.nix
index f82462c39333..192bf041c64e 100644
--- a/pkgs/applications/accessibility/contrast/default.nix
+++ b/pkgs/applications/accessibility/contrast/default.nix
@@ -19,7 +19,7 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "contrast";
-  version = "0.0.2";
+  version = "0.0.3";
 
   src = fetchFromGitLab {
     domain = "gitlab.gnome.org";
@@ -27,10 +27,10 @@ rustPlatform.buildRustPackage rec {
     owner = "design";
     repo = "contrast";
     rev = version;
-    sha256 = "0rm705zrk9rfv31pwbqxrswi5v6vhnghxa8dgxjmcrh00l8dm6j9";
+    sha256 = "0kk3mv7a6y258109xvgicmsi0lw0rcs00gfyivl5hdz7qh47iccy";
   };
 
-  cargoSha256 = "0qj0vmxa1d6war1vb3zgkf1drvk7awm970fw6692hd9msa9c1kkf";
+  cargoSha256 = "0vi8nv4hkhsgqgz36xacwkk5cxirg6li44nbmk3x7vx7c64hzybq";
 
   nativeBuildInputs = [
     desktop-file-utils
@@ -40,6 +40,7 @@ rustPlatform.buildRustPackage rec {
     pkgconfig
     python3
     wrapGAppsHook
+    glib # for glib-compile-resources
   ];
 
   buildInputs = [
@@ -63,7 +64,7 @@ rustPlatform.buildRustPackage rec {
 
   meta = with stdenv.lib; {
     description = "Checks whether the contrast between two colors meet the WCAG requirements";
-    homepage = https://gitlab.gnome.org/World/design/contrast;
+    homepage = "https://gitlab.gnome.org/World/design/contrast";
     license = licenses.gpl3;
     maintainers = with maintainers; [ jtojnar ];
   };
diff --git a/pkgs/applications/accessibility/dasher/default.nix b/pkgs/applications/accessibility/dasher/default.nix
index 9e8084e7a87a..43844d0c66bb 100644
--- a/pkgs/applications/accessibility/dasher/default.nix
+++ b/pkgs/applications/accessibility/dasher/default.nix
@@ -45,7 +45,7 @@ stdenv.mkDerivation {
   ] ++ lib.optional speechSupport speechd;
 
   meta = {
-    homepage = http://www.inference.org.uk/dasher/;
+    homepage = "http://www.inference.org.uk/dasher/";
     description = "Information-efficient text-entry interface, driven by natural continuous pointing gestures";
     license = lib.licenses.gpl2;
     maintainers = [ lib.maintainers.Profpatsch ];
diff --git a/pkgs/applications/accessibility/mousetweaks/default.nix b/pkgs/applications/accessibility/mousetweaks/default.nix
index e4fd66679a79..b645bc61848b 100644
--- a/pkgs/applications/accessibility/mousetweaks/default.nix
+++ b/pkgs/applications/accessibility/mousetweaks/default.nix
@@ -41,7 +41,7 @@ stdenv.mkDerivation rec {
       The features can be activated and configured through the Universal Access
       panel of the GNOME Control Center.
     '';
-    homepage = https://wiki.gnome.org/Projects/Mousetweaks;
+    homepage = "https://wiki.gnome.org/Projects/Mousetweaks";
     license = licenses.gpl2;
     platforms = platforms.linux;
     maintainers = [ maintainers.johnazoidberg ];
diff --git a/pkgs/applications/audio/AMB-plugins/default.nix b/pkgs/applications/audio/AMB-plugins/default.nix
index d9a05e0bf660..2e2af8f3a9a2 100644
--- a/pkgs/applications/audio/AMB-plugins/default.nix
+++ b/pkgs/applications/audio/AMB-plugins/default.nix
@@ -25,7 +25,7 @@ stdenv.mkDerivation rec {
       Mono and stereo to B-format panning, horizontal rotator, square, hexagon and cube decoders.
     '';
     version = version;
-    homepage = http://kokkinizita.linuxaudio.org/linuxaudio/ladspa/index.html;
+    homepage = "http://kokkinizita.linuxaudio.org/linuxaudio/ladspa/index.html";
     license = stdenv.lib.licenses.gpl2Plus;
     maintainers = [ stdenv.lib.maintainers.magnetophon ];
     platforms = stdenv.lib.platforms.linux;
diff --git a/pkgs/applications/audio/FIL-plugins/default.nix b/pkgs/applications/audio/FIL-plugins/default.nix
index cf383c1dd495..253e724cd313 100644
--- a/pkgs/applications/audio/FIL-plugins/default.nix
+++ b/pkgs/applications/audio/FIL-plugins/default.nix
@@ -29,7 +29,7 @@ stdenv.mkDerivation rec {
       This should make this plugin a good candidate for use in systems that allow automation of plugin control ports, such as Ardour, or for stage use.
     '';
     version = version;
-    homepage = http://kokkinizita.linuxaudio.org/linuxaudio/ladspa/index.html;
+    homepage = "http://kokkinizita.linuxaudio.org/linuxaudio/ladspa/index.html";
     license = stdenv.lib.licenses.gpl2Plus;
     maintainers = [ stdenv.lib.maintainers.magnetophon ];
     platforms = stdenv.lib.platforms.linux;
diff --git a/pkgs/applications/audio/MMA/default.nix b/pkgs/applications/audio/MMA/default.nix
index 42f8af99e6f4..8b7629bc908b 100644
--- a/pkgs/applications/audio/MMA/default.nix
+++ b/pkgs/applications/audio/MMA/default.nix
@@ -1,12 +1,12 @@
 { stdenv, fetchurl, makeWrapper, python3, alsaUtils, timidity }:
 
   stdenv.mkDerivation rec {
-  version = "19.08";
+  version = "20.02";
   pname = "mma";
 
   src = fetchurl {
     url = "https://www.mellowood.ca/mma/mma-bin-${version}.tar.gz";
-    sha256 = "02g2q9f1hbrj1v4mbf7zx2571vqpfla5803hcjpkdkvn8g0dwci0";
+    sha256 = "0i9c3f14j7wy2c86ky83f2vgmg5bihnnwsmpkq13fgqjsaf0qwnv";
   };
 
   buildInputs = [ makeWrapper python3 alsaUtils timidity ];
@@ -19,6 +19,7 @@
     sed -i 's@/usr/bin/timidity@/${timidity}/bin/timidity@g' mma-splitrec
     sed -i 's@/usr/bin/timidity@/${timidity}/bin/timidity@g' util/mma-splitrec.py
     find . -type f | xargs sed -i 's@/usr/bin/env python@${python3.interpreter}@g'
+    find . -type f | xargs sed -i 's@/usr/bin/python@${python3.interpreter}@g'
   '';
 
   installPhase = ''
@@ -60,7 +61,7 @@
 
   meta = {
     description = "Creates MIDI tracks for a soloist to perform over from a user supplied file containing chords";
-    homepage =  http://www.mellowood.ca/mma/index.html;
+    homepage =  "https://www.mellowood.ca/mma/index.html";
     license = stdenv.lib.licenses.gpl2;
     maintainers = [ stdenv.lib.maintainers.magnetophon ];
     platforms = stdenv.lib.platforms.linux;
diff --git a/pkgs/applications/audio/a2jmidid/default.nix b/pkgs/applications/audio/a2jmidid/default.nix
index 283317200484..64468bddc852 100644
--- a/pkgs/applications/audio/a2jmidid/default.nix
+++ b/pkgs/applications/audio/a2jmidid/default.nix
@@ -18,11 +18,11 @@ in stdenv.mkDerivation {
 
   patches = [
     (fetchpatch {
-      url = https://repo.or.cz/a2jmidid.git/patch/24e3b8e543256ae8fdfb4b75eb9fd775f07c46e2;
+      url = "https://repo.or.cz/a2jmidid.git/patch/24e3b8e543256ae8fdfb4b75eb9fd775f07c46e2";
       sha256 = "1nxrvnhxlgqc9wbxnp1gnpw4wjyzxvymwcg1gh2nqzmssgfykfkc";
     })
     (fetchpatch {
-      url = https://repo.or.cz/a2jmidid.git/patch/7f82da7eb2f540a94db23331be98d42a58ddc269;
+      url = "https://repo.or.cz/a2jmidid.git/patch/7f82da7eb2f540a94db23331be98d42a58ddc269";
       sha256 = "1nab9zf0agbcj5pvhl90pz0cx1d204d4janqflc5ymjhy8jyrsdv";
     })
   ];
diff --git a/pkgs/applications/audio/aacgain/default.nix b/pkgs/applications/audio/aacgain/default.nix
index 5892351225d3..194514c65b53 100644
--- a/pkgs/applications/audio/aacgain/default.nix
+++ b/pkgs/applications/audio/aacgain/default.nix
@@ -55,7 +55,7 @@ stdenv.mkDerivation {
 
   meta = with stdenv.lib; {
     description = "ReplayGain for AAC files";
-    homepage = https://aacgain.altosdesign.com;
+    homepage = "https://aacgain.altosdesign.com";
     license = licenses.gpl2;
     platforms = platforms.linux;
     maintainers = [ maintainers.robbinch ];
diff --git a/pkgs/applications/audio/abcde/default.nix b/pkgs/applications/audio/abcde/default.nix
index adb38d4bbbab..4cb28e512a72 100644
--- a/pkgs/applications/audio/abcde/default.nix
+++ b/pkgs/applications/audio/abcde/default.nix
@@ -46,7 +46,7 @@ in
     '';
 
     meta = with stdenv.lib; {
-      homepage = http://abcde.einval.com/wiki/;
+      homepage = "http://abcde.einval.com/wiki/";
       license = licenses.gpl2Plus;
       maintainers = with maintainers; [ gebner ];
       description = "Command-line audio CD ripper";
diff --git a/pkgs/applications/audio/aeolus/default.nix b/pkgs/applications/audio/aeolus/default.nix
index ee9932a7aa3b..bfd75b4e75cf 100644
--- a/pkgs/applications/audio/aeolus/default.nix
+++ b/pkgs/applications/audio/aeolus/default.nix
@@ -4,11 +4,11 @@
 
 stdenv.mkDerivation rec {
   pname = "aeolus";
-  version = "0.9.7";
+  version = "0.9.8";
 
   src = fetchurl {
     url = "https://kokkinizita.linuxaudio.org/linuxaudio/downloads/${pname}-${version}.tar.bz2";
-    sha256 = "0lhbr95hmbfj8ynbcpawn7jzjbpvrkm6k2yda39yhqk1bzg38v2k";
+    sha256 = "1zfr3567mwbqsfybkhg03n5dvmhllk88c9ayb10qzz2nh6d7g2qn";
   };
 
   buildInputs = [
@@ -24,7 +24,7 @@ stdenv.mkDerivation rec {
 
   meta = {
     description = "Synthetized (not sampled) pipe organ emulator";
-    homepage = http://kokkinizita.linuxaudio.org/linuxaudio/aeolus/index.html;
+    homepage = "http://kokkinizita.linuxaudio.org/linuxaudio/aeolus/index.html";
     license = stdenv.lib.licenses.lgpl3;
     platforms = stdenv.lib.platforms.linux;
     maintainers = [ stdenv.lib.maintainers.nico202 ];
diff --git a/pkgs/applications/audio/airwave/default.nix b/pkgs/applications/audio/airwave/default.nix
index 1d91ad4d2be1..176d1d4cfb37 100644
--- a/pkgs/applications/audio/airwave/default.nix
+++ b/pkgs/applications/audio/airwave/default.nix
@@ -83,7 +83,7 @@ multiStdenv.mkDerivation {
       protocol to correctly embed the plugin editor into the host
       window.
     '';
-    homepage = https://github.com/phantom-code/airwave;
+    homepage = "https://github.com/phantom-code/airwave";
     license = licenses.mit;
     platforms = [ "x86_64-linux" ];
     maintainers = with maintainers; [ michalrus ];
diff --git a/pkgs/applications/audio/aj-snapshot/default.nix b/pkgs/applications/audio/aj-snapshot/default.nix
index 5c379b57ad6a..f781aad905d0 100644
--- a/pkgs/applications/audio/aj-snapshot/default.nix
+++ b/pkgs/applications/audio/aj-snapshot/default.nix
@@ -24,7 +24,7 @@ stdenv.mkDerivation rec {
     You can also run aj-snapshot in daemon mode if you want to have your connections continually restored.
     '';
 
-    homepage = http://aj-snapshot.sourceforge.net/;
+    homepage = "http://aj-snapshot.sourceforge.net/";
     license = licenses.gpl2;
     maintainers = [ maintainers.mrVanDalo ];
     platforms = platforms.all;
diff --git a/pkgs/applications/audio/amarok/default.nix b/pkgs/applications/audio/amarok/default.nix
index cd951701e771..25fceb357cc5 100644
--- a/pkgs/applications/audio/amarok/default.nix
+++ b/pkgs/applications/audio/amarok/default.nix
@@ -14,7 +14,7 @@ mkDerivation rec {
     # master has the Qt5 version as of April 2018 but a formal release has not
     # yet been made so change this back to the proper upstream when such a
     # release is out
-    url    = git://anongit.kde.org/amarok.git;
+    url    = "git://anongit.kde.org/amarok.git";
     # url = "mirror://kde/stable/${pname}/${version}/src/${name}.tar.xz";
     rev    = "457fbda25a85a102bfda92aa7137e7ef5e4c8b00";
     sha256 = "1ig2mg8pqany6m2zplkrvldcv4ibxwsypnyv5igm7nz7ax82cd5j";
diff --git a/pkgs/applications/audio/ams/default.nix b/pkgs/applications/audio/ams/default.nix
new file mode 100644
index 000000000000..e6c4fbe802e1
--- /dev/null
+++ b/pkgs/applications/audio/ams/default.nix
@@ -0,0 +1,48 @@
+{ stdenv
+, fetchgit
+, automake
+, alsaLib
+, ladspaH
+, libjack2
+, fftw
+, zita-alsa-pcmi
+, qt5
+, pkg-config
+, autoreconfHook
+}:
+
+stdenv.mkDerivation rec {
+  name = "ams";
+  version = "unstable-2019-04-27";
+
+  src = fetchgit {
+    url = "https://git.code.sf.net/p/alsamodular/ams.git";
+    sha256 = "0qdyz5llpa94f3qx1xi1mz97vl5jyrj1mqff28p5g9i5rxbbk8z9";
+    rev = "3250bbcfea331c4fcb9845305eebded80054973d";
+  };
+
+  nativeBuildInputs = [
+    autoreconfHook
+    pkg-config
+    qt5.wrapQtAppsHook
+  ];
+
+  buildInputs = [
+    alsaLib
+    ladspaH
+    libjack2
+    fftw
+    zita-alsa-pcmi
+  ] ++ (with qt5; [
+    qtbase
+    qttools
+  ]);
+
+  meta = with stdenv.lib; {
+    description = "Realtime modular synthesizer for ALSA";
+    homepage = "http://alsamodular.sourceforge.net";
+    license = licenses.gpl2;
+    platforms = platforms.linux;
+    maintainers = with maintainers; [ sjfloat ];
+  };
+}
diff --git a/pkgs/applications/audio/ardour/default.nix b/pkgs/applications/audio/ardour/default.nix
index 30a4e052d77c..fadfedf5384f 100644
--- a/pkgs/applications/audio/ardour/default.nix
+++ b/pkgs/applications/audio/ardour/default.nix
@@ -1,14 +1,51 @@
-{ stdenv, fetchgit, alsaLib, aubio, boost, cairomm, curl, doxygen
-, fftwSinglePrec, flac, glibc, glibmm, graphviz, gtkmm2, libjack2
-, libgnomecanvas, libgnomecanvasmm, liblo, libmad, libogg, librdf
-, librdf_raptor, librdf_rasqal, libsamplerate, libsigcxx, libsndfile
-, libusb, libuuid, libxml2, libxslt, lilv, lv2, makeWrapper
-, perl, pkgconfig, python2, rubberband, serd, sord, sratom
-, taglib, vampSDK, dbus, fftw, pango, suil, libarchive
-, wafHook }:
-
+{ stdenv
+, fetchgit
+, alsaLib
+, aubio
+, boost
+, cairomm
+, curl
+, doxygen
+, fftwSinglePrec
+, flac
+, glibc
+, glibmm
+, graphviz
+, gtkmm2
+, libjack2
+, liblo
+, libogg
+, libsamplerate
+, libsigcxx
+, libsndfile
+, libusb1
+, fluidsynth_1
+, hidapi
+, libltc
+, qm-dsp
+, libxml2
+, lilv
+, lrdf
+, lv2
+, makeWrapper
+, perl
+, pkg-config
+, itstool
+, python2
+, rubberband
+, serd
+, sord
+, sratom
+, taglib
+, vamp-plugin-sdk
+, dbus
+, fftw
+, pango
+, suil
+, libarchive
+, wafHook
+}:
 let
-
   # Ardour git repo uses a mix of annotated and lightweight tags. Annotated
   # tags are used for MAJOR.MINOR versioning, and lightweight tags are used
   # in-between; MAJOR.MINOR.REV where REV is the number of commits since the
@@ -18,10 +55,7 @@ let
 
   # Version to build.
   tag = "5.12";
-
-in
-
-stdenv.mkDerivation rec {
+in stdenv.mkDerivation rec {
   name = "ardour-${tag}";
 
   src = fetchgit {
@@ -30,46 +64,84 @@ stdenv.mkDerivation rec {
     sha256 = "0mla5lm51ryikc2rrk53max2m7a5ds6i1ai921l2h95wrha45nkr";
   };
 
-  nativeBuildInputs = [ wafHook ];
-  buildInputs =
-    [ alsaLib aubio boost cairomm curl doxygen dbus fftw fftwSinglePrec flac
-      glibmm graphviz gtkmm2 libjack2 libgnomecanvas libgnomecanvasmm liblo
-      libmad libogg librdf librdf_raptor librdf_rasqal libsamplerate
-      libsigcxx libsndfile libusb libuuid libxml2 libxslt lilv lv2
-      makeWrapper pango perl pkgconfig python2 rubberband serd sord
-      sratom suil taglib vampSDK libarchive
-    ];
+  nativeBuildInputs = [
+    wafHook
+    makeWrapper
+    pkg-config
+    itstool
+    doxygen
+    graphviz # for dot
+    perl
+    python2
+  ];
 
-  # ardour's wscript has a "tarball" target but that required the git revision
-  # be available. Since this is an unzipped tarball fetched from github we
-  # have to do that ourself.
-  patchPhase = ''
-    printf '#include "libs/ardour/ardour/revision.h"\nnamespace ARDOUR { const char* revision = \"${tag}-${builtins.substring 0 8 src.rev}\"; }\n' > libs/ardour/revision.cc
-    sed 's|/usr/include/libintl.h|${glibc.dev}/include/libintl.h|' -i wscript
-    patchShebangs ./tools/
-  '';
+  buildInputs = [
+    alsaLib
+    aubio
+    boost
+    cairomm
+    curl
+    dbus
+    fftw
+    fftwSinglePrec
+    flac
+    glibmm
+    gtkmm2
+    libjack2
+    liblo
+    libogg
+    libsamplerate
+    libsigcxx
+    libsndfile
+    libusb1
+    fluidsynth_1
+    hidapi
+    libltc
+    qm-dsp
+    libxml2
+    lilv
+    lrdf
+    lv2
+    pango
+    rubberband
+    serd
+    sord
+    sratom
+    suil
+    taglib
+    vamp-plugin-sdk
+    libarchive
+  ];
 
   wafConfigureFlags = [
     "--optimize"
     "--docs"
+    "--use-external-libs"
+    "--freedesktop"
     "--with-backends=jack,alsa,dummy"
   ];
 
+  NIX_CFLAGS_COMPILE = "-I${qm-dsp}/include/qm-dsp";
+
+  # ardour's wscript has a "tarball" target but that required the git revision
+  # be available. Since this is an unzipped tarball fetched from github we
+  # have to do that ourself.
+  postPatch = ''
+    printf '#include "libs/ardour/ardour/revision.h"\nnamespace ARDOUR { const char* revision = \"${tag}-${builtins.substring 0 8 src.rev}\"; }\n' > libs/ardour/revision.cc
+    patchShebangs ./tools/
+  '';
+
   postInstall = ''
-    # Install desktop file
-    mkdir -p "$out/share/applications"
-    cat > "$out/share/applications/ardour.desktop" << EOF
-    [Desktop Entry]
-    Name=Ardour 5
-    GenericName=Digital Audio Workstation
-    Comment=Multitrack harddisk recorder
-    Exec=$out/bin/ardour5
-    Icon=$out/share/ardour5/resources/Ardour-icon_256px.png
-    Terminal=false
-    Type=Application
-    X-MultipleArgs=false
-    Categories=GTK;Audio;AudioVideoEditing;AudioVideo;Video;
-    EOF
+    # wscript does not install these for some reason
+    install -vDm 644 "build/gtk2_ardour/ardour.xml" \
+      -t "$out/share/mime/packages"
+    install -vDm 644 "build/gtk2_ardour/ardour5.desktop" \
+      -t "$out/share/applications"
+    for size in 16 22 32 48 256 512; do
+      install -vDm 644 "gtk2_ardour/resources/Ardour-icon_''${size}px.png" \
+        "$out/share/icons/hicolor/''${size}x''${size}/apps/ardour5.png"
+    done
+    install -vDm 644 "ardour.1"* -t "$out/share/man/man1"
   '';
 
   meta = with stdenv.lib; {
@@ -83,7 +155,7 @@ stdenv.mkDerivation rec {
       Please consider supporting the ardour project financially:
       https://community.ardour.org/node/8288
     '';
-    homepage = http://ardour.org/;
+    homepage = "http://ardour.org/";
     license = licenses.gpl2;
     platforms = platforms.linux;
     maintainers = [ maintainers.goibhniu maintainers.fps ];
diff --git a/pkgs/applications/audio/ario/default.nix b/pkgs/applications/audio/ario/default.nix
index 4b48f5f1eea2..99a09e7ee330 100644
--- a/pkgs/applications/audio/ario/default.nix
+++ b/pkgs/applications/audio/ario/default.nix
@@ -19,7 +19,7 @@ stdenv.mkDerivation rec {
 
   meta = {
     description = "GTK client for MPD (Music player daemon)";
-    homepage = http://ario-player.sourceforge.net/;
+    homepage = "http://ario-player.sourceforge.net/";
     license = stdenv.lib.licenses.gpl2Plus;
     maintainers = [ stdenv.lib.maintainers.garrison ];
     platforms = stdenv.lib.platforms.all;
diff --git a/pkgs/applications/audio/artyFX/default.nix b/pkgs/applications/audio/artyFX/default.nix
index 4b76ebdf6053..0265e0f75ecb 100644
--- a/pkgs/applications/audio/artyFX/default.nix
+++ b/pkgs/applications/audio/artyFX/default.nix
@@ -15,7 +15,7 @@ stdenv.mkDerivation rec {
   buildInputs = [ cairomm cmake libjack2 libpthreadstubs libXdmcp libxshmfence libsndfile lv2 ntk   ];
 
   meta = with stdenv.lib; {
-    homepage = http://openavproductions.com/artyfx/;
+    homepage = "http://openavproductions.com/artyfx/";
     description = "A LV2 plugin bundle of artistic realtime effects";
     license = licenses.gpl2;
     maintainers = [ maintainers.magnetophon ];
diff --git a/pkgs/applications/audio/asunder/default.nix b/pkgs/applications/audio/asunder/default.nix
index 5a0b6797a241..7d90ac36f366 100644
--- a/pkgs/applications/audio/asunder/default.nix
+++ b/pkgs/applications/audio/asunder/default.nix
@@ -38,7 +38,7 @@ stdenv.mkDerivation rec {
 
   meta = {
     description = "A graphical Audio CD ripper and encoder for Linux";
-    homepage = http://littlesvr.ca/asunder/index.php;
+    homepage = "http://littlesvr.ca/asunder/index.php";
     license = licenses.gpl2;
     maintainers = with maintainers; [ mudri ];
     platforms = platforms.linux;
diff --git a/pkgs/applications/audio/aucatctl/default.nix b/pkgs/applications/audio/aucatctl/default.nix
new file mode 100644
index 000000000000..4aff3e1f7bfb
--- /dev/null
+++ b/pkgs/applications/audio/aucatctl/default.nix
@@ -0,0 +1,37 @@
+{ stdenv, fetchurl, sndio, libbsd }:
+
+stdenv.mkDerivation rec {
+  pname = "aucatctl";
+  version = "0.1";
+
+  src = fetchurl {
+    url = "http://www.sndio.org/${pname}-${version}.tar.gz";
+    sha256 = "524f2fae47db785234f166551520d9605b9a27551ca438bd807e3509ce246cf0";
+  };
+
+  buildInputs = [ sndio ]
+    ++ stdenv.lib.optional (!stdenv.isDarwin && !stdenv.targetPlatform.isBSD)
+    libbsd;
+
+  outputs = [ "out" "man" ];
+
+  preBuild = ''
+    makeFlagsArray+=("PREFIX=$out")
+  '' + stdenv.lib.optionalString
+    (!stdenv.isDarwin && !stdenv.targetPlatform.isBSD) ''
+      makeFlagsArray+=(LDADD="-lsndio -lbsd")
+
+      # Fix warning about implicit declaration of function 'strlcpy'
+      substituteInPlace aucatctl.c \
+        --replace '#include <string.h>' '#include <bsd/string.h>'
+    '';
+
+  meta = with stdenv.lib; {
+    description =
+      "The aucatctl utility sends MIDI messages to control sndiod and/or aucat volumes";
+    homepage = "http://www.sndio.org";
+    license = licenses.isc;
+    maintainers = with maintainers; [ sna ];
+    platforms = platforms.unix;
+  };
+}
diff --git a/pkgs/applications/audio/audacious/default.nix b/pkgs/applications/audio/audacious/default.nix
index 12e8237d4857..b06175f37f31 100644
--- a/pkgs/applications/audio/audacious/default.nix
+++ b/pkgs/applications/audio/audacious/default.nix
@@ -60,7 +60,7 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "Audio player";
-    homepage = https://audacious-media-player.org/;
+    homepage = "https://audacious-media-player.org/";
     maintainers = with maintainers; [ eelco ramkromberg ];
     platforms = with platforms; linux;
     license = with licenses; [
diff --git a/pkgs/applications/audio/audacious/qt-5.nix b/pkgs/applications/audio/audacious/qt-5.nix
index baf7b108e504..45525571a646 100644
--- a/pkgs/applications/audio/audacious/qt-5.nix
+++ b/pkgs/applications/audio/audacious/qt-5.nix
@@ -81,7 +81,7 @@ mkDerivation {
 
   meta = with lib; {
     description = "Audio player";
-    homepage = https://audacious-media-player.org/;
+    homepage = "https://audacious-media-player.org/";
     maintainers = with maintainers; [ ttuegel ];
     platforms = with platforms; linux;
     license = with licenses; [
diff --git a/pkgs/applications/audio/audacity/default.nix b/pkgs/applications/audio/audacity/default.nix
index 57e0c52e6406..a1f4b9ad950a 100644
--- a/pkgs/applications/audio/audacity/default.nix
+++ b/pkgs/applications/audio/audacity/default.nix
@@ -57,7 +57,7 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "Sound editor with graphical UI";
-    homepage = http://audacityteam.org/;
+    homepage = "http://audacityteam.org/";
     license = licenses.gpl2Plus;
     platforms = intersectLists platforms.linux platforms.x86; # fails on ARM
     maintainers = with maintainers; [ the-kenny ];
diff --git a/pkgs/applications/audio/audio-recorder/default.nix b/pkgs/applications/audio/audio-recorder/default.nix
index 534b87e9fa74..eee293b76c2f 100644
--- a/pkgs/applications/audio/audio-recorder/default.nix
+++ b/pkgs/applications/audio/audio-recorder/default.nix
@@ -36,7 +36,7 @@ stdenv.mkDerivation rec {
       automatically record your Skype calls. It supports several audio (output)
       formats such as OGG audio, Flac, MP3 and WAV.
     '';
-    homepage = https://launchpad.net/~audio-recorder;
+    homepage = "https://launchpad.net/~audio-recorder";
     license = licenses.gpl3;
     platforms = platforms.linux;
     maintainers = [ maintainers.msteen ];
diff --git a/pkgs/applications/audio/aumix/default.nix b/pkgs/applications/audio/aumix/default.nix
index db5f081c4ed4..5bc7f8432582 100644
--- a/pkgs/applications/audio/aumix/default.nix
+++ b/pkgs/applications/audio/aumix/default.nix
@@ -21,7 +21,7 @@ stdenv.mkDerivation rec {
       Aumix adjusts an audio mixer from X, the console, a terminal,
       the command line or a script.
     '';
-    homepage = http://www.jpj.net/~trevor/aumix.html;
+    homepage = "http://www.jpj.net/~trevor/aumix.html";
     license = stdenv.lib.licenses.gpl2Plus;
 
     maintainers = [ ];
diff --git a/pkgs/applications/audio/avldrums-lv2/default.nix b/pkgs/applications/audio/avldrums-lv2/default.nix
deleted file mode 100644
index d71718c32a82..000000000000
--- a/pkgs/applications/audio/avldrums-lv2/default.nix
+++ /dev/null
@@ -1,29 +0,0 @@
-{ stdenv, fetchFromGitHub, pkgconfig, pango, cairo, libGLU, lv2 }:
-
-stdenv.mkDerivation rec {
-  pname = "avldrums.lv2";
-  version = "0.4.0";
-
-  src = fetchFromGitHub {
-    owner = "x42";
-    repo = pname;
-    rev = "v${version}";
-    sha256 = "1z70rcq6z3gkb4fm8dm9hs31bslwr97zdh2n012fzki9b9rdj5qv";
-    fetchSubmodules = true;
-  };
-
-  installFlags = [ "PREFIX=$(out)" ];
-
-  nativeBuildInputs = [ pkgconfig ];
-  buildInputs = [
-    pango cairo libGLU lv2
-  ];
-
-  meta = with stdenv.lib; {
-    description = "Dedicated AVLDrumkits LV2 Plugin";
-    homepage    = http://x42-plugins.com/x42/x42-avldrums;
-    license     = licenses.gpl2;
-    maintainers = [ maintainers.magnetophon ];
-    platforms   = [ "i686-linux" "x86_64-linux" ];
-  };
-}
diff --git a/pkgs/applications/audio/axoloti/default.nix b/pkgs/applications/audio/axoloti/default.nix
index fb9b3c9513f8..3d907e421b3e 100644
--- a/pkgs/applications/audio/axoloti/default.nix
+++ b/pkgs/applications/audio/axoloti/default.nix
@@ -88,7 +88,7 @@ stdenv.mkDerivation rec {
   '';
 
   meta = with stdenv.lib; {
-    homepage = http://www.axoloti.com;
+    homepage = "http://www.axoloti.com";
     description = ''
       Sketching embedded digital audio algorithms.
 
diff --git a/pkgs/applications/audio/axoloti/dfu-util.nix b/pkgs/applications/audio/axoloti/dfu-util.nix
index e9fa6daecfe3..80ec696c6459 100644
--- a/pkgs/applications/audio/axoloti/dfu-util.nix
+++ b/pkgs/applications/audio/axoloti/dfu-util.nix
@@ -23,7 +23,7 @@ stdenv.mkDerivation rec {
       phones. With dfu-util you are able to download firmware to your device or
       upload firmware from it.
     '';
-    homepage = http://dfu-util.sourceforge.net;
+    homepage = "http://dfu-util.sourceforge.net";
     license = licenses.gpl2Plus;
     platforms = platforms.unix;
     maintainers = [ ];
diff --git a/pkgs/applications/audio/axoloti/libusb1.nix b/pkgs/applications/audio/axoloti/libusb1.nix
index 1a6ebd346cca..49b788f66537 100644
--- a/pkgs/applications/audio/axoloti/libusb1.nix
+++ b/pkgs/applications/audio/axoloti/libusb1.nix
@@ -30,7 +30,7 @@ stdenv.mkDerivation rec {
   '';
 
   meta = with stdenv.lib; {
-    homepage = http://www.libusb.info;
+    homepage = "http://www.libusb.info";
     description = "User-space USB library";
     platforms = platforms.unix;
     license = licenses.lgpl21;
diff --git a/pkgs/applications/audio/baudline/default.nix b/pkgs/applications/audio/baudline/default.nix
index c35df95b24c7..0d95675d1e67 100644
--- a/pkgs/applications/audio/baudline/default.nix
+++ b/pkgs/applications/audio/baudline/default.nix
@@ -59,7 +59,7 @@ stdenv.mkDerivation rec {
       displays, and continuous capture tools for hunting down and studying
       elusive signal characteristics.
     '';
-    homepage = http://www.baudline.com/;
+    homepage = "http://www.baudline.com/";
     # See http://www.baudline.com/faq.html#licensing_terms.
     # (Do NOT (re)distribute on hydra.)
     license = licenses.unfree;
diff --git a/pkgs/applications/audio/beast/default.nix b/pkgs/applications/audio/beast/default.nix
deleted file mode 100644
index 29cecb169998..000000000000
--- a/pkgs/applications/audio/beast/default.nix
+++ /dev/null
@@ -1,38 +0,0 @@
-{ stdenv, fetchurl, zlib, guile, libart_lgpl, pkgconfig, intltool
-, gtk2, glib, libogg, libvorbis, libgnomecanvas, gettext, perl }:
-
-stdenv.mkDerivation rec {
-  name = "beast-0.7.1";
-
-  src = fetchurl {
-    url = "https://ftp.gtk.org/pub/beast/v0.7/${name}.tar.bz2";
-    sha256 = "0jyl1i1918rsn4296w07fsf6wx3clvad522m3bzgf8ms7gxivg5l";
-  };
-
-  buildInputs =
-    [ zlib guile libart_lgpl pkgconfig intltool gtk2 glib
-      libogg libvorbis libgnomecanvas gettext
-    ];
-
-  patchPhase = ''
-    unset patchPhase; patchPhase
-    sed 's=-DG_DISABLE_DEPRECATED==g' -i `find -type f` # the patches didn't remove all occurences
-    sed 's=/bin/bash=/${stdenv.shell}=g' -i `find -type f`
-    sed 's=/usr/bin/perl=/${perl}/bin/perl=g' -i `find -type f`
-  '';
-
-  patches =
-    [ (fetchurl {
-        url = mirror://gentoo/distfiles/beast-0.7.1-guile-1.8.diff.bz2;
-        sha256 = "dc5194deff4b0a0eec368a69090db682d0c3113044ce2c2ed017ddfec9d3814e";
-      })
-      ./patch.patch # patches taken from gentoo
-    ];
-
-  meta = with stdenv.lib; {
-    description = "A music composition and modular synthesis application";
-    homepage = http://beast.gtk.org;
-    license = with licenses; [ gpl2 lgpl21 ];
-    broken = true;
-  };
-}
diff --git a/pkgs/applications/audio/bitmeter/default.nix b/pkgs/applications/audio/bitmeter/default.nix
index 6f471f3a0283..ac05a9367cc9 100644
--- a/pkgs/applications/audio/bitmeter/default.nix
+++ b/pkgs/applications/audio/bitmeter/default.nix
@@ -14,13 +14,13 @@ stdenv.mkDerivation rec {
 
   patches = [
     (fetchurl {
-      url = https://gitweb.gentoo.org/repo/gentoo.git/plain/media-sound/bitmeter/files/bitmeter-1.2-fix-build-system.patch;
+      url = "https://gitweb.gentoo.org/repo/gentoo.git/plain/media-sound/bitmeter/files/bitmeter-1.2-fix-build-system.patch";
       sha256 = "021mz6933iw7mpk6b9cbjr8naj6smbq1hwqjszlyx72qbwrrid7k";
     })
   ];
 
   meta = with stdenv.lib; {
-    homepage = http://devel.tlrmx.org/audio/bitmeter/;
+    homepage = "http://devel.tlrmx.org/audio/bitmeter/";
     description = "Also known as jack bitscope. Useful to detect denormals";
     license = licenses.gpl2;
     maintainers = [ maintainers.magnetophon ];
diff --git a/pkgs/applications/audio/bitwig-studio/bitwig-studio1.nix b/pkgs/applications/audio/bitwig-studio/bitwig-studio1.nix
index 835868471906..910c1cfe51b5 100644
--- a/pkgs/applications/audio/bitwig-studio/bitwig-studio1.nix
+++ b/pkgs/applications/audio/bitwig-studio/bitwig-studio1.nix
@@ -90,7 +90,7 @@ stdenv.mkDerivation rec {
       production, performance and DJing, with a focus on flexible
       editing tools and a super-fast workflow.
     '';
-    homepage = https://www.bitwig.com/;
+    homepage = "https://www.bitwig.com/";
     license = licenses.unfree;
     platforms = [ "x86_64-linux" ];
     maintainers = with maintainers; [ michalrus mrVanDalo ];
diff --git a/pkgs/applications/audio/bristol/default.nix b/pkgs/applications/audio/bristol/default.nix
index 504900d65955..704b888e2293 100644
--- a/pkgs/applications/audio/bristol/default.nix
+++ b/pkgs/applications/audio/bristol/default.nix
@@ -26,7 +26,7 @@ stdenv.mkDerivation  rec {
 
   meta = with stdenv.lib; {
     description = "A range of synthesiser, electric piano and organ emulations";
-    homepage = http://bristol.sourceforge.net;
+    homepage = "http://bristol.sourceforge.net";
     license = licenses.gpl3;
     platforms = ["x86_64-linux" "i686-linux"];
     maintainers = [ maintainers.goibhniu ];
diff --git a/pkgs/applications/audio/bs1770gain/default.nix b/pkgs/applications/audio/bs1770gain/default.nix
index 2dee463aeee2..76a789356193 100644
--- a/pkgs/applications/audio/bs1770gain/default.nix
+++ b/pkgs/applications/audio/bs1770gain/default.nix
@@ -16,7 +16,7 @@ stdenv.mkDerivation rec {
   meta = with stdenv.lib; {
     description = "A audio/video loudness scanner implementing ITU-R BS.1770";
     license = licenses.gpl2Plus;
-    homepage = http://bs1770gain.sourceforge.net/;
+    homepage = "http://bs1770gain.sourceforge.net/";
     platforms = platforms.all;
   };
 }
diff --git a/pkgs/applications/audio/bsequencer/default.nix b/pkgs/applications/audio/bsequencer/default.nix
index b91554f5716e..674795dca20e 100644
--- a/pkgs/applications/audio/bsequencer/default.nix
+++ b/pkgs/applications/audio/bsequencer/default.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation rec {
   pname = "BSEQuencer";
-  version = "1.2.0";
+  version = "1.4.0";
 
   src = fetchFromGitHub {
     owner = "sjaehn";
     repo = pname;
     rev = "${version}";
-    sha256 = "08xwz5v8wrar0rx7qdr9pkpjz2k9sw6bn5glhpn6sp6453fabf8q";
+    sha256 = "1zz1cirmx4wm4im4gjdp691f2042c8d1i8np1ns71f6kqdj9ps3k";
   };
 
   nativeBuildInputs = [ pkgconfig ];
@@ -19,7 +19,7 @@ stdenv.mkDerivation rec {
   installFlags = [ "PREFIX=$(out)" ];
 
   meta = with stdenv.lib; {
-    homepage = https://github.com/sjaehn/BSEQuencer;
+    homepage = "https://github.com/sjaehn/BSEQuencer";
     description = "Multi channel MIDI step sequencer LV2 plugin";
     maintainers = [ maintainers.magnetophon ];
     platforms = platforms.linux;
diff --git a/pkgs/applications/audio/bshapr/default.nix b/pkgs/applications/audio/bshapr/default.nix
index 88a671495c38..a2f96bc288c9 100644
--- a/pkgs/applications/audio/bshapr/default.nix
+++ b/pkgs/applications/audio/bshapr/default.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation rec {
   pname = "BShapr";
-  version = "0.7";
+  version = "0.8";
 
   src = fetchFromGitHub {
     owner = "sjaehn";
     repo = pname;
     rev = "v${version}";
-    sha256 = "1422xay28jkmqlj5y4vhb57kljy6ysvxh20cxpfxm980m8n54gq5";
+    sha256 = "0jlq5rjicc4fxlpk869dg0l5bwwz8k9aj2wfk9v89b0qw8l8kaxl";
   };
 
   nativeBuildInputs = [ pkgconfig ];
@@ -19,7 +19,7 @@ stdenv.mkDerivation rec {
   installFlags = [ "PREFIX=$(out)" ];
 
   meta = with stdenv.lib; {
-    homepage = https://github.com/sjaehn/BShapr;
+    homepage = "https://github.com/sjaehn/BShapr";
     description = "Beat / envelope shaper LV2 plugin";
     maintainers = [ maintainers.magnetophon ];
     platforms = platforms.linux;
diff --git a/pkgs/applications/audio/bslizr/default.nix b/pkgs/applications/audio/bslizr/default.nix
index 97a9d60ec277..bae2407ec7b9 100644
--- a/pkgs/applications/audio/bslizr/default.nix
+++ b/pkgs/applications/audio/bslizr/default.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation rec {
   pname = "BSlizr";
-  version = "1.2.4";
+  version = "1.2.6";
 
   src = fetchFromGitHub {
     owner = "sjaehn";
     repo = pname;
     rev = "${version}";
-    sha256 = "0gyczxhd1jch7lwz3y1nrbpc0dycw9cc5i144rpif6b9gd2y1h1j";
+    sha256 = "1l0znwvvqd2s24c652q54pkizlh86mvmr8h0qqp9xma0i575fcrh";
   };
 
   nativeBuildInputs = [ pkgconfig ];
@@ -19,7 +19,7 @@ stdenv.mkDerivation rec {
   installFlags = [ "PREFIX=$(out)" ];
 
   meta = with stdenv.lib; {
-    homepage = https://github.com/sjaehn/BSlizr;
+    homepage = "https://github.com/sjaehn/BSlizr";
     description = "Sequenced audio slicing effect LV2 plugin (step sequencer effect)";
     maintainers = [ maintainers.magnetophon ];
     platforms = platforms.linux;
diff --git a/pkgs/applications/audio/cadence/default.nix b/pkgs/applications/audio/cadence/default.nix
index 52f5a6540e8b..4f4ad4b8c5b0 100644
--- a/pkgs/applications/audio/cadence/default.nix
+++ b/pkgs/applications/audio/cadence/default.nix
@@ -1,15 +1,23 @@
 { stdenv
-, mkDerivation
+, a2jmidid
+, coreutils
 , lib
+, libjack2
 , fetchpatch
 , fetchzip
+, jack_capture
 , pkgconfig
+, pulseaudioFull
 , qtbase
 , makeWrapper
-, python3Packages
+, mkDerivation
+, python3
 }:
+#ladish missing, claudia can't work.
+#pulseaudio needs fixes (patchShebangs .pa ...)
+#desktop needs icons and exec fixing.
 
- mkDerivation rec {
+mkDerivation rec {
   version = "0.9.1";
   pname = "cadence";
 
@@ -26,12 +34,26 @@
     })
   ];
 
+  postPatch = ''
+      libjackso=$(realpath ${lib.makeLibraryPath [libjack2]}/libjack.so.0);
+      substituteInPlace ./src/jacklib.py --replace libjack.so.0 $libjackso
+      substituteInPlace ./src/cadence.py --replace "/usr/bin/pulseaudio" \
+        "${lib.makeBinPath[pulseaudioFull]}/pulseaudio"
+      substituteInPlace ./c++/jackbridge/JackBridge.cpp --replace libjack.so.0 $libjackso
+  '';
+
   nativeBuildInputs = [
     pkgconfig
   ];
 
   buildInputs = [
     qtbase
+    jack_capture
+    pulseaudioFull
+    ((python3.withPackages (ps: with ps; [
+          pyqt5
+          dbus-python
+        ])))
   ];
 
   makeFlags = [
@@ -39,10 +61,6 @@
     "SYSCONFDIR=${placeholder "out"}/etc"
   ];
 
-  propagatedBuildInputs = with python3Packages; [
-    pyqt5_with_qtwebkit
-  ];
-
   dontWrapQtApps = true;
 
   # Replace with our own wrappers. They need to be changed manually since it wouldn't work otherwise.
@@ -65,14 +83,15 @@
     };
   in lib.mapAttrsToList (script: source: ''
     rm -f ${script}
-    makeWrapper ${python3Packages.python.interpreter} ${script} \
-      --set PYTHONPATH "$PYTHONPATH:${outRef}/share/cadence" \
-      ''${qtWrapperArgs[@]} \
-      --add-flags "-O ${source}"
+    makeQtWrapper ${source} ${script} \
+      --prefix PATH : "${lib.makeBinPath [
+        jack_capture # cadence-render
+        pulseaudioFull # cadence, cadence-session-start
+        ]}"
   '') scriptAndSource;
 
   meta = {
-    homepage = https://github.com/falkTX/Cadence/;
+    homepage = "https://github.com/falkTX/Cadence/";
     description = "Collection of tools useful for audio production";
     license = stdenv.lib.licenses.gpl2Plus;
     maintainers = with stdenv.lib.maintainers; [ genesis worldofpeace ];
diff --git a/pkgs/applications/audio/calf/default.nix b/pkgs/applications/audio/calf/default.nix
index 0106e8b45846..bbeef4c395a2 100644
--- a/pkgs/applications/audio/calf/default.nix
+++ b/pkgs/applications/audio/calf/default.nix
@@ -18,7 +18,7 @@ stdenv.mkDerivation rec {
   ];
 
   meta = with stdenv.lib; {
-    homepage = http://calf-studio-gear.org;
+    homepage = "http://calf-studio-gear.org";
     description = "A set of high quality open source audio plugins for musicians";
     license = licenses.lgpl2;
     maintainers = [ maintainers.goibhniu ];
diff --git a/pkgs/applications/audio/cantata/default.nix b/pkgs/applications/audio/cantata/default.nix
index cd1783ff6853..799cefc78193 100644
--- a/pkgs/applications/audio/cantata/default.nix
+++ b/pkgs/applications/audio/cantata/default.nix
@@ -1,5 +1,5 @@
-{ mkDerivation, lib, fetchFromGitHub, cmake, pkgconfig, vlc
-, qtbase, qtmultimedia, qtsvg, qttools
+{ mkDerivation, lib, fetchFromGitHub, cmake, pkgconfig
+, qtbase, qtsvg, qttools
 
 # Cantata doesn't build with cdparanoia enabled so we disable that
 # default for now until I (or someone else) figure it out.
@@ -9,12 +9,14 @@
 , withMusicbrainz ? false, libmusicbrainz5
 
 , withTaglib ? true, taglib, taglib_extras
+, withHttpStream ? true, qtmultimedia
 , withReplaygain ? true, ffmpeg, speex, mpg123
 , withMtp ? true, libmtp
 , withOnlineServices ? true
 , withDevices ? true, udisks2
 , withDynamic ? true
 , withHttpServer ? true
+, withLibVlc ? false, vlc
 , withStreams ? true
 }:
 
@@ -26,6 +28,7 @@ assert withMtp -> withTaglib;
 assert withMusicbrainz -> withCdda && withTaglib;
 assert withOnlineServices -> withTaglib;
 assert withReplaygain -> withTaglib;
+assert withLibVlc -> withHttpStream;
 
 let
   version = "2.4.1";
@@ -45,15 +48,17 @@ in mkDerivation {
     sha256 = "0ix7xp352bziwz31mw79y7wxxmdn6060p8ry2px243ni1lz1qx1c";
   };
 
-  buildInputs = [ vlc qtbase qtmultimedia qtsvg ]
+  buildInputs = [ qtbase qtsvg ]
     ++ lib.optionals withTaglib [ taglib taglib_extras ]
     ++ lib.optionals withReplaygain [ ffmpeg speex mpg123 ]
+    ++ lib.optional  withHttpStream qtmultimedia
     ++ lib.optional  withCdda cdparanoia
     ++ lib.optional  withCddb libcddb
     ++ lib.optional  withLame lame
     ++ lib.optional  withMtp libmtp
     ++ lib.optional  withMusicbrainz libmusicbrainz5
-    ++ lib.optional  withUdisks udisks2;
+    ++ lib.optional  withUdisks udisks2
+    ++ lib.optional  withLibVlc vlc;
 
   nativeBuildInputs = [ cmake pkgconfig qttools ];
 
@@ -62,6 +67,7 @@ in mkDerivation {
   cmakeFlags = lib.flatten [
     (fstats withTaglib        [ "TAGLIB" "TAGLIB_EXTRAS" ])
     (fstats withReplaygain    [ "FFMPEG" "MPG123" "SPEEXDSP" ])
+    (fstat withHttpStream     "HTTP_STREAM_PLAYBACK")
     (fstat withCdda           "CDPARANOIA")
     (fstat withCddb           "CDDB")
     (fstat withLame           "LAME")
@@ -71,6 +77,7 @@ in mkDerivation {
     (fstat withDynamic        "DYNAMIC")
     (fstat withDevices        "DEVICES_SUPPORT")
     (fstat withHttpServer     "HTTP_SERVER")
+    (fstat withLibVlc         "LIBVLC")
     (fstat withStreams        "STREAMS")
     (fstat withUdisks         "UDISKS2")
     "-DENABLE_HTTPS_SUPPORT=ON"
diff --git a/pkgs/applications/audio/caps/default.nix b/pkgs/applications/audio/caps/default.nix
index eabbf8668375..dc8511bf5007 100644
--- a/pkgs/applications/audio/caps/default.nix
+++ b/pkgs/applications/audio/caps/default.nix
@@ -22,7 +22,7 @@ stdenv.mkDerivation rec {
       considerations are latency-free realtime operation, modesty of
       resource demands and meaningful control interfaces.
     '';
-    homepage = http://www.quitte.de/dsp/caps.html;
+    homepage = "http://www.quitte.de/dsp/caps.html";
     license = stdenv.lib.licenses.gpl3;
     maintainers = [ stdenv.lib.maintainers.astsmtl ];
     platforms = stdenv.lib.platforms.linux;
diff --git a/pkgs/applications/audio/carla/default.nix b/pkgs/applications/audio/carla/default.nix
index 6641e99e4917..bf297d8a83ca 100644
--- a/pkgs/applications/audio/carla/default.nix
+++ b/pkgs/applications/audio/carla/default.nix
@@ -15,13 +15,13 @@ assert withGtk3 -> gtk3 != null;
 
 stdenv.mkDerivation rec {
   pname = "carla";
-  version = "2.0.0";
+  version = "2.1";
 
   src = fetchFromGitHub {
     owner = "falkTX";
     repo = pname;
     rev = "v${version}";
-    sha256 = "0fqgncqlr86n38yy7pa118mswfacmfczj7w9xx6c6k0jav3wk29k";
+    sha256 = "074y40yrgl3qrdr3a5vn0scsw0qv77r5p5m6gc89zhf20ic8ajzc";
   };
 
   nativeBuildInputs = [
@@ -68,7 +68,7 @@ stdenv.mkDerivation rec {
   '';
 
   meta = with stdenv.lib; {
-    homepage = http://kxstudio.sf.net/carla;
+    homepage = "http://kxstudio.sf.net/carla";
     description = "An audio plugin host";
     longDescription = ''
       It currently supports LADSPA (including LRDF), DSSI, LV2, VST2/3
diff --git a/pkgs/applications/audio/caudec/default.nix b/pkgs/applications/audio/caudec/default.nix
index 1ab39311258b..c95390958637 100644
--- a/pkgs/applications/audio/caudec/default.nix
+++ b/pkgs/applications/audio/caudec/default.nix
@@ -31,7 +31,7 @@ stdenv.mkDerivation {
   '';
 
    meta = with stdenv.lib; {
-    homepage = http://caudec.net/;
+    homepage = "http://caudec.net/";
     description = "A multiprocess audio converter that supports many formats (FLAC, MP3, Ogg Vorbis, Windows codecs and many more)";
     license     = licenses.gpl3;
     platforms   = platforms.linux ++ platforms.darwin;
diff --git a/pkgs/applications/audio/cava/default.nix b/pkgs/applications/audio/cava/default.nix
index 5c5c262056ec..2bdca386bf45 100644
--- a/pkgs/applications/audio/cava/default.nix
+++ b/pkgs/applications/audio/cava/default.nix
@@ -30,7 +30,7 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "Console-based Audio Visualizer for Alsa";
-    homepage = https://github.com/karlstav/cava;
+    homepage = "https://github.com/karlstav/cava";
     license = licenses.mit;
     maintainers = with maintainers; [ offline mirrexagon ];
     platforms = platforms.linux;
diff --git a/pkgs/applications/audio/cd-discid/default.nix b/pkgs/applications/audio/cd-discid/default.nix
index 864e04d88f3c..2ceb5f6d09a2 100644
--- a/pkgs/applications/audio/cd-discid/default.nix
+++ b/pkgs/applications/audio/cd-discid/default.nix
@@ -16,7 +16,7 @@ stdenv.mkDerivation rec {
     ++ stdenv.lib.optional stdenv.isDarwin IOKit;
 
   meta = with stdenv.lib; {
-    homepage = http://linukz.org/cd-discid.shtml;
+    homepage = "http://linukz.org/cd-discid.shtml";
     license = licenses.gpl2Plus;
     maintainers = [ maintainers.rycee ];
     platforms = platforms.unix;
diff --git a/pkgs/applications/audio/cdparanoia/default.nix b/pkgs/applications/audio/cdparanoia/default.nix
index 4e517ee636e8..0658305723c4 100644
--- a/pkgs/applications/audio/cdparanoia/default.nix
+++ b/pkgs/applications/audio/cdparanoia/default.nix
@@ -35,7 +35,7 @@ stdenv.mkDerivation rec {
   '';
 
   meta = with stdenv.lib; {
-    homepage = https://xiph.org/paranoia;
+    homepage = "https://xiph.org/paranoia";
     description = "A tool and library for reading digital audio from CDs";
     license = with licenses; [ gpl2Plus lgpl21Plus ];
     platforms = platforms.unix;
diff --git a/pkgs/applications/audio/cheesecutter/0001-fix-impure-build-date-display.patch b/pkgs/applications/audio/cheesecutter/0001-fix-impure-build-date-display.patch
new file mode 100644
index 000000000000..2e2746f43417
--- /dev/null
+++ b/pkgs/applications/audio/cheesecutter/0001-fix-impure-build-date-display.patch
@@ -0,0 +1,26 @@
+diff --git a/src/ct2util.d b/src/ct2util.d
+index 523cadc..e462b09 100644
+--- a/src/ct2util.d
++++ b/src/ct2util.d
+@@ -105,7 +105,7 @@ int main(string[] args) {
+ 	speeds.length = 32;
+ 	masks.length = 32;
+ 	void printheader() {
+-		enum hdr = "CheeseCutter 2 utilities" ~ com.util.versionInfo;
++		enum hdr = "CheeseCutter 2 utilities";
+ 		writefln(hdr);
+ 		writefln("\nUsage: \t%s <command> <options> <infile> <-o outfile>",args[0]);
+ 		writefln("\t%s import <infile> <infile2> <-o outfile>",args[0]);
+diff --git a/src/ui/ui.d b/src/ui/ui.d
+index e418dda..21af408 100644
+--- a/src/ui/ui.d
++++ b/src/ui/ui.d
+@@ -231,7 +231,7 @@ class Infobar : Window {
+ 	  
+ 		screen.clrtoeol(0, headerColor);
+ 
+-		enum hdr = "CheeseCutter 2.9" ~ com.util.versionInfo;
++		enum hdr = "CheeseCutter 2.9";
+ 		screen.cprint(4, 0, 1, headerColor, hdr);
+ 		screen.cprint(screen.width - 14, 0, 1, headerColor, "F12 = Help");
+ 		int c1 = audio.player.isPlaying ? 13 : 12;
diff --git a/pkgs/applications/audio/cheesecutter/default.nix b/pkgs/applications/audio/cheesecutter/default.nix
new file mode 100644
index 000000000000..732c2968fde4
--- /dev/null
+++ b/pkgs/applications/audio/cheesecutter/default.nix
@@ -0,0 +1,48 @@
+{ stdenv, lib, fetchFromGitHub, fetchpatch
+, acme, ldc, patchelf
+, SDL
+}:
+
+stdenv.mkDerivation rec {
+  pname = "cheesecutter";
+  version = "unstable-2019-12-06";
+
+  src = fetchFromGitHub {
+    owner = "theyamo";
+    repo = "CheeseCutter";
+    rev = "6b433c5512d693262742a93c8bfdfb353d4be853";
+    sha256 = "1szlcg456b208w1237581sg21x69mqlh8cr6v8yvbhxdz9swxnwy";
+  };
+
+  nativeBuildInputs = [ acme ldc patchelf ];
+
+  buildInputs = [ SDL ];
+
+  patches = [
+    ./0001-fix-impure-build-date-display.patch
+  ];
+
+  makefile = "Makefile.ldc";
+
+  installPhase = ''
+    for exe in {ccutter,ct2util}; do
+      install -D $exe $out/bin/$exe
+    done
+
+    mkdir -p $out/share/cheesecutter/example_tunes
+    cp -r tunes/* $out/share/cheesecutter/example_tunes
+  '';
+
+  postFixup = ''
+    rpath=$(patchelf --print-rpath $out/bin/ccutter)
+    patchelf --set-rpath "$rpath:${lib.makeLibraryPath buildInputs}" $out/bin/ccutter
+  '';
+
+  meta = with lib; {
+    description = "A tracker program for composing music for the SID chip.";
+    homepage = "https://github.com/theyamo/CheeseCutter/";
+    license = licenses.gpl2;
+    platforms = [ "x86_64-linux" "i686-linux" "x86_64-darwin" ];
+    maintainers = with maintainers; [ OPNA2608 ];
+  };
+}
diff --git a/pkgs/applications/audio/chuck/default.nix b/pkgs/applications/audio/chuck/default.nix
index 04b31ae2c0b3..f30b5dba5b6b 100644
--- a/pkgs/applications/audio/chuck/default.nix
+++ b/pkgs/applications/audio/chuck/default.nix
@@ -3,12 +3,12 @@
 }:
 
 stdenv.mkDerivation rec {
-  version = "1.4.0.0";
+  version = "1.4.0.1";
   pname = "chuck";
 
   src = fetchurl {
     url = "http://chuck.cs.princeton.edu/release/files/chuck-${version}.tgz";
-    sha256 = "1b17rsf7bv45gfhyhfmpz9d4rkxn24c0m2hgmpfjz3nlp0rf7bic";
+    sha256 = "1m0fhndbqaf0lii1asyc50c66bv55ib6mbnm8fzk5qc5ncs0r8hi";
   };
 
   nativeBuildInputs = [ flex bison which ];
@@ -33,7 +33,7 @@ stdenv.mkDerivation rec {
 
   meta = with lib; {
     description = "Programming language for real-time sound synthesis and music creation";
-    homepage = http://chuck.cs.princeton.edu;
+    homepage = "http://chuck.cs.princeton.edu";
     license = licenses.gpl2;
     platforms = platforms.unix;
     maintainers = with maintainers; [ ftrvxmtrx ];
diff --git a/pkgs/applications/audio/clementine/default.nix b/pkgs/applications/audio/clementine/default.nix
index 3fdf98da325c..15d0f92b76aa 100644
--- a/pkgs/applications/audio/clementine/default.nix
+++ b/pkgs/applications/audio/clementine/default.nix
@@ -91,7 +91,7 @@ let
     '';
 
     meta = with stdenv.lib; {
-      homepage = http://www.clementine-player.org;
+      homepage = "https://www.clementine-player.org";
       description = "A multiplatform music player";
       license = licenses.gpl3Plus;
       platforms = platforms.linux;
@@ -125,12 +125,12 @@ let
 
       mkdir -p $out/share
       for dir in applications icons kde4; do
-        ln -s "$free/share/$dir" "$out/share/$dir"
+        ln -s "${free}/share/$dir" "$out/share/$dir"
       done
     '';
     enableParallelBuilding = true;
     meta = with stdenv.lib; {
-      homepage = http://www.clementine-player.org;
+      homepage = "https://www.clementine-player.org";
       description = "Spotify integration for Clementine";
       # The blob itself is Apache-licensed, although libspotify is unfree.
       license = licenses.asl20;
diff --git a/pkgs/applications/audio/clerk/default.nix b/pkgs/applications/audio/clerk/default.nix
index 4da2228c6c13..3c78295db674 100644
--- a/pkgs/applications/audio/clerk/default.nix
+++ b/pkgs/applications/audio/clerk/default.nix
@@ -23,7 +23,7 @@ stdenv.mkDerivation {
 
   meta = with stdenv.lib; {
     description = "An MPD client built on top of rofi";
-    homepage    = https://github.com/carnager/clerk;
+    homepage    = "https://github.com/carnager/clerk";
     license     = licenses.mit;
     maintainers = with maintainers; [ anderspapitto ];
   };
diff --git a/pkgs/applications/audio/cmt/default.nix b/pkgs/applications/audio/cmt/default.nix
new file mode 100644
index 000000000000..96cc3c573198
--- /dev/null
+++ b/pkgs/applications/audio/cmt/default.nix
@@ -0,0 +1,33 @@
+{ stdenv
+, fetchurl
+, ladspaH
+}:
+
+stdenv.mkDerivation rec {
+  name = "cmt";
+  version = "1.17";
+
+  src = fetchurl {
+    url = "http://www.ladspa.org/download/${name}_${version}.tgz";
+    sha256 = "07xd0xmwpa0j12813jpf87fr9hwzihii5l35mp8ady7xxfmxfmpb";
+  };
+
+  buildInputs = [ ladspaH ];
+
+  preBuild = ''
+    cd src
+  '';
+
+  installFlags = [ "INSTALL_PLUGINS_DIR=${placeholder "out"}/lib/ladspa" ];
+  preInstall = ''
+    mkdir -p $out/lib/ladspa
+  '';
+
+  meta = with stdenv.lib; {
+    description = "Computer Music Toolkit";
+    homepage = "https://www.ladspa.org/cmt";
+    license = licenses.gpl2;
+    platforms = platforms.linux;
+    maintainers = with maintainers; [ sjfloat ];
+  };
+}
diff --git a/pkgs/applications/audio/cmus/default.nix b/pkgs/applications/audio/cmus/default.nix
index 023e35bd7870..3e5916ba0983 100644
--- a/pkgs/applications/audio/cmus/default.nix
+++ b/pkgs/applications/audio/cmus/default.nix
@@ -128,7 +128,7 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "Small, fast and powerful console music player for Linux and *BSD";
-    homepage = https://cmus.github.io/;
+    homepage = "https://cmus.github.io/";
     license = licenses.gpl2;
     maintainers = [ maintainers.oxij ];
     platforms = platforms.linux ++ platforms.darwin;
diff --git a/pkgs/applications/audio/cmusfm/default.nix b/pkgs/applications/audio/cmusfm/default.nix
index 54f1050da466..6695b9a7237c 100644
--- a/pkgs/applications/audio/cmusfm/default.nix
+++ b/pkgs/applications/audio/cmusfm/default.nix
@@ -28,7 +28,7 @@ stdenv.mkDerivation {
       + run `cmusfm init` to generate configuration file under ~/.config/cmus/cmusfm.conf
       + Inside cmus run `:set status_display_program=cmusfm` to set up cmusfm
     '';
-    homepage = https://github.com/Arkq/cmusfm/;
+    homepage = "https://github.com/Arkq/cmusfm/";
     maintainers = with stdenv.lib.maintainers; [ CharlesHD ];
     license = licenses.gpl3Plus;
     platforms = platforms.linux ++ platforms.darwin;
diff --git a/pkgs/applications/audio/cozy-audiobooks/default.nix b/pkgs/applications/audio/cozy-audiobooks/default.nix
index 865bc130db91..a5947bd37f19 100644
--- a/pkgs/applications/audio/cozy-audiobooks/default.nix
+++ b/pkgs/applications/audio/cozy-audiobooks/default.nix
@@ -75,7 +75,7 @@ python3Packages.buildPythonApplication rec {
 
   meta = with stdenv.lib; {
     description = "A modern audio book player for Linux using GTK 3";
-    homepage = https://cozy.geigi.de/;
+    homepage = "https://cozy.geigi.de/";
     maintainers = [ maintainers.makefu ];
     license = licenses.gpl3;
   };
diff --git a/pkgs/applications/audio/crip/default.nix b/pkgs/applications/audio/crip/default.nix
index f7bf919c2212..0181ede26dda 100644
--- a/pkgs/applications/audio/crip/default.nix
+++ b/pkgs/applications/audio/crip/default.nix
@@ -58,7 +58,7 @@ stdenv.mkDerivation rec {
   '';
 
   meta = {
-    homepage = http://bach.dynet.com/crip/;
+    homepage = "http://bach.dynet.com/crip/";
     description = "Terminal-based ripper/encoder/tagger tool for creating Ogg Vorbis/FLAC files";
     license = stdenv.lib.licenses.gpl1;
     platforms = stdenv.lib.platforms.linux;
diff --git a/pkgs/applications/audio/csa/default.nix b/pkgs/applications/audio/csa/default.nix
index 0b8afada0206..756c21892fb2 100644
--- a/pkgs/applications/audio/csa/default.nix
+++ b/pkgs/applications/audio/csa/default.nix
@@ -14,7 +14,7 @@ stdenv.mkDerivation rec {
   postInstall = "rm $out/lib/ladspa/celllm_3890.*";
 
   meta = with stdenv.lib; {
-    homepage = https://sourceforge.net/projects/csa/;
+    homepage = "https://sourceforge.net/projects/csa/";
     description = "A group of LADSPA Audio plugins for FM broadcast and more";
     longDescription = ''
       CSA means : Contrôle Signal Audio.
diff --git a/pkgs/applications/audio/csound/csound-qt/default.nix b/pkgs/applications/audio/csound/csound-qt/default.nix
index d16d93318216..895609d3c023 100644
--- a/pkgs/applications/audio/csound/csound-qt/default.nix
+++ b/pkgs/applications/audio/csound/csound-qt/default.nix
@@ -42,7 +42,7 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "CsoundQt is a frontend for Csound with editor, integrated help, widgets and other features.";
-    homepage = https://csoundqt.github.io/;
+    homepage = "https://csoundqt.github.io/";
     license = licenses.gpl2;
     platforms = platforms.linux;
     maintainers = with maintainers; [ hlolli ];
diff --git a/pkgs/applications/audio/csound/default.nix b/pkgs/applications/audio/csound/default.nix
index 758448c2fb33..4b426609fea4 100644
--- a/pkgs/applications/audio/csound/default.nix
+++ b/pkgs/applications/audio/csound/default.nix
@@ -42,7 +42,7 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "Sound design, audio synthesis, and signal processing system, providing facilities for music composition and performance on all major operating systems and platforms";
-    homepage = http://www.csounds.com/;
+    homepage = "http://www.csounds.com/";
     license = licenses.gpl2;
     maintainers = [maintainers.marcweber];
     platforms = platforms.linux;
diff --git a/pkgs/applications/audio/deadbeef/default.nix b/pkgs/applications/audio/deadbeef/default.nix
index 2df6b9931cfc..4c2323fbe8a5 100644
--- a/pkgs/applications/audio/deadbeef/default.nix
+++ b/pkgs/applications/audio/deadbeef/default.nix
@@ -59,13 +59,13 @@ assert remoteSupport -> curl != null;
 
 stdenv.mkDerivation rec {
   pname = "deadbeef";
-  version = "1.8.2";
+  version = "1.8.3";
 
   src = fetchFromGitHub {
     owner = "DeaDBeeF-Player";
     repo = "deadbeef";
     rev = version;
-    sha256 = "016wwnh5jqdcfxn1ff6in5dz73c3gdhh3fva8inq7sc3vzdz5khj";
+    sha256 = "0n0q7zfl56gnadcqqp5rg7sbh1xvfcmp7cvmh2ax07037b346qig";
   };
 
   buildInputs = with stdenv.lib; [ jansson ]
@@ -108,7 +108,7 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "Ultimate Music Player for GNU/Linux";
-    homepage = http://deadbeef.sourceforge.net/;
+    homepage = "http://deadbeef.sourceforge.net/";
     license = licenses.gpl2;
     platforms = [ "x86_64-linux" "i686-linux" ];
     maintainers = [ maintainers.abbradar ];
diff --git a/pkgs/applications/audio/deadbeef/fix-wildmidi.patch b/pkgs/applications/audio/deadbeef/fix-wildmidi.patch
deleted file mode 100644
index c37308459bb7..000000000000
--- a/pkgs/applications/audio/deadbeef/fix-wildmidi.patch
+++ /dev/null
@@ -1,19 +0,0 @@
---- a/plugins/wildmidi/src/wildmidi_lib.c
-+++ b/plugins/wildmidi/src/wildmidi_lib.c
-@@ -394,11 +394,11 @@ free_gauss (void) {
-     }
- }
- 
--unsigned long int delay_size[4][2];
--signed long int a[5][2];
--signed long int b[5][2];
--signed long int gain_in[4];
--signed long int gain_out[4];
-+static unsigned long int delay_size[4][2];
-+static signed long int a[5][2];
-+static signed long int b[5][2];
-+static signed long int gain_in[4];
-+static signed long int gain_out[4];
- 
- void init_lowpass (void) {
-        float c = 0;
diff --git a/pkgs/applications/audio/deadbeef/plugins/headerbar-gtk3.nix b/pkgs/applications/audio/deadbeef/plugins/headerbar-gtk3.nix
index b26360f0c469..337d570a9353 100644
--- a/pkgs/applications/audio/deadbeef/plugins/headerbar-gtk3.nix
+++ b/pkgs/applications/audio/deadbeef/plugins/headerbar-gtk3.nix
@@ -22,7 +22,7 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "Plug-in that adds GTK 3 header bar to the DeaDBeeF music player";
-    homepage = https://github.com/saivert/ddb_misc_headerbar_GTK3;
+    homepage = "https://github.com/saivert/ddb_misc_headerbar_GTK3";
     license = licenses.gpl2Plus;
     maintainers = [ maintainers.jtojnar ];
     platforms = platforms.linux;
diff --git a/pkgs/applications/audio/deadbeef/plugins/infobar.nix b/pkgs/applications/audio/deadbeef/plugins/infobar.nix
index 8a81101983f7..294d3a0ad8bf 100644
--- a/pkgs/applications/audio/deadbeef/plugins/infobar.nix
+++ b/pkgs/applications/audio/deadbeef/plugins/infobar.nix
@@ -26,7 +26,7 @@ stdenv.mkDerivation rec {
   meta = with stdenv.lib; {
     broken = true; # crashes DeaDBeeF and is abandoned (https://bitbucket.org/dsimbiriatin/deadbeef-infobar/issues/38/infobar-causes-deadbeef-180-to-crash)
     description = "DeaDBeeF Infobar Plugin";
-    homepage = https://bitbucket.org/dsimbiriatin/deadbeef-infobar;
+    homepage = "https://bitbucket.org/dsimbiriatin/deadbeef-infobar";
     license = licenses.gpl2Plus;
     maintainers = [ maintainers.jtojnar ];
     platforms = platforms.linux;
diff --git a/pkgs/applications/audio/deadbeef/plugins/mpris2.nix b/pkgs/applications/audio/deadbeef/plugins/mpris2.nix
index 5b27f3c3f323..95606a869b7f 100644
--- a/pkgs/applications/audio/deadbeef/plugins/mpris2.nix
+++ b/pkgs/applications/audio/deadbeef/plugins/mpris2.nix
@@ -15,7 +15,7 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "MPRISv2 plugin for the DeaDBeeF music player";
-    homepage = https://github.com/Serranya/deadbeef-mpris2-plugin/;
+    homepage = "https://github.com/Serranya/deadbeef-mpris2-plugin/";
     license = licenses.gpl2;
     platforms = platforms.linux;
     maintainers = [ maintainers.abbradar ];
diff --git a/pkgs/applications/audio/denemo/default.nix b/pkgs/applications/audio/denemo/default.nix
index f3adec4fece2..1438b066061d 100644
--- a/pkgs/applications/audio/denemo/default.nix
+++ b/pkgs/applications/audio/denemo/default.nix
@@ -33,7 +33,7 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "Music notation and composition software used with lilypond";
-    homepage = http://denemo.org;
+    homepage = "http://denemo.org";
     license = licenses.gpl3;
     platforms = platforms.linux;
     maintainers = [ maintainers.olynch ];
diff --git a/pkgs/applications/audio/dfasma/default.nix b/pkgs/applications/audio/dfasma/default.nix
index 1785ca60060c..6df4679d1d5f 100644
--- a/pkgs/applications/audio/dfasma/default.nix
+++ b/pkgs/applications/audio/dfasma/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchFromGitHub, fftw, libsndfile, qtbase, qtmultimedia, qmake }:
+{ mkDerivation, stdenv, fetchFromGitHub, fftw, libsndfile, qtbase, qtmultimedia, qmake }:
 
 let
 
@@ -26,7 +26,7 @@ let
     };
   };
 
-in stdenv.mkDerivation rec {
+in mkDerivation rec {
   pname = "dfasma";
   version = "1.4.5";
 
@@ -59,7 +59,7 @@ in stdenv.mkDerivation rec {
       there are basic functionalities to align the signals in time and
       amplitude, this software does not aim to be an audio editor.
     '';
-    homepage = http://gillesdegottex.github.io/dfasma/;
+    homepage = "http://gillesdegottex.github.io/dfasma/";
     license = [ licenses.gpl3Plus reaperFork.meta.license ];
     platforms = platforms.linux;
   };
diff --git a/pkgs/applications/audio/dirt/default.nix b/pkgs/applications/audio/dirt/default.nix
index 1fcdda408966..5e0cf3616fe5 100644
--- a/pkgs/applications/audio/dirt/default.nix
+++ b/pkgs/applications/audio/dirt/default.nix
@@ -21,7 +21,7 @@ stdenv.mkDerivation {
 
   meta = with stdenv.lib; {
     description = "An unimpressive thingie for playing bits of samples with some level of accuracy";
-    homepage = https://github.com/tidalcycles/Dirt;
+    homepage = "https://github.com/tidalcycles/Dirt";
     license = licenses.gpl3;
     maintainers = with maintainers; [ anderspapitto ];
     platforms = with platforms; linux;
diff --git a/pkgs/applications/audio/distrho/default.nix b/pkgs/applications/audio/distrho/default.nix
index 36f7dcc5993f..0f651f47a488 100644
--- a/pkgs/applications/audio/distrho/default.nix
+++ b/pkgs/applications/audio/distrho/default.nix
@@ -40,7 +40,7 @@ in stdenv.mkDerivation rec {
   makeFlags = [ "PREFIX=$(out)" ];
 
   meta = with stdenv.lib; {
-    homepage = http://distrho.sourceforge.net;
+    homepage = "http://distrho.sourceforge.net";
     description = "A collection of cross-platform audio effects and plugins";
     longDescription = ''
       Includes:
diff --git a/pkgs/applications/audio/dr14_tmeter/default.nix b/pkgs/applications/audio/dr14_tmeter/default.nix
index ea0ce8cb5f30..fbf25384eef2 100644
--- a/pkgs/applications/audio/dr14_tmeter/default.nix
+++ b/pkgs/applications/audio/dr14_tmeter/default.nix
@@ -23,7 +23,7 @@ python3Packages.buildPythonApplication rec {
   meta = with stdenv.lib; {
     description = "Compute the DR14 of a given audio file according to the procedure described by the Pleasurize Music Foundation";
     license = licenses.gpl3Plus;
-    homepage = http://dr14tmeter.sourceforge.net/;
+    homepage = "http://dr14tmeter.sourceforge.net/";
     maintainers = [ maintainers.adisbladis ];
   };
 }
diff --git a/pkgs/applications/audio/dragonfly-reverb/default.nix b/pkgs/applications/audio/dragonfly-reverb/default.nix
index 1ce7115ad85b..99c07ba8f5fe 100644
--- a/pkgs/applications/audio/dragonfly-reverb/default.nix
+++ b/pkgs/applications/audio/dragonfly-reverb/default.nix
@@ -34,7 +34,7 @@ stdenv.mkDerivation rec {
   '';
 
   meta = with stdenv.lib; {
-    homepage = https://github.com/michaelwillis/dragonfly-reverb;
+    homepage = "https://github.com/michaelwillis/dragonfly-reverb";
     description = "A hall-style reverb based on freeverb3 algorithms";
     maintainers = [ maintainers.magnetophon ];
     license = licenses.gpl3;
diff --git a/pkgs/applications/audio/drumgizmo/default.nix b/pkgs/applications/audio/drumgizmo/default.nix
index 2581f223c91d..454befd55f9d 100644
--- a/pkgs/applications/audio/drumgizmo/default.nix
+++ b/pkgs/applications/audio/drumgizmo/default.nix
@@ -20,7 +20,7 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "An LV2 sample based drum plugin";
-    homepage = https://www.drumgizmo.org;
+    homepage = "https://www.drumgizmo.org";
     license = licenses.lgpl3;
     platforms = platforms.linux;
     maintainers = [ maintainers.goibhniu maintainers.nico202 ];
diff --git a/pkgs/applications/audio/drumkv1/default.nix b/pkgs/applications/audio/drumkv1/default.nix
index d3399315376f..04277badfbe9 100644
--- a/pkgs/applications/audio/drumkv1/default.nix
+++ b/pkgs/applications/audio/drumkv1/default.nix
@@ -2,11 +2,11 @@
 
 mkDerivation rec {
   pname = "drumkv1";
-  version = "0.9.12";
+  version = "0.9.14";
 
   src = fetchurl {
     url = "mirror://sourceforge/drumkv1/${pname}-${version}.tar.gz";
-    sha256 = "0hmnmk9vvi43wl6say0dg7j088h7mmwmfdwjhsq89c7i7cpg78da";
+    sha256 = "0fr7pkp55zvjxf7p22drs93fsjgvqhbd55vxi0srhp2s2wzz5qak";
   };
 
   buildInputs = [ libjack2 alsaLib libsndfile liblo lv2 qt5.qtbase qt5.qttools ];
@@ -15,7 +15,7 @@ mkDerivation rec {
 
   meta = with lib; {
     description = "An old-school drum-kit sampler synthesizer with stereo fx";
-    homepage = http://drumkv1.sourceforge.net/;
+    homepage = "http://drumkv1.sourceforge.net/";
     license = licenses.gpl2Plus;
     platforms = platforms.linux;
     maintainers = [ maintainers.goibhniu ];
diff --git a/pkgs/applications/audio/easytag/default.nix b/pkgs/applications/audio/easytag/default.nix
index 4c2b97e727f4..3f294342da70 100644
--- a/pkgs/applications/audio/easytag/default.nix
+++ b/pkgs/applications/audio/easytag/default.nix
@@ -33,7 +33,7 @@ in stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "View and edit tags for various audio files";
-    homepage = https://wiki.gnome.org/Apps/EasyTAG;
+    homepage = "https://wiki.gnome.org/Apps/EasyTAG";
     license = licenses.gpl2Plus;
     maintainers = with maintainers; [ ];
     platforms = platforms.linux;
diff --git a/pkgs/applications/audio/ecasound/default.nix b/pkgs/applications/audio/ecasound/default.nix
index c17f6b745b37..13c48fc12af3 100644
--- a/pkgs/applications/audio/ecasound/default.nix
+++ b/pkgs/applications/audio/ecasound/default.nix
@@ -27,6 +27,6 @@ stdenv.mkDerivation rec {
   meta = {
     description = "Ecasound is a software package designed for multitrack audio processing";
     license = with stdenv.lib.licenses;  [ gpl2 lgpl21 ];
-    homepage = http://nosignal.fi/ecasound/;
+    homepage = "http://nosignal.fi/ecasound/";
   };
 }
diff --git a/pkgs/applications/audio/eflite/default.nix b/pkgs/applications/audio/eflite/default.nix
index 2338c0ed376e..f9a579512cab 100644
--- a/pkgs/applications/audio/eflite/default.nix
+++ b/pkgs/applications/audio/eflite/default.nix
@@ -36,7 +36,7 @@ stdenv.mkDerivation rec {
   CFLAGS = stdenv.lib.optionalString debug " -DDEBUG=2";
 
   meta = {
-    homepage = http://eflite.sourceforge.net;
+    homepage = "http://eflite.sourceforge.net";
     description = "EFlite is a speech server for screen readers";
     longDescription = ''
       EFlite is a speech server for Emacspeak and other screen
diff --git a/pkgs/applications/audio/elisa/default.nix b/pkgs/applications/audio/elisa/default.nix
deleted file mode 100644
index a159ca7f6855..000000000000
--- a/pkgs/applications/audio/elisa/default.nix
+++ /dev/null
@@ -1,37 +0,0 @@
-{ mkDerivation, fetchFromGitHub, lib
-, extra-cmake-modules, kdoctools, wrapGAppsHook
-, qtmultimedia, qtquickcontrols2, qtwebsockets
-, kconfig, kcmutils, kcrash, kdeclarative, kfilemetadata, kinit, kirigami2
-, baloo, vlc
-}:
-
-mkDerivation rec {
-  pname = "elisa";
-  version = "19.12.2";
-
-  src = fetchFromGitHub {
-    owner  = "KDE";
-    repo   = "elisa";
-    rev    = "v${version}";
-    sha256 = "0g6zj4ix97aa529w43v1z3n73b8l5di6gscs40hyx4sl1sb7fdh6";
-  };
-
-  buildInputs = [ vlc ];
-
-  nativeBuildInputs = [ extra-cmake-modules kdoctools wrapGAppsHook ];
-
-  propagatedBuildInputs = [
-    qtmultimedia qtquickcontrols2 qtwebsockets
-    kconfig kcmutils kcrash kdeclarative kfilemetadata kinit kirigami2
-    baloo
-  ];
-
-  enableParallelBuilding = true;
-
-  meta = with lib; {
-    description = "Elisa Music Player";
-    license     = licenses.gpl3;
-    maintainers = with maintainers; [ peterhoeg ];
-    inherit (kconfig.meta) platforms;
-  };
-}
diff --git a/pkgs/applications/audio/ensemble-chorus/default.nix b/pkgs/applications/audio/ensemble-chorus/default.nix
index 5940203d04d1..e2413a4fe87f 100644
--- a/pkgs/applications/audio/ensemble-chorus/default.nix
+++ b/pkgs/applications/audio/ensemble-chorus/default.nix
@@ -19,7 +19,7 @@ stdenv.mkDerivation rec {
   ];
 
   meta = with stdenv.lib; {
-    homepage = https://github.com/jpcima/ensemble-chorus;
+    homepage = "https://github.com/jpcima/ensemble-chorus";
     description = "Digital model of electronic string ensemble chorus";
     maintainers = [ maintainers.magnetophon ];
     platforms = platforms.linux;
diff --git a/pkgs/applications/audio/eq10q/default.nix b/pkgs/applications/audio/eq10q/default.nix
index b4ad15053204..cc3a3c9ac1f5 100644
--- a/pkgs/applications/audio/eq10q/default.nix
+++ b/pkgs/applications/audio/eq10q/default.nix
@@ -14,7 +14,7 @@ stdenv.mkDerivation rec {
   patches = [
     (fetchpatch {
       # glibc 2.27 compatibility
-      url = https://sources.debian.org/data/main/e/eq10q/2.2~repack0-2.1/debian/patches/05-pow10.patch;
+      url = "https://sources.debian.org/data/main/e/eq10q/2.2~repack0-2.1/debian/patches/05-pow10.patch";
       sha256 = "07b0wf6k4xqgigv4h095bzfaw8r218wa36r9w1817jcys13r6c5r";
     })
   ];
@@ -37,7 +37,7 @@ stdenv.mkDerivation rec {
       64 bits floating point internal audio processing.
       Nice GUI with powerful metering for every plugin.
     '';
-    homepage = http://eq10q.sourceforge.net/;
+    homepage = "http://eq10q.sourceforge.net/";
     license = stdenv.lib.licenses.gpl3;
     maintainers = [ stdenv.lib.maintainers.magnetophon ];
     platforms = stdenv.lib.platforms.linux;
diff --git a/pkgs/applications/audio/espeak/default.nix b/pkgs/applications/audio/espeak/default.nix
index 6b5101b50b5a..aa68fd5363d6 100644
--- a/pkgs/applications/audio/espeak/default.nix
+++ b/pkgs/applications/audio/espeak/default.nix
@@ -28,7 +28,7 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "Compact open source software speech synthesizer";
-    homepage = http://espeak.sourceforge.net/;
+    homepage = "http://espeak.sourceforge.net/";
     license = licenses.gpl3Plus;
     platforms = platforms.linux;
   };
diff --git a/pkgs/applications/audio/espeak/edit.nix b/pkgs/applications/audio/espeak/edit.nix
index 8d7db50fd323..6bcffcbc5c34 100644
--- a/pkgs/applications/audio/espeak/edit.nix
+++ b/pkgs/applications/audio/espeak/edit.nix
@@ -53,7 +53,7 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "Phoneme editor for espeak";
-    homepage = http://espeak.sourceforge.net/;
+    homepage = "http://espeak.sourceforge.net/";
     license = licenses.gpl3Plus;
     platforms = platforms.linux;
   };
diff --git a/pkgs/applications/audio/eteroj.lv2/default.nix b/pkgs/applications/audio/eteroj.lv2/default.nix
index bbfe1ad5623f..c86e7b5e9ba1 100644
--- a/pkgs/applications/audio/eteroj.lv2/default.nix
+++ b/pkgs/applications/audio/eteroj.lv2/default.nix
@@ -16,7 +16,7 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "OSC injection/ejection from/to UDP/TCP/Serial for LV2";
-    homepage = https://open-music-kontrollers.ch/lv2/eteroj;
+    homepage = "https://open-music-kontrollers.ch/lv2/eteroj";
     license = licenses.artistic2;
     maintainers = with maintainers; [ magnetophon ];
   };
diff --git a/pkgs/applications/audio/faust/faust1.nix b/pkgs/applications/audio/faust/faust1.nix
index 687608b43524..64b8e7244311 100644
--- a/pkgs/applications/audio/faust/faust1.nix
+++ b/pkgs/applications/audio/faust/faust1.nix
@@ -17,8 +17,8 @@ let
   };
 
   meta = with stdenv.lib; {
-    homepage = http://faust.grame.fr/;
-    downloadPage = https://sourceforge.net/projects/faudiostream/files/;
+    homepage = "http://faust.grame.fr/";
+    downloadPage = "https://sourceforge.net/projects/faudiostream/files/";
     license = licenses.gpl2;
     platforms = platforms.linux;
     maintainers = with maintainers; [ magnetophon pmahoney ];
diff --git a/pkgs/applications/audio/faust/faust2.nix b/pkgs/applications/audio/faust/faust2.nix
index 74a5f4d383d9..33df1ce5d4ee 100644
--- a/pkgs/applications/audio/faust/faust2.nix
+++ b/pkgs/applications/audio/faust/faust2.nix
@@ -20,19 +20,19 @@ with stdenv.lib.strings;
 
 let
 
-  version = "2.20.2";
+  version = "unstable-2020-03-20";
 
   src = fetchFromGitHub {
     owner = "grame-cncm";
     repo = "faust";
-    rev = version;
-    sha256 = "08hv8gyj6c83128z3si92r1ka5ckf9sdpn5jdnlhrqyzja4mrxsy";
+    rev = "2782088d4485f1c572755f41e7a072b41cb7148a";
+    sha256 = "1l7bi2mq10s5wm8g4cdipg8gndd478x897qv0h7nqi1s2q9nq99p";
     fetchSubmodules = true;
   };
 
   meta = with stdenv.lib; {
-    homepage = http://faust.grame.fr/;
-    downloadPage = https://sourceforge.net/projects/faudiostream/files/;
+    homepage = "http://faust.grame.fr/";
+    downloadPage = "https://sourceforge.net/projects/faudiostream/files/";
     license = licenses.gpl2;
     platforms = platforms.linux;
     maintainers = with maintainers; [ magnetophon pmahoney ];
diff --git a/pkgs/applications/audio/faust/faust2jack.nix b/pkgs/applications/audio/faust/faust2jack.nix
index f032f435a35e..26478b2bb2e5 100644
--- a/pkgs/applications/audio/faust/faust2jack.nix
+++ b/pkgs/applications/audio/faust/faust2jack.nix
@@ -2,7 +2,7 @@
 , gtk2
 , jack2Full
 , alsaLib
-, opencv
+, opencv2
 , libsndfile
 }:
 
@@ -20,7 +20,7 @@ faust.wrapWithBuildEnv {
     gtk2
     jack2Full
     alsaLib
-    opencv
+    opencv2
     libsndfile
   ];
 
diff --git a/pkgs/applications/audio/faust/faust2jaqt.nix b/pkgs/applications/audio/faust/faust2jaqt.nix
index 5a015e5ca31e..a2f1c2139a1a 100644
--- a/pkgs/applications/audio/faust/faust2jaqt.nix
+++ b/pkgs/applications/audio/faust/faust2jaqt.nix
@@ -1,8 +1,9 @@
 { faust
 , jack2Full
-, opencv
+, opencv2
 , qt4
 , libsndfile
+, which
 }:
 
 faust.wrapWithBuildEnv {
@@ -16,9 +17,10 @@ faust.wrapWithBuildEnv {
 
   propagatedBuildInputs = [
     jack2Full
-    opencv
+    opencv2
     qt4
     libsndfile
+    which
   ];
 
 }
diff --git a/pkgs/applications/audio/faust/faust2lv2.nix b/pkgs/applications/audio/faust/faust2lv2.nix
index 3472ce5047eb..51d956b14036 100644
--- a/pkgs/applications/audio/faust/faust2lv2.nix
+++ b/pkgs/applications/audio/faust/faust2lv2.nix
@@ -2,6 +2,7 @@
 , faust
 , lv2
 , qt4
+, which
 
 }:
 
@@ -9,6 +10,6 @@ faust.wrapWithBuildEnv {
 
   baseName = "faust2lv2";
 
-  propagatedBuildInputs = [ boost lv2 qt4 ];
+  propagatedBuildInputs = [ boost lv2 qt4 which ];
 
 }
diff --git a/pkgs/applications/audio/faust/faustlive.nix b/pkgs/applications/audio/faust/faustlive.nix
index 3b6ca9e4053f..90bd8bc60ad0 100644
--- a/pkgs/applications/audio/faust/faustlive.nix
+++ b/pkgs/applications/audio/faust/faustlive.nix
@@ -29,7 +29,7 @@ stdenv.mkDerivation {
       together the convenience of a standalone interpreted language with the
       efficiency of a compiled language. It's ideal for fast prototyping.
     '';
-    homepage = http://faust.grame.fr/;
+    homepage = "http://faust.grame.fr/";
     license = licenses.gpl3;
   };
 }
diff --git a/pkgs/applications/audio/flac/default.nix b/pkgs/applications/audio/flac/default.nix
index df3aa987c3fb..bd8b9bea82b7 100644
--- a/pkgs/applications/audio/flac/default.nix
+++ b/pkgs/applications/audio/flac/default.nix
@@ -15,7 +15,7 @@ stdenv.mkDerivation rec {
   outputs = [ "bin" "dev" "out" "man" "doc" ];
 
   meta = with stdenv.lib; {
-    homepage = https://xiph.org/flac/;
+    homepage = "https://xiph.org/flac/";
     description = "Library and tools for encoding and decoding the FLAC lossless audio file format";
     platforms = platforms.all;
     license = licenses.bsd3;
diff --git a/pkgs/applications/audio/flac123/default.nix b/pkgs/applications/audio/flac123/default.nix
index 19ed23523556..6f13b710effc 100644
--- a/pkgs/applications/audio/flac123/default.nix
+++ b/pkgs/applications/audio/flac123/default.nix
@@ -13,7 +13,7 @@ stdenv.mkDerivation rec {
   buildInputs = [ flac libao libogg popt ];
 
   meta = with stdenv.lib; {
-    homepage = http://flac-tools.sourceforge.net/;
+    homepage = "http://flac-tools.sourceforge.net/";
     description = "A command-line program for playing FLAC audio files";
     license = licenses.gpl2Plus;
     platforms = platforms.all;
diff --git a/pkgs/applications/audio/flacon/default.nix b/pkgs/applications/audio/flacon/default.nix
index eb39309a254c..1da40e754153 100644
--- a/pkgs/applications/audio/flacon/default.nix
+++ b/pkgs/applications/audio/flacon/default.nix
@@ -27,7 +27,7 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "Extracts audio tracks from an audio CD image to separate tracks.";
-    homepage = https://flacon.github.io/;
+    homepage = "https://flacon.github.io/";
     license = licenses.lgpl21;
     platforms = platforms.linux;
     maintainers = with maintainers; [ snglth ];
diff --git a/pkgs/applications/audio/fluidsynth/default.nix b/pkgs/applications/audio/fluidsynth/default.nix
index 8e2895bf8478..9d9772cde29a 100644
--- a/pkgs/applications/audio/fluidsynth/default.nix
+++ b/pkgs/applications/audio/fluidsynth/default.nix
@@ -40,7 +40,7 @@ stdenv.mkDerivation  {
 
   meta = with lib; {
     description = "Real-time software synthesizer based on the SoundFont 2 specifications";
-    homepage    = http://www.fluidsynth.org;
+    homepage    = "http://www.fluidsynth.org";
     license     = licenses.lgpl21Plus;
     maintainers = with maintainers; [ goibhniu lovek323 ];
     platforms   = platforms.unix;
diff --git a/pkgs/applications/audio/fmit/default.nix b/pkgs/applications/audio/fmit/default.nix
index ee45217e4909..114cf5e192ff 100644
--- a/pkgs/applications/audio/fmit/default.nix
+++ b/pkgs/applications/audio/fmit/default.nix
@@ -46,7 +46,7 @@ mkDerivation rec {
       FMIT is a graphical utility for tuning musical instruments, with error
       and volume history, and advanced features.
     '';
-    homepage = http://gillesdegottex.github.io/fmit/;
+    homepage = "http://gillesdegottex.github.io/fmit/";
     license = licenses.gpl3Plus;
     platforms = platforms.linux;
   };
diff --git a/pkgs/applications/audio/fmsynth/default.nix b/pkgs/applications/audio/fmsynth/default.nix
index 248967e06e6f..d957c7ec33d8 100644
--- a/pkgs/applications/audio/fmsynth/default.nix
+++ b/pkgs/applications/audio/fmsynth/default.nix
@@ -41,7 +41,7 @@ stdenv.mkDerivation {
       - Full floating point implementation optimized for SIMD
       - Hard real-time constraints
     '';
-    homepage = https://github.com/Themaister/libfmsynth;
+    homepage = "https://github.com/Themaister/libfmsynth";
     license = stdenv.lib.licenses.mit;
     maintainers = [ stdenv.lib.maintainers.magnetophon ];
     platforms = stdenv.lib.platforms.linux;
diff --git a/pkgs/applications/audio/fomp/default.nix b/pkgs/applications/audio/fomp/default.nix
index 9f7f0b090074..a712eef06501 100644
--- a/pkgs/applications/audio/fomp/default.nix
+++ b/pkgs/applications/audio/fomp/default.nix
@@ -13,7 +13,7 @@ stdenv.mkDerivation rec {
   buildInputs = [ lv2 python2 ];
 
   meta = with stdenv.lib; {
-    homepage = http://drobilla.net/software/fomp/;
+    homepage = "http://drobilla.net/software/fomp/";
     description = "An LV2 port of the MCP, VCO, FIL, and WAH plugins by Fons Adriaensen";
     license = licenses.gpl2;
     maintainers = [ maintainers.magnetophon ];
diff --git a/pkgs/applications/audio/foo-yc20/default.nix b/pkgs/applications/audio/foo-yc20/default.nix
index e514032f44e2..643b648fa88d 100644
--- a/pkgs/applications/audio/foo-yc20/default.nix
+++ b/pkgs/applications/audio/foo-yc20/default.nix
@@ -21,7 +21,7 @@ stdenv.mkDerivation {
   meta = {
     broken = true; # see: https://github.com/sampov2/foo-yc20/issues/7
     description = "A Faust implementation of a 1969 designed Yamaha combo organ, the YC-20";
-    homepage = https://github.com/sampov2/foo-yc20;
+    homepage = "https://github.com/sampov2/foo-yc20";
     license     = "BSD";
     maintainers = [ stdenv.lib.maintainers.magnetophon ];
     platforms = stdenv.lib.platforms.linux;
diff --git a/pkgs/applications/audio/freewheeling/default.nix b/pkgs/applications/audio/freewheeling/default.nix
index 34494871f29c..6ee120f3d1a8 100644
--- a/pkgs/applications/audio/freewheeling/default.nix
+++ b/pkgs/applications/audio/freewheeling/default.nix
@@ -44,7 +44,7 @@ stdenv.mkDerivation rec {
         software, released under the GNU GPL license.
     '' ;
 
-    homepage = http://freewheeling.sourceforge.net;
+    homepage = "http://freewheeling.sourceforge.net";
     license = stdenv.lib.licenses.gpl2;
     maintainers = [ stdenv.lib.maintainers.sepi ];
     platforms = stdenv.lib.platforms.linux;
diff --git a/pkgs/applications/audio/ft2-clone/default.nix b/pkgs/applications/audio/ft2-clone/default.nix
new file mode 100644
index 000000000000..3acf8ea1c0c8
--- /dev/null
+++ b/pkgs/applications/audio/ft2-clone/default.nix
@@ -0,0 +1,30 @@
+{ stdenv
+, fetchFromGitHub
+, cmake
+, alsaLib
+, SDL2
+}:
+
+stdenv.mkDerivation rec {
+  pname = "ft2-clone";
+  version = "1.23";
+
+  src = fetchFromGitHub {
+    owner = "8bitbubsy";
+    repo = "ft2-clone";
+    rev = "v${version}";
+    sha256 = "03prdifc2nz7smmzdy19flp33m927vb7j5bhdc46gak753pikw7d";
+  };
+
+  nativeBuildInputs = [ cmake ];
+  buildInputs = [ SDL2 ] ++ stdenv.lib.optional stdenv.isLinux alsaLib;
+
+  meta = with stdenv.lib; {
+    description = "A highly accurate clone of the classic Fasttracker II software for MS-DOS";
+    homepage = "https://16-bits.org/ft2.php";
+    license = licenses.bsd3;
+    maintainers = with maintainers; [ fgaz ];
+    platforms = platforms.all;
+  };
+}
+
diff --git a/pkgs/applications/audio/game-music-emu/default.nix b/pkgs/applications/audio/game-music-emu/default.nix
index d95b3eea596d..51f895ea2d5f 100644
--- a/pkgs/applications/audio/game-music-emu/default.nix
+++ b/pkgs/applications/audio/game-music-emu/default.nix
@@ -12,7 +12,7 @@ stdenv.mkDerivation rec {
   buildInputs = [ cmake ];
 
   meta = with stdenv.lib; {
-    homepage = https://bitbucket.org/mpyne/game-music-emu/wiki/Home;
+    homepage = "https://bitbucket.org/mpyne/game-music-emu/wiki/Home";
     description = "A collection of video game music file emulators";
     license = licenses.lgpl21Plus;
     platforms = platforms.all;
diff --git a/pkgs/applications/audio/gbsplay/default.nix b/pkgs/applications/audio/gbsplay/default.nix
index 9ff9b8dc1145..f89b8ed399b4 100644
--- a/pkgs/applications/audio/gbsplay/default.nix
+++ b/pkgs/applications/audio/gbsplay/default.nix
@@ -11,13 +11,13 @@ stdenv.mkDerivation {
   };
 
   buildInputs = [ libpulseaudio ];
-  
-  configureFlagsArray =
+
+  configureFlags =
    [ "--without-test" "--without-contrib" "--disable-devdsp"
      "--enable-pulse" "--disable-alsa" "--disable-midi"
      "--disable-nas" "--disable-dsound" "--disable-i18n" ];
 
-  makeFlagsArray = [ "tests=" ];
+  makeFlags = [ "tests=" ];
 
   meta = with stdenv.lib; {
     description = "gameboy sound player";
diff --git a/pkgs/applications/audio/gigedit/default.nix b/pkgs/applications/audio/gigedit/default.nix
index b8ec2d7116f5..08eec3135081 100644
--- a/pkgs/applications/audio/gigedit/default.nix
+++ b/pkgs/applications/audio/gigedit/default.nix
@@ -20,7 +20,7 @@ stdenv.mkDerivation rec {
   enableParallelBuilding = true;
 
   meta = with stdenv.lib; {
-    homepage = http://www.linuxsampler.org;
+    homepage = "http://www.linuxsampler.org";
     description = "Gigasampler file access library";
     license = licenses.gpl2;
     maintainers = [ maintainers.goibhniu ];
diff --git a/pkgs/applications/audio/gjay/default.nix b/pkgs/applications/audio/gjay/default.nix
index 42285ba4bf86..9e016c68608b 100644
--- a/pkgs/applications/audio/gjay/default.nix
+++ b/pkgs/applications/audio/gjay/default.nix
@@ -17,7 +17,7 @@ stdenv.mkDerivation {
 
   meta = with stdenv.lib; {
     description = "Generates playlists such that each song sounds good following the previous song";
-    homepage = http://gjay.sourceforge.net/;
+    homepage = "http://gjay.sourceforge.net/";
     license = licenses.gpl2;
     maintainers = with maintainers; [ pSub ];
     platforms = with platforms; linux;
diff --git a/pkgs/applications/audio/gmpc/default.nix b/pkgs/applications/audio/gmpc/default.nix
index cae35b625190..7ae02ae38d85 100644
--- a/pkgs/applications/audio/gmpc/default.nix
+++ b/pkgs/applications/audio/gmpc/default.nix
@@ -10,7 +10,7 @@ stdenv.mkDerivation rec {
   libmpd = stdenv.mkDerivation {
     name = "libmpd-11.8.17";
     src = fetchurl {
-      url = http://download.sarine.nl/Programs/gmpc/11.8/libmpd-11.8.17.tar.gz;
+      url = "http://download.sarine.nl/Programs/gmpc/11.8/libmpd-11.8.17.tar.gz";
       sha256 = "10vspwsgr8pwf3qp2bviw6b2l8prgdiswgv7qiqiyr0h1mmk487y";
     };
     patches = [ ./libmpd-11.8.17-remove-strndup.patch ];
@@ -31,7 +31,7 @@ stdenv.mkDerivation rec {
   ];
 
   meta = with stdenv.lib; {
-    homepage = https://gmpclient.org;
+    homepage = "https://gmpclient.org";
     description = "A GTK2 frontend for Music Player Daemon";
     license = licenses.gpl2;
     maintainers = [];
diff --git a/pkgs/applications/audio/gmu/default.nix b/pkgs/applications/audio/gmu/default.nix
index 8446855d190c..bfe9f72d6646 100644
--- a/pkgs/applications/audio/gmu/default.nix
+++ b/pkgs/applications/audio/gmu/default.nix
@@ -24,7 +24,7 @@ stdenv.mkDerivation rec {
   '';
 
   meta = {
-    homepage = http://wejp.k.vu/projects/gmu;
+    homepage = "http://wejp.k.vu/projects/gmu";
     description = "Open source music player for portable gaming consoles and handhelds";
     license = stdenv.lib.licenses.gpl2;
   };
diff --git a/pkgs/applications/audio/gnome-podcasts/default.nix b/pkgs/applications/audio/gnome-podcasts/default.nix
index 47945de78330..d5bec0c09e5f 100644
--- a/pkgs/applications/audio/gnome-podcasts/default.nix
+++ b/pkgs/applications/audio/gnome-podcasts/default.nix
@@ -9,7 +9,6 @@
 , rustc
 , python3
 , pkgconfig
-, gnome3
 , glib
 , libhandy
 , gtk3
@@ -43,6 +42,7 @@ rustPlatform.buildRustPackage rec {
     rustc
     python3
     wrapGAppsHook
+    glib
   ];
 
   buildInputs = [
@@ -73,9 +73,9 @@ rustPlatform.buildRustPackage rec {
 
   meta = with stdenv.lib; {
     description = "Listen to your favorite podcasts";
-    homepage = https://wiki.gnome.org/Apps/Podcasts;
+    homepage = "https://wiki.gnome.org/Apps/Podcasts";
     license = licenses.gpl3;
-    maintainers = gnome3.maintainers;
+    maintainers = teams.gnome.members;
     platforms = platforms.unix;
   };
 }
diff --git a/pkgs/applications/audio/google-play-music-desktop-player/default.nix b/pkgs/applications/audio/google-play-music-desktop-player/default.nix
index 332f2ca2342e..509d3ddcf751 100644
--- a/pkgs/applications/audio/google-play-music-desktop-player/default.nix
+++ b/pkgs/applications/audio/google-play-music-desktop-player/default.nix
@@ -73,7 +73,7 @@ stdenv.mkDerivation {
   '';
 
   meta = {
-    homepage = https://www.googleplaymusicdesktopplayer.com/;
+    homepage = "https://www.googleplaymusicdesktopplayer.com/";
     description = "A beautiful cross platform Desktop Player for Google Play Music";
     license = stdenv.lib.licenses.mit;
     platforms = [ "x86_64-linux" ];
diff --git a/pkgs/applications/audio/gpodder/default.nix b/pkgs/applications/audio/gpodder/default.nix
index 332a633616cc..933c9ac02035 100644
--- a/pkgs/applications/audio/gpodder/default.nix
+++ b/pkgs/applications/audio/gpodder/default.nix
@@ -5,14 +5,14 @@
 
 python3Packages.buildPythonApplication rec {
   pname = "gpodder";
-  version = "3.10.13";
+  version = "3.10.15";
   format = "other";
 
   src = fetchFromGitHub {
     owner = pname;
     repo = pname;
     rev = version;
-    sha256 = "1h542syaxsx1hslfzlk3fx1nbp190zjw35kigw7a1kx1jwvfwapg";
+    sha256 = "0ghbanj142n0hgydzfjmnkdgri2kswsjal3mn10c723kih4ir4yr";
   };
 
   patches = [
@@ -73,7 +73,7 @@ python3Packages.buildPythonApplication rec {
       gPodder downloads and manages free audio and video content (podcasts)
       for you. Listen directly on your computer or on your mobile devices.
     '';
-    homepage = http://gpodder.org/;
+    homepage = "http://gpodder.org/";
     license = licenses.gpl3;
     platforms = platforms.linux ++ platforms.darwin;
     maintainers = with maintainers; [ skeidel mic92 ];
diff --git a/pkgs/applications/audio/gradio/default.nix b/pkgs/applications/audio/gradio/default.nix
index 487b0a730d83..384235fc0650 100644
--- a/pkgs/applications/audio/gradio/default.nix
+++ b/pkgs/applications/audio/gradio/default.nix
@@ -63,7 +63,7 @@ in stdenv.mkDerivation {
   patches = [ ./0001-Remove-post-install-script-that-hardcodes-paths.patch ];
 
   meta = with stdenv.lib; {
-    homepage = https://github.com/haecker-felix/gradio;
+    homepage = "https://github.com/haecker-felix/gradio";
     description = "A GTK3 app for finding and listening to internet radio stations";
     license = licenses.gpl3;
     platforms = platforms.linux;
diff --git a/pkgs/applications/audio/grandorgue/default.nix b/pkgs/applications/audio/grandorgue/default.nix
new file mode 100644
index 000000000000..e2ba4ee2244e
--- /dev/null
+++ b/pkgs/applications/audio/grandorgue/default.nix
@@ -0,0 +1,32 @@
+{ lib, stdenv, fetchsvn, cmake, pkg-config, gcc, pkgconfig, fftwFloat, alsaLib
+, zlib, wavpack, wxGTK31, udev, jackaudioSupport ? false, libjack2
+, includeDemo ? true }:
+
+stdenv.mkDerivation rec {
+  pname = "grandorgue";
+  rev = "2333";
+  version = "0.3.1-r${rev}";
+  src = fetchsvn {
+    url = "https://svn.code.sf.net/p/ourorgan/svn/trunk";
+    inherit rev;
+    sha256 = "0xzjdc2g4gja2lpmn21xhdskv43qpbpzkbb05jfqv6ma2zwffzz1";
+  };
+
+  nativeBuildInputs = [ cmake pkg-config ];
+
+  buildInputs = [ pkgconfig fftwFloat alsaLib zlib wavpack wxGTK31 udev ]
+    ++ lib.optional jackaudioSupport libjack2;
+
+  cmakeFlags = lib.optional (!jackaudioSupport) [
+    "-DRTAUDIO_USE_JACK=OFF"
+    "-DRTMIDI_USE_JACK=OFF"
+  ] ++ lib.optional (!includeDemo) "-DINSTALL_DEMO=OFF";
+
+  meta = {
+    description = "Virtual Pipe Organ Software";
+    homepage = "https://sourceforge.net/projects/ourorgan";
+    license = stdenv.lib.licenses.gpl2;
+    platforms = stdenv.lib.platforms.linux;
+    maintainers = [ stdenv.lib.maintainers.puzzlewolf ];
+  };
+}
diff --git a/pkgs/applications/audio/gtklick/default.nix b/pkgs/applications/audio/gtklick/default.nix
index b653ae5ca588..a81834c1fff7 100644
--- a/pkgs/applications/audio/gtklick/default.nix
+++ b/pkgs/applications/audio/gtklick/default.nix
@@ -27,7 +27,7 @@ pythonPackages.buildPythonApplication rec {
   '';
 
   meta = {
-    homepage = http://das.nasophon.de/gtklick/;
+    homepage = "http://das.nasophon.de/gtklick/";
     description = "Simple metronome with an easy-to-use GTK interface";
     license = stdenv.lib.licenses.gpl2Plus;
   };
diff --git a/pkgs/applications/audio/gtkpod/default.nix b/pkgs/applications/audio/gtkpod/default.nix
index fd3632ee1552..1f293fe2d796 100644
--- a/pkgs/applications/audio/gtkpod/default.nix
+++ b/pkgs/applications/audio/gtkpod/default.nix
@@ -26,7 +26,7 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "GTK Manager for an Apple ipod";
-    homepage = http://gtkpod.sourceforge.net;
+    homepage = "http://gtkpod.sourceforge.net";
     license = licenses.gpl2Plus;
     platforms = platforms.linux;
     maintainers = [ maintainers.skeidel ];
diff --git a/pkgs/applications/audio/guitarix/default.nix b/pkgs/applications/audio/guitarix/default.nix
index ca552882ba43..095cd79b56e4 100644
--- a/pkgs/applications/audio/guitarix/default.nix
+++ b/pkgs/applications/audio/guitarix/default.nix
@@ -1,7 +1,7 @@
 { stdenv, fetchurl, gettext, intltool, pkgconfig, python2
 , avahi, bluez, boost, eigen, fftw, glib, glib-networking
 , glibmm, gsettings-desktop-schemas, gtkmm2, libjack2
-, ladspaH, libav, librdf, libsndfile, lilv, lv2, serd, sord, sratom
+, ladspaH, libav, libsndfile, lilv, lrdf, lv2, serd, sord, sratom
 , wrapGAppsHook, zita-convolver, zita-resampler, curl, wafHook
 , optimizationSupport ? false # Enable support for native CPU extensions
 }:
@@ -23,8 +23,8 @@ stdenv.mkDerivation rec {
 
   buildInputs = [
     avahi bluez boost eigen fftw glib glibmm glib-networking.out
-    gsettings-desktop-schemas gtkmm2 libjack2 ladspaH libav librdf
-    libsndfile lilv lv2 serd sord sratom zita-convolver
+    gsettings-desktop-schemas gtkmm2 libjack2 ladspaH libav
+    libsndfile lilv lrdf lv2 serd sord sratom zita-convolver
     zita-resampler curl
   ];
 
@@ -62,7 +62,7 @@ stdenv.mkDerivation rec {
       clean-sounds, nice overdrive, fat distortion and a diversity of
       crazy sounds never heard before.
     '';
-    homepage = http://guitarix.sourceforge.net/;
+    homepage = "http://guitarix.sourceforge.net/";
     license = licenses.gpl3Plus;
     maintainers = with maintainers; [ astsmtl goibhniu ];
     platforms = platforms.linux;
diff --git a/pkgs/applications/audio/gxmatcheq-lv2/default.nix b/pkgs/applications/audio/gxmatcheq-lv2/default.nix
index 1d5579d74c05..b2d99e0eba86 100644
--- a/pkgs/applications/audio/gxmatcheq-lv2/default.nix
+++ b/pkgs/applications/audio/gxmatcheq-lv2/default.nix
@@ -22,7 +22,7 @@ stdenv.mkDerivation rec {
   installFlags = [ "INSTALL_DIR=$(out)/lib/lv2" ];
 
   meta = with stdenv.lib; {
-    homepage = https://github.com/brummer10/GxMatchEQ.lv2;
+    homepage = "https://github.com/brummer10/GxMatchEQ.lv2";
     description = "Matching Equalizer to apply EQ curve from one source to another source";
     maintainers = [ maintainers.magnetophon ];
     license = licenses.gpl3;
diff --git a/pkgs/applications/audio/gxplugins-lv2/default.nix b/pkgs/applications/audio/gxplugins-lv2/default.nix
index 1f4323eb9d55..077bb407020e 100644
--- a/pkgs/applications/audio/gxplugins-lv2/default.nix
+++ b/pkgs/applications/audio/gxplugins-lv2/default.nix
@@ -26,7 +26,7 @@ stdenv.mkDerivation rec {
   '';
 
   meta = with stdenv.lib; {
-    homepage = https://github.com/brummer10/GxPlugins.lv2;
+    homepage = "https://github.com/brummer10/GxPlugins.lv2";
     description = "A set of extra lv2 plugins from the guitarix project";
     maintainers = [ maintainers.magnetophon ];
     license = licenses.gpl3;
diff --git a/pkgs/applications/audio/helio-workstation/default.nix b/pkgs/applications/audio/helio-workstation/default.nix
index bfd211316a7c..3ada3224e33e 100644
--- a/pkgs/applications/audio/helio-workstation/default.nix
+++ b/pkgs/applications/audio/helio-workstation/default.nix
@@ -38,7 +38,7 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "One music sequencer for all major platforms, both desktop and mobile";
-    homepage = https://helio.fm/;
+    homepage = "https://helio.fm/";
     license = licenses.gpl3;
     maintainers = [ maintainers.suhr ];
     platforms = [ "x86_64-linux" ];
diff --git a/pkgs/applications/audio/helm/default.nix b/pkgs/applications/audio/helm/default.nix
index 428490e119a6..8459967a363c 100644
--- a/pkgs/applications/audio/helm/default.nix
+++ b/pkgs/applications/audio/helm/default.nix
@@ -34,7 +34,7 @@
   '';
 
   meta = with stdenv.lib; {
-    homepage = http://tytel.org/helm;
+    homepage = "http://tytel.org/helm";
     description = "A free, cross-platform, polyphonic synthesizer";
     longDescription = ''
       A free, cross-platform, polyphonic synthesizer.
diff --git a/pkgs/applications/audio/hybridreverb2/default.nix b/pkgs/applications/audio/hybridreverb2/default.nix
index 19aac1bd1e95..3f1fac79623d 100644
--- a/pkgs/applications/audio/hybridreverb2/default.nix
+++ b/pkgs/applications/audio/hybridreverb2/default.nix
@@ -40,7 +40,7 @@ stdenv.mkDerivation rec {
   '';
 
   meta = with stdenv.lib; {
-    homepage = http://www2.ika.ruhr-uni-bochum.de/HybridReverb2;
+    homepage = "http://www2.ika.ruhr-uni-bochum.de/HybridReverb2";
     description = "Reverb effect using hybrid impulse convolution";
     license = licenses.gpl2Plus;
     maintainers = [ maintainers.magnetophon ];
diff --git a/pkgs/applications/audio/hydrogen/default.nix b/pkgs/applications/audio/hydrogen/default.nix
index 50093f8a61de..b3aff4e4c509 100644
--- a/pkgs/applications/audio/hydrogen/default.nix
+++ b/pkgs/applications/audio/hydrogen/default.nix
@@ -1,5 +1,6 @@
-{ stdenv, fetchurl, alsaLib, boost, cmake, glib, lash, libjack2, libarchive
-, liblrdf, libsndfile, pkgconfig, qt4 }:
+{ stdenv, fetchurl, pkgconfig, cmake
+, alsaLib, boost, glib, lash, libjack2, libarchive, libsndfile, lrdf, qt4
+}:
 
 stdenv.mkDerivation rec {
   version = "0.9.7";
@@ -10,14 +11,14 @@ stdenv.mkDerivation rec {
     sha256 = "1dy2jfkdw0nchars4xi4isrz66fqn53a9qk13bqza7lhmsg3s3qy";
   };
 
-  nativeBuildInputs = [ pkgconfig ];
+  nativeBuildInputs = [ pkgconfig cmake ];
   buildInputs = [
-    alsaLib boost cmake glib lash libjack2 libarchive liblrdf libsndfile qt4
+    alsaLib boost glib lash libjack2 libarchive libsndfile lrdf qt4
   ];
 
   meta = with stdenv.lib; {
     description = "Advanced drum machine";
-    homepage = http://www.hydrogen-music.org;
+    homepage = "http://www.hydrogen-music.org";
     license = licenses.gpl2;
     platforms = platforms.linux;
     maintainers = [ maintainers.goibhniu ];
diff --git a/pkgs/applications/audio/hydrogen/unstable.nix b/pkgs/applications/audio/hydrogen/unstable.nix
new file mode 100644
index 000000000000..2f220f8d31aa
--- /dev/null
+++ b/pkgs/applications/audio/hydrogen/unstable.nix
@@ -0,0 +1,34 @@
+{ stdenv, fetchFromGitHub, cmake, pkgconfig, wrapQtAppsHook
+, alsaLib, ladspa-sdk, lash, libarchive, libjack2, liblo, libpulseaudio, libsndfile, lrdf
+, qtbase, qttools, qtxmlpatterns
+}:
+
+stdenv.mkDerivation rec {
+  pname = "hydrogen";
+  version = "1.0.0-beta2";
+
+  src = fetchFromGitHub {
+    owner = "hydrogen-music";
+    repo = pname;
+    rev = version;
+    sha256 = "1s3jrdyjpm92flw9mkkxchnj0wz8nn1y1kifii8ws252iiqjya4a";
+  };
+
+  nativeBuildInputs = [ cmake pkgconfig wrapQtAppsHook ];
+  buildInputs = [
+    alsaLib ladspa-sdk lash libarchive libjack2 liblo libpulseaudio libsndfile lrdf
+    qtbase qttools qtxmlpatterns
+  ];
+
+  cmakeFlags = [
+    "-DWANT_DEBUG=OFF"
+  ];
+
+  meta = with stdenv.lib; {
+    description = "Advanced drum machine";
+    homepage = "http://www.hydrogen-music.org";
+    license = licenses.gpl2;
+    platforms = platforms.linux;
+    maintainers = with maintainers; [ goibhniu orivej ];
+  };
+}
diff --git a/pkgs/applications/audio/i-score/default.nix b/pkgs/applications/audio/i-score/default.nix
index f3928499413c..daedb9b98206 100644
--- a/pkgs/applications/audio/i-score/default.nix
+++ b/pkgs/applications/audio/i-score/default.nix
@@ -77,7 +77,7 @@ stdenv.mkDerivation rec {
 
   meta = {
     description = "An interactive sequencer for the intermedia arts";
-    homepage = http://i-score.org/;
+    homepage = "http://i-score.org/";
     license = stdenv.lib.licenses.cecill20;
     maintainers = [ stdenv.lib.maintainers.magnetophon ];
     platforms = stdenv.lib.platforms.linux;
diff --git a/pkgs/applications/audio/iannix/default.nix b/pkgs/applications/audio/iannix/default.nix
index a893390d74ed..fa779a7f0f4e 100644
--- a/pkgs/applications/audio/iannix/default.nix
+++ b/pkgs/applications/audio/iannix/default.nix
@@ -1,7 +1,7 @@
-{ stdenv, fetchFromGitHub, alsaLib, pkgconfig, qtbase, qtscript, qmake
+{ mkDerivation, stdenv, fetchFromGitHub, alsaLib, pkgconfig, qtbase, qtscript, qmake
 }:
 
-stdenv.mkDerivation {
+mkDerivation {
   pname = "iannix";
   version = "2016-01-31";
   src = fetchFromGitHub {
@@ -22,7 +22,7 @@ stdenv.mkDerivation {
 
   meta = {
     description = "Graphical open-source sequencer,";
-    homepage = https://www.iannix.org/;
+    homepage = "https://www.iannix.org/";
     license = stdenv.lib.licenses.lgpl3;
     platforms = stdenv.lib.platforms.linux;
     maintainers = [ stdenv.lib.maintainers.nico202 ];
diff --git a/pkgs/applications/audio/id3v2/default.nix b/pkgs/applications/audio/id3v2/default.nix
index 0fdb3b2a4a14..75d999ede1d7 100644
--- a/pkgs/applications/audio/id3v2/default.nix
+++ b/pkgs/applications/audio/id3v2/default.nix
@@ -21,7 +21,7 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "A command line editor for id3v2 tags";
-    homepage = http://id3v2.sourceforge.net/;
+    homepage = "http://id3v2.sourceforge.net/";
     license = licenses.gpl2Plus;
     platforms = with platforms; unix;
   };
diff --git a/pkgs/applications/audio/infamousPlugins/default.nix b/pkgs/applications/audio/infamousPlugins/default.nix
index 341c41818421..2cfe77ec291f 100644
--- a/pkgs/applications/audio/infamousPlugins/default.nix
+++ b/pkgs/applications/audio/infamousPlugins/default.nix
@@ -15,7 +15,7 @@ stdenv.mkDerivation rec {
   buildInputs = [ cairomm lv2 libpthreadstubs libXdmcp libXft ntk pcre fftwFloat zita-resampler ];
 
   meta = with stdenv.lib; {
-    homepage = https://ssj71.github.io/infamousPlugins;
+    homepage = "https://ssj71.github.io/infamousPlugins";
     description = "A collection of open-source LV2 plugins";
     longDescription = ''
       These are audio plugins in the LV2 format, developed for linux. Most are suitable for live use.
diff --git a/pkgs/applications/audio/ingen/default.nix b/pkgs/applications/audio/ingen/default.nix
index 9d3fb6aae40b..c5d4b3f87f49 100644
--- a/pkgs/applications/audio/ingen/default.nix
+++ b/pkgs/applications/audio/ingen/default.nix
@@ -38,7 +38,7 @@ stdenv.mkDerivation  rec {
 
   meta = with stdenv.lib; {
     description = "A modular audio processing system using JACK and LV2 or LADSPA plugins";
-    homepage = http://drobilla.net/software/ingen;
+    homepage = "http://drobilla.net/software/ingen";
     license = licenses.agpl3Plus;
     maintainers = [ maintainers.goibhniu ];
     platforms = platforms.linux;
diff --git a/pkgs/applications/audio/ir.lv2/default.nix b/pkgs/applications/audio/ir.lv2/default.nix
index 9d3656a81f97..f9f58ab5ec1a 100644
--- a/pkgs/applications/audio/ir.lv2/default.nix
+++ b/pkgs/applications/audio/ir.lv2/default.nix
@@ -27,7 +27,7 @@ stdenv.mkDerivation rec {
   '';
 
   meta = with stdenv.lib; {
-    homepage = http://factorial.hu/plugins/lv2/ir;
+    homepage = "http://factorial.hu/plugins/lv2/ir";
     description = "Zero-latency, realtime, high performance signal convolver especially for creating reverb effects";
     license = licenses.gpl2;
     maintainers = [ maintainers.magnetophon ];
diff --git a/pkgs/applications/audio/jaaa/default.nix b/pkgs/applications/audio/jaaa/default.nix
index 92b2f8ac5153..80f15935af23 100644
--- a/pkgs/applications/audio/jaaa/default.nix
+++ b/pkgs/applications/audio/jaaa/default.nix
@@ -23,7 +23,7 @@ stdenv.mkDerivation rec {
   '';
 
   meta = with stdenv.lib; {
-    homepage = http://kokkinizita.linuxaudio.org/linuxaudio/index.html;
+    homepage = "http://kokkinizita.linuxaudio.org/linuxaudio/index.html";
     description = "JACK and ALSA Audio Analyser";
     license = licenses.gpl2;
     maintainers = [ maintainers.magnetophon ];
diff --git a/pkgs/applications/audio/jack-capture/default.nix b/pkgs/applications/audio/jack-capture/default.nix
index c62ccc4fc883..e443a0a52694 100644
--- a/pkgs/applications/audio/jack-capture/default.nix
+++ b/pkgs/applications/audio/jack-capture/default.nix
@@ -23,7 +23,7 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "A program for recording soundfiles with jack";
-    homepage = http://archive.notam02.no/arkiv/src;
+    homepage = "http://archive.notam02.no/arkiv/src";
     license = licenses.gpl2;
     maintainers = [ maintainers.goibhniu ];
     platforms = stdenv.lib.platforms.linux;
diff --git a/pkgs/applications/audio/jack-oscrolloscope/default.nix b/pkgs/applications/audio/jack-oscrolloscope/default.nix
index 5bad5453504f..08263f2abddc 100644
--- a/pkgs/applications/audio/jack-oscrolloscope/default.nix
+++ b/pkgs/applications/audio/jack-oscrolloscope/default.nix
@@ -19,7 +19,7 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; { 
     description = "A simple waveform viewer for JACK";
-    homepage = http://das.nasophon.de/jack_oscrolloscope;
+    homepage = "http://das.nasophon.de/jack_oscrolloscope";
     license = licenses.gpl2;
     maintainers = [ maintainers.goibhniu ];
     platforms = stdenv.lib.platforms.linux;
diff --git a/pkgs/applications/audio/jack-rack/default.nix b/pkgs/applications/audio/jack-rack/default.nix
index 41b40223b87f..d13dbcc16889 100644
--- a/pkgs/applications/audio/jack-rack/default.nix
+++ b/pkgs/applications/audio/jack-rack/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchurl, pkgconfig, libjack2, ladspaH, gtk2, alsaLib, libxml2, librdf }:
+{ stdenv, fetchurl, pkgconfig, libjack2, ladspaH, gtk2, alsaLib, libxml2, lrdf }:
 stdenv.mkDerivation rec {
   name = "jack-rack-1.4.7";
   src = fetchurl {
@@ -6,7 +6,7 @@ stdenv.mkDerivation rec {
     sha256 = "1lmibx9gicagcpcisacj6qhq6i08lkl5x8szysjqvbgpxl9qg045";
   };
   nativeBuildInputs = [ pkgconfig ];
-  buildInputs = [ libjack2 ladspaH gtk2 alsaLib libxml2 librdf ];
+  buildInputs = [ libjack2 ladspaH gtk2 alsaLib libxml2 lrdf ];
   NIX_LDFLAGS = "-ldl -lm -lpthread";
 
   meta = {
@@ -17,7 +17,7 @@ stdenv.mkDerivation rec {
       be controlled using the ALSA sequencer. It's phat; it turns your
       computer into an effects box.
     '';
-    homepage = http://jack-rack.sourceforge.net/;
+    homepage = "http://jack-rack.sourceforge.net/";
     license = stdenv.lib.licenses.gpl2Plus;
     maintainers = [ stdenv.lib.maintainers.astsmtl ];
     platforms = stdenv.lib.platforms.linux;
diff --git a/pkgs/applications/audio/jackmeter/default.nix b/pkgs/applications/audio/jackmeter/default.nix
index e44dfddd37b7..2a75b384af5c 100644
--- a/pkgs/applications/audio/jackmeter/default.nix
+++ b/pkgs/applications/audio/jackmeter/default.nix
@@ -13,7 +13,7 @@ stdenv.mkDerivation rec {
 
   meta = { 
     description = "Console jack loudness meter";
-    homepage = https://www.aelius.com/njh/jackmeter/;
+    homepage = "https://www.aelius.com/njh/jackmeter/";
     license = stdenv.lib.licenses.gpl2;
     maintainers = [ stdenv.lib.maintainers.marcweber ];
     platforms = stdenv.lib.platforms.linux;
diff --git a/pkgs/applications/audio/jackmix/default.nix b/pkgs/applications/audio/jackmix/default.nix
index fe7c83dd56f1..c3a46439ba70 100644
--- a/pkgs/applications/audio/jackmix/default.nix
+++ b/pkgs/applications/audio/jackmix/default.nix
@@ -3,15 +3,14 @@
 stdenv.mkDerivation {
   name = "jackmix-0.5.2";
   src = fetchurl {
-    url = https://github.com/kampfschlaefer/jackmix/archive/v0.5.2.tar.gz;
+    url = "https://github.com/kampfschlaefer/jackmix/archive/v0.5.2.tar.gz";
     sha256 = "18f5v7g66mgarhs476frvayhch7fy4nyjf2xivixc061ipn0m82j";
   };
 
   patches = [ ./no_error.patch ];
 
-  nativeBuildInputs = [ pkgconfig ];
+  nativeBuildInputs = [ scons.py2 pkgconfig ];
   buildInputs = [
-    scons
     qt4
     lash
     jack
@@ -23,7 +22,7 @@ stdenv.mkDerivation {
 
   meta = {
     description = "Matrix-Mixer for the Jack-Audio-connection-Kit";
-    homepage = http://www.arnoldarts.de/jackmix/;
+    homepage = "http://www.arnoldarts.de/jackmix/";
     license = stdenv.lib.licenses.gpl2;
     maintainers = [ stdenv.lib.maintainers.kampfschlaefer ];
     platforms = stdenv.lib.platforms.linux;
diff --git a/pkgs/applications/audio/jalv/default.nix b/pkgs/applications/audio/jalv/default.nix
index 51ec102dbfd2..bbf66a74bc50 100644
--- a/pkgs/applications/audio/jalv/default.nix
+++ b/pkgs/applications/audio/jalv/default.nix
@@ -17,7 +17,7 @@ stdenv.mkDerivation  rec {
 
   meta = with stdenv.lib; {
     description = "A simple but fully featured LV2 host for Jack";
-    homepage = http://drobilla.net/software/jalv;
+    homepage = "http://drobilla.net/software/jalv";
     license = licenses.isc;
     maintainers = [ maintainers.goibhniu ];
     platforms = platforms.linux;
diff --git a/pkgs/applications/audio/jamin/default.nix b/pkgs/applications/audio/jamin/default.nix
index 818630585cfd..a9b423320a0e 100644
--- a/pkgs/applications/audio/jamin/default.nix
+++ b/pkgs/applications/audio/jamin/default.nix
@@ -6,7 +6,7 @@ stdenv.mkDerivation {
   name = "jamin-0.95.0";
 
   src = fetchurl {
-    url = mirror://sourceforge/jamin/jamin-0.95.0.tar.gz;
+    url = "mirror://sourceforge/jamin/jamin-0.95.0.tar.gz";
     sha256 = "0g5v74cm0q3p3pzl6xmnp4rqayaymfli7c6z8s78h9rgd24fwbvn";
   };
 
@@ -21,7 +21,7 @@ stdenv.mkDerivation {
   '';
 
   meta = with stdenv.lib; {
-    homepage = http://jamin.sourceforge.net;
+    homepage = "http://jamin.sourceforge.net";
     description = "JACK Audio Mastering interface";
     license = licenses.gpl2;
     maintainers = [ maintainers.nico202 ];
diff --git a/pkgs/applications/audio/japa/default.nix b/pkgs/applications/audio/japa/default.nix
index a9eb15aabf35..426fea21107f 100644
--- a/pkgs/applications/audio/japa/default.nix
+++ b/pkgs/applications/audio/japa/default.nix
@@ -22,7 +22,7 @@ stdenv.mkDerivation rec {
 
   meta = {
     description = "A 'perceptual' or 'psychoacoustic' audio spectrum analyser for JACK and ALSA";
-    homepage = http://kokkinizita.linuxaudio.org/linuxaudio/index.html;
+    homepage = "http://kokkinizita.linuxaudio.org/linuxaudio/index.html";
     license = stdenv.lib.licenses.gpl2;
     maintainers = [ stdenv.lib.maintainers.magnetophon ];
     platforms = stdenv.lib.platforms.linux;
diff --git a/pkgs/applications/audio/keyfinder/default.nix b/pkgs/applications/audio/keyfinder/default.nix
index d47fc3b6190d..710c1e807929 100644
--- a/pkgs/applications/audio/keyfinder/default.nix
+++ b/pkgs/applications/audio/keyfinder/default.nix
@@ -34,7 +34,7 @@ stdenv.mkDerivation rec {
       management, no track suggestions, no media player. Just a fast,
       efficient workflow tool.
     '';
-    homepage = http://www.ibrahimshaath.co.uk/keyfinder/;
+    homepage = "http://www.ibrahimshaath.co.uk/keyfinder/";
     license = licenses.gpl3Plus;
     platforms = platforms.linux;
   };
diff --git a/pkgs/applications/audio/kid3/default.nix b/pkgs/applications/audio/kid3/default.nix
index dcd305abdee6..cfcad390f4c9 100644
--- a/pkgs/applications/audio/kid3/default.nix
+++ b/pkgs/applications/audio/kid3/default.nix
@@ -64,7 +64,7 @@ stdenv.mkDerivation rec {
       - Edit synchronized lyrics and event timing codes, import and
         export LRC files
     '';
-    homepage = http://kid3.sourceforge.net/;
+    homepage = "http://kid3.sourceforge.net/";
     license = licenses.lgpl2Plus;
     maintainers = [ maintainers.AndersonTorres ];
     platforms = platforms.linux;
diff --git a/pkgs/applications/audio/klick/default.nix b/pkgs/applications/audio/klick/default.nix
index f33245d8f1c9..9ff063c1c807 100644
--- a/pkgs/applications/audio/klick/default.nix
+++ b/pkgs/applications/audio/klick/default.nix
@@ -16,7 +16,7 @@ stdenv.mkDerivation rec {
   NIX_CFLAGS_COMPILE = "-fpermissive";
 
   meta = {
-    homepage = http://das.nasophon.de/klick/;
+    homepage = "http://das.nasophon.de/klick/";
     description = "Advanced command-line metronome for JACK";
     license = stdenv.lib.licenses.gpl2Plus;
     platforms = stdenv.lib.platforms.linux;
diff --git a/pkgs/applications/audio/ladspa-plugins/default.nix b/pkgs/applications/audio/ladspa-plugins/default.nix
index 44186abc3c46..a0fc8631fb39 100644
--- a/pkgs/applications/audio/ladspa-plugins/default.nix
+++ b/pkgs/applications/audio/ladspa-plugins/default.nix
@@ -21,7 +21,7 @@ stdenv.mkDerivation rec {
   '';
 
   meta = with stdenv.lib; {
-    homepage = http://plugin.org.uk/;
+    homepage = "http://plugin.org.uk/";
     description = "LADSPA format audio plugins";
     license = licenses.gpl2;
     maintainers = [ maintainers.magnetophon ];
diff --git a/pkgs/applications/audio/ladspa-sdk/default.nix b/pkgs/applications/audio/ladspa-sdk/default.nix
index a7779ee8aeea..76acd1daba7f 100644
--- a/pkgs/applications/audio/ladspa-sdk/default.nix
+++ b/pkgs/applications/audio/ladspa-sdk/default.nix
@@ -20,7 +20,7 @@ stdenv.mkDerivation rec {
       ten example LADSPA plugins and
       three example programs (applyplugin, analyseplugin and listplugins).
     '';
-    homepage = http://www.ladspa.org/ladspa_sdk/overview.html;
+    homepage = "http://www.ladspa.org/ladspa_sdk/overview.html";
     license = stdenv.lib.licenses.lgpl2;
     maintainers = [ stdenv.lib.maintainers.magnetophon ];
     platforms = stdenv.lib.platforms.linux;
diff --git a/pkgs/applications/audio/ladspa-sdk/ladspah.nix b/pkgs/applications/audio/ladspa-sdk/ladspah.nix
index 3fad5de1de59..d51aa3b75e1f 100644
--- a/pkgs/applications/audio/ladspa-sdk/ladspah.nix
+++ b/pkgs/applications/audio/ladspa-sdk/ladspah.nix
@@ -18,7 +18,7 @@ stdenv.mkDerivation rec {
       The ladspa.h API header file from the LADSPA SDK.
       For the full SDK, use the ladspa-sdk package.
     '';
-    homepage = http://www.ladspa.org/ladspa_sdk/overview.html;
+    homepage = "http://www.ladspa.org/ladspa_sdk/overview.html";
     license = stdenv.lib.licenses.lgpl2;
     maintainers = [ stdenv.lib.maintainers.magnetophon ];
     platforms = stdenv.lib.platforms.all;
diff --git a/pkgs/applications/audio/lash/default.nix b/pkgs/applications/audio/lash/default.nix
index 0dbe60b6a615..cb0a3ee05e12 100644
--- a/pkgs/applications/audio/lash/default.nix
+++ b/pkgs/applications/audio/lash/default.nix
@@ -31,7 +31,7 @@ stdenv.mkDerivation  rec {
     longDescription = ''
       Session management system for GNU/Linux audio applications.
     '';
-    homepage = https://www.nongnu.org/lash;
+    homepage = "https://www.nongnu.org/lash";
     license = licenses.gpl2Plus;
     platforms = platforms.linux;
     maintainers = [ maintainers.goibhniu ];
diff --git a/pkgs/applications/audio/lastfmsubmitd/default.nix b/pkgs/applications/audio/lastfmsubmitd/default.nix
index 3135a00334c7..efafc5b05b18 100644
--- a/pkgs/applications/audio/lastfmsubmitd/default.nix
+++ b/pkgs/applications/audio/lastfmsubmitd/default.nix
@@ -14,7 +14,7 @@ pythonPackages.buildPythonApplication rec {
   installCommand = "python setup.py install --prefix=$out";
 
   meta = {
-    homepage = https://www.red-bean.com/decklin/lastfmsubmitd/;
+    homepage = "https://www.red-bean.com/decklin/lastfmsubmitd/";
     license = lib.licenses.mit;
     description = "An last.fm audio scrobbler and daemon";
   };
diff --git a/pkgs/applications/audio/lingot/default.nix b/pkgs/applications/audio/lingot/default.nix
index d2ec92e0654a..bf45a466d30d 100644
--- a/pkgs/applications/audio/lingot/default.nix
+++ b/pkgs/applications/audio/lingot/default.nix
@@ -1,25 +1,45 @@
-{ stdenv, fetchurl, pkgconfig, intltool, gtk2, alsaLib, libglade }:
+{ stdenv
+, fetchurl
+, pkg-config
+, intltool
+, gtk3
+, wrapGAppsHook
+, alsaLib
+, libpulseaudio
+, fftw
+}:
 
-stdenv.mkDerivation {
-  name = "lingot-0.9.1";
+stdenv.mkDerivation rec {
+  pname = "lingot";
+  version = "1.0.1";
 
   src = fetchurl {
-    url = mirror://savannah/lingot/lingot-0.9.1.tar.gz;
-    sha256 = "0ygras6ndw2fylwxx86ac11pcr2y2bcfvvgiwrh92z6zncx254gc";
+    url = "mirror://savannah/${pname}/${pname}-${version}.tar.gz";
+    sha256 = "cbjHe7mI6DhKDsv0yGHYOPe5hShKjhj3VTKrmBbGoA8=";
   };
 
-  hardeningDisable = [ "format" ];
+  nativeBuildInputs = [
+    pkg-config
+    intltool
+    wrapGAppsHook
+  ];
 
-  nativeBuildInputs = [ pkgconfig ];
-  buildInputs = [ intltool gtk2 alsaLib libglade ];
+  buildInputs = [
+    gtk3
+    alsaLib
+    libpulseaudio
+    fftw
+  ];
 
-  configureFlags = [ "--disable-jack" ];
+  configureFlags = [
+    "--disable-jack"
+  ];
 
   meta = {
     description = "Not a Guitar-Only tuner";
-    homepage = https://www.nongnu.org/lingot/;
+    homepage = "https://www.nongnu.org/lingot/";
     license = stdenv.lib.licenses.gpl2Plus;
     platforms = with stdenv.lib.platforms; linux;
-    maintainers = with stdenv.lib.maintainers; [viric];
+    maintainers = with stdenv.lib.maintainers; [ viric ];
   };
 }
diff --git a/pkgs/applications/audio/linuxband/default.nix b/pkgs/applications/audio/linuxband/default.nix
index b5a99150cb22..cd9ca5e26748 100644
--- a/pkgs/applications/audio/linuxband/default.nix
+++ b/pkgs/applications/audio/linuxband/default.nix
@@ -29,7 +29,7 @@ in stdenv.mkDerivation rec {
 
   meta = {
     description = "A GUI front-end for MMA: Type in the chords, choose the groove and it will play an accompaniment";
-    homepage = http://linuxband.org/;
+    homepage = "http://linuxband.org/";
     license = stdenv.lib.licenses.gpl2;
     maintainers = [ stdenv.lib.maintainers.magnetophon ];
     platforms = stdenv.lib.platforms.linux;
diff --git a/pkgs/applications/audio/linuxsampler/default.nix b/pkgs/applications/audio/linuxsampler/default.nix
index f13f10d15e82..6b6cfd55926b 100644
--- a/pkgs/applications/audio/linuxsampler/default.nix
+++ b/pkgs/applications/audio/linuxsampler/default.nix
@@ -21,7 +21,7 @@ stdenv.mkDerivation rec {
   enableParallelBuilding = true;
 
   meta = with stdenv.lib; {
-    homepage = http://www.linuxsampler.org;
+    homepage = "http://www.linuxsampler.org";
     description = "Sampler backend";
     longDescription = ''
       Includes sampler engine, audio and MIDI drivers, network layer
diff --git a/pkgs/applications/audio/lmms/default.nix b/pkgs/applications/audio/lmms/default.nix
index 0420a52d89b8..c243e9beb233 100644
--- a/pkgs/applications/audio/lmms/default.nix
+++ b/pkgs/applications/audio/lmms/default.nix
@@ -41,7 +41,7 @@ mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "DAW similar to FL Studio (music production software)";
-    homepage = https://lmms.io;
+    homepage = "https://lmms.io";
     license = licenses.gpl2Plus;
     platforms = [ "x86_64-linux" "i686-linux" ];
     maintainers = with maintainers; [ goibhniu yegortimoshenko ];
diff --git a/pkgs/applications/audio/lollypop/default.nix b/pkgs/applications/audio/lollypop/default.nix
index ddb4646ba54d..e4b8b906fa64 100644
--- a/pkgs/applications/audio/lollypop/default.nix
+++ b/pkgs/applications/audio/lollypop/default.nix
@@ -23,7 +23,7 @@
 
 python3.pkgs.buildPythonApplication rec  {
   pname = "lollypop";
-  version = "1.2.23";
+  version = "1.2.35";
 
   format = "other";
   doCheck = false;
@@ -32,7 +32,7 @@ python3.pkgs.buildPythonApplication rec  {
     url = "https://gitlab.gnome.org/World/lollypop";
     rev = "refs/tags/${version}";
     fetchSubmodules = true;
-    sha256 = "059z7ri5qwkmfh2kvv8rq5wp80mz75423wc5hnm33wb9sgdd5x47";
+    sha256 = "19nw9qh17yyi9ih1nwngbbwjx1vr26haqhmzsdqf0yjgsgf9vldx";
   };
 
   nativeBuildInputs = [
@@ -94,7 +94,7 @@ python3.pkgs.buildPythonApplication rec  {
   meta = with lib; {
     changelog = "https://gitlab.gnome.org/World/lollypop/tags/${version}";
     description = "A modern music player for GNOME";
-    homepage = https://wiki.gnome.org/Apps/Lollypop;
+    homepage = "https://wiki.gnome.org/Apps/Lollypop";
     license = licenses.gpl3Plus;
     maintainers = with maintainers; [ worldofpeace ];
     platforms = platforms.linux;
diff --git a/pkgs/applications/audio/lsp-plugins/default.nix b/pkgs/applications/audio/lsp-plugins/default.nix
index b146fcecc8ec..d530aff9faa6 100644
--- a/pkgs/applications/audio/lsp-plugins/default.nix
+++ b/pkgs/applications/audio/lsp-plugins/default.nix
@@ -5,13 +5,13 @@
 
 stdenv.mkDerivation rec {
   pname = "lsp-plugins";
-  version = "1.1.13";
+  version = "1.1.19";
 
   src = fetchFromGitHub {
     owner = "sadko4u";
     repo = pname;
     rev = "${pname}-${version}";
-    sha256 = "00mhrr873kgcnqy3q0yi1r5zacfcvz7fqpzsmfhw5d095jm970al";
+    sha256 = "1wiph3vxhydc6mr9hn2c6crd4cx592l2zv0wrzgmpnlm1lflzpbg";
   };
 
   nativeBuildInputs = [ pkgconfig php makeWrapper ];
@@ -19,6 +19,7 @@ stdenv.mkDerivation rec {
 
   makeFlags = [
     "PREFIX=${placeholder ''out''}"
+    "ETC_PATH=$(out)/etc"
   ];
 
   NIX_CFLAGS_COMPILE = "-DLSP_NO_EXPERIMENTAL";
@@ -139,7 +140,7 @@ stdenv.mkDerivation rec {
         - Delay Compensator Stereo - Verzögerungsausgleicher Stereo
         - Delay Compensator x2 Stereo - Verzögerungsausgleicher x2 Stereo
       '';
-      homepage = https://lsp-plug.in;
+      homepage = "https://lsp-plug.in";
       maintainers = with maintainers; [ magnetophon ];
       license = licenses.gpl2;
       platforms = platforms.linux;
diff --git a/pkgs/applications/audio/luppp/default.nix b/pkgs/applications/audio/luppp/default.nix
index fdba836a6ae2..c1494ffc3334 100644
--- a/pkgs/applications/audio/luppp/default.nix
+++ b/pkgs/applications/audio/luppp/default.nix
@@ -31,7 +31,7 @@ stdenv.mkDerivation rec {
   ];
 
   meta = with stdenv.lib; {
-    homepage = http://openavproductions.com/luppp/;
+    homepage = "http://openavproductions.com/luppp/";
     description = "A music creation tool, intended for live use";
     license = licenses.gpl3Plus;
     maintainers = with maintainers; [ prusnak ];
diff --git a/pkgs/applications/audio/lv2bm/default.nix b/pkgs/applications/audio/lv2bm/default.nix
index f1eddb626245..aee910f56eb6 100644
--- a/pkgs/applications/audio/lv2bm/default.nix
+++ b/pkgs/applications/audio/lv2bm/default.nix
@@ -19,7 +19,7 @@ stdenv.mkDerivation {
   '';
 
   meta = with stdenv.lib; {
-    homepage = https://github.com/portalmod/lv2bm;
+    homepage = "https://github.com/portalmod/lv2bm";
     description = "A benchmark tool for LV2 plugins";
     license = licenses.gpl3;
     maintainers = [ maintainers.magnetophon ];
diff --git a/pkgs/applications/audio/magnetophonDSP/CharacterCompressor/default.nix b/pkgs/applications/audio/magnetophonDSP/CharacterCompressor/default.nix
index 6488d1bd65e5..e16198696a69 100644
--- a/pkgs/applications/audio/magnetophonDSP/CharacterCompressor/default.nix
+++ b/pkgs/applications/audio/magnetophonDSP/CharacterCompressor/default.nix
@@ -30,7 +30,7 @@ stdenv.mkDerivation rec {
 
   meta = {
     description = "A compressor with character. For jack and lv2";
-    homepage = https://github.com/magnetophon/CharacterCompressor;
+    homepage = "https://github.com/magnetophon/CharacterCompressor";
     license = stdenv.lib.licenses.gpl3;
     maintainers = [ stdenv.lib.maintainers.magnetophon ];
   };
diff --git a/pkgs/applications/audio/magnetophonDSP/CompBus/default.nix b/pkgs/applications/audio/magnetophonDSP/CompBus/default.nix
index c5728b6e8b7b..1ccc9f3fcd5b 100644
--- a/pkgs/applications/audio/magnetophonDSP/CompBus/default.nix
+++ b/pkgs/applications/audio/magnetophonDSP/CompBus/default.nix
@@ -36,7 +36,7 @@ stdenv.mkDerivation rec {
 
   meta = {
     description = "A group of compressors mixed into a bus, sidechained from that mix bus. For jack and lv2";
-    homepage = https://github.com/magnetophon/CompBus;
+    homepage = "https://github.com/magnetophon/CompBus";
     license = stdenv.lib.licenses.gpl3;
     maintainers = [ stdenv.lib.maintainers.magnetophon ];
   };
diff --git a/pkgs/applications/audio/magnetophonDSP/ConstantDetuneChorus/default.nix b/pkgs/applications/audio/magnetophonDSP/ConstantDetuneChorus/default.nix
index 331e58c4bd29..d5ed7e85b696 100644
--- a/pkgs/applications/audio/magnetophonDSP/ConstantDetuneChorus/default.nix
+++ b/pkgs/applications/audio/magnetophonDSP/ConstantDetuneChorus/default.nix
@@ -26,7 +26,7 @@ stdenv.mkDerivation rec {
 
   meta = {
     description = "A chorus algorithm that maintains constant and symmetric detuning depth (in cents), regardless of modulation rate. For jack and lv2";
-    homepage = https://github.com/magnetophon/constant-detune-chorus;
+    homepage = "https://github.com/magnetophon/constant-detune-chorus";
     license = stdenv.lib.licenses.gpl3;
     maintainers = [ stdenv.lib.maintainers.magnetophon ];
   };
diff --git a/pkgs/applications/audio/magnetophonDSP/LazyLimiter/default.nix b/pkgs/applications/audio/magnetophonDSP/LazyLimiter/default.nix
index 046ee70e990c..6d119394d5de 100644
--- a/pkgs/applications/audio/magnetophonDSP/LazyLimiter/default.nix
+++ b/pkgs/applications/audio/magnetophonDSP/LazyLimiter/default.nix
@@ -26,7 +26,7 @@ stdenv.mkDerivation rec {
 
   meta = {
     description = "A fast yet clean lookahead limiter for jack and lv2";
-    homepage = https://magnetophon.github.io/LazyLimiter/;
+    homepage = "https://magnetophon.github.io/LazyLimiter/";
     license = stdenv.lib.licenses.gpl2;
     maintainers = [ stdenv.lib.maintainers.magnetophon ];
   };
diff --git a/pkgs/applications/audio/magnetophonDSP/MBdistortion/default.nix b/pkgs/applications/audio/magnetophonDSP/MBdistortion/default.nix
index aa7da17dafd1..0eb68e65eae6 100644
--- a/pkgs/applications/audio/magnetophonDSP/MBdistortion/default.nix
+++ b/pkgs/applications/audio/magnetophonDSP/MBdistortion/default.nix
@@ -26,7 +26,7 @@ stdenv.mkDerivation rec {
 
   meta = {
     description = "Mid-side multiband distortion for jack and lv2";
-    homepage = https://github.com/magnetophon/MBdistortion;
+    homepage = "https://github.com/magnetophon/MBdistortion";
     license = stdenv.lib.licenses.gpl2;
     maintainers = [ stdenv.lib.maintainers.magnetophon ];
   };
diff --git a/pkgs/applications/audio/magnetophonDSP/RhythmDelay/default.nix b/pkgs/applications/audio/magnetophonDSP/RhythmDelay/default.nix
index ae05866e57d0..be8ad72d28df 100644
--- a/pkgs/applications/audio/magnetophonDSP/RhythmDelay/default.nix
+++ b/pkgs/applications/audio/magnetophonDSP/RhythmDelay/default.nix
@@ -26,7 +26,7 @@ stdenv.mkDerivation rec {
 
   meta = {
     description = "Tap a rhythm into your delay! For jack and lv2";
-    homepage = https://github.com/magnetophon/RhythmDelay;
+    homepage = "https://github.com/magnetophon/RhythmDelay";
     license = stdenv.lib.licenses.gpl3;
     maintainers = [ stdenv.lib.maintainers.magnetophon ];
   };
diff --git a/pkgs/applications/audio/magnetophonDSP/VoiceOfFaust/default.nix b/pkgs/applications/audio/magnetophonDSP/VoiceOfFaust/default.nix
index 718bbdaf49ea..dce2db4cb770 100644
--- a/pkgs/applications/audio/magnetophonDSP/VoiceOfFaust/default.nix
+++ b/pkgs/applications/audio/magnetophonDSP/VoiceOfFaust/default.nix
@@ -49,7 +49,7 @@ stdenv.mkDerivation rec {
 
   meta = {
     description = "Turn your voice into a synthesizer";
-    homepage = https://github.com/magnetophon/VoiceOfFaust;
+    homepage = "https://github.com/magnetophon/VoiceOfFaust";
     license = stdenv.lib.licenses.gpl3;
     maintainers = [ stdenv.lib.maintainers.magnetophon ];
   };
diff --git a/pkgs/applications/audio/magnetophonDSP/faustCompressors/default.nix b/pkgs/applications/audio/magnetophonDSP/faustCompressors/default.nix
index fece392ab1cc..172b5ed38913 100644
--- a/pkgs/applications/audio/magnetophonDSP/faustCompressors/default.nix
+++ b/pkgs/applications/audio/magnetophonDSP/faustCompressors/default.nix
@@ -13,6 +13,8 @@ stdenv.mkDerivation rec {
   buildInputs = [ faust2jaqt faust2lv2 ];
 
   buildPhase = ''
+    echo "hack out autoComp.dsp due to https://github.com/grame-cncm/faust/407/issues "
+    rm autoComp.dsp
     for f in *.dsp;
     do
       echo "compiling standalone from" $f
@@ -39,7 +41,7 @@ stdenv.mkDerivation rec {
 
   meta = {
     description = "A collection of bread and butter compressors";
-    homepage = https://github.com/magnetophon/faustCompressors;
+    homepage = "https://github.com/magnetophon/faustCompressors";
     license = stdenv.lib.licenses.gpl3;
     maintainers = [ stdenv.lib.maintainers.magnetophon ];
   };
diff --git a/pkgs/applications/audio/magnetophonDSP/pluginUtils/default.nix b/pkgs/applications/audio/magnetophonDSP/pluginUtils/default.nix
index 356e95bf97c8..11d51d756abc 100644
--- a/pkgs/applications/audio/magnetophonDSP/pluginUtils/default.nix
+++ b/pkgs/applications/audio/magnetophonDSP/pluginUtils/default.nix
@@ -33,7 +33,7 @@ stdenv.mkDerivation rec {
 
   meta = {
     description = "Some simple utility lv2 plugins";
-    homepage = https://github.com/magnetophon/pluginUtils;
+    homepage = "https://github.com/magnetophon/pluginUtils";
     license = stdenv.lib.licenses.gpl3;
     maintainers = [ stdenv.lib.maintainers.magnetophon ];
   };
diff --git a/pkgs/applications/audio/magnetophonDSP/shelfMultiBand/default.nix b/pkgs/applications/audio/magnetophonDSP/shelfMultiBand/default.nix
index 292cd3dfd860..360cee243c33 100644
--- a/pkgs/applications/audio/magnetophonDSP/shelfMultiBand/default.nix
+++ b/pkgs/applications/audio/magnetophonDSP/shelfMultiBand/default.nix
@@ -30,7 +30,7 @@ stdenv.mkDerivation rec {
 
   meta = {
     description = "A multiband compressor made from shelving filters.";
-    homepage = https://github.com/magnetophon/shelfMultiBand;
+    homepage = "https://github.com/magnetophon/shelfMultiBand";
     license = stdenv.lib.licenses.gpl3;
     maintainers = [ stdenv.lib.maintainers.magnetophon ];
   };
diff --git a/pkgs/applications/audio/mda-lv2/default.nix b/pkgs/applications/audio/mda-lv2/default.nix
index 6c4170cf0fb6..2464abb6585c 100644
--- a/pkgs/applications/audio/mda-lv2/default.nix
+++ b/pkgs/applications/audio/mda-lv2/default.nix
@@ -13,7 +13,7 @@ stdenv.mkDerivation rec {
   buildInputs = [ fftwSinglePrec lv2 ];
 
   meta = with stdenv.lib; {
-    homepage = http://drobilla.net/software/mda-lv2/;
+    homepage = "http://drobilla.net/software/mda-lv2/";
     description = "An LV2 port of the MDA plugins by Paul Kellett";
     license = licenses.gpl2Plus;
     maintainers = [ maintainers.goibhniu ];
diff --git a/pkgs/applications/audio/meterbridge/default.nix b/pkgs/applications/audio/meterbridge/default.nix
index 4d2fa0e15b48..9d807358cd5a 100644
--- a/pkgs/applications/audio/meterbridge/default.nix
+++ b/pkgs/applications/audio/meterbridge/default.nix
@@ -18,7 +18,7 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "Various meters (VU, PPM, DPM, JF, SCO) for Jack Audio Connection Kit";
-    homepage = http://plugin.org.uk/meterbridge/;
+    homepage = "http://plugin.org.uk/meterbridge/";
     license = licenses.gpl2;
     platforms = platforms.linux;
     maintainers = [ maintainers.nico202 ];
diff --git a/pkgs/applications/audio/meters_lv2/default.nix b/pkgs/applications/audio/meters_lv2/default.nix
index 12383dcbbda4..cd9523d27108 100644
--- a/pkgs/applications/audio/meters_lv2/default.nix
+++ b/pkgs/applications/audio/meters_lv2/default.nix
@@ -38,7 +38,7 @@ stdenv.mkDerivation {
 
   meta = with stdenv.lib;
     { description = "Collection of audio level meters with GUI in LV2 plugin format";
-      homepage = http://x42.github.io/meters.lv2/;
+      homepage = "http://x42.github.io/meters.lv2/";
       maintainers = with maintainers; [ ehmry ];
       license = licenses.gpl2;
       platforms = platforms.linux;
diff --git a/pkgs/applications/audio/mhwaveedit/default.nix b/pkgs/applications/audio/mhwaveedit/default.nix
index e4d6c0293df8..67204260da24 100644
--- a/pkgs/applications/audio/mhwaveedit/default.nix
+++ b/pkgs/applications/audio/mhwaveedit/default.nix
@@ -31,7 +31,7 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "Graphical program for editing, playing and recording sound files";
-    homepage = https://github.com/magnush/mhwaveedit;
+    homepage = "https://github.com/magnush/mhwaveedit";
     license = licenses.gpl2Plus;
     platforms = platforms.linux;
     maintainers = [ maintainers.goibhniu ];
diff --git a/pkgs/applications/audio/mid2key/default.nix b/pkgs/applications/audio/mid2key/default.nix
index 3c5660724d39..071b18e5a8a6 100644
--- a/pkgs/applications/audio/mid2key/default.nix
+++ b/pkgs/applications/audio/mid2key/default.nix
@@ -17,7 +17,7 @@ stdenv.mkDerivation rec {
   installPhase = "mkdir -p $out/bin && mv mid2key $out/bin";
 
   meta = with stdenv.lib; {
-    homepage = http://code.google.com/p/mid2key/;
+    homepage = "http://code.google.com/p/mid2key/";
     description = "A simple tool which maps midi notes to simulated keystrokes";
     license = licenses.gpl3;
     maintainers = [ maintainers.goibhniu ];
diff --git a/pkgs/applications/audio/midas/m32edit.nix b/pkgs/applications/audio/midas/m32edit.nix
index c8a751c235b1..6af11d42e31f 100644
--- a/pkgs/applications/audio/midas/m32edit.nix
+++ b/pkgs/applications/audio/midas/m32edit.nix
@@ -5,5 +5,5 @@ callPackage ./generic.nix (args // {
   type = "M32";
   version = "3.2";
   sha256 = "1cds6qinz37086l6pmmgrzrxadygjr2z96sjjyznnai2wz4z2nrd";
-  homepage = http://www.musictri.be/Categories/Midas/Mixers/Digital/M32/p/P0B3I/downloads;
+  homepage = "http://www.musictri.be/Categories/Midas/Mixers/Digital/M32/p/P0B3I/downloads";
 })
diff --git a/pkgs/applications/audio/midas/x32edit.nix b/pkgs/applications/audio/midas/x32edit.nix
index 4aacfcc89a36..7e364ff984a5 100644
--- a/pkgs/applications/audio/midas/x32edit.nix
+++ b/pkgs/applications/audio/midas/x32edit.nix
@@ -5,5 +5,5 @@ callPackage ./generic.nix (args // {
   type = "X32";
   version = "3.2";
   sha256 = "1lzmhd0sqnlzc0khpwm82sfi48qhv7rg153a57qjih7hhhy41mzk";
-  homepage = http://www.musictri.be/Categories/Behringer/Mixers/Digital/X32/p/P0ASF/downloads;
+  homepage = "http://www.musictri.be/Categories/Behringer/Mixers/Digital/X32/p/P0ASF/downloads";
 })
diff --git a/pkgs/applications/audio/midisheetmusic/default.nix b/pkgs/applications/audio/midisheetmusic/default.nix
index 48052fc4ec88..388fc2a1b3ea 100644
--- a/pkgs/applications/audio/midisheetmusic/default.nix
+++ b/pkgs/applications/audio/midisheetmusic/default.nix
@@ -54,7 +54,7 @@ in stdenv.mkDerivation {
 
   meta = with stdenv.lib; {
     description = "Convert MIDI Files to Piano Sheet Music for two hands";
-    homepage = http://midisheetmusic.com;
+    homepage = "http://midisheetmusic.com";
     license = licenses.gpl2;
     maintainers = [ maintainers.gnidorah ];
     platforms = platforms.linux;
diff --git a/pkgs/applications/audio/mikmod/default.nix b/pkgs/applications/audio/mikmod/default.nix
index 42fa8b7621a5..9be303cb652a 100644
--- a/pkgs/applications/audio/mikmod/default.nix
+++ b/pkgs/applications/audio/mikmod/default.nix
@@ -12,7 +12,7 @@ stdenv.mkDerivation rec {
 
   meta = {
     description = "Tracker music player for the terminal";
-    homepage = http://mikmod.shlomifish.org/;
+    homepage = "http://mikmod.shlomifish.org/";
     license = stdenv.lib.licenses.gpl2Plus;
     maintainers = with stdenv.lib.maintainers; [ ];
     platforms = with stdenv.lib.platforms; linux;
diff --git a/pkgs/applications/audio/milkytracker/default.nix b/pkgs/applications/audio/milkytracker/default.nix
index bc508f92e3b5..d7b9e5a6355b 100644
--- a/pkgs/applications/audio/milkytracker/default.nix
+++ b/pkgs/applications/audio/milkytracker/default.nix
@@ -21,7 +21,7 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "Music tracker application, similar to Fasttracker II";
-    homepage = http://milkytracker.org;
+    homepage = "http://milkytracker.org";
     license = licenses.gpl3Plus;
     platforms = [ "x86_64-linux" "i686-linux" ];
     maintainers = with maintainers; [ zoomulator ];
diff --git a/pkgs/applications/audio/mimic/default.nix b/pkgs/applications/audio/mimic/default.nix
index e91b2c9360de..e33e69ad78c3 100644
--- a/pkgs/applications/audio/mimic/default.nix
+++ b/pkgs/applications/audio/mimic/default.nix
@@ -26,7 +26,7 @@ stdenv.mkDerivation rec {
 
   meta = {
     description = "Mycroft's TTS engine, based on CMU's Flite (Festival Lite)";
-    homepage = https://mimic.mycroft.ai/;
+    homepage = "https://mimic.mycroft.ai/";
     license = stdenv.lib.licenses.free;
     platforms = stdenv.lib.platforms.linux;
     maintainers = [ stdenv.lib.maintainers.noneucat ];
diff --git a/pkgs/applications/audio/mimms/default.nix b/pkgs/applications/audio/mimms/default.nix
index 2d301a8b6a96..47e9fa306dc4 100644
--- a/pkgs/applications/audio/mimms/default.nix
+++ b/pkgs/applications/audio/mimms/default.nix
@@ -15,7 +15,7 @@ pythonPackages.buildPythonApplication rec {
   '';
 
   meta = {
-    homepage = https://savannah.nongnu.org/projects/mimms/;
+    homepage = "https://savannah.nongnu.org/projects/mimms/";
     license = stdenv.lib.licenses.gpl3;
     description = "An mms (e.g. mms://) stream downloader";
 
diff --git a/pkgs/applications/audio/mixxx/default.nix b/pkgs/applications/audio/mixxx/default.nix
index 82db91dcb077..f889d9e1e8d2 100644
--- a/pkgs/applications/audio/mixxx/default.nix
+++ b/pkgs/applications/audio/mixxx/default.nix
@@ -1,11 +1,22 @@
-{ stdenv, mkDerivation, fetchFromGitHub, chromaprint
+{ stdenv, mkDerivation, fetchurl, fetchFromGitHub, chromaprint
 , fftw, flac, faad2, glibcLocales, mp4v2
 , libid3tag, libmad, libopus, libshout, libsndfile, libusb1, libvorbis
 , libGLU, libxcb, lilv, lv2, opusfile
 , pkgconfig, portaudio, portmidi, protobuf, qtbase, qtscript, qtsvg
-, qtx11extras, rubberband, scons, sqlite, taglib, upower, vampSDK
+, qtx11extras, rubberband, scons, sqlite, taglib, upower, vamp-plugin-sdk
 }:
 
+let
+  # Because libshout 2.4.2 and newer seem to break streaming in mixxx, build it
+  # with 2.4.1 instead.
+  libshout241 = libshout.overrideAttrs (o: rec {
+    name = "libshout-2.4.1";
+    src = fetchurl {
+      url = "http://downloads.xiph.org/releases/libshout/${name}.tar.gz";
+      sha256 = "0kgjpf8jkgyclw11nilxi8vyjk4s8878x23qyxnvybbgqbgbib7k";
+    };
+  });
+in
 mkDerivation rec {
   pname = "mixxx";
   version = "2.2.3";
@@ -17,10 +28,11 @@ mkDerivation rec {
     sha256 = "1h7q25fv62c5m74d4cn1m6mpanmqpbl2wqbch4qvn488jb2jw1dv";
   };
 
+  nativeBuildInputs = [ scons.py2 ];
   buildInputs = [
-    chromaprint fftw flac faad2 glibcLocales mp4v2 libid3tag libmad libopus libshout libsndfile
+    chromaprint fftw flac faad2 glibcLocales mp4v2 libid3tag libmad libopus libshout241 libsndfile
     libusb1 libvorbis libxcb libGLU lilv lv2 opusfile pkgconfig portaudio portmidi protobuf qtbase qtscript qtsvg
-    qtx11extras rubberband scons sqlite taglib upower vampSDK
+    qtx11extras rubberband sqlite taglib upower vamp-plugin-sdk
   ];
 
   enableParallelBuilding = true;
@@ -37,7 +49,7 @@ mkDerivation rec {
   ];
 
   meta = with stdenv.lib; {
-    homepage = https://mixxx.org;
+    homepage = "https://mixxx.org";
     description = "Digital DJ mixing software";
     license = licenses.gpl2Plus;
     maintainers = [ maintainers.aszlig maintainers.goibhniu maintainers.bfortz ];
diff --git a/pkgs/applications/audio/moc/default.nix b/pkgs/applications/audio/moc/default.nix
index 5615f4cace3d..18b5a980633a 100644
--- a/pkgs/applications/audio/moc/default.nix
+++ b/pkgs/applications/audio/moc/default.nix
@@ -96,7 +96,7 @@ in stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "An ncurses console audio player designed to be powerful and easy to use";
-    homepage = http://moc.daper.net/;
+    homepage = "http://moc.daper.net/";
     license = licenses.gpl2;
     maintainers = with maintainers; [ aethelz pSub jagajaga ];
     platforms = platforms.linux;
diff --git a/pkgs/applications/audio/mod-distortion/default.nix b/pkgs/applications/audio/mod-distortion/default.nix
index c20f04ec9470..765def25d600 100644
--- a/pkgs/applications/audio/mod-distortion/default.nix
+++ b/pkgs/applications/audio/mod-distortion/default.nix
@@ -16,7 +16,7 @@ stdenv.mkDerivation {
   installFlags = [ "INSTALL_PATH=$(out)/lib/lv2" ];
 
   meta = with stdenv.lib; {
-    homepage = https://github.com/portalmod/mod-distortion;
+    homepage = "https://github.com/portalmod/mod-distortion";
     description = "Analog distortion emulation lv2 plugins";
     license = licenses.gpl3;
     maintainers = [ maintainers.magnetophon ];
diff --git a/pkgs/applications/audio/mopidy/default.nix b/pkgs/applications/audio/mopidy/default.nix
index c1c8bb964e46..0b9f81533020 100644
--- a/pkgs/applications/audio/mopidy/default.nix
+++ b/pkgs/applications/audio/mopidy/default.nix
@@ -1,44 +1,41 @@
-{ stdenv, fetchFromGitHub, python3Packages, wrapGAppsHook
-, gst_all_1, glib-networking, gobject-introspection
-}:
-
-python3Packages.buildPythonApplication rec {
-  pname = "mopidy";
-  version = "3.0.1";
-
-  src = fetchFromGitHub {
-    owner = "mopidy";
-    repo = "mopidy";
-    rev = "v${version}";
-    sha256 = "0fpjprjw143ixak68iwxjpscdjgyb7rsr1cxj7fsdrw6hc83nq4z";
-  };
+{ newScope, python }:
+
+# Create a custom scope so we are consistent in which python version is used
+
+let
+  callPackage = newScope self;
+
+  self = {
+
+    inherit python;
+    pythonPackages = python.pkgs;
+
+    mopidy = callPackage ./mopidy.nix { };
+
+    mopidy-gmusic = callPackage ./gmusic.nix { };
+
+    mopidy-local-images = callPackage ./local-images.nix { };
+
+    mopidy-local-sqlite = callPackage ./local-sqlite.nix { };
+
+    mopidy-spotify = callPackage ./spotify.nix { };
+
+    mopidy-moped = callPackage ./moped.nix { };
+
+    mopidy-mopify = callPackage ./mopify.nix { };
+
+    mopidy-mpd = callPackage ./mpd.nix { };
+
+    mopidy-spotify-tunigo = callPackage ./spotify-tunigo.nix { };
+
+    mopidy-youtube = callPackage ./youtube.nix { };
+
+    mopidy-soundcloud = callPackage ./soundcloud.nix { };
+
+    mopidy-musicbox-webclient = callPackage ./musicbox-webclient.nix { };
+
+    mopidy-iris = callPackage ./iris.nix { };
 
-  nativeBuildInputs = [ wrapGAppsHook ];
-
-  buildInputs = with gst_all_1; [
-    gst-plugins-base gst-plugins-good gst-plugins-ugly gst-plugins-bad
-    glib-networking gobject-introspection
-  ];
-
-  propagatedBuildInputs = with python3Packages; [
-    gst-python pygobject3 pykka tornado_4 requests setuptools
-  ] ++ stdenv.lib.optional (!stdenv.isDarwin) dbus-python;
-
-  # There are no tests
-  doCheck = false;
-
-  preFixup = ''
-    gappsWrapperArgs+=(--prefix GST_PLUGIN_SYSTEM_PATH : "$GST_PLUGIN_SYSTEM_PATH")
-  '';
-
-  meta = with stdenv.lib; {
-    homepage = https://www.mopidy.com/;
-    description = ''
-      An extensible music server that plays music from local disk, Spotify,
-      SoundCloud, Google Play Music, and more
-    '';
-    license = licenses.asl20;
-    maintainers = [ maintainers.fpletz ];
-    hydraPlatforms = [];
   };
-}
+
+in self
diff --git a/pkgs/applications/audio/mopidy/gmusic.nix b/pkgs/applications/audio/mopidy/gmusic.nix
index 8c173140efd8..3dea9156f8fc 100644
--- a/pkgs/applications/audio/mopidy/gmusic.nix
+++ b/pkgs/applications/audio/mopidy/gmusic.nix
@@ -19,7 +19,7 @@ pythonPackages.buildPythonApplication rec {
   doCheck = false;
 
   meta = with stdenv.lib; {
-    homepage = https://www.mopidy.com/;
+    homepage = "https://www.mopidy.com/";
     description = "Mopidy extension for playing music from Google Play Music";
     license = licenses.asl20;
     maintainers = [ maintainers.jgillich ];
diff --git a/pkgs/applications/audio/mopidy/iris.nix b/pkgs/applications/audio/mopidy/iris.nix
index 2f3e5f64767d..742c63b3d83a 100644
--- a/pkgs/applications/audio/mopidy/iris.nix
+++ b/pkgs/applications/audio/mopidy/iris.nix
@@ -2,11 +2,11 @@
 
 python3Packages.buildPythonApplication rec {
   pname = "Mopidy-Iris";
-  version = "3.45.1";
+  version = "3.47.0";
 
   src = python3Packages.fetchPypi {
     inherit pname version;
-    sha256 = "02jmylz76wlwxlv8drndprb7r9l8kqqgjkp17mjx5ngnl545pc2w";
+    sha256 = "1lvq5qsnn2djwkgbadzr7rr6ik2xh8yyj0p3y3hck9pl96ms7lfv";
   };
 
   propagatedBuildInputs = [
@@ -21,7 +21,7 @@ python3Packages.buildPythonApplication rec {
   doCheck = false;
 
   meta = with stdenv.lib; {
-    homepage = https://github.com/jaedb/Iris;
+    homepage = "https://github.com/jaedb/Iris";
     description = "A fully-functional Mopidy web client encompassing Spotify and many other backends";
     license = licenses.asl20;
     maintainers = [ maintainers.rvolosatovs ];
diff --git a/pkgs/applications/audio/mopidy/local-images.nix b/pkgs/applications/audio/mopidy/local-images.nix
index 2ffc736572bf..085fe855e8a8 100644
--- a/pkgs/applications/audio/mopidy/local-images.nix
+++ b/pkgs/applications/audio/mopidy/local-images.nix
@@ -24,7 +24,7 @@ pythonPackages.buildPythonApplication rec {
   ];
 
   meta = with stdenv.lib; {
-    homepage = https://github.com/mopidy/mopidy-local-images;
+    homepage = "https://github.com/mopidy/mopidy-local-images";
     description = "Mopidy local library proxy extension for handling embedded album art";
     license = licenses.asl20;
     maintainers = [ maintainers.rvolosatovs ];
diff --git a/pkgs/applications/audio/mopidy/local-sqlite.nix b/pkgs/applications/audio/mopidy/local-sqlite.nix
index 6d0cc370ff34..23e01c02a0f5 100644
--- a/pkgs/applications/audio/mopidy/local-sqlite.nix
+++ b/pkgs/applications/audio/mopidy/local-sqlite.nix
@@ -17,7 +17,7 @@ pythonPackages.buildPythonApplication rec {
   ];
 
   meta = with stdenv.lib; {
-    homepage = https://github.com/mopidy/mopidy-local-sqlite;
+    homepage = "https://github.com/mopidy/mopidy-local-sqlite";
     description = "Mopidy SQLite local library extension";
     license = licenses.asl20;
     maintainers = [ maintainers.rvolosatovs ];
diff --git a/pkgs/applications/audio/mopidy/moped.nix b/pkgs/applications/audio/mopidy/moped.nix
index d41fb12ae8d3..ffd9af76d173 100644
--- a/pkgs/applications/audio/mopidy/moped.nix
+++ b/pkgs/applications/audio/mopidy/moped.nix
@@ -17,7 +17,7 @@ pythonPackages.buildPythonApplication rec {
   doCheck = false;
 
   meta = with stdenv.lib; {
-    homepage = https://github.com/martijnboland/moped;
+    homepage = "https://github.com/martijnboland/moped";
     description = "A web client for Mopidy";
     license = licenses.mit;
     maintainers = [];
diff --git a/pkgs/applications/audio/mopidy/mopidy.nix b/pkgs/applications/audio/mopidy/mopidy.nix
new file mode 100644
index 000000000000..ae65d9b2f6ed
--- /dev/null
+++ b/pkgs/applications/audio/mopidy/mopidy.nix
@@ -0,0 +1,44 @@
+{ stdenv, fetchFromGitHub, pythonPackages, wrapGAppsHook
+, gst_all_1, glib-networking, gobject-introspection
+}:
+
+pythonPackages.buildPythonApplication rec {
+  pname = "mopidy";
+  version = "3.0.2";
+
+  src = fetchFromGitHub {
+    owner = "mopidy";
+    repo = "mopidy";
+    rev = "v${version}";
+    sha256 = "1n9lpgq0p112cjgsrc1cd6mnffk56y36g2c5skk9cqzw27qrkd15";
+  };
+
+  nativeBuildInputs = [ wrapGAppsHook ];
+
+  buildInputs = with gst_all_1; [
+    gst-plugins-base gst-plugins-good gst-plugins-ugly gst-plugins-bad
+    glib-networking gobject-introspection
+  ];
+
+  propagatedBuildInputs = with pythonPackages; [
+    gst-python pygobject3 pykka tornado_4 requests setuptools
+  ] ++ stdenv.lib.optional (!stdenv.isDarwin) dbus-python;
+
+  # There are no tests
+  doCheck = false;
+
+  preFixup = ''
+    gappsWrapperArgs+=(--prefix GST_PLUGIN_SYSTEM_PATH : "$GST_PLUGIN_SYSTEM_PATH")
+  '';
+
+  meta = with stdenv.lib; {
+    homepage = "https://www.mopidy.com/";
+    description = ''
+      An extensible music server that plays music from local disk, Spotify,
+      SoundCloud, Google Play Music, and more
+    '';
+    license = licenses.asl20;
+    maintainers = [ maintainers.fpletz ];
+    hydraPlatforms = [];
+  };
+}
diff --git a/pkgs/applications/audio/mopidy/mopify.nix b/pkgs/applications/audio/mopidy/mopify.nix
index b657f69e26ee..a9902ca41721 100644
--- a/pkgs/applications/audio/mopidy/mopify.nix
+++ b/pkgs/applications/audio/mopidy/mopify.nix
@@ -15,7 +15,7 @@ pythonPackages.buildPythonApplication rec {
   doCheck = false;
 
   meta = with stdenv.lib; {
-    homepage = https://github.com/dirkgroenen/mopidy-mopify;
+    homepage = "https://github.com/dirkgroenen/mopidy-mopify";
     description = "A mopidy webclient based on the Spotify webbased interface";
     license = licenses.gpl3;
     maintainers = [ maintainers.Gonzih ];
diff --git a/pkgs/applications/audio/mopidy/mpd.nix b/pkgs/applications/audio/mopidy/mpd.nix
new file mode 100644
index 000000000000..4dd32ea3aa35
--- /dev/null
+++ b/pkgs/applications/audio/mopidy/mpd.nix
@@ -0,0 +1,24 @@
+{ stdenv, python3Packages, mopidy }:
+
+python3Packages.buildPythonApplication rec {
+  pname = "Mopidy-MPD";
+  version = "3.0.0";
+
+  src = python3Packages.fetchPypi {
+    inherit pname version;
+    sha256 = "0prjli4352521igcsfcgmk97jmzgbfy4ik8hnli37wgvv252wiac";
+  };
+
+  propagatedBuildInputs = [mopidy];
+
+  # no tests implemented
+  doCheck = false;
+  pythonImportsCheck = [ "mopidy_mpd" ];
+
+  meta = with stdenv.lib; {
+    homepage = "https://github.com/mopidy/mopidy-mpd";
+    description = "Mopidy extension for controlling playback from MPD clients";
+    license = licenses.asl20;
+    maintainers = [ maintainers.tomahna ];
+  };
+}
diff --git a/pkgs/applications/audio/mopidy/spotify.nix b/pkgs/applications/audio/mopidy/spotify.nix
index a01bf6c80d3d..32019c74f86d 100644
--- a/pkgs/applications/audio/mopidy/spotify.nix
+++ b/pkgs/applications/audio/mopidy/spotify.nix
@@ -1,6 +1,6 @@
-{ stdenv, fetchurl, python3Packages, mopidy }:
+{ stdenv, fetchurl, pythonPackages, mopidy }:
 
-python3Packages.buildPythonApplication rec {
+pythonPackages.buildPythonApplication rec {
   pname = "mopidy-spotify";
   version = "4.0.1";
 
@@ -9,12 +9,12 @@ python3Packages.buildPythonApplication rec {
     sha256 = "1ac8r8050i5r3ag1hlblbcyskqjqz7wgamndbzsmw52qi6hxk44f";
   };
 
-  propagatedBuildInputs = [ mopidy python3Packages.pyspotify ];
+  propagatedBuildInputs = [ mopidy pythonPackages.pyspotify ];
 
   doCheck = false;
 
   meta = with stdenv.lib; {
-    homepage = https://www.mopidy.com/;
+    homepage = "https://www.mopidy.com/";
     description = "Mopidy extension for playing music from Spotify";
     license = licenses.asl20;
     maintainers = [];
diff --git a/pkgs/applications/audio/mp3blaster/default.nix b/pkgs/applications/audio/mp3blaster/default.nix
index 727133be78df..2943a31454a6 100644
--- a/pkgs/applications/audio/mp3blaster/default.nix
+++ b/pkgs/applications/audio/mp3blaster/default.nix
@@ -21,7 +21,7 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "An audio player for the text console";
-    homepage = http://www.mp3blaster.org/;
+    homepage = "http://www.mp3blaster.org/";
     license = licenses.gpl2;
     maintainers = with maintainers; [ earldouglas ];
     platforms = platforms.all;
diff --git a/pkgs/applications/audio/mp3gain/default.nix b/pkgs/applications/audio/mp3gain/default.nix
index 233aebfa1470..f2b4564c7ccf 100644
--- a/pkgs/applications/audio/mp3gain/default.nix
+++ b/pkgs/applications/audio/mp3gain/default.nix
@@ -19,7 +19,7 @@ stdenv.mkDerivation {
 
   meta = {
     description = "Lossless mp3 normalizer with statistical analysis";
-    homepage = http://mp3gain.sourceforge.net/;
+    homepage = "http://mp3gain.sourceforge.net/";
     license = stdenv.lib.licenses.lgpl21;
     platforms = stdenv.lib.platforms.linux;
     maintainers = [ stdenv.lib.maintainers.devhell ];
diff --git a/pkgs/applications/audio/mp3info/default.nix b/pkgs/applications/audio/mp3info/default.nix
index 6700f21fc8cc..69ca271d27dd 100644
--- a/pkgs/applications/audio/mp3info/default.nix
+++ b/pkgs/applications/audio/mp3info/default.nix
@@ -35,7 +35,7 @@ stdenv.mkDerivation rec {
          other attributes in a pre-defined or user-specifiable output format.
       '';
 
-    homepage = http://www.ibiblio.org/mp3info/;
+    homepage = "http://www.ibiblio.org/mp3info/";
 
     license = stdenv.lib.licenses.gpl2Plus;
 
diff --git a/pkgs/applications/audio/mp3splt/default.nix b/pkgs/applications/audio/mp3splt/default.nix
index f067c5af6df3..323854575ea7 100644
--- a/pkgs/applications/audio/mp3splt/default.nix
+++ b/pkgs/applications/audio/mp3splt/default.nix
@@ -18,7 +18,7 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "Utility to split mp3, ogg vorbis and FLAC files without decoding";
-    homepage = https://sourceforge.net/projects/mp3splt/;
+    homepage = "https://sourceforge.net/projects/mp3splt/";
     license = licenses.gpl2;
     maintainers = [ maintainers.bosu ];
     platforms = platforms.unix;
diff --git a/pkgs/applications/audio/mp3val/default.nix b/pkgs/applications/audio/mp3val/default.nix
index 6c35779f6c4c..636fb7d9b9a1 100644
--- a/pkgs/applications/audio/mp3val/default.nix
+++ b/pkgs/applications/audio/mp3val/default.nix
@@ -29,7 +29,7 @@ stdenv.mkDerivation rec {
       also other MPEG versions and layers. The tool is also aware of the most
       common types of tags (ID3v1, ID3v2, APEv2).
     '';
-    homepage = http://mp3val.sourceforge.net/index.shtml;
+    homepage = "http://mp3val.sourceforge.net/index.shtml";
     license = stdenv.lib.licenses.gpl2;
     platforms = stdenv.lib.platforms.unix;
     maintainers = [ stdenv.lib.maintainers.devhell ];
diff --git a/pkgs/applications/audio/mpc/default.nix b/pkgs/applications/audio/mpc/default.nix
index 1e8d73ce560f..a226b720df9b 100644
--- a/pkgs/applications/audio/mpc/default.nix
+++ b/pkgs/applications/audio/mpc/default.nix
@@ -17,7 +17,7 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "A minimalist command line interface to MPD";
-    homepage = https://www.musicpd.org/clients/mpc/;
+    homepage = "https://www.musicpd.org/clients/mpc/";
     license = licenses.gpl2;
     maintainers = with maintainers; [ algorith ];
     platforms = with platforms; linux ++ darwin;
diff --git a/pkgs/applications/audio/mpc123/default.nix b/pkgs/applications/audio/mpc123/default.nix
index f024e5a6a1d1..ef5cb169a2cf 100644
--- a/pkgs/applications/audio/mpc123/default.nix
+++ b/pkgs/applications/audio/mpc123/default.nix
@@ -21,7 +21,7 @@ stdenv.mkDerivation rec {
     '';
 
   meta = {
-    homepage = http://mpc123.sourceforge.net/;
+    homepage = "http://mpc123.sourceforge.net/";
 
     description = "A Musepack (.mpc) audio player";
 
diff --git a/pkgs/applications/audio/mpg123/default.nix b/pkgs/applications/audio/mpg123/default.nix
index 6c4b9a431768..53e66e580da8 100644
--- a/pkgs/applications/audio/mpg123/default.nix
+++ b/pkgs/applications/audio/mpg123/default.nix
@@ -18,7 +18,7 @@ stdenv.mkDerivation rec {
 
   meta = {
     description = "Fast console MPEG Audio Player and decoder library";
-    homepage = http://mpg123.org;
+    homepage = "http://mpg123.org";
     license = stdenv.lib.licenses.lgpl21;
     maintainers = [ stdenv.lib.maintainers.ftrvxmtrx ];
     platforms = stdenv.lib.platforms.unix;
diff --git a/pkgs/applications/audio/mpg321/default.nix b/pkgs/applications/audio/mpg321/default.nix
index 08fe9b4f9af1..63b8e2d867a7 100644
--- a/pkgs/applications/audio/mpg321/default.nix
+++ b/pkgs/applications/audio/mpg321/default.nix
@@ -35,7 +35,7 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "Command-line MP3 player";
-    homepage = http://mpg321.sourceforge.net/;
+    homepage = "http://mpg321.sourceforge.net/";
     license = licenses.gpl2;
     maintainers = [ maintainers.rycee ];
     platforms = platforms.gnu ++ platforms.linux;
diff --git a/pkgs/applications/audio/mup/default.nix b/pkgs/applications/audio/mup/default.nix
new file mode 100644
index 000000000000..347cddca8564
--- /dev/null
+++ b/pkgs/applications/audio/mup/default.nix
@@ -0,0 +1,41 @@
+{ stdenv, fetchurl, autoreconfHook, bison, flex, ghostscript, groff, netpbm
+, fltk, libXinerama, libXpm, libjpeg
+}:
+
+stdenv.mkDerivation rec {
+  pname = "mup";
+  version = "6.7";
+
+  src = fetchurl {
+    url = "http://www.arkkra.com/ftp/pub/unix/mup${builtins.replaceStrings ["."] [""] version}src.tar.gz";
+    sha256 = "1y1qknhib1isdjsbv833w3nxzyfljkfgp1gmjwly60l55q60frpk";
+  };
+
+  nativeBuildInputs = [ autoreconfHook bison flex ghostscript groff netpbm ];
+
+  buildInputs = [ fltk libXinerama libXpm libjpeg ];
+
+  patches = [ ./ghostscript-permit-file-write.patch ];
+
+  postPatch = ''
+    for f in Makefile.am doc/Makefile.am doc/htmldocs/Makefile.am src/mupmate/Preferences.C; do
+      substituteInPlace $f --replace doc/packages doc
+    done
+    substituteInPlace src/mupprnt/mupprnt --replace 'mup ' $out/bin/mup' '
+    substituteInPlace src/mupdisp/genfile.c --replace '"mup"' '"'$out/bin/mup'"'
+    substituteInPlace src/mupmate/Preferences.C \
+      --replace '"mup"' '"'$out/bin/mup'"' \
+      --replace '"gv"' '"xdg-open"' \
+      --replace /usr/share/doc $out/share/doc
+  '';
+
+  enableParallelBuilding = false; # Undeclared dependencies + https://stackoverflow.com/a/19822767/1687334 for prolog.ps.
+
+  meta = with stdenv.lib; {
+    homepage = "http://www.arkkra.com/";
+    description = "Music typesetting program (ASCII to PostScript and MIDI)";
+    license = licenses.bsd3;
+    maintainers = with maintainers; [ orivej ];
+    platforms = platforms.linux;
+  };
+}
diff --git a/pkgs/applications/audio/mup/ghostscript-permit-file-write.patch b/pkgs/applications/audio/mup/ghostscript-permit-file-write.patch
new file mode 100644
index 000000000000..5059e71001f0
--- /dev/null
+++ b/pkgs/applications/audio/mup/ghostscript-permit-file-write.patch
@@ -0,0 +1,5 @@
+--- a/src/mup/Makefile.am
++++ b/src/mup/Makefile.am
+@@ -39 +39 @@ fontdata.c:	prolog.ps ../../tools/mup/getfontinfo.ps ../../LICENSE
+-	$(GS) -sDEVICE=nullpage -sOutputFile=/dev/null -dQUIET - < ../../tools/mup/getfontinfo.ps | $(SED) -e "/Warning:/d" >> fontdata.c
++	$(GS) -sDEVICE=nullpage -sOutputFile=/dev/null -dQUIET --permit-file-write=charnames:fontinit - < ../../tools/mup/getfontinfo.ps | $(SED) -e "/Warning:/d" >> fontdata.c
diff --git a/pkgs/applications/audio/muse/default.nix b/pkgs/applications/audio/muse/default.nix
index f1fad05beced..87f86306b482 100644
--- a/pkgs/applications/audio/muse/default.nix
+++ b/pkgs/applications/audio/muse/default.nix
@@ -1,25 +1,33 @@
-{ stdenv
-, fetchFromGitHub
-, libjack2
-, wrapQtAppsHook
-, qtsvg
-, qttools
-, cmake
-, libsndfile
-, libsamplerate
-, ladspaH
-, fluidsynth
-, alsaLib
-, rtaudio
-, lash
-, dssi
-, liblo
-, pkgconfig
+{ stdenv, fetchFromGitHub, cmake, pkgconfig, qttools, wrapQtAppsHook
+, alsaLib, dssi, fluidsynth, ladspaH, lash, libinstpatch, libjack2, liblo
+, libsamplerate, libsndfile, lilv, lrdf, lv2, qtsvg, rtaudio, rubberband, sord
 }:
 
-stdenv.mkDerivation {
+stdenv.mkDerivation rec {
   pname = "muse-sequencer";
-  version = "3.1pre1";
+  version = "3.1.0";
+
+  src = fetchFromGitHub {
+    owner = "muse-sequencer";
+    repo = "muse";
+    rev = "muse_${builtins.replaceStrings ["."] ["_"] version}";
+    sha256 = "08k25652w88xf2i79lw305x1phpk7idrww9jkqwcs8q6wzgmz8aq";
+  };
+
+  sourceRoot = "source/muse3";
+
+  prePatch = ''
+    chmod u+w $NIX_BUILD_TOP
+  '';
+
+  patches = [ ./fix-parallel-building.patch ];
+
+  nativeBuildInputs = [ cmake pkgconfig qttools wrapQtAppsHook ];
+
+  buildInputs = [
+    alsaLib dssi fluidsynth ladspaH lash libinstpatch libjack2 liblo
+    libsamplerate libsndfile lilv lrdf lv2 qtsvg rtaudio rubberband sord
+  ];
 
   meta = with stdenv.lib; {
     homepage = "https://www.muse-sequencer.org/";
@@ -32,38 +40,7 @@ stdenv.mkDerivation {
       MusE aims to be a complete multitrack virtual studio for Linux,
       it is published under the GNU General Public License.
     '';
-    license = stdenv.lib.licenses.gpl2;
+    license = licenses.gpl2Plus;
+    maintainers = with maintainers; [ orivej ];
   };
-
-  src =
-    fetchFromGitHub {
-      owner = "muse-sequencer";
-      repo = "muse";
-      rev = "2167ae053c16a633d8377acdb1debaac10932838";
-      sha256 = "0rsdx8lvcbz5bapnjvypw8h8bq587s9z8cf2znqrk6ah38s6fsrf";
-    };
-
-
-  nativeBuildInputs = [
-    pkgconfig
-    wrapQtAppsHook
-    qttools
-    cmake
-  ];
-
-  buildInputs = [
-    libjack2
-    qtsvg
-    libsndfile
-    libsamplerate
-    ladspaH
-    fluidsynth
-    alsaLib
-    rtaudio
-    lash
-    dssi
-    liblo
-  ];
-
-  sourceRoot = "source/muse3";
 }
diff --git a/pkgs/applications/audio/muse/fix-parallel-building.patch b/pkgs/applications/audio/muse/fix-parallel-building.patch
new file mode 100644
index 000000000000..a11970b7111a
--- /dev/null
+++ b/pkgs/applications/audio/muse/fix-parallel-building.patch
@@ -0,0 +1,93 @@
+To confirm these dependencies, run in a fresh build tree:
+
+
+ninja muse/components/CMakeFiles/components.dir/confmport.o
+
+In file included from ../muse/components/confmport.cpp:48:
+../muse/mplugins/midifilterimpl.h:28:10: fatal error:
+ui_midifilter.h: No such file or directory
+
+
+ninja muse/waveedit/CMakeFiles/waveedit.dir/wavecanvas.o
+
+In file included from ../muse/waveedit/wavecanvas.cpp:72:
+../muse/components/copy_on_write.h:26:10: fatal error:
+ui_copy_on_write_base.h: No such file or directory
+
+
+ninja muse/instruments/CMakeFiles/instruments.dir/editinstrument.o
+
+In file included from ../muse/instruments/editinstrument.cpp:58:
+../muse/components/editevent.h:26:10: fatal error:
+ui_editnotedialogbase.h: No such file or directory
+
+
+ninja muse/liste/CMakeFiles/liste.dir/listedit.o
+
+In file included from ../muse/liste/listedit.cpp:37:
+../muse/components/editevent.h:26:10: fatal error:
+ui_editnotedialogbase.h: No such file or directory
+
+
+ninja muse/mixer/CMakeFiles/mixer.dir/rack.o
+
+In file included from ../muse/mixer/rack.cpp:49:
+../muse/components/plugindialog.h:4:10: fatal error:
+ui_plugindialogbase.h: No such file or directory
+
+
+ninja muse/midiedit/CMakeFiles/midiedit.dir/drumedit.o
+
+In file included from /build/source/muse3/muse/midiedit/drumedit.cpp:64:
+/build/source/muse3/muse/components/filedialog.h:29:10: fatal error:
+ui_fdialogbuttons.h: No such file or directory
+
+
+--- a/muse/components/CMakeLists.txt
++++ b/muse/components/CMakeLists.txt
+@@ -343,4 +343,5 @@ set_target_properties( components
+ target_link_libraries ( components
+       ${QT_LIBRARIES}
++      mplugins
+       widgets
+       xml_module
+--- a/muse/waveedit/CMakeLists.txt
++++ b/muse/waveedit/CMakeLists.txt
+@@ -79,4 +79,5 @@ set_target_properties( waveedit
+ target_link_libraries( waveedit
+       ${QT_LIBRARIES}
++      components
+       widgets
+       )
+--- a/muse/instruments/CMakeLists.txt
++++ b/muse/instruments/CMakeLists.txt
+@@ -78,4 +78,5 @@ set_target_properties( instruments
+ target_link_libraries ( instruments
+       ${QT_LIBRARIES}
++      components
+       icons
+       widgets
+--- a/muse/liste/CMakeLists.txt
++++ b/muse/liste/CMakeLists.txt
+@@ -65,4 +65,5 @@ set_target_properties( liste
+ target_link_libraries ( liste
+       ${QT_LIBRARIES}
++      components
+       awl
+       widgets
+--- a/muse/mixer/CMakeLists.txt
++++ b/muse/mixer/CMakeLists.txt
+@@ -87,4 +87,5 @@ set_target_properties ( mixer
+ target_link_libraries ( mixer
+       ${QT_LIBRARIES}
++      components
+       widgets
+       )
+--- a/muse/midiedit/CMakeLists.txt
++++ b/muse/midiedit/CMakeLists.txt
+@@ -93,4 +93,5 @@ set_target_properties( midiedit
+ target_link_libraries ( midiedit
+       ${QT_LIBRARIES}
++      components
+       al
+       ctrl
diff --git a/pkgs/applications/audio/musescore/darwin.nix b/pkgs/applications/audio/musescore/darwin.nix
index 8b08aed62b8b..8870a144c9f5 100644
--- a/pkgs/applications/audio/musescore/darwin.nix
+++ b/pkgs/applications/audio/musescore/darwin.nix
@@ -25,10 +25,10 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "Music notation and composition software";
-    homepage = https://musescore.org/;
+    homepage = "https://musescore.org/";
     license = licenses.gpl2;
     platforms = platforms.darwin;
     maintainers = with maintainers; [ yurrriq ];
-    repositories.git = https://github.com/musescore/MuseScore;
+    repositories.git = "https://github.com/musescore/MuseScore";
   };
 }
diff --git a/pkgs/applications/audio/musescore/default.nix b/pkgs/applications/audio/musescore/default.nix
index 5368fcb61656..063a05a72f3a 100644
--- a/pkgs/applications/audio/musescore/default.nix
+++ b/pkgs/applications/audio/musescore/default.nix
@@ -6,11 +6,11 @@
 
 mkDerivation rec {
   pname = "musescore";
-  version = "3.2.3";
+  version = "3.4.2";
 
   src = fetchzip {
     url = "https://github.com/musescore/MuseScore/releases/download/v${version}/MuseScore-${version}.zip";
-    sha256 = "17mr0c8whw6vz86lp1j36rams4h8virc4z68fld0q3rpq6g05szs";
+    sha256 = "1laskvp40dncs12brkgvk7wl0qrvzy52rn7nf3b67ps1vmd130gp";
     stripRoot = false;
   };
 
@@ -31,10 +31,10 @@ mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "Music notation and composition software";
-    homepage = https://musescore.org/;
+    homepage = "https://musescore.org/";
     license = licenses.gpl2;
-    maintainers = with maintainers; [ vandenoever ];
+    maintainers = with maintainers; [ vandenoever turion ];
     platforms = platforms.linux;
-    repositories.git = https://github.com/musescore/MuseScore;
+    repositories.git = "https://github.com/musescore/MuseScore";
   };
 }
diff --git a/pkgs/applications/audio/musescore/remove_qtwebengine_install_hack.patch b/pkgs/applications/audio/musescore/remove_qtwebengine_install_hack.patch
index 53a0c90ce46e..57a6092d5852 100644
--- a/pkgs/applications/audio/musescore/remove_qtwebengine_install_hack.patch
+++ b/pkgs/applications/audio/musescore/remove_qtwebengine_install_hack.patch
@@ -1,12 +1,9 @@
---- a/mscore/CMakeLists.txt
-+++ b/mscore/CMakeLists.txt
-@@ -660,22 +660,6 @@ if (MINGW)
- else (MINGW)
-
-    if ( NOT MSVC )
--## install qwebengine core
+--- a/main/CMakeLists.txt
++++ b/main/CMakeLists.txt
+@@ -220,16 +219,0 @@ else (MINGW)
+-      ## install qwebengine core
 -      if (NOT APPLE AND USE_WEBENGINE)
--         install(FILES
+-         install(PROGRAMS
 -            ${QT_INSTALL_LIBEXECS}/QtWebEngineProcess
 -            DESTINATION bin
 -            )
@@ -20,6 +17,3 @@
 -            )
 -      endif(NOT APPLE AND USE_WEBENGINE)
 -
-       target_link_libraries(mscore
-          ${ALSA_LIB}
-          ${QT_LIBRARIES}
diff --git a/pkgs/applications/audio/musikcube/default.nix b/pkgs/applications/audio/musikcube/default.nix
new file mode 100644
index 000000000000..0c076946b927
--- /dev/null
+++ b/pkgs/applications/audio/musikcube/default.nix
@@ -0,0 +1,56 @@
+{ cmake
+, pkg-config
+, alsaLib
+, boost
+, curl
+, fetchFromGitHub
+, ffmpeg
+, lame
+, libev
+, libmicrohttpd
+, ncurses
+, pulseaudio
+, stdenv
+, taglib
+, systemdSupport ? stdenv.isLinux, systemd
+}:
+
+stdenv.mkDerivation rec {
+  pname = "musikcube";
+  version = "0.90.1";
+
+  src = fetchFromGitHub {
+    owner = "clangen";
+    repo = pname;
+    rev = version;
+    sha256 = "1ff2cgbllrl2pl5zfbf0cd9qbf6hqpwr395sa1k245ar4f1rfwpg";
+  };
+
+  # https://github.com/clangen/musikcube/issues/339
+  patches = [ ./dont-strip.patch ];
+
+  nativeBuildInputs = [
+    cmake
+    pkg-config
+  ];
+  buildInputs = [
+    alsaLib
+    boost
+    curl
+    ffmpeg
+    lame
+    libev
+    libmicrohttpd
+    ncurses
+    pulseaudio
+    taglib
+  ] ++ stdenv.lib.optional systemdSupport systemd;
+
+  meta = with stdenv.lib; {
+    description = "A fully functional terminal-based music player, library, and streaming audio server";
+    homepage = "https://musikcube.com/";
+    maintainers = [ maintainers.aanderse ];
+    license = licenses.bsd3;
+    platforms = platforms.all;
+  };
+}
diff --git a/pkgs/applications/audio/musikcube/dont-strip.patch b/pkgs/applications/audio/musikcube/dont-strip.patch
new file mode 100644
index 000000000000..b7385dcddba9
--- /dev/null
+++ b/pkgs/applications/audio/musikcube/dont-strip.patch
@@ -0,0 +1,14 @@
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index a3e02666..7c43c7e6 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -370,9 +370,3 @@ endif()
+ # they don't yet exist!
+ add_custom_target(postbuild ALL DEPENDS musikcube musikcubed)
+ add_custom_command(TARGET postbuild POST_BUILD COMMAND cmake .)
+-
+-# strip binaries in release mode
+-if (CMAKE_BUILD_TYPE MATCHES Release)
+-  message(STATUS "stripping binaries...")
+-  add_custom_command(TARGET postbuild POST_BUILD COMMAND "${CMAKE_SOURCE_DIR}/strip-nix.sh")
+-endif()
diff --git a/pkgs/applications/audio/musly/default.nix b/pkgs/applications/audio/musly/default.nix
index e7a9e22c2d68..b1e8822cdcf8 100644
--- a/pkgs/applications/audio/musly/default.nix
+++ b/pkgs/applications/audio/musly/default.nix
@@ -17,7 +17,7 @@ stdenv.mkDerivation {
   '' else "";
 
   meta = with stdenv.lib; {
-    homepage = https://www.musly.org;
+    homepage = "https://www.musly.org";
     description = "A fast and high-quality audio music similarity library written in C/C++";
     longDescription = ''
       Musly analyzes the the audio signal of music pieces to estimate their similarity.
diff --git a/pkgs/applications/audio/ncmpc/default.nix b/pkgs/applications/audio/ncmpc/default.nix
index c95177cd3821..aea50d71d75d 100644
--- a/pkgs/applications/audio/ncmpc/default.nix
+++ b/pkgs/applications/audio/ncmpc/default.nix
@@ -10,13 +10,13 @@ assert pcreSupport -> pcre != null;
 
 stdenv.mkDerivation rec {
   pname = "ncmpc";
-  version = "0.37";
+  version = "0.38";
 
   src = fetchFromGitHub {
     owner  = "MusicPlayerDaemon";
     repo   = "ncmpc";
     rev    = "v${version}";
-    sha256 = "1b0vd0h49kjg4nxjfjrcg8gzplz93ryr6xyfha2pvhlrzdd2d1lj";
+    sha256 = "1kidpd1xrfax3v31q93r9g9b7jd841476q47wgd94h1a86b70gs9";
   };
 
   buildInputs = [ glib ncurses mpd_clientlib boost ]
@@ -30,7 +30,7 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "Curses-based interface for MPD (music player daemon)";
-    homepage    = https://www.musicpd.org/clients/ncmpc/;
+    homepage    = "https://www.musicpd.org/clients/ncmpc/";
     license     = licenses.gpl2Plus;
     platforms   = platforms.all;
     maintainers = with maintainers; [ fpletz ];
diff --git a/pkgs/applications/audio/ncmpcpp/default.nix b/pkgs/applications/audio/ncmpcpp/default.nix
index 2ba36b4a50d9..f8adc522fcb5 100644
--- a/pkgs/applications/audio/ncmpcpp/default.nix
+++ b/pkgs/applications/audio/ncmpcpp/default.nix
@@ -33,7 +33,7 @@ stdenv.mkDerivation rec {
 
   meta = {
     description = "A featureful ncurses based MPD client inspired by ncmpc";
-    homepage    = https://ncmpcpp.rybczak.net/;
+    homepage    = "https://ncmpcpp.rybczak.net/";
     license     = licenses.gpl2Plus;
     maintainers = with maintainers; [ jfrankenau koral lovek323 ];
     platforms   = platforms.all;
diff --git a/pkgs/applications/audio/ncpamixer/default.nix b/pkgs/applications/audio/ncpamixer/default.nix
index 53ed9b3297c1..32d8df2f0487 100644
--- a/pkgs/applications/audio/ncpamixer/default.nix
+++ b/pkgs/applications/audio/ncpamixer/default.nix
@@ -25,7 +25,7 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "An ncurses mixer for PulseAudio inspired by pavucontrol";
-    homepage = https://github.com/fulhax/ncpamixer;
+    homepage = "https://github.com/fulhax/ncpamixer";
     license = licenses.mit;
     platforms = platforms.linux;
     maintainers = with maintainers; [ StijnDW ];
diff --git a/pkgs/applications/audio/ncspot/default.nix b/pkgs/applications/audio/ncspot/default.nix
index 0d8fd8e26378..bee1065328a7 100644
--- a/pkgs/applications/audio/ncspot/default.nix
+++ b/pkgs/applications/audio/ncspot/default.nix
@@ -2,26 +2,28 @@
 , withALSA ? true, alsaLib ? null
 , withPulseAudio ? false, libpulseaudio ? null
 , withPortAudio ? false, portaudio ? null
+, withMPRIS ? false, dbus ? null
 }:
 
 let
   features = [ "cursive/pancurses-backend" ]
     ++ lib.optional withALSA "alsa_backend"
     ++ lib.optional withPulseAudio "pulseaudio_backend"
-    ++ lib.optional withPortAudio "portaudio_backend";
+    ++ lib.optional withPortAudio "portaudio_backend"
+    ++ lib.optional withMPRIS "mpris";
 in
 rustPlatform.buildRustPackage rec {
   pname = "ncspot";
-  version = "0.1.2";
+  version = "0.1.3";
 
   src = fetchFromGitHub {
     owner = "hrkfdn";
     repo = "ncspot";
     rev = "v${version}";
-    sha256 = "10jp2yh8jlvdwh297658q9fi3i62vwsbd9fbwjsir7s1c9bgdy8k";
+    sha256 = "144a7wn5l64fhvj8vgwl7z4bp8lbq0pb0dl38x9y4wkqmdh6wrli";
   };
 
-  cargoSha256 = "0081wc3xw11hivz0nwy4my3y4a53ch857bq989dr0pm9p2pirvj1";
+  cargoSha256 = "19gn0v7j1ly3ywgflfj27pnrwjiiy17m3g1z0kzagxpjy2xi2qxy";
 
   cargoBuildFlags = [ "--no-default-features" "--features" "${lib.concatStringsSep "," features}" ];
 
@@ -30,7 +32,8 @@ rustPlatform.buildRustPackage rec {
   buildInputs = [ ncurses openssl ]
     ++ lib.optional withALSA alsaLib
     ++ lib.optional withPulseAudio libpulseaudio
-    ++ lib.optional withPortAudio portaudio;
+    ++ lib.optional withPortAudio portaudio
+    ++ lib.optional withMPRIS dbus;
 
   doCheck = false;
 
diff --git a/pkgs/applications/audio/netease-cloud-music/default.nix b/pkgs/applications/audio/netease-cloud-music/default.nix
index 76dcba304a32..c4cc291d026c 100644
--- a/pkgs/applications/audio/netease-cloud-music/default.nix
+++ b/pkgs/applications/audio/netease-cloud-music/default.nix
@@ -68,13 +68,12 @@ in stdenv.mkDerivation rec {
 
     wrapProgram $out/bin/netease-cloud-music \
       --prefix LD_LIBRARY_PATH : "${runtimeLibs}" \
-      --set QT_AUTO_SCREEN_SCALE_FACTOR 1 \
       --set QCEF_INSTALL_PATH "${deepin.qcef}/lib/qcef"
   '';
 
   meta = {
     description = "Client for Netease Cloud Music service";
-    homepage = https://music.163.com;
+    homepage = "https://music.163.com";
     platforms = [ "i686-linux" "x86_64-linux" ];
     maintainers = [ stdenv.lib.maintainers.mlatus ];
     license = stdenv.lib.licenses.unfreeRedistributable;
diff --git a/pkgs/applications/audio/ninjas2/default.nix b/pkgs/applications/audio/ninjas2/default.nix
new file mode 100644
index 000000000000..3a23347c1e76
--- /dev/null
+++ b/pkgs/applications/audio/ninjas2/default.nix
@@ -0,0 +1,39 @@
+{ stdenv, fetchFromGitHub, libjack2, libGL, pkgconfig, xorg, mesa, libsndfile, libsamplerate }:
+
+stdenv.mkDerivation rec {
+  pname = "ninjas2";
+  version = "0.2.0";
+
+  src = fetchFromGitHub {
+    owner = "clearly-broken-software";
+    repo = pname;
+    rev = "v${version}";
+    sha256 = "1kwp6pmnfar2ip9693gprfbcfscklgri1k1ycimxzlqr61nkd2k9";
+    fetchSubmodules = true;
+  };
+
+  patchPhase = ''
+    patchShebangs dpf/utils/generate-ttl.sh
+  '';
+
+  nativeBuildInputs = [ pkgconfig ];
+  buildInputs = [
+    libjack2 xorg.libX11 libGL mesa libsndfile libsamplerate
+  ];
+
+  installPhase = ''
+    install -dD bin/ninjas2.lv2 $out/lib/lv2/ninjas2.lv2
+    install -D bin/ninjas2-vst.so  $out/lib/vst/ninjas2-vst.so
+    install -D bin/ninjas2 $out/bin/ninjas2
+  '';
+
+  makeFlags = [ "PREFIX=$(out)" ];
+
+  meta = with stdenv.lib; {
+    homepage = "https://github.com/clearly-broken-software/ninjas2";
+    description = "sample slicer plugin for LV2, VST, and jack standalone";
+    license = with licenses; [ gpl3 ];
+    maintainers = [ maintainers.magnetophon ];
+    platforms = platforms.linux;
+  };
+}
diff --git a/pkgs/applications/audio/noise-repellent/default.nix b/pkgs/applications/audio/noise-repellent/default.nix
index bc5b35396e23..3b2f233c6afe 100644
--- a/pkgs/applications/audio/noise-repellent/default.nix
+++ b/pkgs/applications/audio/noise-repellent/default.nix
@@ -21,7 +21,7 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "An lv2 plugin for broadband noise reduction";
-    homepage    = https://github.com/lucianodato/noise-repellent;
+    homepage    = "https://github.com/lucianodato/noise-repellent";
     license     = licenses.gpl3;
     maintainers = [ maintainers.magnetophon ];
     platforms = [ "x86_64-linux" "i686-linux" "x86_64-darwin" "i686-darwin"  ];
diff --git a/pkgs/applications/audio/non/default.nix b/pkgs/applications/audio/non/default.nix
index 5f8c82b98d04..9b4b147c2304 100644
--- a/pkgs/applications/audio/non/default.nix
+++ b/pkgs/applications/audio/non/default.nix
@@ -1,5 +1,5 @@
 { stdenv, fetchFromGitHub, pkgconfig, python2, cairo, libjpeg, ntk, libjack2
-, libsndfile, ladspaH, liblrdf, liblo, libsigcxx, wafHook
+, libsndfile, ladspaH, liblo, libsigcxx, lrdf, wafHook
 }:
 
 stdenv.mkDerivation {
@@ -14,12 +14,12 @@ stdenv.mkDerivation {
 
   nativeBuildInputs = [ pkgconfig wafHook ];
   buildInputs = [ python2 cairo libjpeg ntk libjack2 libsndfile
-    ladspaH liblrdf liblo libsigcxx
+    ladspaH liblo libsigcxx lrdf
   ];
 
   meta = {
     description = "Lightweight and lightning fast modular Digital Audio Workstation";
-    homepage = http://non.tuxfamily.org;
+    homepage = "http://non.tuxfamily.org";
     license = stdenv.lib.licenses.lgpl21;
     platforms = stdenv.lib.platforms.linux;
     maintainers = [ stdenv.lib.maintainers.nico202 ];
diff --git a/pkgs/applications/audio/nootka/default.nix b/pkgs/applications/audio/nootka/default.nix
new file mode 100644
index 000000000000..b0d4843aecd5
--- /dev/null
+++ b/pkgs/applications/audio/nootka/default.nix
@@ -0,0 +1,31 @@
+{ stdenv, fetchurl, cmake
+, alsaLib, fftwSinglePrec, libjack2, libpulseaudio, libvorbis, soundtouch, qtbase
+}:
+
+stdenv.mkDerivation rec {
+  name = "nootka-1.4.7";
+
+  src = fetchurl {
+    url = "mirror://sourceforge/nootka/${name}-source.tar.bz2";
+    sha256 = "1y9wlwri74v2z9dwbcfjs7xri54yra24vpwq19xi2lfv1nbs518x";
+  };
+
+  nativeBuildInputs = [ cmake ];
+  buildInputs = [
+    alsaLib fftwSinglePrec libjack2 libpulseaudio libvorbis soundtouch qtbase
+  ];
+
+  cmakeFlags = [
+    "-DCMAKE_INCLUDE_PATH=${libjack2}/include/jack;${libpulseaudio.dev}/include/pulse"
+    "-DENABLE_JACK=ON"
+    "-DENABLE_PULSEAUDIO=ON"
+  ];
+
+  meta = with stdenv.lib; {
+    description = "Application for practicing playing musical scores and ear training";
+    homepage = "https://nootka.sourceforge.io/";
+    license = licenses.gpl3Plus;
+    maintainers = with maintainers; [ orivej ];
+    platforms = platforms.linux;
+  };
+}
diff --git a/pkgs/applications/audio/nootka/unstable.nix b/pkgs/applications/audio/nootka/unstable.nix
new file mode 100644
index 000000000000..16df55c1dfba
--- /dev/null
+++ b/pkgs/applications/audio/nootka/unstable.nix
@@ -0,0 +1,33 @@
+{ stdenv, fetchurl, cmake
+, alsaLib, fftwSinglePrec, libjack2, libpulseaudio, libvorbis, soundtouch
+, qtbase, qtdeclarative, qtquickcontrols2
+}:
+
+stdenv.mkDerivation rec {
+  name = "nootka-1.7.0-beta1";
+
+  src = fetchurl {
+    url = "mirror://sourceforge/nootka/${name}-source.tar.bz2";
+    sha256 = "13b50vnpr1zx2mrgkc8fmhsyfa19rqq1rksvn31145dy6fk1f3gc";
+  };
+
+  nativeBuildInputs = [ cmake ];
+  buildInputs = [
+    alsaLib fftwSinglePrec libjack2 libpulseaudio libvorbis soundtouch
+    qtbase qtdeclarative qtquickcontrols2
+  ];
+
+  cmakeFlags = [
+    "-DCMAKE_INCLUDE_PATH=${libjack2}/include/jack;${libpulseaudio.dev}/include/pulse"
+    "-DENABLE_JACK=ON"
+    "-DENABLE_PULSEAUDIO=ON"
+  ];
+
+  meta = with stdenv.lib; {
+    description = "Application for practicing playing musical scores and ear training";
+    homepage = "https://nootka.sourceforge.io/";
+    license = licenses.gpl3Plus;
+    maintainers = with maintainers; [ orivej ];
+    platforms = platforms.linux;
+  };
+}
diff --git a/pkgs/applications/audio/normalize/default.nix b/pkgs/applications/audio/normalize/default.nix
index 490ecc967bbf..0aa264116932 100644
--- a/pkgs/applications/audio/normalize/default.nix
+++ b/pkgs/applications/audio/normalize/default.nix
@@ -12,7 +12,7 @@ stdenv.mkDerivation rec {
   buildInputs = [ libmad ];
 
   meta = with stdenv.lib; {
-    homepage = https://www.nongnu.org/normalize/;
+    homepage = "https://www.nongnu.org/normalize/";
     description = "Audio file normalizer";
     license = licenses.gpl2;
     platforms = platforms.unix;
diff --git a/pkgs/applications/audio/nova-filters/default.nix b/pkgs/applications/audio/nova-filters/default.nix
index 0bb970500bdc..bc5a3efc59a3 100644
--- a/pkgs/applications/audio/nova-filters/default.nix
+++ b/pkgs/applications/audio/nova-filters/default.nix
@@ -5,7 +5,7 @@ stdenv.mkDerivation {
   pname = "nova-filters";
 
   src = fetchurl {
-    url = https://klingt.org/~tim/nova-filters/nova-filters_0.2-2.tar.gz;
+    url = "https://klingt.org/~tim/nova-filters/nova-filters_0.2-2.tar.gz";
     sha256 = "16064vvl2w5lz4xi3lyjk4xx7fphwsxc14ajykvndiz170q32s6i";
   };
 
@@ -23,7 +23,7 @@ stdenv.mkDerivation {
 
   meta = with stdenv.lib; {
     description = "LADSPA plugins based on filters of nova";
-    homepage = http://klingt.org/~tim/nova-filters/;
+    homepage = "http://klingt.org/~tim/nova-filters/";
     license = licenses.gpl2Plus;
     maintainers = [ maintainers.magnetophon ];
     platforms = platforms.linux;
diff --git a/pkgs/applications/audio/openmpt123/default.nix b/pkgs/applications/audio/openmpt123/default.nix
index 24ac52e7e311..de903bf32768 100644
--- a/pkgs/applications/audio/openmpt123/default.nix
+++ b/pkgs/applications/audio/openmpt123/default.nix
@@ -2,14 +2,14 @@
 , usePulseAudio ? config.pulseaudio or false, libpulseaudio }:
 
 let
-  version = "0.4.11";
+  version = "0.4.12";
 in stdenv.mkDerivation {
   pname = "openmpt123";
   inherit version;
 
   src = fetchurl {
     url = "https://lib.openmpt.org/files/libopenmpt/src/libopenmpt-${version}+release.autotools.tar.gz";
-    sha256 = "1g96bpwh419s429wb387lkmhjsn3ldsjrzrb8h9p3wva5z6943i6";
+    sha256 = "0q2yf9g6hcwvr2nk3zggkscyf0np6i03q2g7fx10i2kcdr3n9k8c";
   };
 
   enableParallelBuilding = true;
@@ -23,7 +23,7 @@ in stdenv.mkDerivation {
 
   meta = with stdenv.lib; {
     description = "A cross-platform command-line based module file player";
-    homepage = https://lib.openmpt.org/libopenmpt/;
+    homepage = "https://lib.openmpt.org/libopenmpt/";
     license = licenses.bsd3;
     maintainers = with maintainers; [ gnidorah ];
     platforms = platforms.linux;
diff --git a/pkgs/applications/audio/opus-tools/default.nix b/pkgs/applications/audio/opus-tools/default.nix
index 69fa75d85f4d..9d95c362d928 100644
--- a/pkgs/applications/audio/opus-tools/default.nix
+++ b/pkgs/applications/audio/opus-tools/default.nix
@@ -12,7 +12,7 @@ stdenv.mkDerivation rec {
 
   meta = {
     description = "Tools to work with opus encoded audio streams";
-    homepage = http://www.opus-codec.org/;
+    homepage = "http://www.opus-codec.org/";
     license = stdenv.lib.licenses.bsd2;
     maintainers = with stdenv.lib.maintainers; [ ];
     platforms = with stdenv.lib.platforms; unix;
diff --git a/pkgs/applications/audio/opusfile/default.nix b/pkgs/applications/audio/opusfile/default.nix
index 25636863793f..c09b3f415d86 100644
--- a/pkgs/applications/audio/opusfile/default.nix
+++ b/pkgs/applications/audio/opusfile/default.nix
@@ -15,7 +15,7 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "High-level API for decoding and seeking in .opus files";
-    homepage = http://www.opus-codec.org/;
+    homepage = "http://www.opus-codec.org/";
     license = licenses.bsd3;
     platforms = platforms.linux ++ platforms.darwin;
     maintainers = with maintainers; [ ];
diff --git a/pkgs/applications/audio/orca-c/default.nix b/pkgs/applications/audio/orca-c/default.nix
new file mode 100644
index 000000000000..3a4f4b2ce2b8
--- /dev/null
+++ b/pkgs/applications/audio/orca-c/default.nix
@@ -0,0 +1,31 @@
+{ stdenv, fetchFromGitHub, ncurses, portmidi }:
+stdenv.mkDerivation {
+  pname = "orca-c";
+
+  version = "git-2020-05-01";
+
+  src = fetchFromGitHub {
+    owner = "hundredrabbits";
+    repo = "Orca-c";
+    rev = "d7a3b169c5ed0b06a9ad0fdb3057704da9a0b6ce";
+    sha256 = "101y617a295hzwr98ykvza1sycxlk29kzxn2ybjwc718r0alkbzz";
+  };
+
+  buildInputs = [ ncurses portmidi ];
+
+  patchPhase = ''
+    patchShebangs tool
+  '';
+
+  installPhase = ''
+    mkdir -p $out/bin
+    install build/orca $out/bin/orca
+  '';
+
+  meta = with stdenv.lib; {
+    description = "An esoteric programming language designed to quickly create procedural sequencers.";
+    homepage = "https://github.com/hundredrabbits/Orca-c";
+    license = licenses.mit;
+    platforms = platforms.all;
+  };
+}
diff --git a/pkgs/applications/audio/padthv1/default.nix b/pkgs/applications/audio/padthv1/default.nix
index 0cb0f00844e3..911bb4c8c773 100644
--- a/pkgs/applications/audio/padthv1/default.nix
+++ b/pkgs/applications/audio/padthv1/default.nix
@@ -2,11 +2,11 @@
 
 mkDerivation rec {
   pname = "padthv1";
-  version = "0.9.12";
+  version = "0.9.13";
 
   src = fetchurl {
     url = "mirror://sourceforge/padthv1/${pname}-${version}.tar.gz";
-    sha256 = "1zz3rz990k819q0rlzllqdwvag0x9k63443lb0mp8lwlczxnza6l";
+    sha256 = "1c1zllph86qswcxddz4vpsj6r9w21hbv4gkba0pyd3q7pbfqr7nz";
   };
 
   buildInputs = [ libjack2 alsaLib libsndfile liblo lv2 qt5.qtbase qt5.qttools fftw ];
@@ -15,7 +15,7 @@ mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "polyphonic additive synthesizer";
-    homepage = http://padthv1.sourceforge.net/;
+    homepage = "http://padthv1.sourceforge.net/";
     license = licenses.gpl2Plus;
     platforms = platforms.linux;
     maintainers = [ maintainers.magnetophon ];
diff --git a/pkgs/applications/audio/pamix/default.nix b/pkgs/applications/audio/pamix/default.nix
index 2507f08e9e59..cc5d84d9471b 100644
--- a/pkgs/applications/audio/pamix/default.nix
+++ b/pkgs/applications/audio/pamix/default.nix
@@ -22,7 +22,7 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "Pulseaudio terminal mixer";
-    homepage    = https://github.com/patroclos/PAmix;
+    homepage    = "https://github.com/patroclos/PAmix";
     license     = licenses.mit;
     platforms   = platforms.linux;
     maintainers = with maintainers; [ ericsagnes ];
diff --git a/pkgs/applications/audio/pamixer/default.nix b/pkgs/applications/audio/pamixer/default.nix
index 7c4520967850..71d852485991 100644
--- a/pkgs/applications/audio/pamixer/default.nix
+++ b/pkgs/applications/audio/pamixer/default.nix
@@ -28,7 +28,7 @@ stdenv.mkDerivation rec {
         - Increase / Decrease the volume for a device
         - Mute or unmute a device
     '';
-    homepage = https://github.com/cdemoulins/pamixer;
+    homepage = "https://github.com/cdemoulins/pamixer";
     license = licenses.gpl3;
     platforms = platforms.linux;
   };
diff --git a/pkgs/applications/audio/paprefs/default.nix b/pkgs/applications/audio/paprefs/default.nix
index 9c59b5466c74..b5ec1206ce3d 100644
--- a/pkgs/applications/audio/paprefs/default.nix
+++ b/pkgs/applications/audio/paprefs/default.nix
@@ -40,7 +40,7 @@ stdenv.mkDerivation rec {
       dialog for the PulseAudio sound server.
     '';
 
-    homepage = http://freedesktop.org/software/pulseaudio/paprefs/;
+    homepage = "http://freedesktop.org/software/pulseaudio/paprefs/";
 
     license = licenses.gpl2Plus;
 
diff --git a/pkgs/applications/audio/parlatype/default.nix b/pkgs/applications/audio/parlatype/default.nix
index fb5fe47f4f2d..e4728b9b9c45 100644
--- a/pkgs/applications/audio/parlatype/default.nix
+++ b/pkgs/applications/audio/parlatype/default.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation rec {
   pname = "parlatype";
-  version = "1.6.2";
+  version = "2.0";
 
   src = fetchFromGitHub {
     owner  = "gkarsay";
     repo   = pname;
     rev    = "v${version}";
-    sha256 = "157423f40l8nd5da6y0qjmg4l3125zailp98w2hda3mxxn1j5ix3";
+    sha256 = "026i19vkdq35rldbjp1wglamr22a1330iv736mmgbd8fs7vz22nx";
   };
 
   nativeBuildInputs = [
@@ -61,7 +61,7 @@ stdenv.mkDerivation rec {
       It plays audio sources to transcribe them in your favourite text application.
       It’s intended to be useful for journalists, students, scientists and whoever needs to transcribe audio files.
     '';
-    homepage = https://gkarsay.github.io/parlatype/;
+    homepage = "https://gkarsay.github.io/parlatype/";
     license = licenses.gpl3Plus;
     maintainers = [ maintainers.melchips ];
     platforms = platforms.linux;
diff --git a/pkgs/applications/audio/patchage/default.nix b/pkgs/applications/audio/patchage/default.nix
index e7c4cab9af18..ac679d6dd949 100644
--- a/pkgs/applications/audio/patchage/default.nix
+++ b/pkgs/applications/audio/patchage/default.nix
@@ -6,7 +6,7 @@ stdenv.mkDerivation {
   pname = "patchage";
   version = "1.0.1";
   src = fetchsvn {
-    url = http://svn.drobilla.net/lad/trunk/patchage/;
+    url = "http://svn.drobilla.net/lad/trunk/patchage/";
     rev = "5821";
     sha256 = "1ar64l0sg468qzxj7i6ppgfqjpm92awcp5lzskamrf3ln17lrgj7";
   };
@@ -18,7 +18,7 @@ stdenv.mkDerivation {
 
   meta = {
     description = "Modular patch bay for Jack and ALSA systems";
-    homepage = http://non.tuxfamily.org;
+    homepage = "http://non.tuxfamily.org";
     license = stdenv.lib.licenses.lgpl3;
     platforms = stdenv.lib.platforms.linux;
     maintainers = [ stdenv.lib.maintainers.nico202 ];
diff --git a/pkgs/applications/audio/paulstretch/default.nix b/pkgs/applications/audio/paulstretch/default.nix
index b9a3f39affb1..f6cee7672f7c 100644
--- a/pkgs/applications/audio/paulstretch/default.nix
+++ b/pkgs/applications/audio/paulstretch/default.nix
@@ -52,7 +52,7 @@ stdenv.mkDerivation {
       special effects by "spectral smoothing" the sounds.
       It can transform any sound/music to a texture.
     '';
-    homepage = http://hypermammut.sourceforge.net/paulstretch/;
+    homepage = "http://hypermammut.sourceforge.net/paulstretch/";
     platforms = platforms.linux;
     license = licenses.gpl2;
   };
diff --git a/pkgs/applications/audio/pavucontrol/default.nix b/pkgs/applications/audio/pavucontrol/default.nix
index d07cf8a476b5..301e44168d39 100644
--- a/pkgs/applications/audio/pavucontrol/default.nix
+++ b/pkgs/applications/audio/pavucontrol/default.nix
@@ -26,7 +26,7 @@ stdenv.mkDerivation rec {
       easily control the volume of all clients, sinks, etc.
     '';
 
-    homepage = http://freedesktop.org/software/pulseaudio/pavucontrol/;
+    homepage = "http://freedesktop.org/software/pulseaudio/pavucontrol/";
 
     license = stdenv.lib.licenses.gpl2Plus;
 
diff --git a/pkgs/applications/audio/pd-plugins/cyclone/default.nix b/pkgs/applications/audio/pd-plugins/cyclone/default.nix
index 6440f6e787ff..56f1ec518de0 100644
--- a/pkgs/applications/audio/pd-plugins/cyclone/default.nix
+++ b/pkgs/applications/audio/pd-plugins/cyclone/default.nix
@@ -25,7 +25,7 @@ stdenv.mkDerivation rec {
 
   meta = {
     description = "A library of PureData classes, bringing some level of compatibility between Max/MSP and Pd environments";
-    homepage = http://puredata.info/downloads/cyclone;
+    homepage = "http://puredata.info/downloads/cyclone";
     license = stdenv.lib.licenses.tcltk;
     maintainers = [ stdenv.lib.maintainers.magnetophon ];
     platforms = stdenv.lib.platforms.linux;
diff --git a/pkgs/applications/audio/pd-plugins/helmholtz/default.nix b/pkgs/applications/audio/pd-plugins/helmholtz/default.nix
index 6c7a4b03ef59..be5a385d3088 100644
--- a/pkgs/applications/audio/pd-plugins/helmholtz/default.nix
+++ b/pkgs/applications/audio/pd-plugins/helmholtz/default.nix
@@ -38,7 +38,7 @@ stdenv.mkDerivation {
 
   meta = {
     description = "Time domain pitch tracker for Pure Data";
-    homepage = http://www.katjaas.nl/helmholtz/helmholtz.html;
+    homepage = "http://www.katjaas.nl/helmholtz/helmholtz.html";
     license = stdenv.lib.licenses.bsd3;
     maintainers = [ stdenv.lib.maintainers.magnetophon ];
     platforms = stdenv.lib.platforms.linux;
diff --git a/pkgs/applications/audio/pd-plugins/maxlib/default.nix b/pkgs/applications/audio/pd-plugins/maxlib/default.nix
index 21ba375200bc..aec793c4ee8a 100644
--- a/pkgs/applications/audio/pd-plugins/maxlib/default.nix
+++ b/pkgs/applications/audio/pd-plugins/maxlib/default.nix
@@ -25,7 +25,7 @@ stdenv.mkDerivation rec {
 
   meta = {
     description = "A library of non-tilde externals for puredata, by Miller Puckette";
-    homepage = http://puredata.info/downloads/maxlib;
+    homepage = "http://puredata.info/downloads/maxlib";
     license = stdenv.lib.licenses.gpl2;
     maintainers = [ stdenv.lib.maintainers.magnetophon ];
     platforms = stdenv.lib.platforms.linux;
diff --git a/pkgs/applications/audio/pd-plugins/mrpeach/default.nix b/pkgs/applications/audio/pd-plugins/mrpeach/default.nix
index 028a4667cb2d..cefee430ad5f 100644
--- a/pkgs/applications/audio/pd-plugins/mrpeach/default.nix
+++ b/pkgs/applications/audio/pd-plugins/mrpeach/default.nix
@@ -54,7 +54,7 @@ stdenv.mkDerivation {
 
   meta = {
     description = "A collection of Pd objectclasses for OSC-messages";
-    homepage = http://puredata.info/downloads/osc;
+    homepage = "http://puredata.info/downloads/osc";
     license = stdenv.lib.licenses.gpl2;
     maintainers = [ stdenv.lib.maintainers.magnetophon ];
     platforms = stdenv.lib.platforms.linux;
diff --git a/pkgs/applications/audio/pd-plugins/puremapping/default.nix b/pkgs/applications/audio/pd-plugins/puremapping/default.nix
index c214d3fcf405..7a5014664d55 100644
--- a/pkgs/applications/audio/pd-plugins/puremapping/default.nix
+++ b/pkgs/applications/audio/pd-plugins/puremapping/default.nix
@@ -23,7 +23,7 @@ stdenv.mkDerivation rec {
 
   meta = {
     description = "Set of externals to facilitate the use of sensors within Pure Data and to create complex relations between input and output of a dynamic system";
-    homepage = http://www.chnry.net/ch/?090-Pure-Mapping&lang=en;
+    homepage = "http://www.chnry.net/ch/?090-Pure-Mapping&lang=en";
     license = stdenv.lib.licenses.gpl1;
     maintainers = [ stdenv.lib.maintainers.magnetophon ];
     platforms = stdenv.lib.platforms.linux;
diff --git a/pkgs/applications/audio/pd-plugins/timbreid/default.nix b/pkgs/applications/audio/pd-plugins/timbreid/default.nix
index fa9660fbbf61..e68610a02269 100644
--- a/pkgs/applications/audio/pd-plugins/timbreid/default.nix
+++ b/pkgs/applications/audio/pd-plugins/timbreid/default.nix
@@ -37,7 +37,7 @@ stdenv.mkDerivation rec {
 
   meta = {
     description = "A collection of audio feature analysis externals for puredata";
-    homepage = http://williambrent.conflations.com/pages/research.html;
+    homepage = "http://williambrent.conflations.com/pages/research.html";
     license = stdenv.lib.licenses.gpl3;
     maintainers = [ stdenv.lib.maintainers.magnetophon ];
     platforms = stdenv.lib.platforms.linux;
diff --git a/pkgs/applications/audio/pd-plugins/zexy/default.nix b/pkgs/applications/audio/pd-plugins/zexy/default.nix
index cc307417c061..4f8269081362 100644
--- a/pkgs/applications/audio/pd-plugins/zexy/default.nix
+++ b/pkgs/applications/audio/pd-plugins/zexy/default.nix
@@ -28,7 +28,7 @@ stdenv.mkDerivation rec {
 
   meta = {
     description = "The swiss army knife for puredata";
-    homepage = http://puredata.info/downloads/zexy;
+    homepage = "http://puredata.info/downloads/zexy";
     license = stdenv.lib.licenses.gpl2;
     maintainers = [ stdenv.lib.maintainers.magnetophon ];
     platforms = stdenv.lib.platforms.linux;
diff --git a/pkgs/applications/audio/petrifoo/default.nix b/pkgs/applications/audio/petrifoo/default.nix
index 8bbeffb1f7a3..322eba2b9521 100644
--- a/pkgs/applications/audio/petrifoo/default.nix
+++ b/pkgs/applications/audio/petrifoo/default.nix
@@ -19,7 +19,7 @@ stdenv.mkDerivation  rec {
   meta = with stdenv.lib; {
     description = "MIDI controllable audio sampler";
     longDescription = "a fork of Specimen";
-    homepage = http://petri-foo.sourceforge.net;
+    homepage = "http://petri-foo.sourceforge.net";
     license = licenses.gpl2Plus;
     platforms = platforms.linux;
     maintainers = [ maintainers.goibhniu ];
diff --git a/pkgs/applications/audio/pianobar/default.nix b/pkgs/applications/audio/pianobar/default.nix
index 811952f845ff..28173d34b78d 100644
--- a/pkgs/applications/audio/pianobar/default.nix
+++ b/pkgs/applications/audio/pianobar/default.nix
@@ -1,11 +1,11 @@
 { fetchurl, stdenv, pkgconfig, libao, json_c, libgcrypt, ffmpeg, curl }:
 
 stdenv.mkDerivation rec {
-  name = "pianobar-2019.02.14";
+  name = "pianobar-2020.04.05";
 
   src = fetchurl {
     url = "http://6xq.net/projects/pianobar/${name}.tar.bz2";
-    sha256 = "07z21vmlqpmvb3294r384iqbx972rwcx6chrdlkfv4hlnc9h7gf0";
+    sha256 = "1034f9ilj9xjw12d6n4vadhl5jzrx0jv8gq1w0rg9hfc55mkn5vc";
   };
 
   nativeBuildInputs = [ pkgconfig ];
diff --git a/pkgs/applications/audio/pianobooster/default.nix b/pkgs/applications/audio/pianobooster/default.nix
index f2130fe55590..4832fce1e962 100644
--- a/pkgs/applications/audio/pianobooster/default.nix
+++ b/pkgs/applications/audio/pianobooster/default.nix
@@ -1,35 +1,31 @@
-{ stdenv, fetchurl, alsaLib, cmake, libGLU, libGL, makeWrapper, qt4 }:
+{ stdenv, fetchFromGitHub, cmake, pkg-config, qttools
+, alsaLib, ftgl, libGLU, libjack2, qtbase, rtmidi
+}:
 
-stdenv.mkDerivation  {
+stdenv.mkDerivation rec {
   pname = "pianobooster";
-  version = "0.6.4b";
+  version = "0.7.2b";
 
-  src = fetchurl {
-    url = "mirror://sourceforge/pianobooster/pianobooster-src-0.6.4b.tar.gz";
-    sha256 = "1xwyap0288xcl0ihjv52vv4ijsjl0yq67scc509aia4plmlm6l35";
+  src = fetchFromGitHub {
+    owner = "captnfab";
+    repo = "PianoBooster";
+    rev = "v${version}";
+    sha256 = "03xcdnlpsij22ca3i6xj19yqzn3q2ch0d32r73v0c96nm04gvhjj";
   };
 
-  patches = [
-    ./pianobooster-0.6.4b-cmake.patch
-    ./pianobooster-0.6.4b-cmake-gcc4.7.patch
-  ];
-
-  preConfigure = "cd src";
+  nativeBuildInputs = [ cmake pkg-config qttools ];
 
-  buildInputs = [ alsaLib cmake makeWrapper libGLU libGL qt4 ];
-  NIX_LDFLAGS = "-lGL -lpthread";
+  buildInputs = [ alsaLib ftgl libGLU libjack2 qtbase rtmidi ];
 
-  postInstall = ''
-    wrapProgram $out/bin/pianobooster \
-      --prefix LD_LIBRARY_PATH : ${libGL}/lib \
-      --prefix LD_LIBRARY_PATH : ${libGLU}/lib
-  '';
+  cmakeFlags = [
+    "-DOpenGL_GL_PREFERENCE=GLVND"
+  ];
 
   meta = with stdenv.lib; {
     description = "A MIDI file player that teaches you how to play the piano";
-    homepage = http://pianobooster.sourceforge.net;
-    license = licenses.gpl3;
+    homepage = "https://github.com/captnfab/PianoBooster";
+    license = licenses.gpl3Plus;
     platforms = platforms.linux;
-    maintainers = [ maintainers.goibhniu ];
+    maintainers = with maintainers; [ goibhniu orivej ];
   };
 }
diff --git a/pkgs/applications/audio/pianobooster/pianobooster-0.6.4b-cmake-gcc4.7.patch b/pkgs/applications/audio/pianobooster/pianobooster-0.6.4b-cmake-gcc4.7.patch
deleted file mode 100644
index 2b1b28c5a849..000000000000
--- a/pkgs/applications/audio/pianobooster/pianobooster-0.6.4b-cmake-gcc4.7.patch
+++ /dev/null
@@ -1,11 +0,0 @@
---- pianobooster-src-0.6.4b/src/CMakeLists.txt.orig	2013-04-06 10:48:02.469532914 -0700
-+++ pianobooster-src-0.6.4b/src/CMakeLists.txt	2013-04-06 10:48:12.989532445 -0700
-@@ -203,8 +203,6 @@
-         ${PIANOBOOSTER_UI_HDRS} )

- ENDIF(WIN32)

- 

--SET_TARGET_PROPERTIES(pianobooster PROPERTIES LINK_FLAGS "-mwindows")

--

- IF (USE_PCH)

- ADD_PRECOMPILED_HEADER( pianobooster ${CMAKE_CURRENT_SOURCE_DIR}/precompile/precompile.h )

- ENDIF (USE_PCH)

diff --git a/pkgs/applications/audio/pianobooster/pianobooster-0.6.4b-cmake.patch b/pkgs/applications/audio/pianobooster/pianobooster-0.6.4b-cmake.patch
deleted file mode 100644
index 8cdd8738e2b3..000000000000
--- a/pkgs/applications/audio/pianobooster/pianobooster-0.6.4b-cmake.patch
+++ /dev/null
@@ -1,44 +0,0 @@
---- pianobooster-src-0.6.4b/src/CMakeLists.txt.orig
-+++ pianobooster-src-0.6.4b/src/CMakeLists.txt
-@@ -2,12 +2,6 @@
- # for the debug build type cmake -DCMAKE_BUILD_TYPE=Debug

- SET(CMAKE_BUILD_TYPE Release)

- SET(CMAKE_VERBOSE_MAKEFILE OFF)

--SET(USE_FLUIDSYNTH OFF)

--

--# The inplace directory is mainly for windows builds

--# SET(FLUIDSYNTH_INPLACE_DIR C:/download/misc/ljb/fluidsynth-1.0.9)

--SET(FLUIDSYNTH_INPLACE_DIR /home/louis/build/fluidsynth-1.0.9)

--

- 

- # Testing precompiled headers  it does not work -- leave as OFF.

- SET(USE_PCH OFF)

-@@ -78,18 +72,7 @@
-     ADD_DEFINITIONS(-DPB_USE_FLUIDSYNTH)

-     MESSAGE("Building using fluidsynth")

-     SET( PB_BASE_SRCS MidiDeviceFluidSynth.cpp )

--

--    IF(FLUIDSYNTH_INPLACE_DIR)

--        INCLUDE_DIRECTORIES(${FLUIDSYNTH_INPLACE_DIR}/include/)

--        IF(WIN32)

--            LINK_LIBRARIES( ${FLUIDSYNTH_INPLACE_DIR}/src/.libs/libfluidsynth.dll.a)

--        ENDIF(WIN32)

--        IF(UNIX)

--            LINK_LIBRARIES(${FLUIDSYNTH_INPLACE_DIR}/src/.libs/libfluidsynth.so)

--        ENDIF(UNIX)

--    ELSEIF(FLUIDSYNTH_INPLACE_DIR)

--        LINK_LIBRARIES( fluidsynth)

--    ENDIF(FLUIDSYNTH_INPLACE_DIR)

-+	LINK_LIBRARIES(fluidsynth)

- ENDIF(USE_FLUIDSYNTH)

- 

- 

-@@ -214,8 +197,6 @@
- INSTALL(TARGETS pianobooster RUNTIME DESTINATION bin)

- #INSTALL( index.docbook INSTALL_DESTINATION ${HTML_INSTALL_DIR}/en  SUBDIR kmidimon )

- 

--INSTALL( FILES ../README.txt  DESTINATION share/doc/pianobooster )

--

- INSTALL ( FILES images/pianobooster.png DESTINATION share/pixmaps )

- 

- 

diff --git a/pkgs/applications/audio/picard/default.nix b/pkgs/applications/audio/picard/default.nix
index b241f750d036..5830e1eefb88 100644
--- a/pkgs/applications/audio/picard/default.nix
+++ b/pkgs/applications/audio/picard/default.nix
@@ -1,7 +1,15 @@
-{ stdenv, python3Packages, fetchFromGitHub, gettext, chromaprint, qt5 }:
+{ stdenv, python3Packages, fetchFromGitHub, gettext, chromaprint, qt5
+, enablePlayback ? true
+, gst_all_1
+}:
 
 let
   pythonPackages = python3Packages;
+  pyqt5 = if enablePlayback then
+    pythonPackages.pyqt5_with_qtmultimedia
+  else
+    pythonPackages.pyqt5
+  ;
 in pythonPackages.buildPythonApplication rec {
   pname = "picard";
   version = "2.3.1";
@@ -13,7 +21,16 @@ in pythonPackages.buildPythonApplication rec {
     sha256 = "0xalg4dvaqb396h4s6gzxnplgv1lcvsczmmrlhyrj0kfj10amhsj";
   };
 
-  nativeBuildInputs = [ gettext qt5.wrapQtAppsHook qt5.qtbase ];
+  nativeBuildInputs = [ gettext qt5.wrapQtAppsHook qt5.qtbase ]
+    ++ stdenv.lib.optionals (pyqt5.multimediaEnabled) [
+      qt5.qtmultimedia.bin
+      gst_all_1.gstreamer
+      gst_all_1.gst-vaapi
+      gst_all_1.gst-libav
+      gst_all_1.gst-plugins-base
+      gst_all_1.gst-plugins-good
+    ]
+  ;
 
   propagatedBuildInputs = with pythonPackages; [
     pyqt5
@@ -27,10 +44,14 @@ in pythonPackages.buildPythonApplication rec {
     substituteInPlace setup.cfg --replace "‘" "'"
   '';
 
-  installPhase = ''
-    python setup.py install --prefix="$out"
-    wrapQtApp $out/bin/picard
-  '';
+  # In order to spare double wrapping, we use:
+  preFixup = ''
+    makeWrapperArgs+=("''${qtWrapperArgs[@]}")
+  ''
+    + stdenv.lib.optionalString (pyqt5.multimediaEnabled) ''
+      makeWrapperArgs+=(--prefix GST_PLUGIN_SYSTEM_PATH_1_0 : "$GST_PLUGIN_SYSTEM_PATH_1_0")
+    ''
+  ;
 
   meta = with stdenv.lib; {
     homepage = "https://picard.musicbrainz.org/";
diff --git a/pkgs/applications/audio/pithos/default.nix b/pkgs/applications/audio/pithos/default.nix
index 20a6e928cefb..6c3ffebc8c95 100644
--- a/pkgs/applications/audio/pithos/default.nix
+++ b/pkgs/applications/audio/pithos/default.nix
@@ -29,7 +29,7 @@ pythonPackages.buildPythonApplication rec {
 
   meta = with stdenv.lib; {
     description = "Pandora Internet Radio player for GNOME";
-    homepage = https://pithos.github.io/;
+    homepage = "https://pithos.github.io/";
     license = licenses.gpl3;
     maintainers = with maintainers; [ obadz ];
   };
diff --git a/pkgs/applications/audio/playbar2/default.nix b/pkgs/applications/audio/playbar2/default.nix
index 8c21dc8f2ad7..15385e91927c 100644
--- a/pkgs/applications/audio/playbar2/default.nix
+++ b/pkgs/applications/audio/playbar2/default.nix
@@ -29,7 +29,7 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "Mpris2 Client for Plasma5";
-    homepage = https://github.com/audoban/PlayBar2;
+    homepage = "https://github.com/audoban/PlayBar2";
     license = licenses.gpl3;
     platforms = platforms.linux;
     maintainers = with maintainers; [ pjones ];
diff --git a/pkgs/applications/audio/plugin-torture/default.nix b/pkgs/applications/audio/plugin-torture/default.nix
index f444ad6cb323..3c852cf450e9 100644
--- a/pkgs/applications/audio/plugin-torture/default.nix
+++ b/pkgs/applications/audio/plugin-torture/default.nix
@@ -21,7 +21,7 @@ stdenv.mkDerivation {
   '';
 
   meta = with stdenv.lib; {
-    homepage = https://github.com/cth103/plugin-torture;
+    homepage = "https://github.com/cth103/plugin-torture";
     description = "A tool to test LADSPA and LV2 plugins";
     license = licenses.gpl2;
     maintainers = [ maintainers.magnetophon ];
diff --git a/pkgs/applications/audio/pmidi/default.nix b/pkgs/applications/audio/pmidi/default.nix
index f9b3fbae2137..0da86ca9bd1a 100644
--- a/pkgs/applications/audio/pmidi/default.nix
+++ b/pkgs/applications/audio/pmidi/default.nix
@@ -14,7 +14,7 @@ stdenv.mkDerivation {
   buildInputs = [ alsaLib ];
 
   meta = with stdenv.lib; {
-    homepage = http://www.parabola.me.uk/alsa/pmidi.html;
+    homepage = "http://www.parabola.me.uk/alsa/pmidi.html";
     description = "A straightforward command line program to play midi files through the ALSA sequencer";
     maintainers = with maintainers; [ lheckemann ];
     license = licenses.gpl2;
diff --git a/pkgs/applications/audio/polyphone/default.nix b/pkgs/applications/audio/polyphone/default.nix
new file mode 100644
index 000000000000..270d51840d78
--- /dev/null
+++ b/pkgs/applications/audio/polyphone/default.nix
@@ -0,0 +1,49 @@
+{ stdenv, mkDerivation, fetchFromGitHub, qmake, pkgconfig, alsaLib, libjack2, portaudio, libogg, flac, libvorbis, rtmidi, qtsvg }:
+
+mkDerivation rec {
+  version = "2.2.0";
+  pname = "polyphone";
+
+  src = fetchFromGitHub {
+    owner = "davy7125";
+    repo = "polyphone";
+    rev = version;
+    sha256 = "0w5pidzhpwpggjn5la384fvjzkvprvrnidb06068whci11kgpbp7";
+  };
+
+  buildInputs = [
+    alsaLib
+    libjack2
+    portaudio
+    libogg
+    flac
+    libvorbis
+    rtmidi
+    qtsvg
+  ];
+
+  nativeBuildInputs = [ qmake pkgconfig ];
+
+  preConfigure = ''
+    cd ./sources/
+  '';
+
+  installPhase = ''
+    install -d $out/bin
+    install -m755 bin/polyphone $out/bin/
+  '';
+
+  qmakeFlags = [
+    "DEFINES+=USE_LOCAL_STK"
+    "DEFINES+=USE_LOCAL_QCUSTOMPLOT"
+    "INCLUDEPATH+=${libjack2}/include/jack"
+  ];
+
+  meta = with stdenv.lib; {
+    description = "A soundfont editor for creating musical instruments";
+    homepage = "https://www.polyphone-soundfonts.com/";
+    license = licenses.gpl3;
+    maintainers = [ maintainers.maxdamantus ];
+    platforms = platforms.linux;
+  };
+}
diff --git a/pkgs/applications/audio/ponymix/default.nix b/pkgs/applications/audio/ponymix/default.nix
index 6d168ec56618..6c289a97384f 100644
--- a/pkgs/applications/audio/ponymix/default.nix
+++ b/pkgs/applications/audio/ponymix/default.nix
@@ -18,7 +18,7 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "CLI PulseAudio Volume Control";
-    homepage = https://github.com/falconindy/ponymix;
+    homepage = "https://github.com/falconindy/ponymix";
     license = licenses.mit;
     platforms = platforms.linux;
     maintainers = with maintainers; [ ericsagnes ];
diff --git a/pkgs/applications/audio/praat/default.nix b/pkgs/applications/audio/praat/default.nix
index 9414f4211d7a..2fb8e30a64d8 100644
--- a/pkgs/applications/audio/praat/default.nix
+++ b/pkgs/applications/audio/praat/default.nix
@@ -23,7 +23,7 @@ stdenv.mkDerivation rec {
 
   meta = {
     description = "Doing phonetics by computer";
-    homepage = http://www.fon.hum.uva.nl/praat/;
+    homepage = "http://www.fon.hum.uva.nl/praat/";
     license = stdenv.lib.licenses.gpl2Plus; # Has some 3rd-party code in it though
     platforms = stdenv.lib.platforms.linux;
   };
diff --git a/pkgs/applications/audio/projectm/default.nix b/pkgs/applications/audio/projectm/default.nix
index 347774010ae1..205a3ad287e9 100644
--- a/pkgs/applications/audio/projectm/default.nix
+++ b/pkgs/applications/audio/projectm/default.nix
@@ -14,7 +14,7 @@ stdenv.mkDerivation {
 
   meta = {
     description = "Music Visualizer";
-    homepage = http://projectm.sourceforge.net/;
+    homepage = "http://projectm.sourceforge.net/";
     license = stdenv.lib.licenses.lgpl21Plus;
     platforms = stdenv.lib.platforms.linux;
   };
@@ -25,7 +25,7 @@ stdenv.mkDerivation {
   };
 
   patch_gcc6 = fetchpatch {
-    url = https://raw.githubusercontent.com/gentoo/gentoo/45abd63abc6644b6e177c057b5b42d894dbf8e29/media-libs/libprojectm/files/libprojectm-2.1.0-fix-c++14.patch;
+    url = "https://raw.githubusercontent.com/gentoo/gentoo/45abd63abc6644b6e177c057b5b42d894dbf8e29/media-libs/libprojectm/files/libprojectm-2.1.0-fix-c++14.patch";
     sha256 = "1i50scxv1jlqvb3jm3sql89a7wqckxhlpvnhz20vvmm1kii6lrsn";
   };
 
diff --git a/pkgs/applications/audio/pt2-clone/default.nix b/pkgs/applications/audio/pt2-clone/default.nix
new file mode 100644
index 000000000000..5284c8af6824
--- /dev/null
+++ b/pkgs/applications/audio/pt2-clone/default.nix
@@ -0,0 +1,30 @@
+{ stdenv
+, fetchFromGitHub
+, cmake
+, alsaLib
+, SDL2
+}:
+
+stdenv.mkDerivation rec {
+  pname = "pt2-clone";
+  version = "1.12";
+
+  src = fetchFromGitHub {
+    owner = "8bitbubsy";
+    repo = "pt2-clone";
+    rev = "v${version}";
+    sha256 = "1y7kv889rm3nvaigcda4bglvwm799f3gp0zrivkvrg1lrlygs89f";
+  };
+
+  nativeBuildInputs = [ cmake ];
+  buildInputs = [ SDL2 ] ++ stdenv.lib.optional stdenv.isLinux alsaLib;
+
+  meta = with stdenv.lib; {
+    description = "A highly accurate clone of the classic ProTracker 2.3D software for Amiga";
+    homepage = "https://16-bits.org/pt2.php";
+    license = licenses.bsd3;
+    maintainers = with maintainers; [ fgaz ];
+    platforms = platforms.all;
+  };
+}
+
diff --git a/pkgs/applications/audio/puddletag/default.nix b/pkgs/applications/audio/puddletag/default.nix
index 3a6cd298557f..a0813fa0c801 100644
--- a/pkgs/applications/audio/puddletag/default.nix
+++ b/pkgs/applications/audio/puddletag/default.nix
@@ -29,7 +29,7 @@ python2Packages.buildPythonApplication rec {
 
   meta = with stdenv.lib; {
     description = "An audio tag editor similar to the Windows program, Mp3tag";
-    homepage    = https://docs.puddletag.net;
+    homepage    = "https://docs.puddletag.net";
     license     = licenses.gpl3;
     maintainers = with maintainers; [ peterhoeg ];
     platforms   = platforms.linux;
diff --git a/pkgs/applications/audio/pulseaudio-ctl/default.nix b/pkgs/applications/audio/pulseaudio-ctl/default.nix
index 6b7d242e1f6d..125dafc132e0 100644
--- a/pkgs/applications/audio/pulseaudio-ctl/default.nix
+++ b/pkgs/applications/audio/pulseaudio-ctl/default.nix
@@ -33,7 +33,7 @@ in stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "Control pulseaudio volume from the shell or mapped to keyboard shortcuts. No need for alsa-utils.";
-    homepage = https://bbs.archlinux.org/viewtopic.php?id=124513;
+    homepage = "https://bbs.archlinux.org/viewtopic.php?id=124513";
     license = licenses.mit;
     maintainers = with maintainers; [ peterhoeg ];
     platforms = platforms.linux;
diff --git a/pkgs/applications/audio/pulseaudio-dlna/zeroconf.nix b/pkgs/applications/audio/pulseaudio-dlna/zeroconf.nix
index 328bd8b0b041..efe39aa1600e 100644
--- a/pkgs/applications/audio/pulseaudio-dlna/zeroconf.nix
+++ b/pkgs/applications/audio/pulseaudio-dlna/zeroconf.nix
@@ -23,7 +23,7 @@ buildPythonPackage rec {
 
   meta = with stdenv.lib; {
     description = "A pure python implementation of multicast DNS service discovery";
-    homepage = https://github.com/jstasiak/python-zeroconf;
+    homepage = "https://github.com/jstasiak/python-zeroconf";
     license = licenses.lgpl21;
     maintainers = [ ];
   };
diff --git a/pkgs/applications/audio/pulseaudio-modules-bt/default.nix b/pkgs/applications/audio/pulseaudio-modules-bt/default.nix
index b8082c12c644..2511cf0f20a5 100644
--- a/pkgs/applications/audio/pulseaudio-modules-bt/default.nix
+++ b/pkgs/applications/audio/pulseaudio-modules-bt/default.nix
@@ -75,7 +75,7 @@ in stdenv.mkDerivation rec {
   '';
 
   meta = with stdenv.lib; {
-    homepage = https://github.com/EHfive/pulseaudio-modules-bt;
+    homepage = "https://github.com/EHfive/pulseaudio-modules-bt";
     description = "LDAC, aptX, aptX HD, AAC codecs (A2DP Audio) support for Linux PulseAudio";
     platforms = platforms.linux;
     license = licenses.mit;
diff --git a/pkgs/applications/audio/pulseeffects/default.nix b/pkgs/applications/audio/pulseeffects/default.nix
index 00c5af4422df..eaedcb426b81 100644
--- a/pkgs/applications/audio/pulseeffects/default.nix
+++ b/pkgs/applications/audio/pulseeffects/default.nix
@@ -46,13 +46,13 @@ let
   ];
 in stdenv.mkDerivation rec {
   pname = "pulseeffects";
-  version = "4.7.1";
+  version = "4.7.2";
 
   src = fetchFromGitHub {
     owner = "wwmm";
     repo = "pulseeffects";
     rev = "v${version}";
-    sha256 = "1r1hk5zp2cgrwyqkvp8kg2dkbihdyx3ydzhmirkwya8jag9pwadd";
+    sha256 = "1yga25da5bpg12zkikp6dn4wqhn9f7r10awvjzfcz8s6w9xlz6rx";
   };
 
   nativeBuildInputs = [
@@ -99,9 +99,14 @@ in stdenv.mkDerivation rec {
     )
   '';
 
+  # Meson is no longer able to pick up Boost automatically.
+  # https://github.com/NixOS/nixpkgs/issues/86131
+  BOOST_INCLUDEDIR = "${stdenv.lib.getDev boost}/include";
+  BOOST_LIBRARYDIR = "${stdenv.lib.getLib boost}/lib";
+
   meta = with stdenv.lib; {
     description = "Limiter, compressor, reverberation, equalizer and auto volume effects for Pulseaudio applications";
-    homepage = https://github.com/wwmm/pulseeffects;
+    homepage = "https://github.com/wwmm/pulseeffects";
     license = licenses.gpl3;
     maintainers = with maintainers; [ jtojnar ];
     platforms = platforms.linux;
diff --git a/pkgs/applications/audio/puredata/default.nix b/pkgs/applications/audio/puredata/default.nix
index 5886a465409a..4b221cd1a76b 100644
--- a/pkgs/applications/audio/puredata/default.nix
+++ b/pkgs/applications/audio/puredata/default.nix
@@ -4,11 +4,11 @@
 
 stdenv.mkDerivation  rec {
   pname = "puredata";
-  version = "0.49-0";
+  version = "0.50-2";
 
   src = fetchurl {
     url = "http://msp.ucsd.edu/Software/pd-${version}.src.tar.gz";
-    sha256 = "18rzqbpgnnvyslap7k0ly87aw1bbxkb0rk5agpr423ibs9slxq6j";
+    sha256 = "0dz6r6jy0zfs1xy1xspnrxxks8kddi9c7pxz4vpg2ygwv83ghpg5";
   };
 
   nativeBuildInputs = [ autoreconfHook gettext makeWrapper ];
@@ -30,7 +30,7 @@ stdenv.mkDerivation  rec {
   meta = with stdenv.lib; {
     description = ''A real-time graphical programming environment for
                     audio, video, and graphical processing'';
-    homepage = http://puredata.info;
+    homepage = "http://puredata.info";
     license = licenses.bsd3;
     platforms = platforms.linux;
     maintainers = [ maintainers.goibhniu ];
diff --git a/pkgs/applications/audio/qjackctl/default.nix b/pkgs/applications/audio/qjackctl/default.nix
index 753f6fe8206e..87666940c151 100644
--- a/pkgs/applications/audio/qjackctl/default.nix
+++ b/pkgs/applications/audio/qjackctl/default.nix
@@ -1,14 +1,14 @@
 { stdenv, mkDerivation, fetchurl, pkgconfig, alsaLib, libjack2, dbus, qtbase, qttools, qtx11extras }:
 
 mkDerivation rec {
-  version = "0.6.1";
+  version = "0.6.2";
   pname = "qjackctl";
 
   # some dependencies such as killall have to be installed additionally
 
   src = fetchurl {
     url = "mirror://sourceforge/qjackctl/${pname}-${version}.tar.gz";
-    sha256 = "09y0s43ypcghnvzsz89mi1qs5bsvn4hpb98lqxmwwsy0ikcv3hny";
+    sha256 = "1rjhdyp0wzhlqr4cn80rh1qhby998cpqv81j1bbb9hfsiq77viqy";
   };
 
   buildInputs = [
@@ -26,7 +26,7 @@ mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "A Qt application to control the JACK sound server daemon";
-    homepage = http://qjackctl.sourceforge.net/;
+    homepage = "http://qjackctl.sourceforge.net/";
     license = licenses.gpl2Plus;
     maintainers = [ maintainers.goibhniu ];
     platforms = platforms.linux;
diff --git a/pkgs/applications/audio/qmidiarp/default.nix b/pkgs/applications/audio/qmidiarp/default.nix
new file mode 100644
index 000000000000..4bbfe79a2c9f
--- /dev/null
+++ b/pkgs/applications/audio/qmidiarp/default.nix
@@ -0,0 +1,49 @@
+{ stdenv
+, fetchgit
+, automake
+, autoreconfHook
+, lv2
+, pkg-config
+, qt5
+, alsaLib
+, libjack2
+}:
+
+stdenv.mkDerivation rec {
+  name = "qmidiarp";
+  version = "0.6.5";
+
+  src = fetchgit {
+    url = "https://git.code.sf.net/p/qmidiarp/code";
+    sha256 = "1g2143gzfbihqr2zi3k2v1yn1x3mwfbb2khmcd4m4cq3hcwhhlx9";
+    rev = "qmidiarp-0.6.5";
+  };
+
+  nativeBuildInputs = [
+    autoreconfHook
+    pkg-config
+    qt5.wrapQtAppsHook
+  ];
+
+  buildInputs = [
+    alsaLib
+    lv2
+    libjack2
+  ] ++ (with qt5; [
+    qttools
+  ]);
+
+  meta = with stdenv.lib; {
+    description = "An advanced MIDI arpeggiator";
+    longDescription = ''
+      An advanced MIDI arpeggiator, programmable step sequencer and LFO for Linux.
+      It can hold any number of arpeggiator, sequencer, or LFO modules running in
+      parallel.
+    '';
+
+    homepage = "http://qmidiarp.sourceforge.net";
+    license = licenses.gpl2;
+    platforms = platforms.linux;
+    maintainers = with maintainers; [ sjfloat ];
+  };
+}
diff --git a/pkgs/applications/audio/qmidinet/default.nix b/pkgs/applications/audio/qmidinet/default.nix
index 2b79818543f8..479a8a2bb04f 100644
--- a/pkgs/applications/audio/qmidinet/default.nix
+++ b/pkgs/applications/audio/qmidinet/default.nix
@@ -1,12 +1,12 @@
 { mkDerivation, lib, fetchurl, pkgconfig, qtbase, qttools, alsaLib, libjack2 }:
 
 mkDerivation rec {
-  version = "0.6.1";
+  version = "0.6.2";
   pname = "qmidinet";
 
   src = fetchurl {
     url = "mirror://sourceforge/qmidinet/${pname}-${version}.tar.gz";
-    sha256 = "1nvbvx3wg2s6s7r4x6m2pm9nx7pdz00ghw9h10wfqi2s474mwip0";
+    sha256 = "0siqzyhwg3l9av7jbca3bqdww7xspjlpi9ya4mkj211xc3a3a1d6";
   };
 
   hardeningDisable = [ "format" ];
@@ -17,7 +17,7 @@ mkDerivation rec {
 
   meta = with lib; {
     description = "A MIDI network gateway application that sends and receives MIDI data (ALSA Sequencer and/or JACK MIDI) over the network";
-    homepage = http://qmidinet.sourceforge.net/;
+    homepage = "http://qmidinet.sourceforge.net/";
     license = licenses.gpl2Plus;
     maintainers = [ maintainers.magnetophon ];
     platforms = platforms.linux;
diff --git a/pkgs/applications/audio/qmmp/default.nix b/pkgs/applications/audio/qmmp/default.nix
index a941ea485b79..fe7b9f8ba66e 100644
--- a/pkgs/applications/audio/qmmp/default.nix
+++ b/pkgs/applications/audio/qmmp/default.nix
@@ -29,11 +29,11 @@
 # handle that.
 
 mkDerivation rec {
-  name = "qmmp-1.3.6";
+  name = "qmmp-1.3.7";
 
   src = fetchurl {
     url = "http://qmmp.ylsoftware.com/files/${name}.tar.bz2";
-    sha256 = "0dihy6v6j1cfx4qgwgajdn8rx6nf8x5srk8yjki9xh1mlcaanhp8";
+    sha256 = "13mk8p7bfl3fkavpqyhpcxkxb8a4f5d4qc1lasyf7wls3ghrdag7";
   };
 
   nativeBuildInputs = [ cmake pkgconfig ];
@@ -55,10 +55,10 @@ mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "Qt-based audio player that looks like Winamp";
-    homepage = http://qmmp.ylsoftware.com/;
+    homepage = "http://qmmp.ylsoftware.com/";
     license = licenses.gpl2;
     platforms = platforms.linux;
     maintainers = [ maintainers.bjornfor ];
-    repositories.svn = http://qmmp.googlecode.com/svn/;
+    repositories.svn = "http://qmmp.googlecode.com/svn/";
   };
 }
diff --git a/pkgs/applications/audio/qsampler/default.nix b/pkgs/applications/audio/qsampler/default.nix
index 33411002c23b..1f65b3748381 100644
--- a/pkgs/applications/audio/qsampler/default.nix
+++ b/pkgs/applications/audio/qsampler/default.nix
@@ -18,7 +18,7 @@ mkDerivation rec {
   enableParallelBuilding = true;
 
   meta = with stdenv.lib; {
-    homepage = http://www.linuxsampler.org;
+    homepage = "http://www.linuxsampler.org";
     description = "Graphical frontend to LinuxSampler";
     license = licenses.gpl2;
     maintainers = [ maintainers.goibhniu ];
diff --git a/pkgs/applications/audio/qsynth/default.nix b/pkgs/applications/audio/qsynth/default.nix
index 29f5704c7302..5da8f4cd4626 100644
--- a/pkgs/applications/audio/qsynth/default.nix
+++ b/pkgs/applications/audio/qsynth/default.nix
@@ -4,11 +4,11 @@
 
 mkDerivation  rec {
   pname = "qsynth";
-  version = "0.6.1";
+  version = "0.6.2";
 
   src = fetchurl {
     url = "mirror://sourceforge/qsynth/${pname}-${version}.tar.gz";
-    sha256 = "12jhfan81a10vbqfky5nmam3lk6d0i4654mm192v68q5r867xmcl";
+    sha256 = "0cp6vrqrj37rv3a7qfvqrg64j7zwpfj60y5b83mlkzvmg1sgjnlv";
   };
 
   nativeBuildInputs = [ autoconf pkgconfig ];
@@ -19,7 +19,7 @@ mkDerivation  rec {
 
   meta = with stdenv.lib; {
     description = "Fluidsynth GUI";
-    homepage = https://sourceforge.net/projects/qsynth;
+    homepage = "https://sourceforge.net/projects/qsynth";
     license = licenses.gpl2Plus;
     maintainers = with maintainers; [ goibhniu ];
     platforms = platforms.linux;
diff --git a/pkgs/applications/audio/qtractor/default.nix b/pkgs/applications/audio/qtractor/default.nix
index 4076692e7fe7..344927bce774 100644
--- a/pkgs/applications/audio/qtractor/default.nix
+++ b/pkgs/applications/audio/qtractor/default.nix
@@ -5,11 +5,11 @@
 
 stdenv.mkDerivation rec {
   pname = "qtractor";
-  version = "0.9.12";
+  version = "0.9.13";
 
   src = fetchurl {
     url = "mirror://sourceforge/${pname}/${pname}-${version}.tar.gz";
-    sha256 = "06493sf4hr178jkvric3rmc2phh1ph2jlyh8kl9z248amq3zfnhy";
+    sha256 = "1hwxdjlzsf1z6xl82s4bdfxa2bfisklrfx361zbzskmg9iymw1gy";
   };
 
   nativeBuildInputs = [
@@ -23,9 +23,11 @@ stdenv.mkDerivation rec {
       suil
     ];
 
+  enableParallelBuilding = true;
+
   meta = with stdenv.lib; {
     description = "Audio/MIDI multi-track sequencer";
-    homepage = http://qtractor.sourceforge.net;
+    homepage = "http://qtractor.sourceforge.net";
     license = licenses.gpl2Plus;
     platforms = platforms.linux;
     maintainers = [ maintainers.goibhniu ];
diff --git a/pkgs/applications/audio/qtscrobbler/default.nix b/pkgs/applications/audio/qtscrobbler/default.nix
index 68e8e6402acf..5b84989a7c41 100644
--- a/pkgs/applications/audio/qtscrobbler/default.nix
+++ b/pkgs/applications/audio/qtscrobbler/default.nix
@@ -26,7 +26,7 @@ stdenv.mkDerivation rec {
       It is able to gather this information from Apple iPods or DAPs running the Rockbox replacement firmware.
     '';
 
-    homepage = http://qtscrob.sourceforge.net;
+    homepage = "http://qtscrob.sourceforge.net";
     license = licenses.gpl2;
     maintainers = [ maintainers.vanzef ];
     platforms = platforms.linux;
diff --git a/pkgs/applications/audio/quodlibet/default.nix b/pkgs/applications/audio/quodlibet/default.nix
index 597cf68f4d09..704e20cc8c56 100644
--- a/pkgs/applications/audio/quodlibet/default.nix
+++ b/pkgs/applications/audio/quodlibet/default.nix
@@ -74,6 +74,6 @@ python3.pkgs.buildPythonApplication rec {
     '';
 
     maintainers = with maintainers; [ coroa sauyon ];
-    homepage = https://quodlibet.readthedocs.io/en/latest/;
+    homepage = "https://quodlibet.readthedocs.io/en/latest/";
   };
 }
diff --git a/pkgs/applications/audio/radiotray-ng/default.nix b/pkgs/applications/audio/radiotray-ng/default.nix
index a64e407b39b8..014906594a7d 100644
--- a/pkgs/applications/audio/radiotray-ng/default.nix
+++ b/pkgs/applications/audio/radiotray-ng/default.nix
@@ -92,7 +92,7 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "An internet radio player for linux";
-    homepage = https://github.com/ebruck/radiotray-ng;
+    homepage = "https://github.com/ebruck/radiotray-ng";
     license = licenses.gpl3;
     maintainers = with maintainers; [ dtzWill ];
     platforms = platforms.all;
diff --git a/pkgs/applications/audio/rakarrack/default.nix b/pkgs/applications/audio/rakarrack/default.nix
index 36302458a75b..4548f9ba624f 100644
--- a/pkgs/applications/audio/rakarrack/default.nix
+++ b/pkgs/applications/audio/rakarrack/default.nix
@@ -19,7 +19,7 @@ stdenv.mkDerivation  rec {
 
   meta = with stdenv.lib; {
     description = "Multi-effects processor emulating a guitar effects pedalboard";
-    homepage = http://rakarrack.sourceforge.net;
+    homepage = "http://rakarrack.sourceforge.net";
     license = licenses.gpl2;
     platforms = platforms.linux;
     maintainers = [ maintainers.goibhniu ];
diff --git a/pkgs/applications/audio/reaper/default.nix b/pkgs/applications/audio/reaper/default.nix
index 236c42b52930..2e63a3e8c7cd 100644
--- a/pkgs/applications/audio/reaper/default.nix
+++ b/pkgs/applications/audio/reaper/default.nix
@@ -52,7 +52,7 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "Digital audio workstation";
-    homepage = https://www.reaper.fm/;
+    homepage = "https://www.reaper.fm/";
     license = licenses.unfree;
     platforms = [ "x86_64-linux" ];
     maintainers = with maintainers; [ jfrankenau ];
diff --git a/pkgs/applications/audio/renoise/default.nix b/pkgs/applications/audio/renoise/default.nix
index 2fb1943e0e57..1cbd5b3afa28 100644
--- a/pkgs/applications/audio/renoise/default.nix
+++ b/pkgs/applications/audio/renoise/default.nix
@@ -60,7 +60,7 @@ stdenv.mkDerivation rec {
 
   meta = {
     description = "Modern tracker-based DAW";
-    homepage = https://www.renoise.com/;
+    homepage = "https://www.renoise.com/";
     license = licenses.unfree;
     maintainers = [];
     platforms = [ "x86_64-linux" ];
diff --git a/pkgs/applications/audio/rhvoice/default.nix b/pkgs/applications/audio/rhvoice/default.nix
index e3eb750496ba..7a0a8a59a084 100644
--- a/pkgs/applications/audio/rhvoice/default.nix
+++ b/pkgs/applications/audio/rhvoice/default.nix
@@ -15,7 +15,7 @@ in stdenv.mkDerivation {
   };
 
   nativeBuildInputs = [
-    scons pkgconfig
+    scons.py2 pkgconfig
   ];
 
   buildInputs = [
@@ -33,7 +33,7 @@ in stdenv.mkDerivation {
 
   meta = {
     description = "A free and open source speech synthesizer for Russian language and others";
-    homepage = https://github.com/Olga-Yakovleva/RHVoice/wiki;
+    homepage = "https://github.com/Olga-Yakovleva/RHVoice/wiki";
     license = lib.licenses.gpl3;
     maintainers = with lib.maintainers; [ berce ];
     platforms = with lib.platforms; all;
diff --git a/pkgs/applications/audio/rhythmbox/default.nix b/pkgs/applications/audio/rhythmbox/default.nix
index b6bff79fa03a..79560451e540 100644
--- a/pkgs/applications/audio/rhythmbox/default.nix
+++ b/pkgs/applications/audio/rhythmbox/default.nix
@@ -58,7 +58,7 @@ in stdenv.mkDerivation rec {
   };
 
   meta = with stdenv.lib; {
-    homepage = https://wiki.gnome.org/Apps/Rhythmbox;
+    homepage = "https://wiki.gnome.org/Apps/Rhythmbox";
     description = "A music playing application for GNOME";
     license = licenses.gpl2;
     platforms = platforms.linux;
diff --git a/pkgs/applications/audio/rkrlv2/default.nix b/pkgs/applications/audio/rkrlv2/default.nix
index 0ff23102e755..59979c410838 100644
--- a/pkgs/applications/audio/rkrlv2/default.nix
+++ b/pkgs/applications/audio/rkrlv2/default.nix
@@ -18,7 +18,7 @@ stdenv.mkDerivation rec {
 
   meta = {
     description = "Rakarrak effects ported to LV2";
-    homepage = https://github.com/ssj71/rkrlv2;
+    homepage = "https://github.com/ssj71/rkrlv2";
     license = stdenv.lib.licenses.gpl3;
     maintainers = [ stdenv.lib.maintainers.joelmo ];
     platforms = stdenv.lib.platforms.linux;
diff --git a/pkgs/applications/audio/rofi-mpd/default.nix b/pkgs/applications/audio/rofi-mpd/default.nix
index 97c737675ad8..8f9819bd913b 100644
--- a/pkgs/applications/audio/rofi-mpd/default.nix
+++ b/pkgs/applications/audio/rofi-mpd/default.nix
@@ -2,13 +2,13 @@
 
 python3Packages.buildPythonApplication rec {
   pname = "rofi-mpd";
-  version = "2.0.1";
+  version = "2.2.1";
 
   src = fetchFromGitHub {
     owner = "JakeStanger";
     repo = "Rofi_MPD";
     rev = "v${version}";
-    sha256 = "12zzx0m2nwyzxzzqgzq30a27k015kcw4ylvs7cyalf5gf6sg27kl";
+    sha256 = "0jabyn6gqh8ychn2a06xws3avz0lqdnx3qvqkavfd2xr6sp2q7lg";
   };
 
   propagatedBuildInputs = with python3Packages; [ mutagen mpd2 toml appdirs ];
diff --git a/pkgs/applications/audio/rosegarden/default.nix b/pkgs/applications/audio/rosegarden/default.nix
index 8d8e3e1b6c0e..921c8fff67a1 100644
--- a/pkgs/applications/audio/rosegarden/default.nix
+++ b/pkgs/applications/audio/rosegarden/default.nix
@@ -1,6 +1,6 @@
 { stdenv, fetchurl, cmake, makedepend, perl, pkgconfig, qttools, wrapQtAppsHook
 , dssi, fftwSinglePrec, ladspaH, ladspaPlugins, libjack2, alsaLib
-, liblo, liblrdf, libsamplerate, libsndfile, lirc ? null, qtbase }:
+, liblo, libsamplerate, libsndfile, lirc ? null, lrdf, qtbase }:
 
 stdenv.mkDerivation (rec {
   version = "19.12";
@@ -25,10 +25,10 @@ stdenv.mkDerivation (rec {
     ladspaPlugins
     libjack2
     liblo
-    liblrdf
     libsamplerate
     libsndfile
     lirc
+    lrdf
     qtbase
     alsaLib
   ];
@@ -36,7 +36,7 @@ stdenv.mkDerivation (rec {
   enableParallelBuilding = true;
 
   meta = with stdenv.lib; {
-    homepage = https://www.rosegardenmusic.com/;
+    homepage = "https://www.rosegardenmusic.com/";
     description = "Music composition and editing environment";
     longDescription = ''
       Rosegarden is a music composition and editing environment based around
diff --git a/pkgs/applications/audio/samplv1/default.nix b/pkgs/applications/audio/samplv1/default.nix
index 8c8e5407f7ae..86f8f666d80d 100644
--- a/pkgs/applications/audio/samplv1/default.nix
+++ b/pkgs/applications/audio/samplv1/default.nix
@@ -2,11 +2,11 @@
 
 stdenv.mkDerivation rec {
   pname = "samplv1";
-  version = "0.9.12";
+  version = "0.9.13";
 
   src = fetchurl {
     url = "mirror://sourceforge/samplv1/${pname}-${version}.tar.gz";
-    sha256 = "0xzjxiqzcf1ygabrjsy0iachhnpy85rp9519fmj2f568r6ml6hzg";
+    sha256 = "0clsp6s5qfnh0xaxbd35vq2ppi72q9dfayrzlgl73800a8p7gh9m";
   };
 
   buildInputs = [ libjack2 alsaLib liblo libsndfile lv2 qt5.qtbase qt5.qttools];
@@ -15,7 +15,7 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "An old-school all-digital polyphonic sampler synthesizer with stereo fx";
-    homepage = http://samplv1.sourceforge.net/;
+    homepage = "http://samplv1.sourceforge.net/";
     license = licenses.gpl2Plus;
     platforms = platforms.linux;
     maintainers = [ maintainers.goibhniu ];
diff --git a/pkgs/applications/audio/schismtracker/default.nix b/pkgs/applications/audio/schismtracker/default.nix
index f902b2dd41b0..36125489e3a2 100644
--- a/pkgs/applications/audio/schismtracker/default.nix
+++ b/pkgs/applications/audio/schismtracker/default.nix
@@ -1,30 +1,29 @@
-{ stdenv, fetchurl, alsaLib, python, SDL }:
+{ stdenv, fetchFromGitHub
+, autoreconfHook
+, alsaLib, python, SDL }:
 
 stdenv.mkDerivation rec {
-  version = "20120105";
   pname = "schismtracker";
+  version = "20190805";
 
-  src = fetchurl {
-    url = "http://schismtracker.org/dl/${pname}-${version}.tar.bz2";
-    sha256 = "1ny7wv2wxm1av299wvpskall6438wjjpadphmqc7c0h6d0zg5kii";
+  src = fetchFromGitHub {
+    owner = pname;
+    repo = pname;
+    rev = version;
+    sha256 = "0qqps20vvn3rgpg8174bjrrm38gqcci2z5z4c1r1vhbccclahgsd";
   };
 
-  preConfigure = ''
-    # Build fails on Linux with windres.
-    export ac_cv_prog_ac_ct_WINDRES=
-  '';
-
   configureFlags = [ "--enable-dependency-tracking" ];
 
-  buildInputs = [ alsaLib python SDL ];
+  nativeBuildInputs = [ autoreconfHook python ];
 
-  enableParallelBuilding = true;
+  buildInputs = [ alsaLib SDL ];
 
-  meta = {
+  meta = with stdenv.lib; {
     description = "Music tracker application, free reimplementation of Impulse Tracker";
-    homepage = http://schismtracker.org/;
-    license = stdenv.lib.licenses.gpl2;
+    homepage = "http://schismtracker.org/";
+    license = licenses.gpl2;
     platforms = [ "x86_64-linux" "i686-linux" ];
-    maintainers = [ stdenv.lib.maintainers.ftrvxmtrx ];
+    maintainers = with maintainers; [ ftrvxmtrx ];
   };
 }
diff --git a/pkgs/applications/audio/seq24/default.nix b/pkgs/applications/audio/seq24/default.nix
index 9bab024f021e..c8347d70b1d9 100644
--- a/pkgs/applications/audio/seq24/default.nix
+++ b/pkgs/applications/audio/seq24/default.nix
@@ -16,7 +16,7 @@ stdenv.mkDerivation  rec {
 
   meta = with stdenv.lib; {
     description = "Minimal loop based midi sequencer";
-    homepage = http://www.filter24.org/seq24;
+    homepage = "http://www.filter24.org/seq24";
     license = licenses.gpl2;
     platforms = platforms.linux;
     maintainers = with maintainers; [ goibhniu ];
diff --git a/pkgs/applications/audio/sfxr-qt/default.nix b/pkgs/applications/audio/sfxr-qt/default.nix
index 615a8a8c6604..165f8446c763 100644
--- a/pkgs/applications/audio/sfxr-qt/default.nix
+++ b/pkgs/applications/audio/sfxr-qt/default.nix
@@ -10,12 +10,12 @@
 
 mkDerivation rec {
   pname = "sfxr-qt";
-  version = "1.2.0";
+  version = "1.3.0";
   src = fetchFromGitHub {
     owner = "agateau";
     repo = "sfxr-qt";
     rev = version;
-    sha256 = "1ndw1dcmzvkrc6gnb0y057zb4lqlhwrv18jlbx26w3s4xrbxqr41";
+    sha256 = "15yjgjl1c5k816mnpc09104zq0ack2a3mjsxmhcik7cmjkfiipr5";
     fetchSubmodules = true;
   };
   nativeBuildInputs = [
@@ -27,10 +27,9 @@ mkDerivation rec {
     qtquickcontrols2
     SDL
   ];
-  configurePhase = "cmake . -DCMAKE_INSTALL_PREFIX=$out";
 
   meta = with lib; {
-    homepage = https://github.com/agateau/sfxr-qt;
+    homepage = "https://github.com/agateau/sfxr-qt";
     description = "A sound effect generator, QtQuick port of sfxr";
     license = licenses.gpl2;
     maintainers = with maintainers; [ fgaz ];
diff --git a/pkgs/applications/audio/shntool/default.nix b/pkgs/applications/audio/shntool/default.nix
index e3bfc60a40a5..de18f3c2ce8d 100644
--- a/pkgs/applications/audio/shntool/default.nix
+++ b/pkgs/applications/audio/shntool/default.nix
@@ -5,7 +5,7 @@ stdenv.mkDerivation {
   pname = "shntool";
 
   src = fetchurl {
-    url = http://www.etree.org/shnutils/shntool/dist/src/shntool-3.0.10.tar.gz;
+    url = "http://www.etree.org/shnutils/shntool/dist/src/shntool-3.0.10.tar.gz";
     sha256 = "00i1rbjaaws3drkhiczaign3lnbhr161b7rbnjr8z83w8yn2wc3l";
   };
 
@@ -13,7 +13,7 @@ stdenv.mkDerivation {
 
   meta = {
     description = "Multi-purpose WAVE data processing and reporting utility";
-    homepage = http://www.etree.org/shnutils/shntool/;
+    homepage = "http://www.etree.org/shnutils/shntool/";
     license = stdenv.lib.licenses.gpl2Plus;
     platforms = stdenv.lib.platforms.all;
     maintainers = with stdenv.lib.maintainers; [ jcumming ];
diff --git a/pkgs/applications/audio/shortwave/default.nix b/pkgs/applications/audio/shortwave/default.nix
new file mode 100644
index 000000000000..d26d314cd3e4
--- /dev/null
+++ b/pkgs/applications/audio/shortwave/default.nix
@@ -0,0 +1,87 @@
+{ stdenv
+, fetchFromGitLab
+, cargo
+, dbus
+, desktop-file-utils
+, gdk-pixbuf
+, gettext
+, glib
+, gst_all_1
+, gtk3
+, libhandy
+, meson
+, ninja
+, openssl
+, pkg-config
+, python3
+, rust
+, rustc
+, rustPlatform
+, sqlite
+, wrapGAppsHook
+}:
+
+rustPlatform.buildRustPackage rec {
+  pname = "shortwave";
+  version = "1.0.1";
+
+  src = fetchFromGitLab {
+    domain = "gitlab.gnome.org";
+    owner = "World";
+    repo = "Shortwave";
+    rev = version;
+    sha256 = "13lhlh75vw02vkcknl4nvy0yvpdf0qx811mmyja8bzs4rj1j9kr8";
+  };
+
+  cargoSha256 = "0aph5z54a6i5p8ga5ghhx1c9hjc8zdw5pkv9inmanca0bq3hkdlh";
+
+  nativeBuildInputs = [
+    cargo
+    desktop-file-utils
+    gettext
+    glib # for glib-compile-schemas
+    meson
+    ninja
+    pkg-config
+    python3
+    rustc
+    wrapGAppsHook
+  ];
+
+  buildInputs = [
+    dbus
+    gdk-pixbuf
+    glib
+    gtk3
+    libhandy
+    openssl
+    sqlite
+  ] ++ (with gst_all_1; [
+    gstreamer
+    gst-plugins-base
+    gst-plugins-good
+    gst-plugins-bad
+  ]);
+
+  # Don't use buildRustPackage phases, only use it for rust deps setup
+  configurePhase = null;
+  buildPhase = null;
+  checkPhase = null;
+  installPhase = null;
+
+  postPatch = ''
+    patchShebangs build-aux/meson/postinstall.py
+  '';
+
+  meta = with stdenv.lib; {
+    homepage = "https://gitlab.gnome.org/World/Shortwave";
+    description = "Find and listen to internet radio stations";
+    longDescription = ''
+      Shortwave is a streaming audio player designed for the GNOME
+      desktop. It is the successor to the older Gradio application.
+    '';
+    maintainers = with maintainers; [ lasandell ];
+    license = licenses.gpl3Plus;
+    platforms = platforms.linux;
+  };
+}
diff --git a/pkgs/applications/audio/sidplayfp/default.nix b/pkgs/applications/audio/sidplayfp/default.nix
index aff8c173d9f2..b0a50bbf128e 100644
--- a/pkgs/applications/audio/sidplayfp/default.nix
+++ b/pkgs/applications/audio/sidplayfp/default.nix
@@ -14,7 +14,7 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "A SID player using libsidplayfp";
-    homepage = https://sourceforge.net/projects/sidplay-residfp/;
+    homepage = "https://sourceforge.net/projects/sidplay-residfp/";
     license = with licenses; [ gpl2Plus ];
     maintainers = with maintainers; [ dezgeg ];
     platforms = with platforms; linux;
diff --git a/pkgs/applications/audio/sisco.lv2/default.nix b/pkgs/applications/audio/sisco.lv2/default.nix
index f95655f5e9a3..07215fc42f87 100644
--- a/pkgs/applications/audio/sisco.lv2/default.nix
+++ b/pkgs/applications/audio/sisco.lv2/default.nix
@@ -36,7 +36,7 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "Simple audio oscilloscope with variable time scale, triggering, cursors and numeric readout in LV2 plugin format";
-    homepage = http://x42.github.io/sisco.lv2/;
+    homepage = "http://x42.github.io/sisco.lv2/";
     license = licenses.gpl2;
     maintainers = [ maintainers.e-user ];
     platforms = platforms.linux;
diff --git a/pkgs/applications/audio/snapcast/default.nix b/pkgs/applications/audio/snapcast/default.nix
index 21a36cecbe54..531a633f05da 100644
--- a/pkgs/applications/audio/snapcast/default.nix
+++ b/pkgs/applications/audio/snapcast/default.nix
@@ -59,7 +59,7 @@ stdenv.mkDerivation rec {
 
   meta = with lib; {
     description = "Synchronous multi-room audio player";
-    homepage = https://github.com/badaix/snapcast;
+    homepage = "https://github.com/badaix/snapcast";
     maintainers = with maintainers; [ fpletz ];
     license = licenses.gpl3;
   };
diff --git a/pkgs/applications/audio/snd/default.nix b/pkgs/applications/audio/snd/default.nix
index 54f8fe4c9ad1..9bc8fcb66946 100644
--- a/pkgs/applications/audio/snd/default.nix
+++ b/pkgs/applications/audio/snd/default.nix
@@ -4,11 +4,11 @@
 }:
 
 stdenv.mkDerivation rec {
-  name = "snd-20.0";
+  name = "snd-20.2";
 
   src = fetchurl {
     url = "mirror://sourceforge/snd/${name}.tar.gz";
-    sha256 = "195j0mkxvkb0znwhc0pjp4r0r8j4i12i27nxbkq27wg9rck6likc";
+    sha256 = "0ip4sfyxqlbghlggipmvvqjqs1a7qas0zcmzw8d1nwg6krjkfj0r";
   };
 
   nativeBuildInputs = [ pkgconfig ];
@@ -20,7 +20,7 @@ stdenv.mkDerivation rec {
 
   meta = {
     description = "Sound editor";
-    homepage = http://ccrma.stanford.edu/software/snd;
+    homepage = "http://ccrma.stanford.edu/software/snd";
     platforms = stdenv.lib.platforms.linux;
     license = stdenv.lib.licenses.free;
     maintainers = with stdenv.lib.maintainers; [ ];
diff --git a/pkgs/applications/audio/sndpeek/default.nix b/pkgs/applications/audio/sndpeek/default.nix
index 376aadc7385b..d239fda11aee 100644
--- a/pkgs/applications/audio/sndpeek/default.nix
+++ b/pkgs/applications/audio/sndpeek/default.nix
@@ -49,7 +49,7 @@ stdenv.mkDerivation rec {
          * available on MacOS X, Linux, and Windows under GPL
          * part of the sndtools distribution.
     '';
-    homepage = https://soundlab.cs.princeton.edu/software/sndpeek/;
+    homepage = "https://soundlab.cs.princeton.edu/software/sndpeek/";
     license = licenses.gpl2;
     maintainers = [ maintainers.laikq ];
   };
diff --git a/pkgs/applications/audio/sonata/default.nix b/pkgs/applications/audio/sonata/default.nix
index b9293fe27294..68eefadf4110 100644
--- a/pkgs/applications/audio/sonata/default.nix
+++ b/pkgs/applications/audio/sonata/default.nix
@@ -61,7 +61,7 @@ in buildPythonApplication rec {
        - Commandline control
        - Available in 24 languages
     '';
-    homepage = https://www.nongnu.org/sonata/;
+    homepage = "https://www.nongnu.org/sonata/";
     license = stdenv.lib.licenses.gpl3;
     platforms = stdenv.lib.platforms.linux;
     maintainers = [ stdenv.lib.maintainers.rvl ];
diff --git a/pkgs/applications/audio/sonic-lineup/default.nix b/pkgs/applications/audio/sonic-lineup/default.nix
index 4ad9e51b6455..b837eb07cf1b 100644
--- a/pkgs/applications/audio/sonic-lineup/default.nix
+++ b/pkgs/applications/audio/sonic-lineup/default.nix
@@ -1,6 +1,6 @@
 { stdenv, fetchurl, alsaLib, boost, bzip2, fftw, fftwFloat, libfishsound
-, libid3tag, liblo, liblrdf, libmad, liboggz, libpulseaudio, libsamplerate
-, libsndfile, opusfile, portaudio, rubberband, serd, sord, vampSDK, capnproto
+, libid3tag, liblo, libmad, liboggz, libpulseaudio, libsamplerate
+, libsndfile, lrdf, opusfile, portaudio, rubberband, serd, sord, capnproto
 , wrapQtAppsHook, pkgconfig
 }:
 
@@ -14,8 +14,8 @@ stdenv.mkDerivation rec {
   };
 
   buildInputs =
-    [ alsaLib boost bzip2 fftw fftwFloat libfishsound libid3tag liblo liblrdf
-      libmad liboggz libpulseaudio libsamplerate libsndfile opusfile pkgconfig
+    [ alsaLib boost bzip2 fftw fftwFloat libfishsound libid3tag liblo
+      libmad liboggz libpulseaudio libsamplerate libsndfile lrdf opusfile
       portaudio rubberband serd sord capnproto
     ];
 
@@ -30,7 +30,7 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "Comparative visualisation of related audio recordings";
-    homepage = https://www.sonicvisualiser.org/sonic-lineup/;
+    homepage = "https://www.sonicvisualiser.org/sonic-lineup/";
     license = licenses.gpl2Plus;
     maintainers = [ maintainers.vandenoever ];
     platforms = platforms.linux;
diff --git a/pkgs/applications/audio/sonic-visualiser/default.nix b/pkgs/applications/audio/sonic-visualiser/default.nix
index d1c981de2d5d..e8b6a4d4313b 100644
--- a/pkgs/applications/audio/sonic-visualiser/default.nix
+++ b/pkgs/applications/audio/sonic-visualiser/default.nix
@@ -1,9 +1,9 @@
 # TODO add plugins having various licenses, see http://www.vamp-plugins.org/download.html
 
 { stdenv, fetchurl, alsaLib, bzip2, fftw, libjack2, libX11, liblo
-, libmad, libogg, librdf, librdf_raptor, librdf_rasqal, libsamplerate
+, libmad, libogg, lrdf, librdf_raptor, librdf_rasqal, libsamplerate
 , libsndfile, pkgconfig, libpulseaudio, qtbase, qtsvg, redland
-, rubberband, serd, sord, vampSDK, fftwFloat
+, rubberband, serd, sord, vamp-plugin-sdk, fftwFloat
 , capnproto, liboggz, libfishsound, libid3tag, opusfile
 , wrapQtAppsHook
 }:
@@ -18,8 +18,8 @@ stdenv.mkDerivation rec {
   };
 
   buildInputs =
-    [ libsndfile qtbase qtsvg fftw fftwFloat bzip2 librdf rubberband
-      libsamplerate vampSDK alsaLib librdf_raptor librdf_rasqal redland
+    [ libsndfile qtbase qtsvg fftw fftwFloat bzip2 lrdf rubberband
+      libsamplerate vamp-plugin-sdk alsaLib librdf_raptor librdf_rasqal redland
       serd
       sord
       # optional
@@ -48,7 +48,7 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "View and analyse contents of music audio files";
-    homepage = https://www.sonicvisualiser.org/;
+    homepage = "https://www.sonicvisualiser.org/";
     license = licenses.gpl2Plus;
     maintainers = [ maintainers.goibhniu maintainers.marcweber ];
     platforms = platforms.linux;
diff --git a/pkgs/applications/audio/sooperlooper/default.nix b/pkgs/applications/audio/sooperlooper/default.nix
index 768b40a11388..3fb111db8517 100644
--- a/pkgs/applications/audio/sooperlooper/default.nix
+++ b/pkgs/applications/audio/sooperlooper/default.nix
@@ -37,7 +37,7 @@ stdenv.mkDerivation rec {
     '';
 
     version = version;
-    homepage = http://essej.net/sooperlooper/index.html;
+    homepage = "http://essej.net/sooperlooper/index.html";
     license = stdenv.lib.licenses.gpl2;
     maintainers = [ stdenv.lib.maintainers.magnetophon ];
     platforms = stdenv.lib.platforms.linux;
diff --git a/pkgs/applications/audio/sorcer/default.nix b/pkgs/applications/audio/sorcer/default.nix
index 5d8ae0928c90..7601f942868f 100644
--- a/pkgs/applications/audio/sorcer/default.nix
+++ b/pkgs/applications/audio/sorcer/default.nix
@@ -20,7 +20,7 @@ stdenv.mkDerivation rec {
   '';
 
   meta = with stdenv.lib; {
-    homepage = http://openavproductions.com/sorcer/;
+    homepage = "http://openavproductions.com/sorcer/";
     description = "A wavetable LV2 plugin synth, targeted at the electronic / dubstep genre";
     license = licenses.gpl3;
     maintainers = [ maintainers.magnetophon ];
diff --git a/pkgs/applications/audio/sound-juicer/default.nix b/pkgs/applications/audio/sound-juicer/default.nix
index 7f22a03c1bb4..dcad0cec1e81 100644
--- a/pkgs/applications/audio/sound-juicer/default.nix
+++ b/pkgs/applications/audio/sound-juicer/default.nix
@@ -27,13 +27,12 @@ in stdenv.mkDerivation rec{
   passthru = {
     updateScript = gnome3.updateScript {
       packageName = pname;
-      attrPath = "gnome3.${pname}";
     };
   };
 
   meta = with stdenv.lib; {
     description = "A Gnome CD Ripper";
-    homepage = https://wiki.gnome.org/Apps/SoundJuicer;
+    homepage = "https://wiki.gnome.org/Apps/SoundJuicer";
     maintainers = [ maintainers.bdimcheff ];
     license = licenses.gpl2;
     platforms = platforms.linux;
diff --git a/pkgs/applications/audio/soundscape-renderer/default.nix b/pkgs/applications/audio/soundscape-renderer/default.nix
index 5b5f01eef5cc..741211bd90d7 100644
--- a/pkgs/applications/audio/soundscape-renderer/default.nix
+++ b/pkgs/applications/audio/soundscape-renderer/default.nix
@@ -20,7 +20,7 @@ stdenv.mkDerivation {
   version = "2016-11-03";
 
   src = fetchgit {
-    url = https://github.com/SoundScapeRenderer/ssr;
+    url = "https://github.com/SoundScapeRenderer/ssr";
     rev = "0dd0136dd24e47b63d8a4e05de467f5c7b047ec9";
     sha256 = "095x2spv9bmg6pi71mpajnghbqj58ziflg16f9854awx0qp9d8x7";
   };
@@ -45,7 +45,7 @@ stdenv.mkDerivation {
   '';
 
   meta = {
-    homepage = http://spatialaudio.net/ssr/;
+    homepage = "http://spatialaudio.net/ssr/";
     description = "The SoundScape Renderer (SSR) is a tool for real-time spatial audio reproduction";
     license = stdenv.lib.licenses.gpl3;
     maintainers = [ stdenv.lib.maintainers.fridh ];
diff --git a/pkgs/applications/audio/soundtracker/default.nix b/pkgs/applications/audio/soundtracker/default.nix
new file mode 100644
index 000000000000..ce73203c9590
--- /dev/null
+++ b/pkgs/applications/audio/soundtracker/default.nix
@@ -0,0 +1,51 @@
+{ stdenv
+, fetchurl
+, pkg-config
+, autoconf
+, gtk2
+, alsaLib
+, SDL
+, jack2
+, goocanvas # graphical envelope editing
+}:
+
+stdenv.mkDerivation rec {
+  pname = "soundtracker";
+  version = "1.0.0.1";
+
+  src = fetchurl {
+    # Past releases get moved to the "old releases" directory.
+    # Only the latest release (currently a prerelease) is at the top level.
+    url = "mirror://sourceforge/soundtracker/old%20releases/soundtracker-${version}.tar.bz2";
+    sha256 = "1ggliswz5ngmlnrnyhv3x1arh5w77an0ww9p53cddp9aas5q11jm";
+  };
+
+  nativeBuildInputs = [
+    pkg-config
+    autoconf
+  ];
+  buildInputs = [
+    gtk2
+    SDL
+    jack2
+    goocanvas
+  ] ++ stdenv.lib.optional stdenv.isLinux alsaLib;
+
+  meta = with stdenv.lib; {
+    description = "A music tracking tool similar in design to the DOS program FastTracker and the Amiga legend ProTracker";
+    longDescription = ''
+      SoundTracker is a pattern-oriented music editor (similar to the DOS
+      program 'FastTracker'). Samples are lined up on tracks and patterns
+      which are then arranged to a song. Supported module formats are XM and
+      MOD; the player code is the one from OpenCP. A basic sample recorder
+      and editor is also included.
+    '';
+    homepage = "http://www.soundtracker.org/";
+    downloadPage = "https://sourceforge.net/projects/soundtracker/files/";
+    license = licenses.gpl2Plus;
+    maintainers = with maintainers; [ fgaz ];
+    platforms = platforms.all;
+    # gdk/gdkx.h not found
+    broken = stdenv.isDarwin;
+  };
+}
diff --git a/pkgs/applications/audio/spectmorph/default.nix b/pkgs/applications/audio/spectmorph/default.nix
index a4f48aa0c21c..d8209dad02de 100644
--- a/pkgs/applications/audio/spectmorph/default.nix
+++ b/pkgs/applications/audio/spectmorph/default.nix
@@ -14,7 +14,7 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "Allows to analyze samples of musical instruments, and to combine them (morphing) to construct hybrid sounds";
-    homepage = http://spectmorph.org;
+    homepage = "http://spectmorph.org";
     license = licenses.gpl3;
     platforms = [ "x86_64-linux" "i686-linux" ];
     maintainers = [ maintainers.magnetophon ];
diff --git a/pkgs/applications/audio/spectrojack/default.nix b/pkgs/applications/audio/spectrojack/default.nix
index 4c1682b1e0b8..35534750d0c6 100644
--- a/pkgs/applications/audio/spectrojack/default.nix
+++ b/pkgs/applications/audio/spectrojack/default.nix
@@ -23,7 +23,7 @@ stdenv.mkDerivation rec {
 
   meta = {
     description = "A little spectrogram/audiogram/sonogram/whatever for JACK";
-    homepage = http://sed.free.fr/spectrojack;
+    homepage = "http://sed.free.fr/spectrojack";
     license = stdenv.lib.licenses.publicDomain;
     maintainers = with stdenv.lib.maintainers; [ sleexyz ];
     platforms = with stdenv.lib.platforms; linux;
diff --git a/pkgs/applications/audio/speech-denoiser/default.nix b/pkgs/applications/audio/speech-denoiser/default.nix
index 6598d24fb07a..706a6956c5d2 100644
--- a/pkgs/applications/audio/speech-denoiser/default.nix
+++ b/pkgs/applications/audio/speech-denoiser/default.nix
@@ -34,7 +34,7 @@ stdenv.mkDerivation  {
 
   meta = with stdenv.lib; {
     description = "Speech denoise lv2 plugin based on RNNoise library";
-    homepage = https://github.com/lucianodato/speech-denoiser;
+    homepage = "https://github.com/lucianodato/speech-denoiser";
     license = licenses.lgpl3;
     maintainers = [ maintainers.magnetophon ];
     platforms = platforms.linux;
diff --git a/pkgs/applications/audio/spek/default.nix b/pkgs/applications/audio/spek/default.nix
index f4922e388c46..88b22c59ae50 100644
--- a/pkgs/applications/audio/spek/default.nix
+++ b/pkgs/applications/audio/spek/default.nix
@@ -19,7 +19,7 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "Analyse your audio files by showing their spectrogram";
-    homepage = http://spek.cc/;
+    homepage = "http://spek.cc/";
     license = licenses.gpl3;
     platforms = platforms.all;
     maintainers = [ maintainers.bjornfor ];
diff --git a/pkgs/applications/audio/split2flac/default.nix b/pkgs/applications/audio/split2flac/default.nix
index 3c9565df9199..efad434e3079 100644
--- a/pkgs/applications/audio/split2flac/default.nix
+++ b/pkgs/applications/audio/split2flac/default.nix
@@ -54,7 +54,7 @@ in stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "Split flac/ape/wv/wav + cue sheet into separate tracks";
-    homepage = https://github.com/ftrvxmtrx/split2flac;
+    homepage = "https://github.com/ftrvxmtrx/split2flac";
     license = licenses.mit;
     platforms = platforms.all;
     maintainers = with maintainers; [ jfrankenau ];
diff --git a/pkgs/applications/audio/spotify-tui/default.nix b/pkgs/applications/audio/spotify-tui/default.nix
index 9613df6df0b7..91acab353892 100644
--- a/pkgs/applications/audio/spotify-tui/default.nix
+++ b/pkgs/applications/audio/spotify-tui/default.nix
@@ -2,25 +2,25 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "spotify-tui";
-  version = "0.15.0";
+  version = "0.19.0";
 
   src = fetchFromGitHub {
     owner = "Rigellute";
     repo = "spotify-tui";
     rev = "v${version}";
-    sha256 = "19mnnpsidwr5y6igs478gfp7rq76378f66nzfhj4mraqd2jc4nzj";
+    sha256 = "1bdcfkfbvvn262p4j0nb4kvjzzgrvn3kxlif48yipqkkykzsgz6g";
   };
 
-  cargoSha256 = "1zhv3sla92z7pjdnf0r4x85n7z9spi70vgy4kw72rdc5v9bmj7q8";
+  cargoSha256 = "13v2ilmfs9468kavlx6wrsp0dscppxbxgygwpdd35p5hq3vnhl7k";
 
-  nativeBuildInputs = [ pkgconfig ] ++ stdenv.lib.optionals stdenv.isLinux [ python3 ];
-  buildInputs = [ openssl ]
-    ++ stdenv.lib.optional stdenv.isLinux libxcb
+  nativeBuildInputs = stdenv.lib.optionals stdenv.isLinux [ pkgconfig python3 ];
+  buildInputs = [ ]
+    ++ stdenv.lib.optionals stdenv.isLinux [ openssl libxcb ]
     ++ stdenv.lib.optionals stdenv.isDarwin [ AppKit Security ];
 
   meta = with stdenv.lib; {
     description = "Spotify for the terminal written in Rust";
-    homepage = https://github.com/Rigellute/spotify-tui;
+    homepage = "https://github.com/Rigellute/spotify-tui";
     changelog = "https://github.com/Rigellute/spotify-tui/releases/tag/v${version}";
     license = licenses.mit;
     maintainers = with maintainers; [ jwijenbergh ];
diff --git a/pkgs/applications/audio/spotify/default.nix b/pkgs/applications/audio/spotify/default.nix
index b763e6e6122f..245d96dee018 100644
--- a/pkgs/applications/audio/spotify/default.nix
+++ b/pkgs/applications/audio/spotify/default.nix
@@ -10,14 +10,14 @@ let
   # If an update breaks things, one of those might have valuable info:
   # https://aur.archlinux.org/packages/spotify/
   # https://community.spotify.com/t5/Desktop-Linux
-  version = "1.1.10.546.ge08ef575-19";
+  version = "1.1.26.501.gbe11e53b-15";
   # To get the latest stable revision:
   # curl -H 'X-Ubuntu-Series: 16' 'https://api.snapcraft.io/api/v1/snaps/details/spotify?channel=stable' | jq '.download_url,.version,.last_updated'
   # To get general information:
   # curl -H 'Snap-Device-Series: 16' 'https://api.snapcraft.io/v2/snaps/info/spotify' | jq '.'
   # More examples of api usage:
   # https://github.com/canonical-websites/snapcraft.io/blob/master/webapp/publisher/snaps/views.py
-  rev = "36";
+  rev = "41";
 
 
   deps = [
@@ -56,6 +56,8 @@ let
     xorg.libXScrnSaver
     xorg.libXtst
     xorg.libxcb
+    xorg.libSM
+    xorg.libICE
     zlib
   ];
 
@@ -75,7 +77,7 @@ stdenv.mkDerivation {
   # https://community.spotify.com/t5/Desktop-Linux/Redistribute-Spotify-on-Linux-Distributions/td-p/1695334
   src = fetchurl {
     url = "https://api.snapcraft.io/api/v1/snaps/download/pOBIoZ2LrCB3rDohMxoYGnbN14EHOgD7_${rev}.snap";
-    sha512 = "c49f1a86a9b737e64a475bbe62754a36f607669e908eb725a2395f0a0a6b95968e0c8ce27ab2c8b6c92fe8cbacb1ef58de11c79b92dc0f58c2c6d3a140706a1f";
+    sha512 = "41bc8d20388bab39058d0709d99b1c8e324ea37af217620797356b8bc0b24aedbe801eaaa6e00a93e94e26765602e5dc27ad423ce2e777b4bec1b92daf04f81e";
   };
 
   buildInputs = [ squashfsTools makeWrapper ];
@@ -156,7 +158,7 @@ stdenv.mkDerivation {
     '';
 
   meta = with stdenv.lib; {
-    homepage = https://www.spotify.com/;
+    homepage = "https://www.spotify.com/";
     description = "Play music from the Spotify music service";
     license = licenses.unfree;
     maintainers = with maintainers; [ eelco ftrvxmtrx sheenobu mudri timokau ma27 ];
diff --git a/pkgs/applications/audio/spotifyd/default.nix b/pkgs/applications/audio/spotifyd/default.nix
index 263fe986df31..121f9cbc960f 100644
--- a/pkgs/applications/audio/spotifyd/default.nix
+++ b/pkgs/applications/audio/spotifyd/default.nix
@@ -2,6 +2,9 @@
 , withALSA ? true, alsaLib ? null
 , withPulseAudio ? false, libpulseaudio ? null
 , withPortAudio ? false, portaudio ? null
+, withMpris ? false
+, withKeyring ? false
+, dbus ? null
 }:
 
 rustPlatform.buildRustPackage rec {
@@ -20,7 +23,7 @@ rustPlatform.buildRustPackage rec {
   cargoBuildFlags = [
     "--no-default-features"
     "--features"
-    "${stdenv.lib.optionalString withALSA "alsa_backend,"}${stdenv.lib.optionalString withPulseAudio "pulseaudio_backend,"}${stdenv.lib.optionalString withPortAudio "portaudio_backend,"}"
+    "${stdenv.lib.optionalString withALSA "alsa_backend,"}${stdenv.lib.optionalString withPulseAudio "pulseaudio_backend,"}${stdenv.lib.optionalString withPortAudio "portaudio_backend,"}${stdenv.lib.optionalString withMpris "dbus_mpris,"}${stdenv.lib.optionalString withKeyring "dbus_keyring,"}"
   ];
 
   nativeBuildInputs = [ pkgconfig ];
@@ -28,7 +31,8 @@ rustPlatform.buildRustPackage rec {
   buildInputs = [ openssl ]
     ++ stdenv.lib.optional withALSA alsaLib
     ++ stdenv.lib.optional withPulseAudio libpulseaudio
-    ++ stdenv.lib.optional withPortAudio portaudio;
+    ++ stdenv.lib.optional withPortAudio portaudio
+    ++ stdenv.lib.optional (withMpris || withKeyring) dbus;
 
   doCheck = false;
 
diff --git a/pkgs/applications/audio/spotifywm/default.nix b/pkgs/applications/audio/spotifywm/default.nix
index 2380c8e5d9ed..a51e82f29c4b 100644
--- a/pkgs/applications/audio/spotifywm/default.nix
+++ b/pkgs/applications/audio/spotifywm/default.nix
@@ -22,7 +22,7 @@ stdenv.mkDerivation {
   '';
 
   meta = with stdenv.lib; {
-    homepage = https://github.com/dasJ/spotifywm;
+    homepage = "https://github.com/dasJ/spotifywm";
     description = "Wrapper around Spotify that correctly sets class name before opening the window";
     license = licenses.mit;
     platforms = platforms.linux;
diff --git a/pkgs/applications/audio/squeezelite/default.nix b/pkgs/applications/audio/squeezelite/default.nix
index ce0153e9f26e..de135706ad3f 100644
--- a/pkgs/applications/audio/squeezelite/default.nix
+++ b/pkgs/applications/audio/squeezelite/default.nix
@@ -62,7 +62,7 @@ in stdenv.mkDerivation {
 
   meta = with stdenv.lib; {
     description = "Lightweight headless squeezebox client emulator";
-    homepage = https://github.com/ralph-irving/squeezelite;
+    homepage = "https://github.com/ralph-irving/squeezelite";
     license = with licenses; [ gpl3 ] ++ optional dsdSupport bsd2;
     maintainers = with maintainers; [ samdoshi ];
     platforms = platforms.linux;
diff --git a/pkgs/applications/audio/squishyball/default.nix b/pkgs/applications/audio/squishyball/default.nix
index 496ce779ffb5..e6dd48018e74 100644
--- a/pkgs/applications/audio/squishyball/default.nix
+++ b/pkgs/applications/audio/squishyball/default.nix
@@ -42,7 +42,7 @@ stdenv.mkDerivation rec {
        comparisons of groups of up to ten samples; this is the default
        mode of operation.
     '';
-    homepage = https://svn.xiph.org/trunk/squishyball;
+    homepage = "https://svn.xiph.org/trunk/squishyball";
     license = licenses.gpl2Plus;
     maintainers = with maintainers; [ michalrus ];
     platforms = platforms.linux;
diff --git a/pkgs/applications/audio/ssrc/default.nix b/pkgs/applications/audio/ssrc/default.nix
index 1247bbc19f97..9d519e14147b 100644
--- a/pkgs/applications/audio/ssrc/default.nix
+++ b/pkgs/applications/audio/ssrc/default.nix
@@ -33,7 +33,7 @@ stdenv.mkDerivation rec {
     '';
 
     version = version;
-    homepage = http://shibatch.sourceforge.net/;
+    homepage = "http://shibatch.sourceforge.net/";
     license = licenses.gpl2;
     maintainers = with maintainers; [ leenaars];
     platforms = with platforms; [ linux ] ;
diff --git a/pkgs/applications/audio/stone-phaser/default.nix b/pkgs/applications/audio/stone-phaser/default.nix
index 6e64ebc7fb3e..d36b28df978a 100644
--- a/pkgs/applications/audio/stone-phaser/default.nix
+++ b/pkgs/applications/audio/stone-phaser/default.nix
@@ -25,7 +25,7 @@ stdenv.mkDerivation rec {
   installFlags = [ "PREFIX=$(out)" ];
 
   meta = with stdenv.lib; {
-    homepage = https://github.com/jpcima/stone-phaser;
+    homepage = "https://github.com/jpcima/stone-phaser";
     description = "A classic analog phaser effect, made with DPF and Faust";
     maintainers = [ maintainers.magnetophon ];
     platforms = platforms.linux;
diff --git a/pkgs/applications/audio/strawberry/default.nix b/pkgs/applications/audio/strawberry/default.nix
index ad5685f71b02..dce73c386707 100644
--- a/pkgs/applications/audio/strawberry/default.nix
+++ b/pkgs/applications/audio/strawberry/default.nix
@@ -35,13 +35,13 @@
 
 mkDerivation rec {
   pname = "strawberry";
-  version = "0.6.8";
+  version = "0.6.10";
 
   src = fetchFromGitHub {
     owner = "jonaski";
     repo = pname;
     rev = version;
-    sha256 = "0jc1m1855dg3f1i1p744c5s42ssmjs61znw4cf28ifamw1nbr1r5";
+    sha256 = "0qf510hlxbndqzwq62mdzfclqxr3caf1a34kd770k84x8vrb4pld";
   };
 
   buildInputs = [
diff --git a/pkgs/applications/audio/streamripper/default.nix b/pkgs/applications/audio/streamripper/default.nix
index efa87a2f72cc..55ed40c2fb8d 100644
--- a/pkgs/applications/audio/streamripper/default.nix
+++ b/pkgs/applications/audio/streamripper/default.nix
@@ -13,7 +13,7 @@ stdenv.mkDerivation rec {
   buildInputs = [ glib libogg libvorbis libmad ];
 
   meta = with stdenv.lib; {
-    homepage = http://streamripper.sourceforge.net/;
+    homepage = "http://streamripper.sourceforge.net/";
     description = "Application that lets you record streaming mp3 to your hard drive";
     license = licenses.gpl2;
     maintainers = with maintainers; [ the-kenny ];
diff --git a/pkgs/applications/audio/sunvox/default.nix b/pkgs/applications/audio/sunvox/default.nix
index a7d61598f3e2..48ad9bc971c2 100644
--- a/pkgs/applications/audio/sunvox/default.nix
+++ b/pkgs/applications/audio/sunvox/default.nix
@@ -13,11 +13,11 @@ let
 in
 stdenv.mkDerivation rec {
   pname = "SunVox";
-  version = "1.9.5c";
+  version = "1.9.5d";
 
   src = fetchurl {
     url = "http://www.warmplace.ru/soft/sunvox/sunvox-${version}.zip";
-    sha256 = "19ilif221nw8lvw0fgpjqzawibyvxk16aaylizwygf7c4j40wayi";
+    sha256 = "15pyc3dk4dqlivgzki8sv7xpwg3bbn5xv9338g16a0dbn7s3kich";
   };
 
   buildInputs = [ unzip ];
diff --git a/pkgs/applications/audio/svox/default.nix b/pkgs/applications/audio/svox/default.nix
index 3e9fe4725afd..0f8e51438830 100644
--- a/pkgs/applications/audio/svox/default.nix
+++ b/pkgs/applications/audio/svox/default.nix
@@ -35,7 +35,7 @@ stdenv.mkDerivation {
 
   meta = with stdenv.lib; {
     description = "Text-to-speech engine";
-    homepage = https://android.googlesource.com/platform/external/svox;
+    homepage = "https://android.googlesource.com/platform/external/svox";
     platforms = platforms.linux;
     license = licenses.asl20;
     maintainers = with maintainers; [ abbradar ];
diff --git a/pkgs/applications/audio/swh-lv2/default.nix b/pkgs/applications/audio/swh-lv2/default.nix
index b59752d7cc3e..02499d54476f 100644
--- a/pkgs/applications/audio/swh-lv2/default.nix
+++ b/pkgs/applications/audio/swh-lv2/default.nix
@@ -20,7 +20,7 @@ stdenv.mkDerivation rec {
   installPhase = "make install-system";
 
   meta = with stdenv.lib; {
-    homepage = http://plugin.org.uk;
+    homepage = "http://plugin.org.uk";
     description = "LV2 version of Steve Harris' SWH plugins";
     longDescription = ''
       SWH plugins include:
diff --git a/pkgs/applications/audio/synthv1/default.nix b/pkgs/applications/audio/synthv1/default.nix
index f58166a59846..6339dad7f378 100644
--- a/pkgs/applications/audio/synthv1/default.nix
+++ b/pkgs/applications/audio/synthv1/default.nix
@@ -2,11 +2,11 @@
 
 mkDerivation rec {
   pname = "synthv1";
-  version = "0.9.12";
+  version = "0.9.13";
 
   src = fetchurl {
     url = "mirror://sourceforge/synthv1/${pname}-${version}.tar.gz";
-    sha256 = "1amxrl1cqwgncw5437r572frgf6xhss3cfpbgh178i8phlq1q731";
+    sha256 = "0bb48myvgvqcibwm68qhd4852pjr2g19rasf059a799d1hzgfq3l";
   };
 
   buildInputs = [ qtbase qttools libjack2 alsaLib liblo lv2 ];
@@ -15,7 +15,7 @@ mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "An old-school 4-oscillator subtractive polyphonic synthesizer with stereo fx";
-    homepage = https://synthv1.sourceforge.io/;
+    homepage = "https://synthv1.sourceforge.io/";
     license = licenses.gpl2Plus;
     platforms = platforms.linux;
     maintainers = [ maintainers.goibhniu ];
diff --git a/pkgs/applications/audio/tambura/default.nix b/pkgs/applications/audio/tambura/default.nix
index 030bb2c01a72..96f9bb7053e0 100644
--- a/pkgs/applications/audio/tambura/default.nix
+++ b/pkgs/applications/audio/tambura/default.nix
@@ -26,7 +26,7 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "A FAUST patch inspired by the Indian Tambura/Tanpura - a four string drone instrument, known for its unique rich harmonic timbre";
-    homepage = https://github.com/olilarkin/Tambura;
+    homepage = "https://github.com/olilarkin/Tambura";
     license = licenses.gpl2;
     maintainers = [ maintainers.magnetophon ];
   };
diff --git a/pkgs/applications/audio/tetraproc/default.nix b/pkgs/applications/audio/tetraproc/default.nix
index 40362fdd4968..8780e54bb7c3 100644
--- a/pkgs/applications/audio/tetraproc/default.nix
+++ b/pkgs/applications/audio/tetraproc/default.nix
@@ -35,7 +35,7 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "Converts the A-format signals from a tetrahedral Ambisonic microphone into B-format signals ready for recording";
-    homepage = http://kokkinizita.linuxaudio.org/linuxaudio/;
+    homepage = "http://kokkinizita.linuxaudio.org/linuxaudio/";
     license = licenses.gpl2;
     maintainers = with maintainers; [ magnetophon ];
     platforms = platforms.linux;
diff --git a/pkgs/applications/audio/timemachine/default.nix b/pkgs/applications/audio/timemachine/default.nix
index 3564f875c9b4..8be43346bc04 100644
--- a/pkgs/applications/audio/timemachine/default.nix
+++ b/pkgs/applications/audio/timemachine/default.nix
@@ -23,7 +23,7 @@ stdenv.mkDerivation rec {
 
   meta = {
     description = "JACK audio recorder";
-    homepage = http://plugin.org.uk/timemachine/;
+    homepage = "http://plugin.org.uk/timemachine/";
     license = stdenv.lib.licenses.lgpl2;
     platforms = stdenv.lib.platforms.linux;
     maintainers = [ stdenv.lib.maintainers.nico202 ];
diff --git a/pkgs/applications/audio/tony/default.nix b/pkgs/applications/audio/tony/default.nix
new file mode 100644
index 000000000000..011d80253647
--- /dev/null
+++ b/pkgs/applications/audio/tony/default.nix
@@ -0,0 +1,37 @@
+{ stdenv, fetchurl, pkgconfig, wrapQtAppsHook
+, alsaLib, boost, bzip2, fftw, fftwFloat, libX11, libfishsound, libid3tag
+, libjack2, liblo, libmad, libogg, liboggz, libpulseaudio, libsamplerate
+, libsndfile, lrdf, opusfile, qtbase, qtsvg, rubberband, serd, sord
+}:
+
+stdenv.mkDerivation rec {
+  name = "tony-2.1.1";
+
+  src = fetchurl {
+    url = "https://code.soundsoftware.ac.uk/attachments/download/2616/${name}.tar.gz";
+    sha256 = "03g2bmlj08lmgvh54dyd635xccjn730g4wwlhpvsw04bffz8b7fp";
+  };
+
+  nativeBuildInputs = [ pkgconfig wrapQtAppsHook ];
+
+  buildInputs = [
+    alsaLib boost bzip2 fftw fftwFloat libX11 libfishsound libid3tag
+    libjack2 liblo libmad libogg liboggz libpulseaudio libsamplerate
+    libsndfile lrdf opusfile qtbase qtsvg rubberband serd sord
+  ];
+
+  # comment out the tests
+  preConfigure = ''
+    sed -i 's/sub_test_svcore_/#sub_test_svcore_/' tony.pro
+  '';
+
+  enableParallelBuilding = true;
+
+  meta = with stdenv.lib; {
+    description = "Pitch and note annotation of unaccompanied melody";
+    homepage = "https://www.sonicvisualiser.org/tony/";
+    license = licenses.gpl2Plus;
+    maintainers = with maintainers; [ orivej ];
+    platforms = platforms.linux;
+  };
+}
diff --git a/pkgs/applications/audio/transcode/default.nix b/pkgs/applications/audio/transcode/default.nix
index d7d5b65375e9..c7ee3914f25c 100644
--- a/pkgs/applications/audio/transcode/default.nix
+++ b/pkgs/applications/audio/transcode/default.nix
@@ -20,7 +20,7 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "Suite of command line utilities for transcoding video and audio codecs, and for converting between different container formats";
-    homepage = http://www.transcoding.org/;
+    homepage = "http://www.transcoding.org/";
     license = licenses.lgpl2Plus;
     platforms = platforms.linux;
   };
diff --git a/pkgs/applications/audio/transcribe/default.nix b/pkgs/applications/audio/transcribe/default.nix
index 8eb846ac9c56..d9469fa4b7ae 100644
--- a/pkgs/applications/audio/transcribe/default.nix
+++ b/pkgs/applications/audio/transcribe/default.nix
@@ -64,7 +64,7 @@ stdenv.mkDerivation rec {
       has many transcription-specific features not found on
       conventional music players.
     '';
-    homepage = https://www.seventhstring.com/xscribe/;
+    homepage = "https://www.seventhstring.com/xscribe/";
     license = licenses.unfree;
     platforms = platforms.linux;
     maintainers = with maintainers; [ michalrus ];
diff --git a/pkgs/applications/audio/traverso/default.nix b/pkgs/applications/audio/traverso/default.nix
index 9188003ce66d..63ba44bec35a 100644
--- a/pkgs/applications/audio/traverso/default.nix
+++ b/pkgs/applications/audio/traverso/default.nix
@@ -1,13 +1,13 @@
-{ stdenv, fetchurl, cmake, pkgconfig
+{ mkDerivation, stdenv, fetchurl, cmake, pkgconfig
 , alsaLib, fftw, flac, lame, libjack2, libmad, libpulseaudio
 , libsamplerate, libsndfile, libvorbis, portaudio, qtbase, wavpack
 }:
-stdenv.mkDerivation {
+mkDerivation {
   pname = "traverso";
   version = "0.49.6";
 
   src = fetchurl {
-    url = "http://traverso-daw.org/traverso-0.49.6.tar.gz";
+    url = "https://traverso-daw.org/traverso-0.49.6.tar.gz";
     sha256 = "12f7x8kw4fw1j0xkwjrp54cy4cv1ql0zwz2ba5arclk4pf6bhl7q";
   };
 
@@ -23,7 +23,7 @@ stdenv.mkDerivation {
 
   meta = with stdenv.lib; {
     description = "Cross-platform multitrack audio recording and audio editing suite";
-    homepage = http://traverso-daw.org/;
+    homepage = "https://traverso-daw.org/";
     license = with licenses; [ gpl2Plus lgpl21Plus ];
     platforms = platforms.all;
     maintainers = with maintainers; [ coconnor ];
diff --git a/pkgs/applications/audio/tree-from-tags/Gemfile.lock b/pkgs/applications/audio/tree-from-tags/Gemfile.lock
index 2ef77caa6f69..0ae90c1aebbe 100644
--- a/pkgs/applications/audio/tree-from-tags/Gemfile.lock
+++ b/pkgs/applications/audio/tree-from-tags/Gemfile.lock
@@ -10,4 +10,4 @@ DEPENDENCIES
   taglib-ruby
 
 BUNDLED WITH
-   1.16.3
+   2.1.4
diff --git a/pkgs/applications/audio/tree-from-tags/default.nix b/pkgs/applications/audio/tree-from-tags/default.nix
index 521133cb08fc..3b25b4218f19 100644
--- a/pkgs/applications/audio/tree-from-tags/default.nix
+++ b/pkgs/applications/audio/tree-from-tags/default.nix
@@ -30,7 +30,7 @@ EOF
 
   meta = with stdenv.lib; {
     description = "Create file hierarchies from media tags";
-    homepage = https://www.emacswiki.org/emacs/Bongo;
+    homepage = "https://www.emacswiki.org/emacs/Bongo";
     platforms = ruby.meta.platforms;
     maintainers = [ maintainers.livnev maintainers.dbrock ];
     license = licenses.gpl2Plus;
diff --git a/pkgs/applications/audio/uade123/default.nix b/pkgs/applications/audio/uade123/default.nix
index 844eea11f514..9130461e4d72 100644
--- a/pkgs/applications/audio/uade123/default.nix
+++ b/pkgs/applications/audio/uade123/default.nix
@@ -17,7 +17,7 @@ in stdenv.mkDerivation {
 
   meta = with stdenv.lib; {
     description = "Plays old Amiga tunes through UAE emulation and cloned m68k-assembler Eagleplayer API";
-    homepage = http://zakalwe.fi/uade/;
+    homepage = "http://zakalwe.fi/uade/";
     license = licenses.gpl2;
     maintainers = [ stdenv.lib.maintainers.gnidorah ];
     platforms = stdenv.lib.platforms.unix;
diff --git a/pkgs/applications/audio/vcv-rack/default.nix b/pkgs/applications/audio/vcv-rack/default.nix
index 21aa27fa5bc1..2aa09ec0be81 100644
--- a/pkgs/applications/audio/vcv-rack/default.nix
+++ b/pkgs/applications/audio/vcv-rack/default.nix
@@ -93,7 +93,7 @@ with stdenv.lib; stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "Open-source virtual modular synthesizer";
-    homepage = https://vcvrack.com/;
+    homepage = "https://vcvrack.com/";
     # The source is BSD-3 licensed, some of the art is CC-BY-NC 4.0 or under a
     # no-derivatives clause
     license = with licenses; [ bsd3 cc-by-nc-40 unfreeRedistributable ];
diff --git a/pkgs/applications/audio/vimpc/default.nix b/pkgs/applications/audio/vimpc/default.nix
index 7f02ea9cefec..bcbfa6d3874f 100644
--- a/pkgs/applications/audio/vimpc/default.nix
+++ b/pkgs/applications/audio/vimpc/default.nix
@@ -22,7 +22,7 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "A vi/vim inspired client for the Music Player Daemon (mpd)";
-    homepage = https://github.com/boysetsfrog/vimpc;
+    homepage = "https://github.com/boysetsfrog/vimpc";
     license = licenses.gpl3;
     platforms = platforms.linux;
     maintainers = with maintainers; [ pSub ];
diff --git a/pkgs/applications/audio/vkeybd/default.nix b/pkgs/applications/audio/vkeybd/default.nix
index 3f77a6574724..0e8f12823d1e 100644
--- a/pkgs/applications/audio/vkeybd/default.nix
+++ b/pkgs/applications/audio/vkeybd/default.nix
@@ -24,7 +24,7 @@ stdenv.mkDerivation  rec {
 
   meta = with stdenv.lib; {
     description = "Virtual MIDI keyboard";
-    homepage = https://www.alsa-project.org/~tiwai/alsa.html;
+    homepage = "https://www.alsa-project.org/~tiwai/alsa.html";
     license = licenses.gpl2Plus;
     platforms = platforms.linux;
     maintainers = [ maintainers.goibhniu ];
diff --git a/pkgs/applications/audio/vocal/default.nix b/pkgs/applications/audio/vocal/default.nix
index c928962c983c..6ef992ffff67 100644
--- a/pkgs/applications/audio/vocal/default.nix
+++ b/pkgs/applications/audio/vocal/default.nix
@@ -7,6 +7,7 @@
 , pantheon
 , gtk3
 , glib
+, glib-networking
 , libxml2
 , webkitgtk
 , clutter-gtk
@@ -56,6 +57,7 @@ stdenv.mkDerivation rec {
     pantheon.granite
     sqlite
     webkitgtk
+    glib-networking
   ];
 
   passthru = {
@@ -70,7 +72,7 @@ stdenv.mkDerivation rec {
     longDescription = ''
       Vocal is a powerful, fast, and intuitive application that helps users find new podcasts, manage their libraries, and enjoy the best that indepedent audio and video publishing has to offer. Vocal features full support for both episode downloading and streaming, native system integration, iTunes store search and top 100 charts (with international results support), iTunes link parsing, OPML importing and exporting, and so much more. Plus, it has great smart features like automatically keeping your library clean from old files, and the ability to set custom skip intervals.
     '';
-    homepage = https://github.com/needle-and-thread/vocal;
+    homepage = "https://github.com/needle-and-thread/vocal";
     license = licenses.gpl3Plus;
     maintainers = with maintainers; [ worldofpeace ];
     platforms = platforms.linux;
diff --git a/pkgs/applications/audio/vorbis-tools/default.nix b/pkgs/applications/audio/vorbis-tools/default.nix
index f815ac02e6e5..2270e56e62ac 100644
--- a/pkgs/applications/audio/vorbis-tools/default.nix
+++ b/pkgs/applications/audio/vorbis-tools/default.nix
@@ -3,14 +3,14 @@
 
 let
   debPatch = fetchzip {
-    url = "mirror://debian/pool/main/v/vorbis-tools/vorbis-tools_1.4.0-6.debian.tar.xz";
-    sha256 = "1xmmpdvxyr84lazlg23c6ck5ic97ga2rkiqabb1d98ix2zdzyqz5";
+    url = "mirror://debian/pool/main/v/vorbis-tools/vorbis-tools_1.4.0-11.debian.tar.xz";
+    sha256 = "0kvmd5nslyqplkdb7pnmqj47ir3y5lmaxd12wmrnqh679a8jhcyi";
   };
 in
 stdenv.mkDerivation {
   name = "vorbis-tools-1.4.0";
   src = fetchurl {
-    url = http://downloads.xiph.org/releases/vorbis/vorbis-tools-1.4.0.tar.gz;
+    url = "http://downloads.xiph.org/releases/vorbis/vorbis-tools-1.4.0.tar.gz";
     sha256 = "1g12bnh5ah08v529y72kfdz5lhvy75iaz7f9jskyby23m9dkk2d3";
   };
 
@@ -29,7 +29,7 @@ stdenv.mkDerivation {
       A set of command-line tools to manipulate Ogg Vorbis audio
       files, notably the `ogg123' player and the `oggenc' encoder.
     '';
-    homepage = https://xiph.org/vorbis/;
+    homepage = "https://xiph.org/vorbis/";
     license = licenses.gpl2;
     platforms = platforms.all;
   };
diff --git a/pkgs/applications/audio/waon/default.nix b/pkgs/applications/audio/waon/default.nix
index b27fdbffb7d6..bc05547e641d 100644
--- a/pkgs/applications/audio/waon/default.nix
+++ b/pkgs/applications/audio/waon/default.nix
@@ -22,7 +22,7 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "A Wave-to-Notes transcriber";
-    homepage = https://kichiki.github.io/WaoN/;
+    homepage = "https://kichiki.github.io/WaoN/";
     license = licenses.gpl2;
     maintainers = [ maintainers.puckipedia ];
     platforms = platforms.all;
diff --git a/pkgs/applications/audio/wavegain/default.nix b/pkgs/applications/audio/wavegain/default.nix
index 5f56fb7297f4..d9b13f532735 100644
--- a/pkgs/applications/audio/wavegain/default.nix
+++ b/pkgs/applications/audio/wavegain/default.nix
@@ -16,7 +16,7 @@ stdenv.mkDerivation {
 
   meta = {
     description = "ReplayGain for wave files";
-    homepage = https://github.com/MestreLion/wavegain;
+    homepage = "https://github.com/MestreLion/wavegain";
     license = stdenv.lib.licenses.lgpl21;
     platforms = stdenv.lib.platforms.linux;
     maintainers = [ stdenv.lib.maintainers.robbinch ];
diff --git a/pkgs/applications/audio/whipper/default.nix b/pkgs/applications/audio/whipper/default.nix
index ff278d4d7f23..5cbc9a07b6c7 100644
--- a/pkgs/applications/audio/whipper/default.nix
+++ b/pkgs/applications/audio/whipper/default.nix
@@ -53,7 +53,7 @@ python3.pkgs.buildPythonApplication rec {
   '';
 
   meta = with stdenv.lib; {
-    homepage = https://github.com/whipper-team/whipper;
+    homepage = "https://github.com/whipper-team/whipper";
     description = "A CD ripper aiming for accuracy over speed";
     maintainers = with maintainers; [ rycee emily ];
     license = licenses.gpl3Plus;
diff --git a/pkgs/applications/audio/wolf-shaper/default.nix b/pkgs/applications/audio/wolf-shaper/default.nix
index 13bf1d674c7c..7d42a3c4e7bf 100644
--- a/pkgs/applications/audio/wolf-shaper/default.nix
+++ b/pkgs/applications/audio/wolf-shaper/default.nix
@@ -38,7 +38,7 @@ stdenv.mkDerivation rec {
   '';
 
   meta = with stdenv.lib; {
-    homepage = https://pdesaulniers.github.io/wolf-shaper/;
+    homepage = "https://pdesaulniers.github.io/wolf-shaper/";
     description = "Waveshaper plugin with spline-based graph editor";
     license = licenses.gpl3;
     maintainers = [ maintainers.magnetophon ];
diff --git a/pkgs/applications/audio/x42-avldrums/default.nix b/pkgs/applications/audio/x42-avldrums/default.nix
new file mode 100644
index 000000000000..fb05a50b4e59
--- /dev/null
+++ b/pkgs/applications/audio/x42-avldrums/default.nix
@@ -0,0 +1,31 @@
+{ stdenv, fetchFromGitHub, pkgconfig, cairo, glib, libGLU, lv2, pango }:
+
+stdenv.mkDerivation rec {
+  pname = "x42-avldrums";
+  version = "0.4.1";
+
+  src = fetchFromGitHub {
+    owner = "x42";
+    repo = "avldrums.lv2";
+    rev = "v${version}";
+    sha256 = "1vwdp3d8qzd493qa99ddya7iql67bbfxmbcl8hk96lxif2lhmyws";
+    fetchSubmodules = true;
+  };
+
+  nativeBuildInputs = [ pkgconfig ];
+  buildInputs = [ cairo glib libGLU lv2 pango ];
+
+  makeFlags = [
+    "PREFIX=$(out)"
+  ];
+
+  enableParallelBuilding = true;
+
+  meta = with stdenv.lib; {
+    description = "Drum sample player LV2 plugin dedicated to Glen MacArthur's AVLdrums";
+    homepage = "https://x42-plugins.com/x42/x42-avldrums";
+    maintainers = with maintainers; [ magnetophon orivej ];
+    license = licenses.gpl2Plus;
+    platforms = platforms.linux;
+  };
+}
diff --git a/pkgs/applications/audio/x42-gmsynth/default.nix b/pkgs/applications/audio/x42-gmsynth/default.nix
new file mode 100644
index 000000000000..7a96e3fd4f2f
--- /dev/null
+++ b/pkgs/applications/audio/x42-gmsynth/default.nix
@@ -0,0 +1,30 @@
+{ stdenv, fetchFromGitHub, pkgconfig, glib, lv2 }:
+
+stdenv.mkDerivation rec {
+  pname = "x42-gmsynth";
+  version = "0.4.1";
+
+  src = fetchFromGitHub {
+    owner = "x42";
+    repo = "gmsynth.lv2";
+    rev = "v${version}";
+    sha256 = "08dvdj8r17sfl6l18g2b8abgls2irkbrq5vhrfai01hp2m0rlm34";
+  };
+
+  nativeBuildInputs = [ pkgconfig ];
+  buildInputs = [ glib lv2 ];
+
+  makeFlags = [
+    "PREFIX=$(out)"
+  ];
+
+  enableParallelBuilding = true;
+
+  meta = with stdenv.lib; {
+    description = "Chris Colins' General User soundfont player LV2 plugin";
+    homepage = "https://x42-plugins.com/x42/x42-gmsynth";
+    maintainers = with maintainers; [ orivej ];
+    license = licenses.gpl2Plus;
+    platforms = platforms.linux;
+  };
+}
diff --git a/pkgs/applications/audio/x42-plugins/default.nix b/pkgs/applications/audio/x42-plugins/default.nix
index f4087506daa3..20f87725f991 100644
--- a/pkgs/applications/audio/x42-plugins/default.nix
+++ b/pkgs/applications/audio/x42-plugins/default.nix
@@ -3,12 +3,12 @@
 , libGLU, lv2, gtk2, cairo, pango, fftwFloat, zita-convolver }:
 
 stdenv.mkDerivation rec {
-  version = "20200114";
+  version = "20200411";
   pname = "x42-plugins";
 
   src = fetchurl {
     url = "https://gareus.org/misc/x42-plugins/${pname}-${version}.tar.xz";
-    sha256 = "02f8wnsl9wg7pgf4sshr0hdjfjkwln870ffgjmb01nqk37v7hiyn";
+    sha256 = "0y6778l2zc80kvp31mqw3vkcyi7g613jxn3g3lxqfa31i617gh6j";
   };
 
   nativeBuildInputs = [ pkgconfig ];
@@ -26,14 +26,14 @@ stdenv.mkDerivation rec {
 
   patchPhase = ''
     patchShebangs ./stepseq.lv2/gridgen.sh
-    patchShebangs ./matrixmixer.lv2/genttl.sh #TODO: remove at next update, see https://github.com/x42/matrixmixer.lv2/issues/2
-    patchShebangs ./matrixmixer.lv2/genhead.sh #TODO: remove at next update, see https://github.com/x42/matrixmixer.lv2/issues/2
+    patchShebangs ./matrixmixer.lv2/genttl.sh
+    patchShebangs ./matrixmixer.lv2/genhead.sh
     sed -i 's|/usr/include/zita-convolver.h|${zita-convolver}/include/zita-convolver.h|g' ./convoLV2/Makefile
   '';
 
   meta = with stdenv.lib;
     { description = "Collection of LV2 plugins by Robin Gareus";
-      homepage = https://github.com/x42/x42-plugins;
+      homepage = "https://github.com/x42/x42-plugins";
       maintainers = with maintainers; [ magnetophon ];
       license = licenses.gpl2;
       platforms = [ "i686-linux" "x86_64-linux" ];
diff --git a/pkgs/applications/audio/yasr/default.nix b/pkgs/applications/audio/yasr/default.nix
index c8902f1dda4b..68423197f3c8 100644
--- a/pkgs/applications/audio/yasr/default.nix
+++ b/pkgs/applications/audio/yasr/default.nix
@@ -18,7 +18,7 @@ stdenv.mkDerivation rec {
   ]; # taken from the debian yasr package
 
   meta = {
-    homepage = http://yasr.sourceforge.net;
+    homepage = "http://yasr.sourceforge.net";
     description = "A general-purpose console screen reader";
     longDescription = "Yasr is a general-purpose console screen reader for GNU/Linux and other Unix-like operating systems.";
     platforms = stdenv.lib.platforms.linux;
diff --git a/pkgs/applications/audio/ympd/default.nix b/pkgs/applications/audio/ympd/default.nix
index 7976f7477171..8f86d6e7ba93 100644
--- a/pkgs/applications/audio/ympd/default.nix
+++ b/pkgs/applications/audio/ympd/default.nix
@@ -15,7 +15,7 @@ stdenv.mkDerivation rec {
   buildInputs = [ cmake mpd_clientlib openssl ];
 
   meta = {
-    homepage = https://www.ympd.org;
+    homepage = "https://www.ympd.org";
     description = "Standalone MPD Web GUI written in C, utilizing Websockets and Bootstrap/JS";
     maintainers = [ stdenv.lib.maintainers.siddharthist ];
     platforms = stdenv.lib.platforms.unix;
diff --git a/pkgs/applications/audio/yoshimi/default.nix b/pkgs/applications/audio/yoshimi/default.nix
index 40691be1a0c9..f8ea58fef3ce 100644
--- a/pkgs/applications/audio/yoshimi/default.nix
+++ b/pkgs/applications/audio/yoshimi/default.nix
@@ -36,7 +36,7 @@ stdenv.mkDerivation  rec {
       ZynAddSubFX along with very good Jack and Alsa midi/audio
       functionality on Linux
     '';
-    homepage = http://yoshimi.sourceforge.net;
+    homepage = "http://yoshimi.sourceforge.net";
     license = licenses.gpl2;
     platforms = platforms.linux;
     maintainers = [ maintainers.goibhniu ];
diff --git a/pkgs/applications/audio/zam-plugins/default.nix b/pkgs/applications/audio/zam-plugins/default.nix
index a8236b4b60f1..a34773513d93 100644
--- a/pkgs/applications/audio/zam-plugins/default.nix
+++ b/pkgs/applications/audio/zam-plugins/default.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation {
   pname = "zam-plugins";
-  version = "3.11";
+  version = "3.12";
 
   src = fetchgit {
     url = "https://github.com/zamaudio/zam-plugins.git";
     deepClone = true;
-    rev = "af338057e42dd5d07cba1889bfc74eda517c6147";
-    sha256 = "1qbskhcvy2k2xv0f32lw13smz5g72v0yy47zv6vnhnaiaqf3f2d5";
+    rev = "87fdee6e87dbee75c1088e2327ea59c1ab1522e4";
+    sha256 = "0kz0xygff3ca1v9nqi0dvrzy9whbzqxrls5b7hydi808d795893n";
   };
 
   nativeBuildInputs = [ pkgconfig ];
@@ -25,7 +25,7 @@ stdenv.mkDerivation {
   enableParallelBuilding = true;
 
   meta = with stdenv.lib; {
-    homepage = http://www.zamaudio.com/?p=976;
+    homepage = "http://www.zamaudio.com/?p=976";
     description = "A collection of LV2/LADSPA/VST/JACK audio plugins by ZamAudio";
     license = licenses.gpl2Plus;
     maintainers = [ maintainers.magnetophon ];
diff --git a/pkgs/applications/audio/zita-ajbridge/default.nix b/pkgs/applications/audio/zita-ajbridge/default.nix
new file mode 100644
index 000000000000..ad2ea53e9f7e
--- /dev/null
+++ b/pkgs/applications/audio/zita-ajbridge/default.nix
@@ -0,0 +1,31 @@
+{ stdenv, fetchurl, alsaLib, libjack2, zita-alsa-pcmi, zita-resampler }:
+
+stdenv.mkDerivation rec {
+  name = "zita-ajbridge-0.8.4";
+
+  src = fetchurl {
+    url = "https://kokkinizita.linuxaudio.org/linuxaudio/downloads/${name}.tar.bz2";
+    sha256 = "0g5v0l0zmqh049mhv62n8s5bpm0yrlby7mkxxhs5qwadp8v4w9mw";
+  };
+
+  buildInputs = [ alsaLib libjack2 zita-alsa-pcmi zita-resampler ];
+
+  preConfigure = ''
+    cd ./source/
+  '';
+
+  makeFlags = [
+    "PREFIX=$(out)"
+    "MANDIR=$(out)/share/man/man1"
+  ];
+
+  enableParallelBuilding = true;
+
+  meta = with stdenv.lib; {
+    description = "Connect additional ALSA devices to JACK";
+    homepage = "http://kokkinizita.linuxaudio.org/linuxaudio/index.html";
+    license = licenses.gpl3Plus;
+    maintainers = with maintainers; [ orivej ];
+    platforms = platforms.linux;
+  };
+}
diff --git a/pkgs/applications/audio/zita-at1/default.nix b/pkgs/applications/audio/zita-at1/default.nix
new file mode 100644
index 000000000000..d357febd882e
--- /dev/null
+++ b/pkgs/applications/audio/zita-at1/default.nix
@@ -0,0 +1,36 @@
+{ stdenv, fetchurl
+, cairo, fftwSinglePrec, libX11, libXft, libclthreads, libclxclient, libjack2
+, xorgproto, zita-resampler
+}:
+
+stdenv.mkDerivation rec {
+  name = "zita-at1-0.6.2";
+
+  src = fetchurl {
+    url = "https://kokkinizita.linuxaudio.org/linuxaudio/downloads/${name}.tar.bz2";
+    sha256 = "0mxfn61zvhlq3r1mqipyqzjbanrfdkk8x4nxbz8nlbdk0bf3vfqr";
+  };
+
+  buildInputs = [
+    cairo fftwSinglePrec libX11 libXft libclthreads libclxclient libjack2
+    xorgproto zita-resampler
+  ];
+
+  preConfigure = ''
+    cd ./source/
+  '';
+
+  makeFlags = [
+    "PREFIX=$(out)"
+  ];
+
+  enableParallelBuilding = true;
+
+  meta = with stdenv.lib; {
+    description = "Autotuner Jack application to correct the pitch of vocal tracks";
+    homepage = "https://kokkinizita.linuxaudio.org/linuxaudio/index.html";
+    license = licenses.gpl3Plus;
+    maintainers = with maintainers; [ orivej ];
+    platforms = platforms.linux;
+  };
+}
diff --git a/pkgs/applications/audio/zita-njbridge/default.nix b/pkgs/applications/audio/zita-njbridge/default.nix
index 1ec6946cf38c..3a293cfc026f 100644
--- a/pkgs/applications/audio/zita-njbridge/default.nix
+++ b/pkgs/applications/audio/zita-njbridge/default.nix
@@ -24,7 +24,7 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "command line Jack clients to transmit full quality multichannel audio over a local IP network";
-    homepage = http://kokkinizita.linuxaudio.org/linuxaudio/index.html;
+    homepage = "http://kokkinizita.linuxaudio.org/linuxaudio/index.html";
     license = licenses.gpl3;
     maintainers = [ maintainers.magnetophon ];
     platforms = platforms.linux;
diff --git a/pkgs/applications/audio/zynaddsubfx/default.nix b/pkgs/applications/audio/zynaddsubfx/default.nix
index e22bf9ed653a..9a432f73d3f0 100644
--- a/pkgs/applications/audio/zynaddsubfx/default.nix
+++ b/pkgs/applications/audio/zynaddsubfx/default.nix
@@ -22,7 +22,7 @@ stdenv.mkDerivation  rec {
 
   meta = with stdenv.lib; {
     description = "High quality software synthesizer";
-    homepage = http://zynaddsubfx.sourceforge.net;
+    homepage = "http://zynaddsubfx.sourceforge.net";
     license = licenses.gpl2;
     platforms = platforms.linux;
     maintainers = [ maintainers.goibhniu maintainers.nico202 ];
diff --git a/pkgs/applications/backup/areca/default.nix b/pkgs/applications/backup/areca/default.nix
index d02aa4b8444f..b4d644430dd1 100644
--- a/pkgs/applications/backup/areca/default.nix
+++ b/pkgs/applications/backup/areca/default.nix
@@ -45,7 +45,7 @@ stdenv.mkDerivation {
   '';
 
   meta = with stdenv.lib; {
-    homepage = http://www.areca-backup.org/;
+    homepage = "http://www.areca-backup.org/";
     description = "An Open Source personal backup solution";
     license = licenses.gpl2;
     maintainers = with maintainers; [ pSub ];
diff --git a/pkgs/applications/backup/vorta/default.nix b/pkgs/applications/backup/vorta/default.nix
new file mode 100644
index 000000000000..1a4d1832c7e1
--- /dev/null
+++ b/pkgs/applications/backup/vorta/default.nix
@@ -0,0 +1,42 @@
+{ buildPythonApplication, fetchFromGitHub, lib, paramiko, peewee, pyqt5
+, python-dateutil, APScheduler, psutil, qdarkstyle, secretstorage
+, appdirs, setuptools, qt5
+}:
+
+buildPythonApplication rec {
+  pname = "vorta";
+  version = "0.6.24";
+
+  src = fetchFromGitHub {
+    owner = "borgbase";
+    repo = "vorta";
+    rev = "v${version}";
+    sha256 = "1xc4cng4npc7g739qd909a8wim6s6sn8h8bb1wpxzg4gcnfyin8z";
+  };
+
+  postPatch = ''
+    sed -i -e '/setuptools_git/d' -e '/pytest-runner/d' setup.cfg
+  '';
+
+  nativeBuildInputs = [ qt5.wrapQtAppsHook ];
+
+  propagatedBuildInputs = [
+    paramiko peewee pyqt5 python-dateutil APScheduler psutil qdarkstyle
+    secretstorage appdirs setuptools
+  ];
+
+  # QT setup in tests broken.
+  doCheck = false;
+
+  postFixup = ''
+    wrapQtApp $out/bin/vorta
+  '';
+
+  meta = with lib; {
+    license = licenses.gpl3;
+    homepage = "https://vorta.borgbase.com/";
+    maintainers = with maintainers; [ ma27 ];
+    description = "Desktop Backup Client for Borg";
+    platforms = platforms.linux;
+  };
+}
diff --git a/pkgs/applications/blockchains/aeon/default.nix b/pkgs/applications/blockchains/aeon/default.nix
index db9e68ae9050..5e0c25466ebe 100644
--- a/pkgs/applications/blockchains/aeon/default.nix
+++ b/pkgs/applications/blockchains/aeon/default.nix
@@ -35,7 +35,7 @@ stdenv.mkDerivation {
 
   meta = with stdenv.lib; {
     description = "Private, secure, untraceable currency";
-    homepage = http://www.aeon.cash/;
+    homepage = "http://www.aeon.cash/";
     license = licenses.bsd3;
     maintainers = [ maintainers.aij ];
     platforms = [ "x86_64-linux" ];
diff --git a/pkgs/applications/blockchains/bitcoin-abc.nix b/pkgs/applications/blockchains/bitcoin-abc.nix
index 6b339091701c..aee73cecdfc7 100644
--- a/pkgs/applications/blockchains/bitcoin-abc.nix
+++ b/pkgs/applications/blockchains/bitcoin-abc.nix
@@ -7,13 +7,13 @@ with stdenv.lib;
 mkDerivation rec {
 
   name = "bitcoin" + (toString (optional (!withGui) "d")) + "-abc-" + version;
-  version = "0.20.12";
+  version = "0.21.5";
 
   src = fetchFromGitHub {
     owner = "bitcoin-ABC";
     repo = "bitcoin-abc";
     rev = "v${version}";
-    sha256 = "0ar3syrz7psf83bh24hn2y0mxjgn7cjqk2h8q4cgdp7mq55v8ynj";
+    sha256 = "1jx33n8dhn16iaxvmc56cxw0i5qk0ga5nf7qf9frwwq6zkglknga";
   };
 
   patches = [ ./fix-bitcoin-qt-build.patch ];
@@ -37,7 +37,7 @@ mkDerivation rec {
 
       Bitcoin ABC is a fork of the Bitcoin Core software project.
     '';
-    homepage = https://bitcoinabc.org/;
+    homepage = "https://bitcoinabc.org/";
     maintainers = with maintainers; [ lassulus ];
     license = licenses.mit;
     broken = stdenv.isDarwin;
diff --git a/pkgs/applications/blockchains/bitcoin-classic.nix b/pkgs/applications/blockchains/bitcoin-classic.nix
index ddce5c3f7150..01c1264567ce 100644
--- a/pkgs/applications/blockchains/bitcoin-classic.nix
+++ b/pkgs/applications/blockchains/bitcoin-classic.nix
@@ -45,7 +45,7 @@ stdenv.mkDerivation rec {
       will continue to release updates that are in line with Satoshi’s whitepaper &
       vision, and are agreed upon by the community.
     '';
-    homepage = https://bitcoinclassic.com/;
+    homepage = "https://bitcoinclassic.com/";
     maintainers = with maintainers; [ jefdaj ];
     license = licenses.mit;
     broken = stdenv.isDarwin;
diff --git a/pkgs/applications/blockchains/bitcoin-unlimited.nix b/pkgs/applications/blockchains/bitcoin-unlimited.nix
index c0d51e66db33..f755efaa0e12 100644
--- a/pkgs/applications/blockchains/bitcoin-unlimited.nix
+++ b/pkgs/applications/blockchains/bitcoin-unlimited.nix
@@ -57,7 +57,7 @@ stdenv.mkDerivation rec {
       support Bitcoin conflict resolution as originally envisioned by its founder -
       consider running a Bitcoin Unlimited client.
     '';
-    homepage = https://www.bitcoinunlimited.info/;
+    homepage = "https://www.bitcoinunlimited.info/";
     maintainers = with maintainers; [ DmitryTsygankov ];
     license = licenses.mit;
     broken = stdenv.isDarwin;
diff --git a/pkgs/applications/blockchains/bitcoin.nix b/pkgs/applications/blockchains/bitcoin.nix
index c1143f898e28..15094a1eee40 100644
--- a/pkgs/applications/blockchains/bitcoin.nix
+++ b/pkgs/applications/blockchains/bitcoin.nix
@@ -73,7 +73,7 @@ in stdenv.mkDerivation rec {
       parties. Users hold the crypto keys to their own money and transact directly
       with each other, with the help of a P2P network to check for double-spending.
     '';
-    homepage = http://www.bitcoin.org/;
+    homepage = "http://www.bitcoin.org/";
     maintainers = with maintainers; [ roconnor AndersonTorres ];
     license = licenses.mit;
     platforms = platforms.unix;
diff --git a/pkgs/applications/blockchains/btcdeb/default.nix b/pkgs/applications/blockchains/btcdeb/default.nix
new file mode 100644
index 000000000000..9a8db94401cd
--- /dev/null
+++ b/pkgs/applications/blockchains/btcdeb/default.nix
@@ -0,0 +1,30 @@
+{ stdenv
+, fetchFromGitHub
+, autoreconfHook
+, pkgconfig
+, openssl
+}:
+
+with stdenv.lib;
+stdenv.mkDerivation rec {
+  pname = "btcdeb";
+  version = "0.2.19";
+
+  src = fetchFromGitHub {
+    owner = "kallewoof";
+    repo = pname;
+    rev = "fb2dace4cd115dc9529a81515cee855b8ce94784";
+    sha256 = "0l0niamcjxmgyvc6w0wiygfgwsjam3ypv8mvjglgsj50gyv1vnb3";
+  };
+
+  nativeBuildInputs = [ pkgconfig autoreconfHook ];
+  buildInputs = [ openssl ];
+
+  meta = {
+    description = "Bitcoin Script Debugger";
+    homepage = "https://github.com/kallewoof/btcdeb";
+    license = licenses.mit;
+    maintainers = with maintainers; [ akru ];
+    platforms = platforms.unix;
+  };
+}
diff --git a/pkgs/applications/blockchains/clightning.nix b/pkgs/applications/blockchains/clightning.nix
index 0add60cc19e4..371bf11064de 100644
--- a/pkgs/applications/blockchains/clightning.nix
+++ b/pkgs/applications/blockchains/clightning.nix
@@ -4,11 +4,11 @@
 with stdenv.lib;
 stdenv.mkDerivation rec {
   pname = "clightning";
-  version = "0.8.1";
+  version = "0.8.2";
 
   src = fetchurl {
     url = "https://github.com/ElementsProject/lightning/releases/download/v${version}/clightning-v${version}.zip";
-    sha256 = "079d3yx7yr7qrilqgaayvn18lxl8h6a1gwwbsgm5xsyxj4vdlz7r";
+    sha256 = "1w5l3r3pnhnwz3x7mjgd69cw9a18fpyjwj7kmfka7cf9hdgcwp9x";
   };
 
   enableParallelBuilding = true;
@@ -42,7 +42,7 @@ stdenv.mkDerivation rec {
       Bitcoin, enabling secure and instant transfer of funds between any two
       parties for any amount.
     '';
-    homepage = https://github.com/ElementsProject/lightning;
+    homepage = "https://github.com/ElementsProject/lightning";
     maintainers = with maintainers; [ jb55 ];
     license = licenses.mit;
     platforms = platforms.linux;
diff --git a/pkgs/applications/blockchains/cryptop/default.nix b/pkgs/applications/blockchains/cryptop/default.nix
index 01c47b320de5..f0bcda579301 100644
--- a/pkgs/applications/blockchains/cryptop/default.nix
+++ b/pkgs/applications/blockchains/cryptop/default.nix
@@ -15,7 +15,7 @@ buildPythonApplication rec {
   doCheck = false;
 
   meta = {
-    homepage = https://github.com/huwwp/cryptop;
+    homepage = "https://github.com/huwwp/cryptop";
     description = "Command line Cryptocurrency Portfolio";
     license = with lib.licenses; [ mit ];
     maintainers = with lib.maintainers; [ bhipple ];
diff --git a/pkgs/applications/blockchains/dashpay.nix b/pkgs/applications/blockchains/dashpay.nix
index 03dcd6cb54e6..d0c3fed4350b 100644
--- a/pkgs/applications/blockchains/dashpay.nix
+++ b/pkgs/applications/blockchains/dashpay.nix
@@ -36,7 +36,7 @@ stdenv.mkDerivation rec {
       with instant transactions.  It allows you to keep your finances
       private as you make transactions without waits, similar to cash.
     '';
-    homepage = https://www.dash.org;
+    homepage = "https://www.dash.org";
     maintainers = with maintainers; [ AndersonTorres ];
     platforms = platforms.unix;
   };
diff --git a/pkgs/applications/blockchains/dcrwallet.nix b/pkgs/applications/blockchains/dcrwallet.nix
index 163ed2615d33..258aad8e1bd9 100644
--- a/pkgs/applications/blockchains/dcrwallet.nix
+++ b/pkgs/applications/blockchains/dcrwallet.nix
@@ -29,8 +29,8 @@ buildGoPackage rec {
   '';
 
   installPhase = ''
-    mkdir -pv $bin/bin
-    cp -v dcrwallet $bin/bin
+    mkdir -pv $out/bin
+    cp -v dcrwallet $out/bin
   '';
 
 
diff --git a/pkgs/applications/blockchains/dogecoin.nix b/pkgs/applications/blockchains/dogecoin.nix
index 02744e50647e..b1ebebdd213a 100644
--- a/pkgs/applications/blockchains/dogecoin.nix
+++ b/pkgs/applications/blockchains/dogecoin.nix
@@ -33,7 +33,7 @@ stdenv.mkDerivation rec {
       internet currency."
       It is named after a famous Internet meme, the "Doge" - a Shiba Inu dog.
     '';
-    homepage = http://www.dogecoin.com/;
+    homepage = "http://www.dogecoin.com/";
     license = licenses.mit;
     maintainers = with maintainers; [ edwtjo offline AndersonTorres ];
     platforms = platforms.linux;
diff --git a/pkgs/applications/blockchains/freicoin.nix b/pkgs/applications/blockchains/freicoin.nix
index 6cf84f76f919..cc28fff96c47 100644
--- a/pkgs/applications/blockchains/freicoin.nix
+++ b/pkgs/applications/blockchains/freicoin.nix
@@ -30,7 +30,7 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "Peer-to-peer currency with demurrage fee";
-    homepage = http://freicoi.in/;
+    homepage = "http://freicoi.in/";
     license = licenses.mit;
     maintainers = [ maintainers.viric ];
     platforms = platforms.linux;
diff --git a/pkgs/applications/blockchains/go-ethereum.nix b/pkgs/applications/blockchains/go-ethereum.nix
index f7f0aaf603ef..6a443571d0f2 100644
--- a/pkgs/applications/blockchains/go-ethereum.nix
+++ b/pkgs/applications/blockchains/go-ethereum.nix
@@ -2,18 +2,19 @@
 
 buildGoModule rec {
   pname = "go-ethereum";
-  version = "1.9.10";
+  version = "1.9.13";
 
   src = fetchFromGitHub {
     owner = "ethereum";
     repo = pname;
     rev = "v${version}";
-    sha256 = "0pm8gfr4g7rbax6vzxv6lklpx83mxghah7fyvpk3jqvm1mq299ln";
+    sha256 = "1yqqflp73yvjy6bp05xd1nv5fc6p1nx7g4spbssxf3ws96pdh425";
   };
 
-  modSha256 = "0zar9nvx2nk6kyijp8df3y2rzxvg0mccj6b3skhzf8y9c27hvrsg";
+  modSha256 = "07xrw3fivfpbkg4mp8ghrj1bishfas82dbd780fymgs2h74iigf3";
 
   subPackages = [
+    "cmd/abidump"
     "cmd/abigen"
     "cmd/bootnode"
     "cmd/checkpoint-admin"
diff --git a/pkgs/applications/blockchains/ledger-live-desktop/default.nix b/pkgs/applications/blockchains/ledger-live-desktop/default.nix
index 64562fc445ab..edc68f9d0c7a 100644
--- a/pkgs/applications/blockchains/ledger-live-desktop/default.nix
+++ b/pkgs/applications/blockchains/ledger-live-desktop/default.nix
@@ -2,12 +2,12 @@
 
 let
   pname = "ledger-live-desktop";
-  version = "1.20.0";
+  version = "2.1.0";
   name = "${pname}-${version}";
 
   src = fetchurl {
     url = "https://github.com/LedgerHQ/${pname}/releases/download/v${version}/${pname}-${version}-linux-x86_64.AppImage";
-    sha256 = "09mgd5nsd65w4irgzgmfz1k0r1k4fgkq490pkil8nqy6akjrsw1z";
+    sha256 = "1ywvdqmq8asczhmvc6ai2v6di1f5q19x3ygqlinwz8d1hrj3496r";
   };
 
   appimageContents = appimageTools.extractType2 {
diff --git a/pkgs/applications/blockchains/litecoin.nix b/pkgs/applications/blockchains/litecoin.nix
index 470772665413..ec1658b595d3 100644
--- a/pkgs/applications/blockchains/litecoin.nix
+++ b/pkgs/applications/blockchains/litecoin.nix
@@ -46,7 +46,7 @@ mkDerivation rec {
       the regular computers and GPUs most people already have.
       The Litecoin network is scheduled to produce 84 million currency units.
     '';
-    homepage = https://litecoin.org/;
+    homepage = "https://litecoin.org/";
     platforms = platforms.unix;
     license = licenses.mit;
     broken = stdenv.isDarwin;
diff --git a/pkgs/applications/blockchains/lnd.nix b/pkgs/applications/blockchains/lnd.nix
index dd45746c8df5..aff38e242f81 100644
--- a/pkgs/applications/blockchains/lnd.nix
+++ b/pkgs/applications/blockchains/lnd.nix
@@ -2,16 +2,18 @@
 
 buildGoModule rec {
   pname = "lnd";
-  version = "0.9.0-beta";
+  version = "0.10.0-beta";
 
   src = fetchFromGitHub {
     owner = "lightningnetwork";
     repo = "lnd";
     rev = "v${version}";
-    sha256 = "1hq105s9ykp6nsn4iicjnl3mwspqkbfsswkx7sgzv3jggg08fkq9";
+    sha256 = "1amciz924s2h6qhy7w34jpv1jc25p5ayfxzvjph6hhx0bccrm88w";
   };
 
-  modSha256 = "1pvcvpiz6ck8xkgpypchrq9kgkik0jxd7f3jhihbgldsh4zaqiaq";
+  modSha256 = "15i4h3pkvyav9qsbfinzifram0knkylg24j6j0mxs4bnj80j4ycm";
+
+  subPackages = ["cmd/lncli" "cmd/lnd"];
 
   meta = with lib; {
     description = "Lightning Network Daemon";
diff --git a/pkgs/applications/blockchains/mist.nix b/pkgs/applications/blockchains/mist.nix
index 2990b44c7f4c..9dd564d715cc 100644
--- a/pkgs/applications/blockchains/mist.nix
+++ b/pkgs/applications/blockchains/mist.nix
@@ -8,7 +8,7 @@ let
 
   meta = with stdenv.lib; {
     description = "Browse and use Ðapps on the Ethereum network";
-    homepage = https://github.com/ethereum/mist;
+    homepage = "https://github.com/ethereum/mist";
     license = licenses.gpl3;
     maintainers = with maintainers; [];
     platforms = [ "x86_64-linux" "i686-linux" ];
diff --git a/pkgs/applications/blockchains/monero-gui/default.nix b/pkgs/applications/blockchains/monero-gui/default.nix
index 0311169deb24..cfd3998ee368 100644
--- a/pkgs/applications/blockchains/monero-gui/default.nix
+++ b/pkgs/applications/blockchains/monero-gui/default.nix
@@ -1,36 +1,35 @@
-{ stdenv, wrapQtAppsHook, makeDesktopItem, fetchFromGitHub
-, qtbase, qmake, qtmultimedia, qttools
-, qtgraphicaleffects, qtdeclarative
-, qtlocation, qtquickcontrols, qtquickcontrols2
-, qtwebchannel, qtwebengine, qtx11extras, qtxmlpatterns
+{ stdenv, wrapQtAppsHook, makeDesktopItem
+, fetchFromGitHub, qmake, qttools, pkgconfig
+, qtbase, qtdeclarative, qtgraphicaleffects
+, qtmultimedia, qtxmlpatterns
+, qtquickcontrols, qtquickcontrols2
 , monero, unbound, readline, boost, libunwind
-, libsodium, pcsclite, zeromq, cppzmq, pkgconfig
-, hidapi, randomx
+, libsodium, pcsclite, zeromq, cppzmq
+, hidapi, libusb-compat-0_1, protobuf, randomx
 }:
 
 with stdenv.lib;
 
 stdenv.mkDerivation rec {
   pname = "monero-gui";
-  version = "0.15.0.1";
+  version = "0.15.0.4";
 
   src = fetchFromGitHub {
     owner  = "monero-project";
     repo   = "monero-gui";
     rev    = "v${version}";
-    sha256 = "08j8kkncdn57xql0bhmlzjpjkdfhqbpda1p07r797q8qi0nl4w8n";
+    sha256 = "12m5fgnxkr11q2arx1m5ccpxqm5ljcvm6l547dwqn297zs5jim4z";
   };
 
   nativeBuildInputs = [ qmake pkgconfig wrapQtAppsHook ];
 
   buildInputs = [
-    qtbase qtmultimedia qtgraphicaleffects
-    qtdeclarative qtlocation
-    qtquickcontrols qtquickcontrols2
-    qtwebchannel qtwebengine qtx11extras
-    qtxmlpatterns monero unbound readline
+    qtbase qtdeclarative qtgraphicaleffects
+    qtmultimedia qtquickcontrols qtquickcontrols2
+    qtxmlpatterns
+    monero unbound readline
     boost libunwind libsodium pcsclite zeromq
-    cppzmq hidapi randomx
+    cppzmq hidapi libusb-compat-0_1 protobuf randomx
   ];
 
   NIX_CFLAGS_COMPILE = [ "-Wno-error=format-security" ];
@@ -80,7 +79,7 @@ stdenv.mkDerivation rec {
 
   meta = {
     description  = "Private, secure, untraceable currency";
-    homepage     = https://getmonero.org/;
+    homepage     = "https://getmonero.org/";
     license      = licenses.bsd3;
     platforms    = platforms.all;
     badPlatforms = platforms.darwin;
diff --git a/pkgs/applications/blockchains/monero-gui/move-log-file.patch b/pkgs/applications/blockchains/monero-gui/move-log-file.patch
index e540f1960d6c..6d3313624e37 100644
--- a/pkgs/applications/blockchains/monero-gui/move-log-file.patch
+++ b/pkgs/applications/blockchains/monero-gui/move-log-file.patch
@@ -1,15 +1,14 @@
-diff --git a/main.cpp b/main.cpp
-index a51568d..5a9f683 100644
---- a/main.cpp
-+++ b/main.cpp
-@@ -152,7 +152,9 @@ int main(int argc, char *argv[])
+diff --git a/src/main/main.cpp b/src/main/main.cpp
+index c5210e5f..45794d72 100644
+--- a/src/main/main.cpp
++++ b/src/main/main.cpp
+@@ -220,6 +220,9 @@ int main(int argc, char *argv[])
      QCommandLineOption logPathOption(QStringList() << "l" << "log-file",
          QCoreApplication::translate("main", "Log to specified file"),
          QCoreApplication::translate("main", "file"));
--
 +    logPathOption.setDefaultValue(
 +        QStandardPaths::writableLocation(QStandardPaths::CacheLocation)
 +        + "/monero-wallet-gui.log");
-     parser.addOption(logPathOption);
-     parser.addHelpOption();
-     parser.process(app);
+ 
+     QCommandLineOption testQmlOption("test-qml");
+     testQmlOption.setFlags(QCommandLineOption::HiddenFromHelp);
diff --git a/pkgs/applications/blockchains/monero/default.nix b/pkgs/applications/blockchains/monero/default.nix
index 7eb4238679eb..d1abd3956570 100644
--- a/pkgs/applications/blockchains/monero/default.nix
+++ b/pkgs/applications/blockchains/monero/default.nix
@@ -2,7 +2,7 @@
 , cmake, pkgconfig
 , boost, miniupnpc, openssl, unbound, cppzmq
 , zeromq, pcsclite, readline, libsodium, hidapi
-, python3Packages, randomx, rapidjson
+, pythonProtobuf, randomx, rapidjson, libusb-compat-0_1
 , CoreData, IOKit, PCSC
 }:
 
@@ -26,7 +26,7 @@ stdenv.mkDerivation rec {
     boost miniupnpc openssl unbound
     cppzmq zeromq pcsclite readline
     libsodium hidapi randomx rapidjson
-    python3Packages.protobuf
+    pythonProtobuf libusb-compat-0_1
   ] ++ stdenv.lib.optionals stdenv.isDarwin [ IOKit CoreData PCSC ];
 
   cmakeFlags = [
@@ -37,7 +37,7 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "Private, secure, untraceable currency";
-    homepage    = https://getmonero.org/;
+    homepage    = "https://getmonero.org/";
     license     = licenses.bsd3;
     platforms   = platforms.all;
     maintainers = with maintainers; [ ehmry rnhmjoj ];
diff --git a/pkgs/applications/blockchains/namecoin.nix b/pkgs/applications/blockchains/namecoin.nix
index 4b8dc5525dc4..02f2249862d0 100644
--- a/pkgs/applications/blockchains/namecoin.nix
+++ b/pkgs/applications/blockchains/namecoin.nix
@@ -3,14 +3,14 @@
 
 with stdenv.lib;
 stdenv.mkDerivation rec {
-  version = "nc0.15.99-name-tab-beta2";
+  version = "nc0.19.1";
   name = "namecoin" + toString (optional (!withGui) "d") + "-" + version;
 
   src = fetchFromGitHub {
     owner = "namecoin";
     repo = "namecoin-core";
     rev = version;
-    sha256 = "1r0v0yvlazmidxp6xhapbdawqb8fhzrdp11d4an5vgxa208s6wdf";
+    sha256 = "13rdvngrl2w0gk7km3sd9fy8yxzgxlkcwn50ajsbrhgzl8kx4q7m";
   };
 
   nativeBuildInputs = [
@@ -40,7 +40,7 @@ stdenv.mkDerivation rec {
 
   meta = {
     description = "Decentralized open source information registration and transfer system based on the Bitcoin cryptocurrency";
-    homepage = https://namecoin.org;
+    homepage = "https://namecoin.org";
     license = licenses.mit;
     maintainers = with maintainers; [ doublec AndersonTorres infinisil ];
     platforms = platforms.linux;
diff --git a/pkgs/applications/blockchains/nano-wallet/default.nix b/pkgs/applications/blockchains/nano-wallet/default.nix
index 2b7ae5d9c6e6..664e26740629 100644
--- a/pkgs/applications/blockchains/nano-wallet/default.nix
+++ b/pkgs/applications/blockchains/nano-wallet/default.nix
@@ -4,13 +4,13 @@
 stdenv.mkDerivation rec {
 
   pname = "nano-wallet";
-  version = "19.0";
+  version = "20.0";
 
   src = fetchFromGitHub {
     owner = "nanocurrency";
     repo = "raiblocks";
     rev = "V${version}";
-    sha256 = "1y5fc4cvfqh33imjkh91sqhy5bb9kh0icwyvdgm1cl564vnjax80";
+    sha256 = "12nrjjd89yjzx20d85ccmp395pl0djpx0x0qb8dgka8xfy11k7xn";
     fetchSubmodules = true;
   };
 
@@ -53,7 +53,7 @@ stdenv.mkDerivation rec {
   meta = {
     inherit version;
     description = "Wallet for Nano cryptocurrency";
-    homepage = https://nano.org/en/wallet/;
+    homepage = "https://nano.org/en/wallet/";
     license = lib.licenses.bsd2;
     # Fails on Darwin. See:
     # https://github.com/NixOS/nixpkgs/pull/39295#issuecomment-386800962
diff --git a/pkgs/applications/blockchains/parity-ui/default.nix b/pkgs/applications/blockchains/parity-ui/default.nix
index 0615aed2ca03..b18c121607ab 100644
--- a/pkgs/applications/blockchains/parity-ui/default.nix
+++ b/pkgs/applications/blockchains/parity-ui/default.nix
@@ -40,7 +40,7 @@ in stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "UI for Parity. Fast, light, robust Ethereum implementation";
-    homepage = http://parity.io;
+    homepage = "http://parity.io";
     license = licenses.gpl3;
     maintainers = [ maintainers.sorpaas ];
     platforms = platforms.linux;
diff --git a/pkgs/applications/blockchains/particl/particl-core.nix b/pkgs/applications/blockchains/particl/particl-core.nix
index 613d57cd9c8c..f30e9a609808 100644
--- a/pkgs/applications/blockchains/particl/particl-core.nix
+++ b/pkgs/applications/blockchains/particl/particl-core.nix
@@ -17,11 +17,11 @@ with stdenv.lib;
 
 stdenv.mkDerivation rec {
   pname = "particl-core";
-  version = "0.17.1.2";
+  version = "0.19.1.1";
 
   src = fetchurl {
     url = "https://github.com/particl/particl-core/archive/v${version}.tar.gz";
-    sha256 = "16hcyxwp6yrypwvxz6i2987z3jmpk47xcgnsgh9klih8baqg64p5";
+    sha256 = "11y5q2srkh6r2samppjb5mg6hl79y16j2lj1r23p0968vb9c45kl";
   };
 
   nativeBuildInputs = [ pkgconfig autoreconfHook ];
@@ -45,7 +45,7 @@ stdenv.mkDerivation rec {
       An open source, decentralized privacy platform built for global person to person eCommerce.
       RPC daemon and CLI client only.
     '';
-    homepage = https://particl.io/;
+    homepage = "https://particl.io/";
     maintainers = with maintainers; [ demyanrogozhin ];
     license = licenses.mit;
     platforms = platforms.unix;
diff --git a/pkgs/applications/blockchains/pivx.nix b/pkgs/applications/blockchains/pivx.nix
index af8085232e99..600e462b390e 100644
--- a/pkgs/applications/blockchains/pivx.nix
+++ b/pkgs/applications/blockchains/pivx.nix
@@ -53,7 +53,7 @@ stdenv.mkDerivation rec {
       Zero Knowledge cryptography proofs for industry-leading transaction anonymity.
     '';
     license = licenses.mit;
-    homepage = https://www.dash.org;
+    homepage = "https://www.dash.org";
     maintainers = with maintainers; [ wucke13 ];
     platforms = platforms.unix;
     # TODO
diff --git a/pkgs/applications/blockchains/polkadot/default.nix b/pkgs/applications/blockchains/polkadot/default.nix
index cf83be9b50dc..a919a3054196 100644
--- a/pkgs/applications/blockchains/polkadot/default.nix
+++ b/pkgs/applications/blockchains/polkadot/default.nix
@@ -11,24 +11,27 @@ rustPlatform.buildRustPackage rec {
 
   src = fetchFromGitHub {
     owner = "paritytech";
+    # N.B. In 2018, the thing that was "polkadot" was split off into its own
+    # repo, so if this package is ever updated it should be changed to
+    # paritytech/polkadot, as per comment here:
+    # https://github.com/paritytech/polkadot#note
     repo = "substrate";
     rev = "19f4f4d4df3bb266086b4e488739f73d3d5e588c";
     sha256 = "0v7g03rbml2afw0splmyjh9nqpjg0ldjw09hyc0jqd3qlhgxiiyj";
-  }; 
-
-  # Delete this on next update; see #79975 for details
-  legacyCargoFetcher = true;
+  };
 
-  cargoSha256 = "0gc3w0cwdyk8f7cgpp9sfawczk3n6wd7q0nhfvk87sry71b8vvwq";
+  cargoSha256 = "1h5v7c7xi2r2wzh1pj6xidrg7dx23w3rjm88mggpq7574arijk4i";
 
   buildInputs = [ pkgconfig openssl openssl.dev ];
 
   meta = with stdenv.lib; {
     description = "Polkadot Node Implementation";
-    homepage = https://polkadot.network;
+    homepage = "https://polkadot.network";
     license = licenses.gpl3;
     maintainers = [ maintainers.akru ];
     platforms = platforms.linux;
+    # Last attempt at building this was on v0.7.22
+    # https://github.com/paritytech/polkadot/releases
     broken = true;
   };
 }
diff --git a/pkgs/applications/blockchains/quorum.nix b/pkgs/applications/blockchains/quorum.nix
new file mode 100644
index 000000000000..f745860f6612
--- /dev/null
+++ b/pkgs/applications/blockchains/quorum.nix
@@ -0,0 +1,35 @@
+{ stdenv, fetchFromGitHub, buildGoPackage, git, which }:
+  
+buildGoPackage rec {
+  pname = "quorum";
+  version = "2.5.0";
+
+  goPackagePath = "github.com/jpmorganchase/quorum";
+
+  src = fetchFromGitHub {
+    owner = "jpmorganchase";
+    repo = pname;
+    rev = "v${version}";
+    sha256 = "0xfdaqp9bj5dkw12gy19lxj73zh7w80j051xclsvnd41sfah86ll";
+  };
+
+  buildInputs = [ git which ];
+
+  buildPhase = ''
+    cd "go/src/$goPackagePath"
+    make geth bootnode swarm
+  '';
+
+  installPhase = ''
+    mkdir -pv $out/bin
+    cp -v build/bin/geth build/bin/bootnode build/bin/swarm $out/bin
+  '';
+
+  meta = with stdenv.lib; {
+    description = "A permissioned implementation of Ethereum supporting data privacy";
+    homepage = "https://www.goquorum.com/";
+    license = licenses.lgpl3;
+    maintainers = with maintainers; [ mmahut ];
+    platforms = subtractLists ["aarch64-linux"] platforms.linux;
+  };
+}
diff --git a/pkgs/applications/blockchains/stellar-core.nix b/pkgs/applications/blockchains/stellar-core.nix
index 4c3f9fe0760b..6bb717a0344b 100644
--- a/pkgs/applications/blockchains/stellar-core.nix
+++ b/pkgs/applications/blockchains/stellar-core.nix
@@ -39,7 +39,7 @@ in stdenv.mkDerivation {
       instances of stellar-core on the network. Optionally, stellar-core can
       store historical records of the ledger and participate in consensus.
     '';
-    homepage = https://www.stellar.org/;
+    homepage = "https://www.stellar.org/";
     platforms = [ "x86_64-linux" ];
     maintainers = with maintainers; [ chris-martin ];
     license = licenses.asl20;
diff --git a/pkgs/applications/blockchains/tessera.nix b/pkgs/applications/blockchains/tessera.nix
new file mode 100644
index 000000000000..84f7925d2180
--- /dev/null
+++ b/pkgs/applications/blockchains/tessera.nix
@@ -0,0 +1,26 @@
+{ stdenv, fetchurl, makeWrapper, jre }:
+
+stdenv.mkDerivation rec {
+  pname = "tessera";
+  version = "0.10.2";
+
+  src = fetchurl {
+    url = "https://oss.sonatype.org/service/local/repositories/releases/content/com/jpmorgan/quorum/${pname}-app/${version}/${pname}-app-${version}-app.jar";
+    sha256 = "1zn8w7q0q5man0407kb82lw4mlvyiy9whq2f6izf2b5415f9s0m4";
+  };
+
+  nativeBuildInputs = [ makeWrapper ];
+
+  dontUnpack = true;
+
+  installPhase = ''
+    makeWrapper ${jre}/bin/java $out/bin/tessera --add-flags "-jar $src"
+  '';
+
+  meta = with stdenv.lib; {
+    description = "Enterprise Implementation of Quorum's transaction manager";
+    homepage = "https://github.com/jpmorganchase/tessera";
+    license = licenses.asl20;
+    maintainers = with maintainers; [ mmahut ];
+  };
+}
diff --git a/pkgs/applications/blockchains/vertcoin.nix b/pkgs/applications/blockchains/vertcoin.nix
index 1b8b0376331a..21104012f4d2 100644
--- a/pkgs/applications/blockchains/vertcoin.nix
+++ b/pkgs/applications/blockchains/vertcoin.nix
@@ -19,7 +19,7 @@ with stdenv.lib;
 
 stdenv.mkDerivation rec {
   pname = "vertcoin";
-  version = "0.14.0";
+  version = "0.15.0.1";
 
   name = pname + toString (optional (!withGui) "d") + "-" + version;
 
@@ -27,7 +27,7 @@ stdenv.mkDerivation rec {
     owner = pname + "-project";
     repo = pname + "-core";
     rev = version;
-    sha256 = "00vnmrhn5mad58dyiz8rxgsrn0663ii6fdbcqm20mv1l313k4882";
+    sha256 = "09q7qicw52gv225hq6wlpsf4zr4hjc8miyim5cygi5nxxrlw7kd3";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/applications/blockchains/wownero.nix b/pkgs/applications/blockchains/wownero.nix
index eb813a361251..1094d7f0f7ba 100644
--- a/pkgs/applications/blockchains/wownero.nix
+++ b/pkgs/applications/blockchains/wownero.nix
@@ -39,7 +39,7 @@ stdenv.mkDerivation rec {
       signatures using different participants for the same tx outputs on
       opposing forks.
     '';
-    homepage    = https://wownero.org/;
+    homepage    = "https://wownero.org/";
     license     = licenses.bsd3;
     platforms   = platforms.linux;
     maintainers = with maintainers; [ fuwa ];
diff --git a/pkgs/applications/blockchains/zcash/default.nix b/pkgs/applications/blockchains/zcash/default.nix
index f6114b3c2134..e2c57d514cda 100644
--- a/pkgs/applications/blockchains/zcash/default.nix
+++ b/pkgs/applications/blockchains/zcash/default.nix
@@ -7,15 +7,19 @@ with stdenv.lib;
 stdenv.mkDerivation rec {
 
   pname = "zcash";
-  version = "2.1.0-1";
+  version = "2.1.1-1";
 
   src = fetchFromGitHub {
     owner = "zcash";
     repo  = "zcash";
     rev = "v${version}";
-    sha256 = "05bnn4lxrrcv1ha3jdfrgwg4ar576161n3j9d4gpc14ww3zgf9vz";
+    sha256 = "1g5zlfzfp31my8w8nlg5fncpr2y95iv9fm04x57sjb93rgmjdh5n";
   };
 
+  patchPhase = ''
+    sed -i"" 's,-fvisibility=hidden,,g'            src/Makefile.am
+  '';
+
   nativeBuildInputs = [ autoreconfHook pkgconfig ];
   buildInputs = [ gtest gmock gmp openssl wget db62 boost17x zlib
                   protobuf libevent libsodium librustzcash ]
@@ -23,17 +27,15 @@ stdenv.mkDerivation rec {
 
   configureFlags = [ "--with-boost-libdir=${boost17x.out}/lib" ];
 
-  patchPhase = ''
-    sed -i"" 's,-fvisibility=hidden,,g'            src/Makefile.am
-  '';
-
   postInstall = ''
     cp zcutil/fetch-params.sh $out/bin/zcash-fetch-params
   '';
 
+  enableParallelBuilding = true;
+
   meta = {
     description = "Peer-to-peer, anonymous electronic cash system";
-    homepage = https://z.cash/;
+    homepage = "https://z.cash/";
     maintainers = with maintainers; [ rht tkerber ];
     license = licenses.mit;
     platforms = platforms.linux;
diff --git a/pkgs/applications/blockchains/zcash/librustzcash/default.nix b/pkgs/applications/blockchains/zcash/librustzcash/default.nix
index 5032594468e7..526adc715d45 100644
--- a/pkgs/applications/blockchains/zcash/librustzcash/default.nix
+++ b/pkgs/applications/blockchains/zcash/librustzcash/default.nix
@@ -1,33 +1,31 @@
 { stdenv, fetchFromGitHub, rustPlatform }:
 
 rustPlatform.buildRustPackage rec {
-  pname = "librustzcash-unstable";
-  version = "2018-10-27";
+  pname = "librustzcash";
+  version = "0.1.0";
 
   src = fetchFromGitHub {
     owner = "zcash";
     repo = "librustzcash";
-    rev = "06da3b9ac8f278e5d4ae13088cf0a4c03d2c13f5";
-    sha256 = "0md0pp3k97iv7kfjpfkg14pjanhrql4vafa8ggbxpkajv1j4xldv";
+    rev = version;
+    sha256 = "0d28k29sgzrg9clynz29kpw50kbkp0a4dfdayqhmpjmsh05y6261";
   };
 
-  # Delete this on next update; see #79975 for details
-  legacyCargoFetcher = true;
-
-  cargoSha256 = "166v8cxlpfslbs5gljbh7wp0lxqakayw47ikxm9r9a39n7j36mq1";
+  cargoSha256 = "1wzyrcmcbrna6rjzw19c4lq30didzk4w6fs6wmvxp0xfg4qqdlax";
 
   installPhase = ''
     mkdir -p $out/lib
-    cp target/release/librustzcash.a $out/lib/
+    cp $releaseDir/librustzcash.a $out/lib/
     mkdir -p $out/include
     cp librustzcash/include/librustzcash.h $out/include/
   '';
 
+  # The tests do pass, but they take an extremely long time to run.
   doCheck = false;
 
   meta = with stdenv.lib; {
     description = "Rust-language assets for Zcash";
-    homepage = https://github.com/zcash/librustzcash;
+    homepage = "https://github.com/zcash/librustzcash";
     maintainers = with maintainers; [ rht tkerber ];
     license = with licenses; [ mit asl20 ];
     platforms = platforms.unix;
diff --git a/pkgs/applications/display-managers/lightdm-enso-os-greeter/default.nix b/pkgs/applications/display-managers/lightdm-enso-os-greeter/default.nix
index 3128f125cd9e..488ef4cfedd4 100644
--- a/pkgs/applications/display-managers/lightdm-enso-os-greeter/default.nix
+++ b/pkgs/applications/display-managers/lightdm-enso-os-greeter/default.nix
@@ -7,7 +7,7 @@ stdenv.mkDerivation {
   pname = "lightdm-enso-os-greeter";
 
   src = fetchgit {
-    url = https://github.com/nick92/Enso-OS;
+    url = "https://github.com/nick92/Enso-OS";
     rev = "ed48330bfd986072bd82ac542ed8f8a7365c6427";
     sha256 = "11jm181jq1vbn83h235avpdxz7pqq6prqyzki5yryy53mkj4kgxz";
   };
@@ -60,7 +60,7 @@ stdenv.mkDerivation {
       A fork of pantheon greeter that positions elements in a central and
       vertigal manner and adds a blur effect to the background
     '';
-    homepage = https://github.com/nick92/Enso-OS;
+    homepage = "https://github.com/nick92/Enso-OS";
     platforms = platforms.linux;
     license = licenses.gpl3;
     maintainers = with maintainers; [
diff --git a/pkgs/applications/display-managers/lightdm-mini-greeter/default.nix b/pkgs/applications/display-managers/lightdm-mini-greeter/default.nix
index b5b26d7cc430..256ecd59f4e9 100644
--- a/pkgs/applications/display-managers/lightdm-mini-greeter/default.nix
+++ b/pkgs/applications/display-managers/lightdm-mini-greeter/default.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation rec {
   pname = "lightdm-mini-greeter";
-  version = "0.3.4";
+  version = "0.4.0";
 
   src = fetchFromGitHub {
     owner = "prikhi";
     repo = "lightdm-mini-greeter";
     rev = version;
-    sha256 = "1qi0bsqi8z2zv3303ww0kd7bciz6qx8na5bkvgrqlwyvq31czai5";
+    sha256 = "10hga7pmfyjdvj4xwm3djwrhk50brcpycj3p3c57pa0vnx4ill3s";
   };
 
   nativeBuildInputs = [ autoreconfHook pkgconfig wrapGAppsHook ];
@@ -29,9 +29,10 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "A minimal, configurable, single-user GTK3 LightDM greeter";
-    homepage = https://github.com/prikhi/lightdm-mini-greeter;
+    homepage = "https://github.com/prikhi/lightdm-mini-greeter";
     license = licenses.gpl3;
     maintainers = with maintainers; [ mnacamura prikhi ];
     platforms = platforms.linux;
+    changelog = "https://github.com/prikhi/lightdm-mini-greeter/blob/master/CHANGELOG.md";
   };
 }
diff --git a/pkgs/applications/display-managers/lightdm-tiny-greeter/default.nix b/pkgs/applications/display-managers/lightdm-tiny-greeter/default.nix
new file mode 100644
index 000000000000..7e37d1348749
--- /dev/null
+++ b/pkgs/applications/display-managers/lightdm-tiny-greeter/default.nix
@@ -0,0 +1,46 @@
+{ stdenv, linkFarm, lightdm-tiny-greeter, fetchFromGitHub
+, pkgconfig, lightdm, gtk3, glib, wrapGAppsHook, conf ? "" }:
+
+stdenv.mkDerivation rec {
+  pname = "lightdm-tiny-greeter";
+  version = "1.2";
+
+  src = fetchFromGitHub {
+    owner = "off-world";
+    repo = "lightdm-tiny-greeter";
+    rev = version;
+    sha256 = "08azpj7b5qgac9bgi1xvd6qy6x2nb7iapa0v40ggr3d1fabyhrg6";
+  };
+
+  nativeBuildInputs = [ pkgconfig wrapGAppsHook ];
+  buildInputs = [ lightdm gtk3 glib ];
+
+  postUnpack = if conf != "" then ''
+    cp ${builtins.toFile "config.h" conf} source/config.h
+  '' else "";
+
+  buildPhase = ''
+    mkdir -p $out/bin $out/share/xgreeters
+    make ${pname}
+    mv ${pname} $out/bin/.
+    mv lightdm-tiny-greeter.desktop $out/share/xgreeters
+  '';
+
+  installPhase = ''
+    substituteInPlace "$out/share/xgreeters/lightdm-tiny-greeter.desktop" \
+      --replace "Exec=lightdm-tiny-greeter" "Exec=$out/bin/lightdm-tiny-greeter"
+  '';
+
+  passthru.xgreeters = linkFarm "lightdm-tiny-greeter-xgreeters" [{
+    path = "${lightdm-tiny-greeter}/share/xgreeters/lightdm-tiny-greeter.desktop";
+    name = "lightdm-tiny-greeter.desktop";
+  }];
+
+  meta = with stdenv.lib; {
+    description = "A tiny multi user lightdm greeter";
+    homepage = "https://github.com/off-world/lightdm-tiny-greeter";
+    license = licenses.bsd3;
+    maintainers = with maintainers; [ edwtjo ];
+    platforms = platforms.linux;
+  };
+}
diff --git a/pkgs/applications/display-managers/lightdm/default.nix b/pkgs/applications/display-managers/lightdm/default.nix
index c251af74b217..1a65ebd33577 100644
--- a/pkgs/applications/display-managers/lightdm/default.nix
+++ b/pkgs/applications/display-managers/lightdm/default.nix
@@ -128,7 +128,7 @@ stdenv.mkDerivation rec {
   '';
 
   meta = {
-    homepage = https://github.com/CanonicalLtd/lightdm;
+    homepage = "https://github.com/CanonicalLtd/lightdm";
     description = "A cross-desktop display manager";
     platforms = platforms.linux;
     license = licenses.gpl3;
diff --git a/pkgs/applications/display-managers/lightdm/gtk-greeter.nix b/pkgs/applications/display-managers/lightdm/gtk-greeter.nix
index be586bdac9bc..ab7dd90801ce 100644
--- a/pkgs/applications/display-managers/lightdm/gtk-greeter.nix
+++ b/pkgs/applications/display-managers/lightdm/gtk-greeter.nix
@@ -64,7 +64,7 @@ stdenv.mkDerivation rec {
   }];
 
   meta = with stdenv.lib; {
-    homepage = https://launchpad.net/lightdm-gtk-greeter;
+    homepage = "https://launchpad.net/lightdm-gtk-greeter";
     platforms = platforms.linux;
     license = licenses.gpl3;
     maintainers = with maintainers; [ ocharles ];
diff --git a/pkgs/applications/display-managers/ly/default.nix b/pkgs/applications/display-managers/ly/default.nix
index 2f0a770bc71c..f16dd62bb1a4 100644
--- a/pkgs/applications/display-managers/ly/default.nix
+++ b/pkgs/applications/display-managers/ly/default.nix
@@ -23,7 +23,7 @@ stdenv.mkDerivation rec {
   meta = with lib; {
     description = "TUI display manager";
     license = licenses.wtfpl;
-    homepage = https://github.com/cylgom/ly;
+    homepage = "https://github.com/cylgom/ly";
     maintainers = [ maintainers.spacekookie ];
   };
 }
diff --git a/pkgs/applications/display-managers/sddm/default.nix b/pkgs/applications/display-managers/sddm/default.nix
index 735e83a0842a..3ebeaa6262b7 100644
--- a/pkgs/applications/display-managers/sddm/default.nix
+++ b/pkgs/applications/display-managers/sddm/default.nix
@@ -60,7 +60,7 @@ in mkDerivation {
 
   meta = with lib; {
     description = "QML based X11 display manager";
-    homepage    = https://github.com/sddm/sddm;
+    homepage    = "https://github.com/sddm/sddm";
     maintainers = with maintainers; [ abbradar ttuegel ];
     platforms   = platforms.linux;
     license     = licenses.gpl2Plus;
diff --git a/pkgs/applications/editors/aewan/default.nix b/pkgs/applications/editors/aewan/default.nix
index 1bd73bebe03b..56a144bdfb8d 100644
--- a/pkgs/applications/editors/aewan/default.nix
+++ b/pkgs/applications/editors/aewan/default.nix
@@ -13,7 +13,7 @@ stdenv.mkDerivation rec {
 
   meta = {
     description = "Ascii-art Editor Without A Name";
-    homepage = http://aewan.sourceforge.net/;
+    homepage = "http://aewan.sourceforge.net/";
     license = stdenv.lib.licenses.gpl2Plus;
     platforms = stdenv.lib.platforms.unix;
   };
diff --git a/pkgs/applications/editors/amp/default.nix b/pkgs/applications/editors/amp/default.nix
index e4248e32447c..9be6d56ab345 100644
--- a/pkgs/applications/editors/amp/default.nix
+++ b/pkgs/applications/editors/amp/default.nix
@@ -3,22 +3,19 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "amp";
-  version = "0.6.1";
+  version = "0.6.2";
 
   src = fetchFromGitHub {
     owner = "jmacdonald";
     repo = pname;
     rev = version;
-    sha256 = "0jhxyl27nwp7rp0lc3kic69g8x55d0azrwlwwhz3z74icqa8f03j";
+    sha256 = "0l1vpcfq6jrq2dkrmsa4ghwdpp7c54f46gz3n7nk0i41b12hnigw";
   };
 
-  # Delete this on next update; see #79975 for details
-  legacyCargoFetcher = true;
+  cargoSha256 = "09v991rl2w4c4jh7ga7q1lk6wyl2vr71j5cpniij8mcvszrz78qf";
 
-  cargoSha256 = "0rk5c8knx8swqzmj7wd18hq2h5ndkzvcbq4lzggpavkk01a8hlb1";
-
-  nativeBuildInputs = [ cmake pkgconfig ];
-  buildInputs = [ openssl python3 xorg.libxcb libgit2 ] ++ stdenv.lib.optionals stdenv.isDarwin
+  nativeBuildInputs = [ cmake pkgconfig python3 ];
+  buildInputs = [ openssl xorg.libxcb libgit2 ] ++ stdenv.lib.optionals stdenv.isDarwin
     (with darwin.apple_sdk.frameworks; [ curl Security AppKit ]);
 
   # Tests need to write to the theme directory in HOME.
diff --git a/pkgs/applications/editors/android-studio/common.nix b/pkgs/applications/editors/android-studio/common.nix
index bd1685f7cdbe..1a6904b21768 100644
--- a/pkgs/applications/editors/android-studio/common.nix
+++ b/pkgs/applications/editors/android-studio/common.nix
@@ -39,6 +39,7 @@
 , nss
 , pciutils
 , pkgsi686Linux
+, ps
 , setxkbmap
 , stdenv
 , systemd
@@ -89,6 +90,7 @@ let
 
           # Runtime stuff
           git
+          ps
         ]}" \
         --prefix LD_LIBRARY_PATH : "${stdenv.lib.makeLibraryPath [
 
@@ -185,9 +187,16 @@ in runCommand
         IntelliJ IDEA.
       '';
       homepage = if channel == "stable"
-        then https://developer.android.com/studio/index.html
-        else https://developer.android.com/studio/preview/index.html;
-      license = licenses.asl20;
+        then "https://developer.android.com/studio/index.html"
+        else "https://developer.android.com/studio/preview/index.html";
+      license = with licenses; [ asl20 unfree ]; # The code is under Apache-2.0, but:
+      # If one selects Help -> Licenses in Android Studio, the dialog shows the following:
+      # "Android Studio includes proprietary code subject to separate license,
+      # including JetBrains CLion(R) (www.jetbrains.com/clion) and IntelliJ(R)
+      # IDEA Community Edition (www.jetbrains.com/idea)."
+      # Also: For actual development the Android SDK is required and the Google
+      # binaries are also distributed as proprietary software (unlike the
+      # source-code itself).
       platforms = [ "x86_64-linux" ];
       maintainers = with maintainers; [ primeos ];
     };
diff --git a/pkgs/applications/editors/android-studio/default.nix b/pkgs/applications/editors/android-studio/default.nix
index 5736ec1dccc7..cd6b46880b44 100644
--- a/pkgs/applications/editors/android-studio/default.nix
+++ b/pkgs/applications/editors/android-studio/default.nix
@@ -8,19 +8,19 @@ let
     inherit (gnome2) GConf gnome_vfs;
   };
   stableVersion = {
-    version = "3.6.1.0"; # "Android Studio 3.6.1"
-    build = "192.6241897";
-    sha256Hash = "1mwzk18224bl8hbw9cdxwzgj5cfain4y70q64cpj4p0snffxqm77";
+    version = "3.6.3.0"; # "Android Studio 3.6.3"
+    build = "192.6392135";
+    sha256Hash = "0apxmp341m7mbpm2df3qvsbaifwy6yqq746kbhbwlw8bn9hrzv1k";
   };
   betaVersion = {
-    version = "4.0.0.10"; # "Android Studio 4.0 Beta 1"
-    build = "193.6220182";
-    sha256Hash = "0ibp54wcss4ihm454hbavv1bhar6cd4alp5b0z248ryjr5w9mixf";
+    version = "4.0.0.14"; # "Android Studio 4.0 Beta 5"
+    build = "193.6401094";
+    sha256Hash = "11fmpf58z44i78ldkapzivz6md65744vqczzbwv8mkjkv9nz95rs";
   };
   latestVersion = { # canary & dev
-    version = "4.1.0.1"; # "Android Studio 4.1 Canary 1"
-    build = "193.6224510";
-    sha256Hash = "0misff7xx8jcg4zr5ahc8qdwvlkx605il0shzd9i1cm9v1br3sqx";
+    version = "4.1.0.8"; # "Android Studio 4.1 Canary 8"
+    build = "193.6423924";
+    sha256Hash = "0ksgmhz9vhkw2mxzjapli0w6203ssd8ddgb0dq06rck8v7ysy8bp";
   };
 in {
   # Attributes are named by their corresponding release channels
diff --git a/pkgs/applications/editors/uberwriter/default.nix b/pkgs/applications/editors/apostrophe/default.nix
index 48ebc79e7050..391a87345632 100644
--- a/pkgs/applications/editors/uberwriter/default.nix
+++ b/pkgs/applications/editors/apostrophe/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchFromGitHub, meson, ninja, cmake
+{ stdenv, fetchFromGitLab, meson, ninja, cmake
 , wrapGAppsHook, pkgconfig, desktop-file-utils
 , appstream-glib, pythonPackages, glib, gobject-introspection
 , gtk3, webkitgtk, glib-networking, gnome3, gspell, texlive
@@ -10,14 +10,15 @@ let
   texliveDist = texlive.combined.scheme-medium;
 
 in stdenv.mkDerivation rec {
-  pname = "uberwriter";
-  version = "unstable-2020-01-24";
+  pname = "apostrophe";
+  version = "2.2.0.2";
 
-  src = fetchFromGitHub {
-    owner  = pname;
+  src = fetchFromGitLab {
+    owner  = "somas";
     repo   = pname;
-    rev    = "0647b413407eb8789a25c353602c4ac979dc342a";
-    sha256 = "19z52fpbf0p7dzx7q0r5pk3nn0c8z69g1hv6db0cqp61cqv5z95q";
+    domain = "gitlab.gnome.org";
+    rev    = "v${version}";
+    sha256 = "13wvfkg0jw9mayd9ifzkqnhf8fmfjgr1lsj4niqbyrw130y9r9f6";
   };
 
   nativeBuildInputs = [ meson ninja cmake pkgconfig desktop-file-utils
@@ -30,10 +31,10 @@ in stdenv.mkDerivation rec {
   postPatch = ''
     patchShebangs --build build-aux/meson_post_install.py
 
-    substituteInPlace uberwriter/config.py --replace "/usr/share/uberwriter" "$out/share/uberwriter"
+    substituteInPlace ${pname}/config.py --replace "/usr/share/${pname}" "$out/share/${pname}"
 
     # get rid of unused distributed dependencies
-    rm -r uberwriter/{pylocales,pressagio}
+    rm -r ${pname}/pylocales
   '';
 
   preFixup = ''
@@ -46,7 +47,7 @@ in stdenv.mkDerivation rec {
   '';
 
   meta = with stdenv.lib; {
-    homepage = http://uberwriter.github.io/uberwriter/;
+    homepage = "https://gitlab.gnome.org/somas/apostrophe";
     description = "A distraction free Markdown editor for GNU/Linux";
     license = licenses.gpl3;
     platforms = platforms.linux;
diff --git a/pkgs/applications/editors/aseprite/default.nix b/pkgs/applications/editors/aseprite/default.nix
index 6e6d7db81770..4ba8932fec25 100644
--- a/pkgs/applications/editors/aseprite/default.nix
+++ b/pkgs/applications/editors/aseprite/default.nix
@@ -98,8 +98,10 @@ stdenv.mkDerivation rec {
 
   enableParallelBuilding = true;
 
+  passthru = { inherit skia; };
+
   meta = with lib; {
-    homepage = https://www.aseprite.org/;
+    homepage = "https://www.aseprite.org/";
     description = "Animated sprite editor & pixel art tool";
     license = if unfree then licenses.unfree else licenses.gpl2;
     longDescription =
diff --git a/pkgs/applications/editors/aseprite/skia.nix b/pkgs/applications/editors/aseprite/skia.nix
index c89ebd4ad0c1..141d51bed0f8 100644
--- a/pkgs/applications/editors/aseprite/skia.nix
+++ b/pkgs/applications/editors/aseprite/skia.nix
@@ -6,6 +6,14 @@
 let
   # skia-deps.nix is generated by: ./skia-make-deps.sh 'angle2|dng_sdk|piex|sfntly'
   depSrcs = import ./skia-deps.nix { inherit fetchgit; };
+  gnOld = gn.overrideAttrs (oldAttrs: rec {
+    version = "20190403";
+    src = fetchgit {
+      url = "https://gn.googlesource.com/gn";
+      rev = "64b846c96daeb3eaf08e26d8a84d8451c6cb712b";
+      sha256 = "1v2kzsshhxn0ck6gd5w16gi2m3higwd9vkyylmsczxfxnw8skgpy";
+    };
+  });
 in
 stdenv.mkDerivation {
   name = "skia-aseprite-m71";
@@ -14,11 +22,11 @@ stdenv.mkDerivation {
     owner = "aseprite";
     repo = "skia";
     # latest commit from aseprite-m71 branch
-    rev = "89e4ca4352d05adc892f5983b108433f29b2c0c2";
+    rev = "89e4ca4352d05adc892f5983b108433f29b2c0c2"; # TODO: Remove the gnOld override
     sha256 = "0n3vrkswvi6rib9zv2pzi18h3j5wm7flmgkgaikcm6q7iw4l2c7x";
   };
 
-  nativeBuildInputs = [ python2 gn ninja ];
+  nativeBuildInputs = [ python2 gnOld ninja ];
 
   buildInputs = [
     fontconfig expat icu58 libglvnd libjpeg libpng libwebp zlib
diff --git a/pkgs/applications/editors/atom/default.nix b/pkgs/applications/editors/atom/default.nix
index 0a7e362e75ad..fbe08dbfe7b7 100644
--- a/pkgs/applications/editors/atom/default.nix
+++ b/pkgs/applications/editors/atom/default.nix
@@ -74,7 +74,7 @@ let
 
     meta = with stdenv.lib; {
       description = "A hackable text editor for the 21st Century";
-      homepage = https://atom.io/;
+      homepage = "https://atom.io/";
       license = licenses.mit;
       maintainers = with maintainers; [ offline nequissimus ysndr ];
       platforms = platforms.x86_64;
diff --git a/pkgs/applications/editors/bluefish/default.nix b/pkgs/applications/editors/bluefish/default.nix
index f78f7fbf9148..c7ac671c15bf 100644
--- a/pkgs/applications/editors/bluefish/default.nix
+++ b/pkgs/applications/editors/bluefish/default.nix
@@ -3,11 +3,11 @@
 }:
 
 stdenv.mkDerivation rec {
-  name = "bluefish-2.2.10";
+  name = "bluefish-2.2.11";
 
   src = fetchurl {
     url = "mirror://sourceforge/bluefish/${name}.tar.bz2";
-    sha256 = "1ciygj79q6i3ga5x1j8aivc05nh6rhhnm7hrq8q8xd9vd4ms3v5g";
+    sha256 = "1zy2ppdg3nq9iy3zgfhnw93bq5zbbhyampf7bk3grpfvq5zqfk25";
   };
 
   nativeBuildInputs = [ intltool pkgconfig wrapGAppsHook ];
@@ -16,7 +16,7 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "A powerful editor targeted towards programmers and webdevelopers";
-    homepage = http://bluefish.openoffice.nl/;
+    homepage = "http://bluefish.openoffice.nl/";
     license = licenses.gpl3Plus;
     maintainers = [maintainers.vbgl];
     platforms = platforms.all;
diff --git a/pkgs/applications/editors/brackets/default.nix b/pkgs/applications/editors/brackets/default.nix
index 439b721632d0..3e01bcdb0f9d 100644
--- a/pkgs/applications/editors/brackets/default.nix
+++ b/pkgs/applications/editors/brackets/default.nix
@@ -50,7 +50,7 @@ stdenv.mkDerivation rec {
 
   meta = {
     description = "An open source code editor for the web, written in JavaScript, HTML and CSS";
-    homepage = http://brackets.io/;
+    homepage = "http://brackets.io/";
     license = licenses.mit;
     maintainers = [ maintainers.matejc ];
     platforms = [ "x86_64-linux" ];
diff --git a/pkgs/applications/editors/bvi/default.nix b/pkgs/applications/editors/bvi/default.nix
index 2e79b80d6105..8a61e0252bc3 100644
--- a/pkgs/applications/editors/bvi/default.nix
+++ b/pkgs/applications/editors/bvi/default.nix
@@ -13,7 +13,7 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "Hex editor with vim style keybindings";
-    homepage = http://bvi.sourceforge.net/download.html;
+    homepage = "http://bvi.sourceforge.net/download.html";
     license = licenses.gpl2;
     maintainers = with maintainers; [ pSub ];
     platforms = with platforms; linux ++ darwin;
diff --git a/pkgs/applications/editors/bviplus/default.nix b/pkgs/applications/editors/bviplus/default.nix
index 5fab7fe9da62..2cf094c091a6 100644
--- a/pkgs/applications/editors/bviplus/default.nix
+++ b/pkgs/applications/editors/bviplus/default.nix
@@ -19,7 +19,7 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "Ncurses based hex editor with a vim-like interface";
-    homepage = http://bviplus.sourceforge.net;
+    homepage = "http://bviplus.sourceforge.net";
     license = licenses.gpl3;
     platforms = platforms.linux;
     maintainers = with maintainers; [ cstrahan ];
diff --git a/pkgs/applications/editors/codeblocks/default.nix b/pkgs/applications/editors/codeblocks/default.nix
index cbed08f317fa..4e2ac8a50f14 100644
--- a/pkgs/applications/editors/codeblocks/default.nix
+++ b/pkgs/applications/editors/codeblocks/default.nix
@@ -34,7 +34,7 @@ stdenv.mkDerivation rec {
         It is designed to be very extensible and fully configurable.
         Finally, an IDE with all the features you need, having a consistent look, feel and operation across platforms.
       '';
-    homepage = http://www.codeblocks.org;
+    homepage = "http://www.codeblocks.org";
     license = licenses.gpl3;
   };
 }
diff --git a/pkgs/applications/editors/dhex/default.nix b/pkgs/applications/editors/dhex/default.nix
index efb3a2f9ffab..0a635b7ba82e 100644
--- a/pkgs/applications/editors/dhex/default.nix
+++ b/pkgs/applications/editors/dhex/default.nix
@@ -25,7 +25,7 @@ stdenv.mkDerivation rec {
 
   meta = {
     description = "A themeable hex editor with diff mode";
-    homepage = http://www.dettus.net/dhex/;
+    homepage = "http://www.dettus.net/dhex/";
     license = stdenv.lib.licenses.gpl2;
     maintainers = with stdenv.lib.maintainers; [qknight];
     platforms = with stdenv.lib.platforms; linux;
diff --git a/pkgs/applications/editors/dit/default.nix b/pkgs/applications/editors/dit/default.nix
index 2f83b0b8d992..f973e67599c2 100644
--- a/pkgs/applications/editors/dit/default.nix
+++ b/pkgs/applications/editors/dit/default.nix
@@ -2,11 +2,11 @@
 
 stdenv.mkDerivation rec {
   pname = "dit";
-  version = "0.5";
+  version = "0.6";
 
   src = fetchurl {
     url = "https://hisham.hm/dit/releases/${version}/${pname}-${version}.tar.gz";
-    sha256 = "05vhr1gl3bb5fg49v84xhmjaqdjw6djampvylw10ydvbpnpvjvjc";
+    sha256 = "0ryvm54xxkg2gcgz4r8zdxrl6j2h8mgg9nfqmdmdr31qkcj8wjsq";
   };
 
   buildInputs = [ ncurses lua ]
@@ -20,7 +20,7 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "A console text editor for Unix that you already know how to use";
-    homepage = https://hisham.hm/dit/;
+    homepage = "https://hisham.hm/dit/";
     license = licenses.gpl2;
     platforms = with platforms; linux;
     maintainers = with maintainers; [ davidak ];
diff --git a/pkgs/applications/editors/eclipse/build-eclipse.nix b/pkgs/applications/editors/eclipse/build-eclipse.nix
index 6ae9eb078e26..8b6a0c164e90 100644
--- a/pkgs/applications/editors/eclipse/build-eclipse.nix
+++ b/pkgs/applications/editors/eclipse/build-eclipse.nix
@@ -1,5 +1,5 @@
 { stdenv, makeDesktopItem, freetype, fontconfig, libX11, libXrender
-, zlib, jdk, glib, gtk3, libXtst, gsettings-desktop-schemas, webkitgtk
+, zlib, jdk, glib, gtk, libXtst, gsettings-desktop-schemas, webkitgtk
 , makeWrapper, ... }:
 
 { name, src ? builtins.getAttr stdenv.hostPlatform.system sources, sources ? null, description }:
@@ -18,7 +18,7 @@ stdenv.mkDerivation rec {
   };
 
   buildInputs = [
-    fontconfig freetype glib gsettings-desktop-schemas gtk3 jdk libX11
+    fontconfig freetype glib gsettings-desktop-schemas gtk jdk libX11
     libXrender libXtst makeWrapper zlib
   ] ++ stdenv.lib.optional (webkitgtk != null) webkitgtk;
 
@@ -41,7 +41,7 @@ stdenv.mkDerivation rec {
 
     makeWrapper $out/eclipse/eclipse $out/bin/eclipse \
       --prefix PATH : ${jdk}/bin \
-      --prefix LD_LIBRARY_PATH : ${stdenv.lib.makeLibraryPath ([ glib gtk3 libXtst ] ++ stdenv.lib.optional (webkitgtk != null) webkitgtk)} \
+      --prefix LD_LIBRARY_PATH : ${stdenv.lib.makeLibraryPath ([ glib gtk libXtst ] ++ stdenv.lib.optional (webkitgtk != null) webkitgtk)} \
       --prefix XDG_DATA_DIRS : "$GSETTINGS_SCHEMAS_PATH" \
       --add-flags "-configuration \$HOME/.eclipse/''${productId}_$productVersion/configuration"
 
@@ -53,7 +53,7 @@ stdenv.mkDerivation rec {
   ''; # */
 
   meta = {
-    homepage = http://www.eclipse.org/;
+    homepage = "http://www.eclipse.org/";
     inherit description;
     platforms = [ "x86_64-linux" ];
   };
diff --git a/pkgs/applications/editors/eclipse/default.nix b/pkgs/applications/editors/eclipse/default.nix
index 4b3a7e11f3bb..66bdfb15c69b 100644
--- a/pkgs/applications/editors/eclipse/default.nix
+++ b/pkgs/applications/editors/eclipse/default.nix
@@ -1,6 +1,6 @@
 { stdenv, fetchurl, makeDesktopItem, makeWrapper
 , freetype, fontconfig, libX11, libXrender, zlib
-, glib, gtk3, libXtst, jdk, gsettings-desktop-schemas
+, glib, gtk3, gtk2, libXtst, jdk, jdk8, gsettings-desktop-schemas
 , webkitgtk ? null  # for internal web browser
 , buildEnv, runCommand
 , callPackage
@@ -13,15 +13,16 @@ assert stdenv ? glibc;
 
 let
   platform_major = "4";
-  platform_minor = "14";
-  year = "2019";
-  month = "12";
-  timestamp = "201912100610";
+  platform_minor = "15";
+  year = "2020";
+  month = "03";
+  timestamp = "${year}${month}050155";
+  gtk = gtk3;
 in rec {
 
-  buildEclipse = import ./build-eclipse.nix {
+  buildEclipse = callPackage ./build-eclipse.nix {
     inherit stdenv makeDesktopItem freetype fontconfig libX11 libXrender zlib
-            jdk glib gtk3 libXtst gsettings-desktop-schemas webkitgtk
+            jdk glib gtk libXtst gsettings-desktop-schemas webkitgtk
             makeWrapper;
   };
 
@@ -32,8 +33,8 @@ in rec {
     description = "Eclipse IDE for C/C++ Developers";
     src =
       fetchurl {
-        url = "https://www.eclipse.org/downloads/download.php?r=1&nf=1&file=/technology/epp/downloads/release/${year}-${month}/R/eclipse-cpp-${year}-${month}-R-linux-gtk-x86_64.tar.gz";
-        sha512 = "28h8z45j7zlcbvvabzsniwqls1lns21isx69y6l207a869rknp9vzg6506q6zalj9b49j8c7ynkn379xgbzp07i6zw3dzk3pqp2rgam";
+        url = "https://www.eclipse.org/downloads/download.php?r=1&nf=1&file=/technology/epp/downloads/release/${year}-${month}/R/eclipse-cpp-${year}-${month}-R-incubation-linux-gtk-x86_64.tar.gz";
+        sha512 = "2wy4a3p347fajr9zsfz1zlvz6jpy3vficdry27m5fs0azfmxmy2cfns5hh18sin4xqq3jvqppfqxh41rzcpcmiq12zhc6cz42brqgxw";
       };
   };
 
@@ -45,7 +46,7 @@ in rec {
     src =
       fetchurl {
         url = "https://www.eclipse.org/downloads/download.php?r=1&nf=1&file=/technology/epp/downloads/release/${year}-${month}/R/eclipse-modeling-${year}-${month}-R-linux-gtk-x86_64.tar.gz";
-        sha512 = "1g1zsz3c2kx4vs1mjpcisbk81lk4hsr1z2fw46lih825c53vwf59snp8d97c8yw2i25y0ml48nc1nskib6qnif8m2h6rpah7kgmi8ay";
+        sha512 = "0qccsclay9000sqrymm8hkg70a4jcvd70vymw1kkxsklcs7dnrhch55an98gbzf9r0jgd1ap62a4hyxlnm6hdqqniwcgdza0i4nwwgj";
       };
   };
 
@@ -57,25 +58,20 @@ in rec {
     src =
       fetchurl {
         url = "https://www.eclipse.org/downloads/download.php?r=1&nf=1&file=/eclipse/downloads/drops${platform_major}/R-${platform_major}.${platform_minor}-${timestamp}/eclipse-platform-${platform_major}.${platform_minor}-linux-gtk-x86_64.tar.gz";
-        sha512 = "05nsldw937l1g9fj964njivgkf2ipk1rh1jg5w8svdhpp3v1pp3iinfm2mz9kk8namwfkx8krsvsxcgvqyzgrkhf42wqh53vqrjf70h";
+        sha512 = "01rv5x7qqm0a2p30828z2snms3nb2kjx9si63sr5rdkdgr3vbh6xq8n8fn757dqazmpz9zskmwxxmbxnwycfllhgb8msb77pcy3fpg7";
       };
   };
 
   ### Eclipse Scala SDK
 
-  eclipse-scala-sdk = buildEclipse {
-    name = "eclipse-scala-sdk-4.4.1";
-    description = "Eclipse IDE for Scala Developers";
-    src =
-      if stdenv.hostPlatform.system == "x86_64-linux" then
-        fetchurl { # tested
-          url = https://downloads.typesafe.com/scalaide-pack/4.4.1-vfinal-luna-211-20160504/scala-SDK-4.4.1-vfinal-2.11-linux.gtk.x86_64.tar.gz;
-          sha256  = "4c2d1ac68384e12a11a851cf0fc7757aea087eba69329b21d539382a65340d27";
-        }
-      else
-        fetchurl { # untested
-          url = https://downloads.typesafe.com/scalaide-pack/4.4.1-vfinal-luna-211-20160504/scala-SDK-4.4.1-vfinal-2.11-linux.gtk.x86.tar.gz;
-          sha256 = "35383cb09567187e14a30c15de9fd9aa0eef99e4bbb342396ce3acd11fb5cbac";
+  eclipse-scala-sdk =
+    buildEclipse.override { jdk = jdk8; gtk = gtk2; } {
+      name = "eclipse-scala-sdk-4.7.0";
+      description = "Eclipse IDE for Scala Developers";
+      src =
+        fetchurl {
+          url = "https://downloads.typesafe.com/scalaide-pack/4.7.0-vfinal-oxygen-212-20170929/scala-SDK-4.7.0-vfinal-2.12-linux.gtk.x86_64.tar.gz";
+          sha256  = "1n5w2a7mh9ajv6fxcas1gpgwb04pdxbr9v5dzr67gsz5bhahq4ya";
         };
   };
 
@@ -87,7 +83,7 @@ in rec {
     src =
       fetchurl {
         url = "https://www.eclipse.org/downloads/download.php?r=1&nf=1&file=/eclipse/downloads/drops${platform_major}/R-${platform_major}.${platform_minor}-${timestamp}/eclipse-SDK-${platform_major}.${platform_minor}-linux-gtk-x86_64.tar.gz";
-        sha512 = "0dcbxzjqc27v1faz16yxqcm6zrbna4kkd32xy7paadiwn125y6ijx8zvda4kc7bih6v5b9ch2i0z5ndra1lcjcc88z6cklh0vngjkh1";
+        sha512 = "33ra8qslwz73240xzjvr751lpl94drlcf425a7kxngq1qla2cda7gxr71bxlr9fm2hrqq0h097ihmg0ix9hv2dmwnc76gp4hwwrlk41";
       };
   };
 
@@ -99,7 +95,7 @@ in rec {
     src =
       fetchurl {
         url = "https://www.eclipse.org/downloads/download.php?r=1&nf=1&file=/technology/epp/downloads/release/${year}-${month}/R/eclipse-java-${year}-${month}-R-linux-gtk-x86_64.tar.gz";
-        sha512 = "21lhgv3z23mn8q0gffgxlfwhyxb348zjnzv716zsys7h7kj5vigl45q9mz0qrl11524rxx7jwi901jjd4l258w9kp7wzlq0d5n1r39m";
+        sha512 = "0ffa1q19z31j8i552mp9zg4v0p4iv002cvlzh49ia8hi0hgk75pbkp6vxlr75jz0as03n71f0ww8xbflji31qgwfmy6rs1rzqihfff9";
       };
   };
 
diff --git a/pkgs/applications/editors/eclipse/plugins.nix b/pkgs/applications/editors/eclipse/plugins.nix
index 87c32c30e190..fab7317868a9 100644
--- a/pkgs/applications/editors/eclipse/plugins.nix
+++ b/pkgs/applications/editors/eclipse/plugins.nix
@@ -106,7 +106,7 @@ rec {
     };
 
     meta = with stdenv.lib; {
-      homepage = https://github.com/tobiasmelcher/EclipseAceJump;
+      homepage = "https://github.com/tobiasmelcher/EclipseAceJump";
       description = "Provides fast jumps to text based on initial letter";
       license = licenses.mit;
       platforms = platforms.all;
@@ -153,7 +153,7 @@ rec {
 
     meta = with stdenv.lib; {
       description = "A powerful parser generator for processing structured text or binary files";
-      homepage = https://www.antlr.org/;
+      homepage = "https://www.antlr.org/";
       license = licenses.bsd3;
       platforms = platforms.all;
       maintainers = [ maintainers.rycee ];
@@ -176,7 +176,7 @@ rec {
 
     meta = with stdenv.lib; {
       description = "A powerful parser generator for processing structured text or binary files";
-      homepage = https://www.antlr.org/;
+      homepage = "https://www.antlr.org/";
       license = licenses.bsd3;
       platforms = platforms.all;
       maintainers = [ maintainers.rycee ];
@@ -198,7 +198,7 @@ rec {
     };
 
     meta = with stdenv.lib; {
-      homepage = http://andrei.gmxhome.de/anyedit/;
+      homepage = "http://andrei.gmxhome.de/anyedit/";
       description = "Adds new tools to the context menu of text-based editors";
       license = licenses.epl10;
       platforms = platforms.all;
@@ -221,7 +221,7 @@ rec {
     };
 
     meta = with stdenv.lib; {
-      homepage = https://github.com/cypher256/eclipse-encoding-plugin;
+      homepage = "https://github.com/cypher256/eclipse-encoding-plugin";
       description = "Show file encoding and line ending for the active editor in the eclipse status bar";
       license = licenses.epl10;
       platforms = platforms.all;
@@ -244,7 +244,7 @@ rec {
     };
 
     meta = with stdenv.lib; {
-      homepage = http://andrei.gmxhome.de/bytecode/;
+      homepage = "http://andrei.gmxhome.de/bytecode/";
       description = "Shows disassembled bytecode of current java editor or class file";
       license = licenses.bsd2;
       platforms = platforms.all;
@@ -254,16 +254,16 @@ rec {
 
   cdt = buildEclipseUpdateSite rec {
     name = "cdt-${version}";
-    version = "9.10.0";
+    version = "9.11.0";
 
     src = fetchzip {
       stripRoot = false;
-      url = "https://www.eclipse.org/downloads/download.php?r=1&nf=1&file=/tools/cdt/releases/9.10/${name}/${name}.zip";
-      sha256 = "11nbrcvgbg9l3cmp3v3y8y0vldzcf6qlpp185a6dzabdcij6gz5m";
+      url = "https://www.eclipse.org/downloads/download.php?r=1&nf=1&file=/tools/cdt/releases/9.11/${name}/${name}.zip";
+      sha256 = "1730w6rbv649nzfalfd10p2ph0z9rbrrcflga0n1dpmg181xh9lk";
     };
 
     meta = with stdenv.lib; {
-      homepage = https://eclipse.org/cdt/;
+      homepage = "https://eclipse.org/cdt/";
       description = "C/C++ development tooling";
       license = licenses.epl10;
       platforms = platforms.all;
@@ -282,7 +282,7 @@ rec {
     };
 
     meta = with stdenv.lib; {
-      homepage = https://eclipse-cs.sourceforge.net/;
+      homepage = "https://eclipse-cs.sourceforge.net/";
       description = "Checkstyle integration into the Eclipse IDE";
       license = licenses.lgpl21;
       platforms = platforms.all;
@@ -306,7 +306,7 @@ rec {
     };
 
     meta = with stdenv.lib; {
-      homepage = http://eclipsecolorthemes.org/;
+      homepage = "http://eclipsecolorthemes.org/";
       description = "Plugin to switch color themes conveniently and without side effects";
       license = licenses.epl10;
       platforms = platforms.all;
@@ -339,7 +339,7 @@ rec {
     propagatedBuildInputs = [ zest ];
 
     meta = with stdenv.lib; {
-      homepage = http://www2.cs.tum.edu/projects/cup/eclipse.php;
+      homepage = "http://www2.cs.tum.edu/projects/cup/eclipse.php";
       description = "IDE for developing CUP based parsers";
       platforms = platforms.all;
       maintainers = [ maintainers.romildo ];
@@ -367,7 +367,7 @@ rec {
     };
 
     meta = with stdenv.lib; {
-      homepage = https://www.drools.org/;
+      homepage = "https://www.drools.org/";
       description = "Drools is a Business Rules Management System (BRMS) solution";
       license = licenses.asl20;
     };
@@ -384,7 +384,7 @@ rec {
     };
 
     meta = with stdenv.lib; {
-      homepage = https://www.eclemma.org/;
+      homepage = "https://www.eclemma.org/";
       description = "EclEmma is a free Java code coverage tool for Eclipse";
       license = licenses.epl10;
       platforms = platforms.all;
@@ -407,7 +407,7 @@ rec {
     };
 
     meta = with stdenv.lib; {
-      homepage = http://findbugs.sourceforge.net/;
+      homepage = "http://findbugs.sourceforge.net/";
       description = "Plugin that uses static analysis to look for bugs in Java code";
       license = licenses.epl10;
       platforms = platforms.all;
@@ -426,7 +426,7 @@ rec {
     };
 
     meta = with stdenv.lib; {
-      homepage = http://gnuarmeclipse.livius.net/;
+      homepage = "http://gnuarmeclipse.livius.net/";
       description = "GNU ARM Eclipse Plug-ins";
       license = licenses.epl10;
       platforms = platforms.all;
@@ -465,7 +465,7 @@ rec {
 
     meta = with stdenv.lib; {
       description = "Adds support for JSON files to Eclipse";
-      homepage = https://github.com/boothen/Json-Eclipse-Plugin;
+      homepage = "https://github.com/boothen/Json-Eclipse-Plugin";
       license = licenses.epl10;
       platforms = platforms.all;
       maintainers = [ maintainers.rycee ];
@@ -474,16 +474,16 @@ rec {
 
   jdt = buildEclipseUpdateSite rec {
     name = "jdt-${version}";
-    version = "4.14";
+    version = "4.15";
 
     src = fetchzip {
       stripRoot = false;
-      url = https://www.eclipse.org/downloads/download.php?r=1&nf=1&file=/eclipse/downloads/drops4/R-4.14-201912100610/org.eclipse.jdt-4.14.zip;
-      sha256 = "1c2a23qviv58xljpq3yb37ra8cqw7jh52hmzqlg1nij2sdxb6hm5";
+      url = "https://www.eclipse.org/downloads/download.php?r=1&nf=1&file=/eclipse/downloads/drops4/R-${version}-202003050155/org.eclipse.jdt-${version}.zip";
+      sha256 = "1dm4qgfb6rm7w0dk8br071c7wy0ybp7zrwvr3i02c2bxzy2psz7q";
     };
 
     meta = with stdenv.lib; {
-      homepage = https://www.eclipse.org/jdt/;
+      homepage = "https://www.eclipse.org/jdt/";
       description = "Eclipse Java development tools";
       license = licenses.epl10;
       platforms = platforms.all;
@@ -506,7 +506,7 @@ rec {
     };
 
     meta = with stdenv.lib; {
-      homepage = https://github.com/angelozerr/jdt-codemining;
+      homepage = "https://github.com/angelozerr/jdt-codemining";
       description = "Provides JDT Java CodeMining";
       license = licenses.epl10;
       platforms = platforms.all;
@@ -532,7 +532,7 @@ rec {
     };
 
     meta = with stdenv.lib; {
-      homepage = https://github.com/RustDT;
+      homepage = "https://github.com/RustDT";
       description = "Rust development tooling";
       license = licenses.epl10;
       platforms = platforms.all;
@@ -549,7 +549,7 @@ rec {
     };
 
     meta = with stdenv.lib; {
-      homepage = http://scala-ide.org/;
+      homepage = "http://scala-ide.org/";
       description = "The Scala IDE for Eclipse";
       license = licenses.bsd3;
       platforms = platforms.all;
@@ -568,7 +568,7 @@ rec {
     };
 
     meta = with stdenv.lib; {
-      homepage = https://spotbugs.github.io/;
+      homepage = "https://spotbugs.github.io/";
       description = "Plugin that uses static analysis to look for bugs in Java code";
       license = licenses.lgpl21;
       platforms = platforms.all;
@@ -591,7 +591,7 @@ rec {
     };
 
     meta = with stdenv.lib; {
-      homepage = https://testng.org/doc/;
+      homepage = "https://testng.org/doc/";
       description = "Eclipse plugin for the TestNG testing framework";
       license = licenses.asl20;
       platforms = platforms.all;
@@ -636,7 +636,7 @@ rec {
     };
 
     meta = with stdenv.lib; {
-      homepage = https://github.com/oyse/yedit;
+      homepage = "https://github.com/oyse/yedit";
       description = "A YAML editor plugin for Eclipse";
       license = licenses.epl10;
       platforms = platforms.all;
@@ -654,7 +654,7 @@ rec {
     };
 
     meta = with stdenv.lib; {
-      homepage = https://www.eclipse.org/gef/zest/;
+      homepage = "https://www.eclipse.org/gef/zest/";
       description = "The Eclipse Visualization Toolkit";
       platforms = platforms.all;
       maintainers = [ maintainers.romildo ];
diff --git a/pkgs/applications/editors/edit/default.nix b/pkgs/applications/editors/edit/default.nix
index 27c13c0cb396..052206002610 100644
--- a/pkgs/applications/editors/edit/default.nix
+++ b/pkgs/applications/editors/edit/default.nix
@@ -5,7 +5,7 @@ stdenv.mkDerivation {
   version = "20160425";
 
   src = fetchgit {
-    url = git://c9x.me/ed.git;
+    url = "git://c9x.me/ed.git";
     rev = "323d49b68c5e804ed3b8cada0e2274f1589b3484";
     sha256 = "0wv8i3ii7cd9bqhjpahwp2g5fcmyk365nc7ncmvl79cxbz3f7y8v";
   };
@@ -31,7 +31,7 @@ stdenv.mkDerivation {
 
   meta = with stdenv.lib; {
     description = "A relaxing mix of Vi and ACME";
-    homepage = http://c9x.me/edit;
+    homepage = "http://c9x.me/edit";
     license = licenses.publicDomain;
     maintainers = [ maintainers.vrthra ];
     platforms = platforms.linux;
diff --git a/pkgs/applications/editors/elvis/default.nix b/pkgs/applications/editors/elvis/default.nix
index 4b7e4c8a3ca4..3a6c8c97b221 100644
--- a/pkgs/applications/editors/elvis/default.nix
+++ b/pkgs/applications/editors/elvis/default.nix
@@ -39,7 +39,7 @@ stdenv.mkDerivation {
   configureFlags = [ "--ioctl=termios" ];
 
   meta = {
-    homepage = http://elvis.vi-editor.org/;
+    homepage = "http://elvis.vi-editor.org/";
     description = "A vi clone for Unix and other operating systems";
     license = stdenv.lib.licenses.free;
   };
diff --git a/pkgs/applications/editors/emacs-modes/cedet/default.nix b/pkgs/applications/editors/emacs-modes/cedet/default.nix
index 5fbe095c4f35..45f20fccad90 100644
--- a/pkgs/applications/editors/emacs-modes/cedet/default.nix
+++ b/pkgs/applications/editors/emacs-modes/cedet/default.nix
@@ -43,7 +43,7 @@ stdenv.mkDerivation rec {
 
     license = stdenv.lib.licenses.gpl2Plus;
 
-    homepage = http://cedet.sourceforge.net/;
+    homepage = "http://cedet.sourceforge.net/";
 
     # Fails with `semantic-idle.el:42:1:Error: Invalid function: class-p`
     broken = true;
diff --git a/pkgs/applications/editors/emacs-modes/color-theme-solarized/default.nix b/pkgs/applications/editors/emacs-modes/color-theme-solarized/default.nix
index 33f2ad79ea0c..ba54e5f43412 100644
--- a/pkgs/applications/editors/emacs-modes/color-theme-solarized/default.nix
+++ b/pkgs/applications/editors/emacs-modes/color-theme-solarized/default.nix
@@ -25,7 +25,7 @@ stdenv.mkDerivation {
 
   meta = with stdenv.lib; {
     description = "Precision colors for machines and people";
-    homepage = http://ethanschoonover.com/solarized;
+    homepage = "http://ethanschoonover.com/solarized";
     maintainers = [ maintainers.samuelrivas ];
     license = licenses.mit;
     platforms = platforms.all;
diff --git a/pkgs/applications/editors/emacs-modes/elpa-generated.nix b/pkgs/applications/editors/emacs-modes/elpa-generated.nix
index 56624498aeac..e0e28f53b816 100644
--- a/pkgs/applications/editors/emacs-modes/elpa-generated.nix
+++ b/pkgs/applications/editors/emacs-modes/elpa-generated.nix
@@ -343,10 +343,10 @@
       elpaBuild {
         pname = "bnf-mode";
         ename = "bnf-mode";
-        version = "0.4.3";
+        version = "0.4.4";
         src = fetchurl {
-          url = "https://elpa.gnu.org/packages/bnf-mode-0.4.3.tar";
-          sha256 = "1hdhk6kw50vsixprrri0jb5i1c2y94ihifipqgq6kil7y4blr614";
+          url = "https://elpa.gnu.org/packages/bnf-mode-0.4.4.tar";
+          sha256 = "0acr3x96zknxs90dc9mpnrwiaa81883h36lx5q1lxfn78vjfw14x";
         };
         packageRequires = [ cl-lib emacs ];
         meta = {
@@ -925,10 +925,10 @@
       elpaBuild {
         pname = "ebdb";
         ename = "ebdb";
-        version = "0.6.13";
+        version = "0.6.16";
         src = fetchurl {
-          url = "https://elpa.gnu.org/packages/ebdb-0.6.13.tar";
-          sha256 = "1nxbp7w4xxij07q8manc15b896sl10yh2h1cg88prdqbw1wk62qr";
+          url = "https://elpa.gnu.org/packages/ebdb-0.6.16.tar";
+          sha256 = "0yn0nqjp68kwlrd4qs9fg3xizm9jnddkkyw25l0llq04b53zgjdl";
         };
         packageRequires = [ cl-lib emacs seq ];
         meta = {
@@ -1005,10 +1005,10 @@
       elpaBuild {
         pname = "eglot";
         ename = "eglot";
-        version = "1.5";
+        version = "1.6";
         src = fetchurl {
-          url = "https://elpa.gnu.org/packages/eglot-1.5.tar";
-          sha256 = "00ifgz9r9xvy19zsz1yfls6n1acvms14p86nbw0x6ldjgvpf279i";
+          url = "https://elpa.gnu.org/packages/eglot-1.6.tar";
+          sha256 = "15hd6sx7qrpvlvhwwkcgdiki8pswwf4mm7hkm0xvznskfcp44spx";
         };
         packageRequires = [ emacs flymake jsonrpc ];
         meta = {
@@ -1070,10 +1070,10 @@
       elpaBuild {
         pname = "elisp-benchmarks";
         ename = "elisp-benchmarks";
-        version = "1.2";
+        version = "1.4";
         src = fetchurl {
-          url = "https://elpa.gnu.org/packages/elisp-benchmarks-1.2.tar";
-          sha256 = "0grm4qw3aaf3hzrfg0vdgb5q67haappbc77qjgsy4jip85z7njmj";
+          url = "https://elpa.gnu.org/packages/elisp-benchmarks-1.4.tar";
+          sha256 = "18ia04aq4pqa8374x60g3g66jqmm17c6n904naa0jhqphlgam8pb";
         };
         packageRequires = [];
         meta = {
@@ -1367,10 +1367,10 @@
       elpaBuild {
         pname = "gnorb";
         ename = "gnorb";
-        version = "1.6.5";
+        version = "1.6.6";
         src = fetchurl {
-          url = "https://elpa.gnu.org/packages/gnorb-1.6.5.tar";
-          sha256 = "1har3j8gb65mawrwn93939jg157wbap138qa1z1myznrrish6vzc";
+          url = "https://elpa.gnu.org/packages/gnorb-1.6.6.tar";
+          sha256 = "1vlb9q7a622qylrgip5ld2yrzp4l58gl543i2jdxr7jxvamy22bp";
         };
         packageRequires = [ cl-lib ];
         meta = {
@@ -1572,7 +1572,7 @@
           license = lib.licenses.free;
         };
       }) {};
-    ioccur = callPackage ({ elpaBuild, fetchurl, lib }:
+    ioccur = callPackage ({ cl-lib ? null, elpaBuild, emacs, fetchurl, lib }:
       elpaBuild {
         pname = "ioccur";
         ename = "ioccur";
@@ -1581,7 +1581,7 @@
           url = "https://elpa.gnu.org/packages/ioccur-2.4.el";
           sha256 = "1isid3kgsi5qkz27ipvmp9v5knx0qigmv7lz12mqdkwv8alns1p9";
         };
-        packageRequires = [];
+        packageRequires = [ cl-lib emacs ];
         meta = {
           homepage = "https://elpa.gnu.org/packages/ioccur.html";
           license = lib.licenses.free;
@@ -2007,6 +2007,36 @@
           license = lib.licenses.free;
         };
       }) {};
+    modus-operandi-theme = callPackage ({ elpaBuild, emacs, fetchurl, lib }:
+      elpaBuild {
+        pname = "modus-operandi-theme";
+        ename = "modus-operandi-theme";
+        version = "0.7.0";
+        src = fetchurl {
+          url = "https://elpa.gnu.org/packages/modus-operandi-theme-0.7.0.el";
+          sha256 = "17zvcqplbl3rk39k61v43ganzv06j49rlyickanwll5m1a3iibw2";
+        };
+        packageRequires = [ emacs ];
+        meta = {
+          homepage = "https://elpa.gnu.org/packages/modus-operandi-theme.html";
+          license = lib.licenses.free;
+        };
+      }) {};
+    modus-vivendi-theme = callPackage ({ elpaBuild, emacs, fetchurl, lib }:
+      elpaBuild {
+        pname = "modus-vivendi-theme";
+        ename = "modus-vivendi-theme";
+        version = "0.7.0";
+        src = fetchurl {
+          url = "https://elpa.gnu.org/packages/modus-vivendi-theme-0.7.0.el";
+          sha256 = "1w4vrg39dghghkvll3h4kmzykc3zpp6pbychb39gcc13z2b06v8g";
+        };
+        packageRequires = [ emacs ];
+        meta = {
+          homepage = "https://elpa.gnu.org/packages/modus-vivendi-theme.html";
+          license = lib.licenses.free;
+        };
+      }) {};
     multishell = callPackage ({ cl-lib ? null, elpaBuild, fetchurl, lib }:
       elpaBuild {
         pname = "multishell";
@@ -2185,10 +2215,10 @@
       elpaBuild {
         pname = "oauth2";
         ename = "oauth2";
-        version = "0.11";
+        version = "0.13";
         src = fetchurl {
-          url = "https://elpa.gnu.org/packages/oauth2-0.11.el";
-          sha256 = "0ydkc9jazsnbbvfhd47mql52y7k06n3z7r0naqxkwb99j9blqsmp";
+          url = "https://elpa.gnu.org/packages/oauth2-0.13.el";
+          sha256 = "0y5nbdwxz2hfr09xgsqgyv60vgx0rsaisibcpkz00klvgg26w33r";
         };
         packageRequires = [];
         meta = {
@@ -2290,10 +2320,10 @@
       elpaBuild {
         pname = "orgalist";
         ename = "orgalist";
-        version = "1.11";
+        version = "1.12";
         src = fetchurl {
-          url = "https://elpa.gnu.org/packages/orgalist-1.11.el";
-          sha256 = "0zbqkk540rax32s8szp5zgz3a02zw88fc1dmjmyw6h3ls04m91kl";
+          url = "https://elpa.gnu.org/packages/orgalist-1.12.el";
+          sha256 = "1hwm7j0hbv2pg9w885ky1c9qga3grcfq8v216jv2ivkw8xzavysd";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -2425,10 +2455,10 @@
       elpaBuild {
         pname = "phps-mode";
         ename = "phps-mode";
-        version = "0.3.38";
+        version = "0.3.43";
         src = fetchurl {
-          url = "https://elpa.gnu.org/packages/phps-mode-0.3.38.tar";
-          sha256 = "1m8f1z259c66k0hf0cfjqidfd0cra2c2mb7k5lj71v1kfckwj6bh";
+          url = "https://elpa.gnu.org/packages/phps-mode-0.3.43.tar";
+          sha256 = "099s7c0ll8bbfgynijjaciv2qnyg4r2akajkhlmchh7y10kp5ii4";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -2470,10 +2500,10 @@
       elpaBuild {
         pname = "posframe";
         ename = "posframe";
-        version = "0.6.0";
+        version = "0.7.0";
         src = fetchurl {
-          url = "https://elpa.gnu.org/packages/posframe-0.6.0.el";
-          sha256 = "14x2jgjn8di03rrad4x4mn8fhcqibk1j5c0ya0vmv8648fki6i9d";
+          url = "https://elpa.gnu.org/packages/posframe-0.7.0.el";
+          sha256 = "1kwl83jb5k1hnx0s2qw972v0gjqbbvk4sdcdb1qbdxsyw36sylc9";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -2545,10 +2575,10 @@
       elpaBuild {
         pname = "rainbow-mode";
         ename = "rainbow-mode";
-        version = "1.0.3";
+        version = "1.0.4";
         src = fetchurl {
-          url = "https://elpa.gnu.org/packages/rainbow-mode-1.0.3.el";
-          sha256 = "0cpwqllhv3cb0gii22cj9i731rk3sbf2drm5m52w5yclm8sfr339";
+          url = "https://elpa.gnu.org/packages/rainbow-mode-1.0.4.el";
+          sha256 = "0rp76gix1ph1wrmdax6y2m3i9y1dmgv7ikjz8xsl5lizkygsy9cg";
         };
         packageRequires = [];
         meta = {
@@ -2765,10 +2795,10 @@
       elpaBuild {
         pname = "relint";
         ename = "relint";
-        version = "1.14";
+        version = "1.15";
         src = fetchurl {
-          url = "https://elpa.gnu.org/packages/relint-1.14.tar";
-          sha256 = "0hjzhxcygb2r2s3g2pk3z9x3appy1y8gkw8gpg9cpkl6lpwcsh2f";
+          url = "https://elpa.gnu.org/packages/relint-1.15.tar";
+          sha256 = "0sxmdsacj8my942k8j76m2y68nzab7190acv7cwgflc5n4f07yxa";
         };
         packageRequires = [ emacs xr ];
         meta = {
@@ -2827,6 +2857,21 @@
           license = lib.licenses.free;
         };
       }) {};
+    scanner = callPackage ({ dash, elpaBuild, emacs, fetchurl, lib }:
+      elpaBuild {
+        pname = "scanner";
+        ename = "scanner";
+        version = "0.1";
+        src = fetchurl {
+          url = "https://elpa.gnu.org/packages/scanner-0.1.tar";
+          sha256 = "0hv4w7yzfdnz8vrfhw6i6agj9hs09vzsqr63nrp6dd93q0gk71mw";
+        };
+        packageRequires = [ dash emacs ];
+        meta = {
+          homepage = "https://elpa.gnu.org/packages/scanner.html";
+          license = lib.licenses.free;
+        };
+      }) {};
     scroll-restore = callPackage ({ elpaBuild, fetchurl, lib }:
       elpaBuild {
         pname = "scroll-restore";
@@ -2917,6 +2962,21 @@
           license = lib.licenses.free;
         };
       }) {};
+    sm-c-mode = callPackage ({ elpaBuild, fetchurl, lib }:
+      elpaBuild {
+        pname = "sm-c-mode";
+        ename = "sm-c-mode";
+        version = "1.0";
+        src = fetchurl {
+          url = "https://elpa.gnu.org/packages/sm-c-mode-1.0.el";
+          sha256 = "1lq65dhcvrh6ybla37lvni7wmbjb5nhm75ja9cl79148da1zrg91";
+        };
+        packageRequires = [];
+        meta = {
+          homepage = "https://elpa.gnu.org/packages/sm-c-mode.html";
+          license = lib.licenses.free;
+        };
+      }) {};
     smalltalk-mode = callPackage ({ elpaBuild, fetchurl, lib }:
       elpaBuild {
         pname = "smalltalk-mode";
@@ -3026,10 +3086,10 @@
       elpaBuild {
         pname = "sql-indent";
         ename = "sql-indent";
-        version = "1.4";
+        version = "1.5";
         src = fetchurl {
-          url = "https://elpa.gnu.org/packages/sql-indent-1.4.tar";
-          sha256 = "1nilxfm30nb2la1463729rgbgbma7igkf0z325k8cbapqanb1wgl";
+          url = "https://elpa.gnu.org/packages/sql-indent-1.5.tar";
+          sha256 = "07k5rn9hbxppnka7nq0a3a6zyqqa1hp8j6qrb344js6zyak0cb63";
         };
         packageRequires = [ cl-lib ];
         meta = {
@@ -3041,10 +3101,10 @@
       elpaBuild {
         pname = "ssh-deploy";
         ename = "ssh-deploy";
-        version = "3.1.10";
+        version = "3.1.11";
         src = fetchurl {
-          url = "https://elpa.gnu.org/packages/ssh-deploy-3.1.10.tar";
-          sha256 = "0gckc6yhgi8pn3s8vdyzz8x1s2d4wmsw6yjwsaqcr5nra50glbpg";
+          url = "https://elpa.gnu.org/packages/ssh-deploy-3.1.11.tar";
+          sha256 = "1xd09kfn7lqw6jzfkrn0p5agdpcz1z9zbazqigylpqfcywr5snhk";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -3157,7 +3217,11 @@
           license = lib.licenses.free;
         };
       }) {};
-    timerfunctions = callPackage ({ cl-lib ? null, elpaBuild, fetchurl, lib }:
+    timerfunctions = callPackage ({ cl-lib ? null
+                                  , elpaBuild
+                                  , emacs
+                                  , fetchurl
+                                  , lib }:
       elpaBuild {
         pname = "timerfunctions";
         ename = "timerfunctions";
@@ -3166,7 +3230,7 @@
           url = "https://elpa.gnu.org/packages/timerfunctions-1.4.2.el";
           sha256 = "122q8nv08pz1mkgilvi9qfrs7rsnc5picr7jyz2jpnvpd9qw6jw5";
         };
-        packageRequires = [ cl-lib ];
+        packageRequires = [ cl-lib emacs ];
         meta = {
           homepage = "https://elpa.gnu.org/packages/timerfunctions.html";
           license = lib.licenses.free;
@@ -3191,10 +3255,10 @@
       elpaBuild {
         pname = "tramp";
         ename = "tramp";
-        version = "2.4.3.2";
+        version = "2.4.3.3";
         src = fetchurl {
-          url = "https://elpa.gnu.org/packages/tramp-2.4.3.2.tar";
-          sha256 = "17kay6rpkgz79jggzj53awkbqfsp5sq93wpssw5vlwnigd4mrkzx";
+          url = "https://elpa.gnu.org/packages/tramp-2.4.3.3.tar";
+          sha256 = "1di9ia59k6x7j9r8flwf05r160j30nrg0jvq5fjc9iazag9lniyw";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -3331,6 +3395,21 @@
           license = lib.licenses.free;
         };
       }) {};
+    vcard = callPackage ({ elpaBuild, emacs, fetchurl, lib }:
+      elpaBuild {
+        pname = "vcard";
+        ename = "vcard";
+        version = "0.1";
+        src = fetchurl {
+          url = "https://elpa.gnu.org/packages/vcard-0.1.tar";
+          sha256 = "1awcm2s292r2nkyz5bwjaga46jsh5rn92469wrg1ag843mlyxbd0";
+        };
+        packageRequires = [ emacs ];
+        meta = {
+          homepage = "https://elpa.gnu.org/packages/vcard.html";
+          license = lib.licenses.free;
+        };
+      }) {};
     vcl-mode = callPackage ({ elpaBuild, fetchurl, lib }:
       elpaBuild {
         pname = "vcl-mode";
@@ -3490,10 +3569,10 @@
       elpaBuild {
         pname = "web-server";
         ename = "web-server";
-        version = "0.1.1";
+        version = "0.1.2";
         src = fetchurl {
-          url = "https://elpa.gnu.org/packages/web-server-0.1.1.tar";
-          sha256 = "1q51fhqw5al4iycdlighwv7jqgdpjb1a66glwd5jnc9b651yk42n";
+          url = "https://elpa.gnu.org/packages/web-server-0.1.2.tar";
+          sha256 = "10lcsl4dg2yr9zjd99gq9jz150wvvh6r5y9pd88l8y9vz16f2lim";
         };
         packageRequires = [ emacs ];
         meta = {
@@ -3675,10 +3754,10 @@
       elpaBuild {
         pname = "xr";
         ename = "xr";
-        version = "1.16";
+        version = "1.18";
         src = fetchurl {
-          url = "https://elpa.gnu.org/packages/xr-1.16.tar";
-          sha256 = "1s6pkbr7gkan0r9gfmix75m587d8cg6l11722v70zzgf2z9w2xg9";
+          url = "https://elpa.gnu.org/packages/xr-1.18.tar";
+          sha256 = "1nq9pj47sxgpkw97c2xrkhgcwh3zsfd2a22qiqbl4i9zf2l9yy91";
         };
         packageRequires = [ emacs ];
         meta = {
diff --git a/pkgs/applications/editors/emacs-modes/emacs2nix.nix b/pkgs/applications/editors/emacs-modes/emacs2nix.nix
index cedc56e97ceb..852f395c4a22 100644
--- a/pkgs/applications/editors/emacs-modes/emacs2nix.nix
+++ b/pkgs/applications/editors/emacs-modes/emacs2nix.nix
@@ -4,8 +4,8 @@ let
   src = pkgs.fetchgit {
     url = "https://github.com/ttuegel/emacs2nix.git";
     fetchSubmodules = true;
-    rev = "752fe1bd891425cb7a4a53cd7b98c194c1fe4518";
-    sha256 = "0asfdswh8sbnapbqhbz539zzxmv72f1iviha95iys34sgnd5k1nk";
+    rev = "d4c52a7b22b0622aecf0b0d59941a4a2b250617c";
+    sha256 = "133m0bmm8ahy0jbappgcdjqppkpxf5s9wg4gg254afx3f7yfqzbh";
   };
 
 in pkgs.mkShell {
diff --git a/pkgs/applications/editors/emacs-modes/emacspeak/default.nix b/pkgs/applications/editors/emacs-modes/emacspeak/default.nix
new file mode 100644
index 000000000000..5bc8bbc6a90e
--- /dev/null
+++ b/pkgs/applications/editors/emacs-modes/emacspeak/default.nix
@@ -0,0 +1,43 @@
+{ stdenv, fetchurl, makeWrapper, emacs, tcl, tclx, espeak-ng }:
+
+stdenv.mkDerivation rec {
+  pname = "emacspeak";
+  version = "51.0";
+
+
+  src = fetchurl {
+    url = "https://github.com/tvraman/emacspeak/releases/download/${version}/${pname}-${version}.tar.bz2";
+    sha256 = "09a0ywxlqa8jmc0wmvhaf7bdydnkyhy9nqfsdqcpbsgdzj6qpg90";
+  };
+
+  nativeBuildInputs = [ makeWrapper emacs ];
+  buildInputs = [ tcl tclx espeak-ng ];
+
+  preConfigure = ''
+    make config
+  '';
+
+  postBuild = ''
+    make -C servers/native-espeak PREFIX=$out "TCL_INCLUDE=${tcl}/include"
+  '';
+
+  postInstall = ''
+    make -C servers/native-espeak PREFIX=$out install
+    local d=$out/share/emacs/site-lisp/emacspeak/
+    install -d -- "$d"
+    cp -a .  "$d"
+    find "$d" \( -type d -or \( -type f -executable \) \) -execdir chmod 755 {} +
+    find "$d" -type f -not -executable -execdir chmod 644 {} +
+    makeWrapper ${emacs}/bin/emacs $out/bin/emacspeak \
+        --set DTK_PROGRAM "${espeak-ng}/bin/espeak" \
+        --add-flags '-l "${placeholder "out"}/share/emacs/site-lisp/emacspeak/lisp/emacspeak-setup.elc"'
+  '';
+
+  meta = with stdenv.lib; {
+    homepage = https://github.com/tvraman/emacspeak/;
+    description = "Emacs extension that provides spoken output";
+    license = licenses.gpl2;
+    maintainers = [ dema ];
+    platforms = platforms.linux;
+  };
+}
diff --git a/pkgs/applications/editors/emacs-modes/ess-R-object-popup/default.nix b/pkgs/applications/editors/emacs-modes/ess-R-object-popup/default.nix
index 077e72f55764..5beaed582407 100644
--- a/pkgs/applications/editors/emacs-modes/ess-R-object-popup/default.nix
+++ b/pkgs/applications/editors/emacs-modes/ess-R-object-popup/default.nix
@@ -16,7 +16,7 @@ stdenv.mkDerivation {
 
   meta = {
     description = "Popup descriptions of R objects";
-    homepage = https://github.com/myuhe/ess-R-object-popup.el;
+    homepage = "https://github.com/myuhe/ess-R-object-popup.el";
     platforms = stdenv.lib.platforms.all;
   };
 }
diff --git a/pkgs/applications/editors/emacs-modes/filesets-plus/default.nix b/pkgs/applications/editors/emacs-modes/filesets-plus/default.nix
deleted file mode 100644
index ad22faf3dff7..000000000000
--- a/pkgs/applications/editors/emacs-modes/filesets-plus/default.nix
+++ /dev/null
@@ -1,22 +0,0 @@
-{ fetchurl, melpaBuild }:
-
-melpaBuild {
-  pname = "filesets-plus";
-  version = "20170222.55";
-
-  src = fetchurl {
-    url = "https://www.emacswiki.org/emacs/download/filesets%2b.el";
-    sha256 = "0iajkgh0n3pbrwwxx9rmrrwz8dw2m7jsp4mggnhq7zsb20ighs00";
-    name = "filesets+.el";
-  };
-
-  recipe = fetchurl {
-    url = "https://raw.githubusercontent.com/milkypostman/melpa/a5d15f875b0080b12ce45cf696c581f6bbf061ba/recipes/filesets-plus+";
-    sha256 = "1wn99cb53ykds87lg9mrlfpalrmjj177nwskrnp9wglyqs65lk4g";
-    name = "filesets-plus";
-  };
-
-  meta = {
-    homepage = "https://melpa.org/#/filesets+";
-  };
-}
diff --git a/pkgs/applications/editors/emacs-modes/header2/default.nix b/pkgs/applications/editors/emacs-modes/header2/default.nix
deleted file mode 100644
index 171d8c6b16ae..000000000000
--- a/pkgs/applications/editors/emacs-modes/header2/default.nix
+++ /dev/null
@@ -1,23 +0,0 @@
-{ fetchurl, lib, melpaBuild }:
-
-melpaBuild {
-  pname = "header2";
-  version = "20170223.1949";
-
-  src = fetchurl {
-    url = "https://www.emacswiki.org/emacs/download/header2.el";
-    sha256 = "0cv74cfihr13jrgyqbj4x0na659djfyrhflxni6jdbgbysi4zf6k";
-    name = "header2.el";
-  };
-
-  recipe = fetchurl {
-    url = "https://raw.githubusercontent.com/milkypostman/melpa/a5d15f875b0080b12ce45cf696c581f6bbf061ba/recipes/header2";
-    sha256 = "1dg25krx3wxma2l5vb2ji7rpfp17qbrl62jyjpa52cjfsvyp6v06";
-    name = "header2";
-  };
-
-  meta = {
-    homepage = "https://melpa.org/#/header2";
-    license = lib.licenses.gpl3;
-  };
-}
diff --git a/pkgs/applications/editors/emacs-modes/helm-words/default.nix b/pkgs/applications/editors/emacs-modes/helm-words/default.nix
index c6e1c5a50f4a..00879463276c 100644
--- a/pkgs/applications/editors/emacs-modes/helm-words/default.nix
+++ b/pkgs/applications/editors/emacs-modes/helm-words/default.nix
@@ -16,7 +16,7 @@ stdenv.mkDerivation {
 
   meta = {
     description = "Emacs major mode for jade and stylus";
-    homepage = https://github.com/brianc/helm-words;
+    homepage = "https://github.com/brianc/helm-words";
     license = stdenv.lib.licenses.gpl3;
     platforms = stdenv.lib.platforms.all;
   };
diff --git a/pkgs/applications/editors/emacs-modes/hexrgb/default.nix b/pkgs/applications/editors/emacs-modes/hexrgb/default.nix
deleted file mode 100644
index 8b9ebcd60262..000000000000
--- a/pkgs/applications/editors/emacs-modes/hexrgb/default.nix
+++ /dev/null
@@ -1,23 +0,0 @@
-{ fetchurl, lib, melpaBuild }:
-
-melpaBuild {
-  pname = "hexrgb";
-  version = "20170304.1017";
-
-  src = fetchurl {
-    url = "https://www.emacswiki.org/emacs/download/hexrgb.el";
-    sha256 = "1aj1fsc3wr8174xs45j2wc2mm6f8v6zs40xn0r4qisdw0plmsbsy";
-    name = "hexrgb.el";
-  };
-
-  recipe = fetchurl {
-    url = "https://raw.githubusercontent.com/milkypostman/melpa/a5d15f875b0080b12ce45cf696c581f6bbf061ba/recipes/hexrgb";
-    sha256 = "0mzqslrrf7sc262syj3ja7b7rnbg80dwf2p9bzxdrzx6b8vvsx06";
-    name = "hexrgb";
-  };
-
-  meta = {
-    homepage = "https://melpa.org/#/hexrgb";
-    license = lib.licenses.gpl2Plus;
-  };
-}
diff --git a/pkgs/applications/editors/emacs-modes/hol_light/default.nix b/pkgs/applications/editors/emacs-modes/hol_light/default.nix
index 255b30d60ed1..34b74374b230 100644
--- a/pkgs/applications/editors/emacs-modes/hol_light/default.nix
+++ b/pkgs/applications/editors/emacs-modes/hol_light/default.nix
@@ -5,7 +5,7 @@ stdenv.mkDerivation rec {
   version = "73";
 
   src = fetchsvn {
-    url = http://seanmcl-ocaml-lib.googlecode.com/svn/trunk/workshop/software/emacs;
+    url = "http://seanmcl-ocaml-lib.googlecode.com/svn/trunk/workshop/software/emacs";
     rev = version;
     sha256 = "3ca83098960439da149a47e1caff32536601559a77f04822be742a390c67feb7";
   };
@@ -18,7 +18,7 @@ stdenv.mkDerivation rec {
 
   meta = {
     description = "A HOL Light mode for Emacs";
-    homepage    = http://www.cl.cam.ac.uk/~jrh13/hol-light/;
+    homepage    = "http://www.cl.cam.ac.uk/~jrh13/hol-light/";
     license     = stdenv.lib.licenses.gpl2Plus;
     platforms   = stdenv.lib.platforms.all;
     maintainers = [ stdenv.lib.maintainers.thoughtpolice ];
diff --git a/pkgs/applications/editors/emacs-modes/hsc3/default.nix b/pkgs/applications/editors/emacs-modes/hsc3/default.nix
index 75b72516a3cd..6c2db85d7942 100644
--- a/pkgs/applications/editors/emacs-modes/hsc3/default.nix
+++ b/pkgs/applications/editors/emacs-modes/hsc3/default.nix
@@ -9,7 +9,7 @@ in stdenv.mkDerivation {
   pname = "hsc3-mode";
   inherit version;
   src = fetchurl {
-    url = mirror://hackage/hsc3-0.15/hsc3-0.15.tar.gz;
+    url = "mirror://hackage/hsc3-0.15/hsc3-0.15.tar.gz";
     sha256 = "2f3b15655419cf8ebe25ab1c6ec22993b2589b4ffca7c3a75ce478ca78a0bde6";
   };
 
@@ -21,7 +21,7 @@ in stdenv.mkDerivation {
   '';
 
   meta = {
-    homepage = http://rd.slavepianos.org/?t=hsc3;
+    homepage = "http://rd.slavepianos.org/?t=hsc3";
     description = "hsc3 mode package for Emacs";
     platforms = stdenv.lib.platforms.unix;
   };
diff --git a/pkgs/applications/editors/emacs-modes/icicles/default.nix b/pkgs/applications/editors/emacs-modes/icicles/default.nix
deleted file mode 100644
index 27dcd1063bf2..000000000000
--- a/pkgs/applications/editors/emacs-modes/icicles/default.nix
+++ /dev/null
@@ -1,43 +0,0 @@
-{ stdenv, fetchurl, emacs }:
-
-let
-  modules = [
-    { name = "icicles.el"; sha256 = "1744n5g2kmv3r261ipa0fhrgnapl0chxz57bbbls3bp30cnnfrs7"; }
-    { name = "icicles-chg.el"; sha256 = "058sxa8wh3vqr3zy677q6m2lfx4n477rnb8921s1p6wgs55v7dp4"; }
-    { name = "icicles-cmd1.el"; sha256 = "064hyy8nxvlg298s5qnmk7aczbasfpddhx57jxaldyyzkca3n2h5"; }
-    { name = "icicles-cmd2.el"; sha256 = "0a77fx0pxyfrg9nxvqvzz247v6cljjfz9dnfs7lc8qgdvksxs261"; }
-    { name = "icicles-doc1.el"; sha256 = "04j5qvj7pqnjh8h2y2sdgi7x55czdp9xn7yysr3bzcmr1rq5p4bz"; }
-    { name = "icicles-doc2.el"; sha256 = "1k8vfhi3fa4bzsxr074bw5q6srvq6z6hi61rzlxdw7pah6qf7hcz"; }
-    { name = "icicles-face.el"; sha256 = "1pvygqzmh6ag0zhfjn1vhdvlhxybwxzj22ah2pc0ls80dlywhi4l"; }
-    { name = "icicles-fn.el"; sha256 = "02vwa9dx9393d7kxrf443r1lj7y9ihkh25cmd418pwfgmw2yd5s7"; }
-    { name = "icicles-mac.el"; sha256 = "13nxgg9k5w39lga90jwn1c7v756dqlfln2qh312vfaxfjfijfv9r"; }
-    { name = "icicles-mcmd.el"; sha256 = "17d4zlf3r09wmarwyc1cbjv0pyklg4cdhwh3h643d4v8mhs5hnil"; }
-    { name = "icicles-mode.el"; sha256 = "1xfv8nryf5y2gygg02naawzm5qhrkba3h84g43518r1xc6rgbpp6"; }
-    { name = "icicles-opt.el"; sha256 = "154mgcd1ksnmlyb4ijy2njqq75i8cj4k47phplxsi648pzqnda77"; }
-    { name = "icicles-var.el"; sha256 = "0f94299q1z0va4v1s5ijpksaqlaz88ay1qbmlzq0i2wnxnsliys8"; }
-  ];
-
-  forAll = f: map f modules;
-in
-stdenv.mkDerivation rec {
-  version = "2019-02-22";
-  pname = "icicles";
-
-  srcs = forAll ({name, sha256}: fetchurl { url = "https://www.emacswiki.org/emacs/download/${name}"; inherit sha256; });
-
-  buildInputs = [ emacs ];
-
-  unpackPhase = "for m in $srcs; do cp $m $(echo $m | cut -d- -f2-); done";
-
-  buildPhase = "emacs --batch -L . -f batch-byte-compile *.el";
-
-  installPhase = "mkdir -p $out/share/emacs/site-lisp/emacswiki/${pname}-${version}/; cp *.el *.elc $out/share/emacs/site-lisp/emacswiki/${pname}-${version}/";
-
-  meta = {
-    homepage = https://www.emacswiki.org/emacs/Icicles;
-    description = "Enhance Emacs minibuffer input with cycling and powerful completion";
-    license = stdenv.lib.licenses.gpl2Plus;
-    platforms   = emacs.meta.platforms;
-    maintainers = with stdenv.lib.maintainers; [ scolobb ];
-  };
-}
diff --git a/pkgs/applications/editors/emacs-modes/lib-requires/default.nix b/pkgs/applications/editors/emacs-modes/lib-requires/default.nix
deleted file mode 100644
index 84dae10127e9..000000000000
--- a/pkgs/applications/editors/emacs-modes/lib-requires/default.nix
+++ /dev/null
@@ -1,23 +0,0 @@
-{ fetchurl, lib, melpaBuild }:
-
-melpaBuild {
-  pname = "lib-requires";
-  version = "20170307.757";
-
-  src = fetchurl {
-    url = "https://www.emacswiki.org/emacs/download/lib-requires.el";
-    sha256 = "04lrkdjrhsgg7vgvw1mkr9a5m9xlyvjvnj2aj6w453bgmnp1mbvv";
-    name = "lib-requires.el";
-  };
-
-  recipe = fetchurl {
-    url = "https://raw.githubusercontent.com/milkypostman/melpa/a5d15f875b0080b12ce45cf696c581f6bbf061ba/recipes/lib-requires";
-    sha256 = "1g22jh56z8rnq0h80wj10gs38yig1rk9xmk3kmhmm5mm6b14iwdx";
-    name = "lib-requires";
-  };
-
-  meta = {
-    homepage = "https://melpa.org/#/lib-requires";
-    license = lib.licenses.gpl2Plus;
-  };
-}
diff --git a/pkgs/applications/editors/emacs-modes/libgenerated.nix b/pkgs/applications/editors/emacs-modes/libgenerated.nix
index 57bccc608183..d0c8b4565f57 100644
--- a/pkgs/applications/editors/emacs-modes/libgenerated.nix
+++ b/pkgs/applications/editors/emacs-modes/libgenerated.nix
@@ -61,8 +61,9 @@ in {
         pname = builtins.replaceStrings [ "@" ] [ "at" ] ename;
         broken = ! isNull error;
       in
-      lib.nameValuePair ename (if hasSource then (
-        self.callPackage ({ melpaBuild, fetchurl, ... }@pkgargs:
+      if hasSource then
+        lib.nameValuePair ename (
+          self.callPackage ({ melpaBuild, fetchurl, ... }@pkgargs:
           melpaBuild {
             inherit pname;
             ename = ename;
@@ -85,6 +86,8 @@ in {
             };
           }
         ) {}
-      ) else null);
+      )
+    else
+      null;
 
 }
diff --git a/pkgs/applications/editors/emacs-modes/manual-packages.nix b/pkgs/applications/editors/emacs-modes/manual-packages.nix
index c3c21b40a659..313a21995e03 100644
--- a/pkgs/applications/editors/emacs-modes/manual-packages.nix
+++ b/pkgs/applications/editors/emacs-modes/manual-packages.nix
@@ -52,11 +52,24 @@
     };
   };
 
+  agda-input = self.trivialBuild {
+    pname = "agda-input";
+
+    inherit (external.Agda) src version;
+
+    postUnpack = "mv $sourceRoot/src/data/emacs-mode/agda-input.el $sourceRoot";
+
+    meta = {
+      description = "Standalone package providing the agda-input method without building Agda.";
+      inherit (external.Agda.meta) homepage license;
+    };
+  };
+
+  emacspeak = callPackage ./emacspeak {};
+
   ess-R-object-popup =
     callPackage ./ess-R-object-popup { };
 
-  filesets-plus = callPackage ./filesets-plus { };
-
   font-lock-plus = callPackage ./font-lock-plus { };
 
   ghc-mod = melpaBuild {
@@ -96,17 +109,8 @@
     };
   };
 
-  hexrgb = callPackage ./hexrgb { };
-
-  header2 = callPackage ./header2 { };
-
   helm-words = callPackage ./helm-words { };
 
-  icicles = callPackage ./icicles { };
-
-  lib-requires =
-    callPackage ./lib-requires { };
-
   org-mac-link =
     callPackage ./org-mac-link { };
 
@@ -121,12 +125,8 @@
 
   sv-kalender = callPackage ./sv-kalender { };
 
-  thingatpt-plus = callPackage ./thingatpt-plus { };
-
   tramp = callPackage ./tramp { };
 
-  yaoddmuse = callPackage ./yaoddmuse { };
-
   zeitgeist = callPackage ./zeitgeist { };
 
   # From old emacsPackages (pre emacsPackagesNg)
diff --git a/pkgs/applications/editors/emacs-modes/melpa-packages.nix b/pkgs/applications/editors/emacs-modes/melpa-packages.nix
index 5c9456b76a63..87da2079605f 100644
--- a/pkgs/applications/editors/emacs-modes/melpa-packages.nix
+++ b/pkgs/applications/editors/emacs-modes/melpa-packages.nix
@@ -42,7 +42,9 @@ env NIXPKGS_ALLOW_BROKEN=1 nix-instantiate --show-trace ../../../../ -A emacsPac
   }: let
 
     inherit (import ./libgenerated.nix lib self) melpaDerivation;
-    super = lib.listToAttrs (map (melpaDerivation variant) (lib.importJSON archiveJson));
+    super = lib.listToAttrs (builtins.filter (s: s != null)
+                                             (map (melpaDerivation variant)
+                                                  (lib.importJSON archiveJson)));
 
     overrides = rec {
       shared = rec {
@@ -105,6 +107,11 @@ env NIXPKGS_ALLOW_BROKEN=1 nix-instantiate --show-trace ../../../../ -A emacsPac
             (attrs.nativeBuildInputs or []) ++ [ external.git ];
         });
 
+        eopengrok = super.eopengrok.overrideAttrs (attrs: {
+          nativeBuildInputs =
+            (attrs.nativeBuildInputs or []) ++ [ external.git ];
+        });
+
         ess-R-data-view = super.ess-R-data-view.override {
           inherit (self.melpaPackages) ess ctable popup;
         };
@@ -170,6 +177,66 @@ env NIXPKGS_ALLOW_BROKEN=1 nix-instantiate --show-trace ../../../../ -A emacsPac
             (attrs.nativeBuildInputs or []) ++ [ external.git ];
         });
 
+        magit-find-file = super.magit-find-file.overrideAttrs (attrs: {
+          # searches for Git at build time
+          nativeBuildInputs =
+            (attrs.nativeBuildInputs or []) ++ [ external.git ];
+        });
+
+        magit-gh-pulls = super.magit-gh-pulls.overrideAttrs (attrs: {
+          # searches for Git at build time
+          nativeBuildInputs =
+            (attrs.nativeBuildInputs or []) ++ [ external.git ];
+        });
+
+        magit-imerge = super.magit-imerge.overrideAttrs (attrs: {
+          # searches for Git at build time
+          nativeBuildInputs =
+            (attrs.nativeBuildInputs or []) ++ [ external.git ];
+        });
+
+        magit-lfs = super.magit-lfs.overrideAttrs (attrs: {
+          # searches for Git at build time
+          nativeBuildInputs =
+            (attrs.nativeBuildInputs or []) ++ [ external.git ];
+        });
+
+        magit-org-todos = super.magit-org-todos.overrideAttrs (attrs: {
+          # searches for Git at build time
+          nativeBuildInputs =
+            (attrs.nativeBuildInputs or []) ++ [ external.git ];
+        });
+
+        magit-stgit = super.magit-stgit.overrideAttrs (attrs: {
+          # searches for Git at build time
+          nativeBuildInputs =
+            (attrs.nativeBuildInputs or []) ++ [ external.git ];
+        });
+
+        magit-tbdiff = super.magit-tbdiff.overrideAttrs (attrs: {
+          # searches for Git at build time
+          nativeBuildInputs =
+            (attrs.nativeBuildInputs or []) ++ [ external.git ];
+        });
+
+        magit-topgit = super.magit-topgit.overrideAttrs (attrs: {
+          # searches for Git at build time
+          nativeBuildInputs =
+            (attrs.nativeBuildInputs or []) ++ [ external.git ];
+        });
+
+        magit-vcsh = super.magit-vcsh.overrideAttrs (attrs: {
+          # searches for Git at build time
+          nativeBuildInputs =
+            (attrs.nativeBuildInputs or []) ++ [ external.git ];
+        });
+
+        magit-gerrit = super.magit-gerrit.overrideAttrs (attrs: {
+          # searches for Git at build time
+          nativeBuildInputs =
+            (attrs.nativeBuildInputs or []) ++ [ external.git ];
+        });
+
         magit-annex = super.magit-annex.overrideAttrs (attrs: {
           # searches for Git at build time
           nativeBuildInputs =
@@ -212,6 +279,12 @@ env NIXPKGS_ALLOW_BROKEN=1 nix-instantiate --show-trace ../../../../ -A emacsPac
             (attrs.nativeBuildInputs or []) ++ [ external.git ];
         });
 
+        kubernetes-evil = super.kubernetes-evil.overrideAttrs (attrs: {
+          # searches for Git at build time
+          nativeBuildInputs =
+            (attrs.nativeBuildInputs or []) ++ [ external.git ];
+        });
+
         # upstream issue: missing file header
         mhc = super.mhc.override {
           inherit (self.melpaPackages) calfw;
@@ -268,10 +341,6 @@ env NIXPKGS_ALLOW_BROKEN=1 nix-instantiate --show-trace ../../../../ -A emacsPac
 
         # Map legacy renames from emacs2nix since code generation was ported to emacs lisp
         _0blayout = super."0blayout";
-        _0xc = super."0xc";
-        _2048-game = super."2048-game";
-        _4clojure = super."4clojure";
-        at = super."@";
         desktop-plus = super."desktop+";
         ghub-plus = super."ghub+";
         git-gutter-plus = super."git-gutter+";
@@ -282,10 +351,6 @@ env NIXPKGS_ALLOW_BROKEN=1 nix-instantiate --show-trace ../../../../ -A emacsPac
         markdown-mode-plus = super."markdown-mode+";
         package-plus = super."package+";
         rect-plus = super."rect+";
-        term-plus = super."term+";
-        term-plus-key-intercept = super."term+key-intercept";
-        term-plus-mux = super."term+mux";
-        xml-plus = super."xml+";
       };
 
       stable = shared // {
@@ -358,14 +423,88 @@ env NIXPKGS_ALLOW_BROKEN=1 nix-instantiate --show-trace ../../../../ -A emacsPac
           packageRequires = with self; [ evil highlight ];
         });
 
+        kapacitor = super.kapacitor.overrideAttrs (attrs: {
+          # searches for Git at build time
+          nativeBuildInputs =
+            (attrs.nativeBuildInputs or []) ++ [ external.git ];
+        });
+
         forge = super.forge.overrideAttrs (attrs: {
           # searches for Git at build time
           nativeBuildInputs =
             (attrs.nativeBuildInputs or []) ++ [ external.git ];
         });
 
+        gerrit = super.gerrit.overrideAttrs (attrs: {
+          nativeBuildInputs =
+            (attrs.nativeBuildInputs or []) ++ [ external.git ];
+        });
+
+        gerrit-download = super.gerrit-download.overrideAttrs (attrs: {
+          nativeBuildInputs =
+            (attrs.nativeBuildInputs or []) ++ [ external.git ];
+        });
+
+        github-pullrequest = super.github-pullrequest.overrideAttrs (attrs: {
+          nativeBuildInputs =
+            (attrs.nativeBuildInputs or []) ++ [ external.git ];
+        });
+
         helm-rtags = fix-rtags super.helm-rtags;
 
+        jist = super.jist.overrideAttrs (attrs: {
+          nativeBuildInputs =
+            (attrs.nativeBuildInputs or []) ++ [ external.git ];
+        });
+
+        mandoku = super.mandoku.overrideAttrs (attrs: {
+          # searches for Git at build time
+          nativeBuildInputs =
+            (attrs.nativeBuildInputs or []) ++ [ external.git ];
+        });
+
+        mandoku-tls = super.mandoku-tls.overrideAttrs (attrs: {
+          # searches for Git at build time
+          nativeBuildInputs =
+            (attrs.nativeBuildInputs or []) ++ [ external.git ];
+        });
+
+        magit-p4 = super.magit-p4.overrideAttrs (attrs: {
+          # searches for Git at build time
+          nativeBuildInputs =
+            (attrs.nativeBuildInputs or []) ++ [ external.git ];
+        });
+
+        magit-rbr = super.magit-rbr.overrideAttrs (attrs: {
+          # searches for Git at build time
+          nativeBuildInputs =
+            (attrs.nativeBuildInputs or []) ++ [ external.git ];
+        });
+
+        magit-diff-flycheck = super.magit-diff-flycheck.overrideAttrs (attrs: {
+          # searches for Git at build time
+          nativeBuildInputs =
+            (attrs.nativeBuildInputs or []) ++ [ external.git ];
+        });
+
+        magit-reviewboard = super.magit-reviewboard.overrideAttrs (attrs: {
+          # searches for Git at build time
+          nativeBuildInputs =
+            (attrs.nativeBuildInputs or []) ++ [ external.git ];
+        });
+
+        magit-patch-changelog = super.magit-patch-changelog.overrideAttrs (attrs: {
+          # searches for Git at build time
+          nativeBuildInputs =
+            (attrs.nativeBuildInputs or []) ++ [ external.git ];
+        });
+
+        magit-circleci = super.magit-circleci.overrideAttrs (attrs: {
+          # searches for Git at build time
+          nativeBuildInputs =
+            (attrs.nativeBuildInputs or []) ++ [ external.git ];
+        });
+
         orgit =
           (super.orgit.overrideAttrs (attrs: {
             # searches for Git at build time
@@ -414,6 +553,16 @@ env NIXPKGS_ALLOW_BROKEN=1 nix-instantiate --show-trace ../../../../ -A emacsPac
         # Legacy alias
         emacs-libvterm = unstable.vterm;
 
+        # Map legacy renames from emacs2nix since code generation was ported to emacs lisp
+        _0xc = super."0xc";
+        _2048-game = super."2048-game";
+        _4clojure = super."4clojure";
+        at = super."@";
+        term-plus = super."term+";
+        term-plus-key-intercept = super."term+key-intercept";
+        term-plus-mux = super."term+mux";
+        xml-plus = super."xml+";
+
         w3m = super.w3m.override (args: {
           melpaBuild = drv: args.melpaBuild (drv // {
             prePatch =
diff --git a/pkgs/applications/editors/emacs-modes/ocaml/default.nix b/pkgs/applications/editors/emacs-modes/ocaml/default.nix
index becc2dc5dc9b..4240263dd0b8 100644
--- a/pkgs/applications/editors/emacs-modes/ocaml/default.nix
+++ b/pkgs/applications/editors/emacs-modes/ocaml/default.nix
@@ -25,7 +25,7 @@ in stdenv.mkDerivation {
   '';
 
   meta = {
-    homepage = http://caml.inria.fr;
+    homepage = "http://caml.inria.fr";
     description = "OCaml mode package for Emacs";
     platforms = stdenv.lib.platforms.unix;
   };
diff --git a/pkgs/applications/editors/emacs-modes/org-generated.nix b/pkgs/applications/editors/emacs-modes/org-generated.nix
index 302f5adcfb1f..4ff1db1c7439 100644
--- a/pkgs/applications/editors/emacs-modes/org-generated.nix
+++ b/pkgs/applications/editors/emacs-modes/org-generated.nix
@@ -4,10 +4,10 @@
       elpaBuild {
         pname = "org";
         ename = "org";
-        version = "20191203";
+        version = "20200504";
         src = fetchurl {
-          url = "https://orgmode.org/elpa/org-20191203.tar";
-          sha256 = "1fcgiswjnqmfzx3xkmlqyyhc4a8ms07vdsv7nkizgxqdh9hwfm2q";
+          url = "https://orgmode.org/elpa/org-20200504.tar";
+          sha256 = "1nalr2jafhzfkaf4bn8kscxd7nm1wz7dbw2629j2msxknw76dwk1";
         };
         packageRequires = [];
         meta = {
@@ -19,10 +19,10 @@
       elpaBuild {
         pname = "org-plus-contrib";
         ename = "org-plus-contrib";
-        version = "20191203";
+        version = "20200504";
         src = fetchurl {
-          url = "https://orgmode.org/elpa/org-plus-contrib-20191203.tar";
-          sha256 = "1kvw95492acb7gqn8gxbp1vg4fyw80w43yvflxnfxdf6jnnw2wah";
+          url = "https://orgmode.org/elpa/org-plus-contrib-20200504.tar";
+          sha256 = "1ykw3qspz18jgf3ngsvk2ys282489fcjrbk7pbv3ppxzjha4rmhb";
         };
         packageRequires = [];
         meta = {
@@ -30,4 +30,4 @@
           license = lib.licenses.free;
         };
       }) {};
-  }
+  }
\ No newline at end of file
diff --git a/pkgs/applications/editors/emacs-modes/org-mac-link/default.nix b/pkgs/applications/editors/emacs-modes/org-mac-link/default.nix
index 4d8f40074bdd..93af03ce229f 100644
--- a/pkgs/applications/editors/emacs-modes/org-mac-link/default.nix
+++ b/pkgs/applications/editors/emacs-modes/org-mac-link/default.nix
@@ -24,7 +24,7 @@ stdenv.mkDerivation {
 
   meta = {
     description = "Insert org-mode links to items selected in various Mac apps";
-    homepage = https://orgmode.org/worg/org-contrib/org-mac-link.html;
+    homepage = "https://orgmode.org/worg/org-contrib/org-mac-link.html";
     license = stdenv.lib.licenses.gpl3;
     platforms = stdenv.lib.platforms.all;
   };
diff --git a/pkgs/applications/editors/emacs-modes/perl-completion/default.nix b/pkgs/applications/editors/emacs-modes/perl-completion/default.nix
index 9f251f54d6aa..7f2454c811a7 100644
--- a/pkgs/applications/editors/emacs-modes/perl-completion/default.nix
+++ b/pkgs/applications/editors/emacs-modes/perl-completion/default.nix
@@ -17,7 +17,7 @@ stdenv.mkDerivation {
 
   meta = {
     description = "Minor mode provides useful features for editing perl codes";
-    homepage = http://emacswiki.org/emacs/PerlCompletion;
+    homepage = "http://emacswiki.org/emacs/PerlCompletion";
     platforms = stdenv.lib.platforms.all;
   };
 }
diff --git a/pkgs/applications/editors/emacs-modes/pod-mode/default.nix b/pkgs/applications/editors/emacs-modes/pod-mode/default.nix
index 198adefc0163..549633b7dfbd 100644
--- a/pkgs/applications/editors/emacs-modes/pod-mode/default.nix
+++ b/pkgs/applications/editors/emacs-modes/pod-mode/default.nix
@@ -13,6 +13,6 @@ trivialBuild rec {
     description = "Major mode for editing .pod-files";
     license = licenses.gpl2Plus;
     maintainers = with maintainers; [ qyliss ];
-    platform = platforms.all;
+    platforms = platforms.all;
   };
 }
diff --git a/pkgs/applications/editors/emacs-modes/prolog/default.nix b/pkgs/applications/editors/emacs-modes/prolog/default.nix
index 337a1585b1b4..7f5a097daa93 100644
--- a/pkgs/applications/editors/emacs-modes/prolog/default.nix
+++ b/pkgs/applications/editors/emacs-modes/prolog/default.nix
@@ -14,7 +14,7 @@ stdenv.mkDerivation {
   '';
 
   meta = {
-    homepage = http://bruda.ca/emacs/prolog_mode_for_emacs/;
+    homepage = "http://bruda.ca/emacs/prolog_mode_for_emacs/";
     description = "Prolog mode for Emacs";
     license = stdenv.lib.licenses.gpl2Plus;
 
diff --git a/pkgs/applications/editors/emacs-modes/railgun/default.nix b/pkgs/applications/editors/emacs-modes/railgun/default.nix
index ba716e1dd13b..8ca8d1feaa1e 100644
--- a/pkgs/applications/editors/emacs-modes/railgun/default.nix
+++ b/pkgs/applications/editors/emacs-modes/railgun/default.nix
@@ -16,7 +16,7 @@ stdenv.mkDerivation {
 
   meta = {
     description = "Propel yourself through a rails project with the power of magnets";
-    homepage = https://github.com/mbriggs/railgun.el;
+    homepage = "https://github.com/mbriggs/railgun.el";
     platforms = stdenv.lib.platforms.all;
   };
 }
diff --git a/pkgs/applications/editors/emacs-modes/recipes-archive-melpa.json b/pkgs/applications/editors/emacs-modes/recipes-archive-melpa.json
index 338766b4ebe4..2224c44f9c49 100644
--- a/pkgs/applications/editors/emacs-modes/recipes-archive-melpa.json
+++ b/pkgs/applications/editors/emacs-modes/recipes-archive-melpa.json
@@ -31,20 +31,20 @@
   "url": "https://git.sr.ht/~zge/nullpointer-emacs",
   "unstable": {
    "version": [
-    20200222,
-    948
+    20200411,
+    1227
    ],
-   "commit": "265b7d65e1bc54d84435e9d79379bc808e9a488b",
-   "sha256": "1nk2kqv7blahfiihz5vdvsb1j5bji1w5w9zz3lwzrv8i7pdbh34w"
+   "commit": "59136313132c08ab5fddaa875f6abeb22916a04b",
+   "sha256": "0acdh1r28v6xcsh39r13xppzqb6m00jgxgsxl17779isw98w9a3y"
   },
   "stable": {
    "version": [
     0,
-    2,
-    1
+    3,
+    0
    ],
-   "commit": "ae55ae0397ff3cf28a3ea52111bfc053dffb126d",
-   "sha256": "179snc2z047afw2h5jqbwdc64vxdngjmg4zca46wap114c4alrm1"
+   "commit": "1d29192a3c28ba088d93410bfcdd4bee0abb6610",
+   "sha256": "02kmfzkrl35y599w5yal5d7rjb3xi02zhvb8q0m3iw4mbm16sw28"
   }
  },
  {
@@ -67,17 +67,17 @@
  },
  {
   "ename": "2048-game",
-  "commit": "5b7972602399f9df9139cff177e38653bb0f43ed",
-  "sha256": "0z7x9bnyi3qlq7l0fskb61i6yr9gm7w7wplqd28wz8p1j5yw8aa0",
-  "fetcher": "bitbucket",
-  "repo": "zck/2048.el",
+  "commit": "d3828ad7599d13728b5571b882344c3ada434b85",
+  "sha256": "0i7g7fg21ndpfbdydij3fb683pqgd1sicb7x6rradbc8jpmcf5sq",
+  "fetcher": "hg",
+  "url": "https://hg.sr.ht/~zck/game-2048",
   "unstable": {
    "version": [
-    20151026,
-    1933
+    20200417,
+    259
    ],
-   "commit": "ea6c3bce8ac1c17dae5ac711ae4e931c0495e455",
-   "sha256": "1p9qn9n8mfb4z62h1s94mlg0vshpzafbhsxgzvx78sqlf6bfc80l"
+   "commit": "aad4a590ea91f9a3256233b9b345e9159c6993f2",
+   "sha256": "1jd50m5w0g0yplzms4qvkxx16f7xsbm9h7sdrw1p130gbij252l3"
   }
  },
  {
@@ -283,10 +283,10 @@
  },
  {
   "ename": "ac-alchemist",
-  "commit": "ef9037aa41a8d9467838495bb235db32c19cc417",
-  "sha256": "02ll3hcixgdb8zyszn78714gy1h2q0vkhpbnwap9302mr2racwl0",
+  "commit": "2a2670edb1155f02d1cbe2600db84a82c8f3398b",
+  "sha256": "0cakni8lvkhgdrzwa2cdqwnkbaiac1fn4j2lqgmx33z7hmrk8am6",
   "fetcher": "github",
-  "repo": "syohex/emacs-ac-alchemist",
+  "repo": "emacsorphanage/ac-alchemist",
   "unstable": {
    "version": [
     20150908,
@@ -334,10 +334,10 @@
  },
  {
   "ename": "ac-capf",
-  "commit": "929da263f57b904c50f5f17b09d4c4b480999c97",
-  "sha256": "1drgk5iz2wp3rxzd39pj0n4cfmm5z8zqlp50jw5z7ffbbg35qxbm",
+  "commit": "2a2670edb1155f02d1cbe2600db84a82c8f3398b",
+  "sha256": "08a1ywyv5l1npbkpmg3wmprnqk837bmbwjpcgf5di9a2j33xqbin",
   "fetcher": "github",
-  "repo": "syohex/emacs-ac-capf",
+  "repo": "emacsorphanage/ac-capf",
   "unstable": {
    "version": [
     20151101,
@@ -516,10 +516,10 @@
  },
  {
   "ename": "ac-emoji",
-  "commit": "15f591f9cba367b071046fef5ae01bbbd0475ce3",
-  "sha256": "0msh3dh89jzk6hxva34gp9d5pazchgdknxjbi72z26rss9bkp1mw",
+  "commit": "2a2670edb1155f02d1cbe2600db84a82c8f3398b",
+  "sha256": "06cwaasv2bsxr86wsjc21ggibcyqfp352wnc8i5fbr4ypd3vbk42",
   "fetcher": "github",
-  "repo": "syohex/emacs-ac-emoji",
+  "repo": "emacsorphanage/ac-emoji",
   "unstable": {
    "version": [
     20150823,
@@ -547,10 +547,10 @@
  },
  {
   "ename": "ac-etags",
-  "commit": "fda9c7def8bc54af4ab17dc049dd94324c8f10fa",
-  "sha256": "0ag49k9izrs4ikzac9lifvvwhcn5n89lr2vb20pngsvg1czdyhzb",
+  "commit": "2a2670edb1155f02d1cbe2600db84a82c8f3398b",
+  "sha256": "1qy6v37v7lx93lnpgh5bf2ccxpg2ldzwgdyigqmby9fy0wzwr8sf",
   "fetcher": "github",
-  "repo": "syohex/emacs-ac-etags",
+  "repo": "emacsorphanage/ac-etags",
   "unstable": {
    "version": [
     20161001,
@@ -582,15 +582,15 @@
   "repo": "xiaohanyu/ac-geiser",
   "unstable": {
    "version": [
-    20130929,
-    647
+    20200318,
+    824
    ],
    "deps": [
     "auto-complete",
     "geiser"
    ],
-   "commit": "502d18a8a0bd4b5fdd495a99299ba2a632c5cd9a",
-   "sha256": "0h2kakb4f5hgzf5l2kpqngalcmc4402lkg1pvs88c8z4rqp2vfvz"
+   "commit": "93818c936ee7e2f1ba1b315578bde363a7d43d05",
+   "sha256": "00n2qa26yilaj837n1yp6lbqa4gf30nkkbvanl7m9ih7k48ssqmw"
   },
   "stable": {
    "version": [
@@ -814,10 +814,10 @@
  },
  {
   "ename": "ac-ispell",
-  "commit": "b41acb7387ebef9af2906fa16298b64d6431bfb0",
-  "sha256": "1vsy2qjh60n5lavivpqhhcpg5pk8zz2r0wy1sb65capn841zdi67",
+  "commit": "2a2670edb1155f02d1cbe2600db84a82c8f3398b",
+  "sha256": "0npbrvwww6mi8q8x3cc6sf02x1b3ns2w7499lip7ymbr1zi9gdxg",
   "fetcher": "github",
-  "repo": "syohex/emacs-ac-ispell",
+  "repo": "emacsorphanage/ac-ispell",
   "unstable": {
    "version": [
     20151101,
@@ -960,8 +960,8 @@
     "auto-complete",
     "yasnippet"
    ],
-   "commit": "7b8db219080b714a7b8ba452ddb82bd08f7db152",
-   "sha256": "1zm04hqy6dg57swk05qvl5idzb11camcdmh7lrh6mqsvrcsvym2q"
+   "commit": "6ca9baaafd3a3e429429986cc59097dcbfa7cda2",
+   "sha256": "0gj1w0ynd3nk84ac2l3anmcvm44p662scdy80zwp2xisfc0c301x"
   },
   "stable": {
    "version": [
@@ -986,8 +986,8 @@
   "repo": "xcwen/ac-php",
   "unstable": {
    "version": [
-    20200103,
-    656
+    20200425,
+    835
    ],
    "deps": [
     "dash",
@@ -997,8 +997,8 @@
     "s",
     "xcscope"
    ],
-   "commit": "7b8db219080b714a7b8ba452ddb82bd08f7db152",
-   "sha256": "1zm04hqy6dg57swk05qvl5idzb11camcdmh7lrh6mqsvrcsvym2q"
+   "commit": "6ca9baaafd3a3e429429986cc59097dcbfa7cda2",
+   "sha256": "0gj1w0ynd3nk84ac2l3anmcvm44p662scdy80zwp2xisfc0c301x"
   },
   "stable": {
    "version": [
@@ -1020,10 +1020,10 @@
  },
  {
   "ename": "ac-racer",
-  "commit": "e4318daf4dbb6864ee41f41287c89010fb811641",
-  "sha256": "1vkvh8y3ckvzvqxj4i2k6jqri94121wbfjziybli74qba8dca4yp",
+  "commit": "2a2670edb1155f02d1cbe2600db84a82c8f3398b",
+  "sha256": "0vxnc6q2khxf5xl3k8lwvjg5biqxasr4vm9k3c8033xwl6in299r",
   "fetcher": "github",
-  "repo": "syohex/emacs-ac-racer",
+  "repo": "emacsorphanage/ac-racer",
   "unstable": {
    "version": [
     20170114,
@@ -1064,8 +1064,8 @@
     "auto-complete",
     "rtags"
    ],
-   "commit": "3d025d9c97359442f7190ec42a63ff7e5fd85a9a",
-   "sha256": "1c8llhbhvrv5kwmci7rlsjqv3gr4gxi45g6c21fqrblyhas95s3n"
+   "commit": "a42298e80dffae9a6b2e9816506174542f3cbbb7",
+   "sha256": "1674752bbyb7890na5p846dxcvh83zn0a6z19wras1x5c59s24i3"
   },
   "stable": {
    "version": [
@@ -1212,11 +1212,11 @@
   "repo": "tam17aki/ace-isearch",
   "unstable": {
    "version": [
-    20200205,
-    1105
+    20200420,
+    518
    ],
-   "commit": "cb6d7306cb5d2d4d36cb3803c0eaf779d88c2666",
-   "sha256": "1lrgjz7a4s50shc74kx6k958i1ayv5pfncsrjb3n87bvrx9wq6g3"
+   "commit": "58e4f1ad5cbbd2f86d161881d3f3ded3a3db984c",
+   "sha256": "0mlswnyd89ir060kiinzlrh70mdy8nfm2zpwr9jj2p19hrslmc4r"
   },
   "stable": {
    "version": [
@@ -1473,26 +1473,26 @@
   "repo": "abo-abo/ace-window",
   "unstable": {
    "version": [
-    20200201,
-    1753
+    20200311,
+    1025
    ],
    "deps": [
     "avy"
    ],
-   "commit": "a36c1472d0ee59c2c1e6fb3ad66304141b154ef5",
-   "sha256": "1mkf1zi8z435jfpdi239gbn8243lwwsf1mgr6qq60pxbxxw9g13d"
+   "commit": "7003c88cd9cad58dc35c7cd13ebc61c355fb5be7",
+   "sha256": "0f3r40d5yxp2pm2j0nn86s29nqj8py0jxjbj50v4ci3hsd92d8jl"
   },
   "stable": {
    "version": [
     0,
-    9,
+    10,
     0
    ],
    "deps": [
     "avy"
    ],
-   "commit": "eef897e590c4ce63c28fd29ebff3c97aec8a69ae",
-   "sha256": "07mcdzjmgrqdvjs94f2n5bkrf5vrq2fwzz256wbm3wzqxqkfy1q6"
+   "commit": "7003c88cd9cad58dc35c7cd13ebc61c355fb5be7",
+   "sha256": "0f3r40d5yxp2pm2j0nn86s29nqj8py0jxjbj50v4ci3hsd92d8jl"
   }
  },
  {
@@ -1563,32 +1563,30 @@
   "repo": "pauldub/activity-watch-mode",
   "unstable": {
    "version": [
-    20200130,
-    805
+    20200416,
+    637
    ],
    "deps": [
     "cl-lib",
     "json",
-    "projectile",
     "request"
    ],
-   "commit": "153d93eac0b9511dc00b50c2ba409c085b58602b",
-   "sha256": "18idfbdrk3b2y573g2ld5sqkb9j216ixik679qj7qdnwa2b7m2xx"
+   "commit": "9d591c5ec9a2b2c7b55a754dd37c7434b2ef9fdc",
+   "sha256": "0a1ylq0il5aca5y9acykaa47p8d9xb3jy4wgi1lpm60z06n4m99y"
   },
   "stable": {
    "version": [
     1,
-    1,
-    1
+    3,
+    0
    ],
    "deps": [
     "cl-lib",
     "json",
-    "projectile",
     "request"
    ],
-   "commit": "153d93eac0b9511dc00b50c2ba409c085b58602b",
-   "sha256": "18idfbdrk3b2y573g2ld5sqkb9j216ixik679qj7qdnwa2b7m2xx"
+   "commit": "9d591c5ec9a2b2c7b55a754dd37c7434b2ef9fdc",
+   "sha256": "0a1ylq0il5aca5y9acykaa47p8d9xb3jy4wgi1lpm60z06n4m99y"
   }
  },
  {
@@ -1819,14 +1817,14 @@
   "repo": "Malabarba/aggressive-indent-mode",
   "unstable": {
    "version": [
-    20190828,
-    1828
+    20200421,
+    1149
    ],
    "deps": [
     "cl-lib"
    ],
-   "commit": "c28246ba09d53e32cd9d8cafb1830f50387d9985",
-   "sha256": "19qklr4wqy55cb2133qlnrhf9yggsf096l14glw4jwpvx3cn61dd"
+   "commit": "58348d29adf8d2f23da2798badd7f89ff59cd7cc",
+   "sha256": "1d9hi36ml449x7qqpvcgxqx0r88jpqf1pq9k38af66ny3vd6zwl6"
   },
   "stable": {
    "version": [
@@ -1873,17 +1871,17 @@
  },
  {
   "ename": "ahg",
-  "commit": "5b7972602399f9df9139cff177e38653bb0f43ed",
-  "sha256": "0kw138lfzwp54fmly3jzzml11y7fhcjp3w0irmwdzr68lc206lr4",
-  "fetcher": "bitbucket",
-  "repo": "agriggio/ahg",
+  "commit": "eb2493e54641d6ca54461f237d3b7d30067a639f",
+  "sha256": "1za0hsk6mz6h958mqh4wcv3jv02qdbwi28cwnk90fpkkn43grwdi",
+  "fetcher": "git",
+  "url": "https://bitbucket.org/agriggio/ahg",
   "unstable": {
    "version": [
-    20190903,
-    1349
+    20200304,
+    741
    ],
-   "commit": "c85d951d7376425156911e5f3cd7535b4ecfbfc3",
-   "sha256": "0j5h1yjhg7lj3zxznfzy7mqj2c2r4cwdg8xik3wlk2cnm27fhgz6"
+   "commit": "0ece48646ef7a8c813005934cc13f984b9998707",
+   "sha256": "0ypck79bmv4pa8l555kgij69jbpkv4fz9w91qs30lacjmrj0nha5"
   }
  },
  {
@@ -1894,11 +1892,11 @@
   "repo": "ralesi/ahk-mode",
   "unstable": {
    "version": [
-    20191221,
-    2202
+    20200412,
+    1832
    ],
-   "commit": "377f79484cc43458f66c1ba5a61459b77e363591",
-   "sha256": "0vf9pg2yjldzm4nzvzw0w2cvrnxj4xpm3ymsnpzdd55mp7q3y1ag"
+   "commit": "729007b5f22a49f5187ff47fca18c0d674e73047",
+   "sha256": "0989iva0igmd3y61hihwnc7mhn11midimrnbpvq7d062iy7g4vaw"
   },
   "stable": {
    "version": [
@@ -1942,11 +1940,11 @@
   "repo": "skeeto/emacs-aio",
   "unstable": {
    "version": [
-    20190601,
-    753
+    20200410,
+    1409
    ],
-   "commit": "0e8a18f1bbb5f7be0f88d8e02ef13494736d63bc",
-   "sha256": "1aikvka4s97p5s26vclrnamgj8agx1j8ls6q3x7mxf8mhpv4ghqz"
+   "commit": "9367005c44c42c46c8ca1e7d3f780731c7d123dd",
+   "sha256": "063avjlizpjc53myjzvkqsp64gkxwcc7w7shjdf1xgjb9b58pbc1"
   },
   "stable": {
    "version": [
@@ -1965,14 +1963,14 @@
   "repo": "AnthonyDiGirolamo/airline-themes",
   "unstable": {
    "version": [
-    20180411,
-    406
+    20200408,
+    2114
    ],
    "deps": [
     "powerline"
    ],
-   "commit": "8b528fbae0e557461315bed82883275d58df41f2",
-   "sha256": "1xydgf9w0i2anpmjhy8m0zv1hql4gb37i11xfn6xzwna572z1ml9"
+   "commit": "d81ec80d6fc36157c20015e9fd6b192cfc679035",
+   "sha256": "0h9iximw1n5pwfd8zfn1xx4dcrsvxcy8rmr2ng20kl8bflir3i6s"
   },
   "stable": {
    "version": [
@@ -2051,8 +2049,8 @@
    "deps": [
     "f"
    ],
-   "commit": "43bfd15f0b1b90e0e99345f7c6c6e994d048a05c",
-   "sha256": "02y51gbbb9j448zifxgw53hprq77wsk8v6waafgpdbn84wljxkig"
+   "commit": "644f331071f8b09a898fae490541908b5054d2e6",
+   "sha256": "0yf2mikpxnfl673rv0w7xp1cvlkgvlmzgaixva3ppz6f0wg3vgz6"
   },
   "stable": {
    "version": [
@@ -2158,16 +2156,16 @@
   "repo": "jwiegley/alert",
   "unstable": {
    "version": [
-    20191126,
-    2032
+    20200303,
+    2118
    ],
    "deps": [
     "cl-lib",
     "gntp",
     "log4e"
    ],
-   "commit": "a73ede85c9cdd7d1a7593d4674cde8eec66c098b",
-   "sha256": "02p049xrbccb6hf7pc51mwwqqiks25dvz42smb1s7q03a0svrq6d"
+   "commit": "7046393272686c7a1a9b3e7f7b1d825d2e5250a6",
+   "sha256": "1s93ijkax0s78qn79c364ainmq7jq4gc95akl9wra642ql6hz3iq"
   },
   "stable": {
    "version": [
@@ -2224,14 +2222,14 @@
   "repo": "rubikitch/all-ext",
   "unstable": {
    "version": [
-    20170115,
-    205
+    20200315,
+    1443
    ],
    "deps": [
     "all"
    ],
-   "commit": "9f4ef84a147cf4e0af6ef45826d6cb3558db6b88",
-   "sha256": "0gdrsi9n9i1ibijkgk5kyjdjdmnsccfbpifpv679371glap9f68b"
+   "commit": "c865c62506af2c9edc7705a7c24dc8b70d5d4de2",
+   "sha256": "16r0ll7wsfsrymwm78gnnrfawafan9gbwiymqfmij3m9riqss7y0"
   }
  },
  {
@@ -2242,26 +2240,26 @@
   "repo": "domtronn/all-the-icons.el",
   "unstable": {
    "version": [
-    20191127,
-    1123
+    20200411,
+    520
    ],
    "deps": [
     "memoize"
    ],
-   "commit": "1416f37984486a44c6c0cbe0a2c985e82f965b6b",
-   "sha256": "1nwqn1cwjrmlp8g87ciwpv1h0pd61nh05bdpvz2kqg8b5ssfc4gd"
+   "commit": "0b74fc361817e885580c3f3408079f949f5830e1",
+   "sha256": "0y7wgwkspa800pck4ijyzgp3nrg8xkky079k1ywz7p04jqvgxrpp"
   },
   "stable": {
    "version": [
-    3,
-    2,
-    0
+    4,
+    0,
+    1
    ],
    "deps": [
     "memoize"
    ],
-   "commit": "52d1f2d36468146c93aaf11399f581401a233306",
-   "sha256": "1sdl33117lccznj38021lwcdnpi9nxmym295q6y460y4dm4lx0jn"
+   "commit": "d363bb3e73909be013fcf35e1458bb654ec5bbaa",
+   "sha256": "0yh7gnv9xfqn8q4rzaa6wpyn9575vyfxy7d3afly2mqsb367fgm5"
   }
  },
  {
@@ -2272,14 +2270,14 @@
   "repo": "jtbm37/all-the-icons-dired",
   "unstable": {
    "version": [
-    20200229,
-    2225
+    20200403,
+    1018
    ],
    "deps": [
     "all-the-icons"
    ],
-   "commit": "9d535651412a20105ba58c0fceb3a807891c3606",
-   "sha256": "1w6rj619rx13jrhd5nvgm5j7ipazngm0sk66ll9c62lja43lmkwh"
+   "commit": "fc2dfa1e9eb8bf1c402a675e7089638d702a27a5",
+   "sha256": "0zhyhz4lhx0d8wwh1xxxf7ck4s621fk9757ql2ypxbr4iqh7sjlp"
   }
  },
  {
@@ -2309,26 +2307,26 @@
   "repo": "seagle0128/all-the-icons-ibuffer",
   "unstable": {
    "version": [
-    20200301,
-    654
+    20200319,
+    1625
    ],
    "deps": [
     "all-the-icons"
    ],
-   "commit": "04578528f609ee837854f329cbf64ddd40f7a2ae",
-   "sha256": "0m5y18z2w3c0paq07papj1dc3m7cxhrrjyfav4gbbi5cpmh5sxnp"
+   "commit": "3ee9e32f480329e94e45f86538343b0ddc7ddd4f",
+   "sha256": "1cs9027q26nfm5k3182mbmmhj8s8y2nv47gsyamwpjqdma0sbl73"
   },
   "stable": {
    "version": [
     1,
-    1,
+    2,
     0
    ],
    "deps": [
     "all-the-icons"
    ],
-   "commit": "07a55895ded043fa317c61c3a7013736345e7a38",
-   "sha256": "14c5rbl48hfdnj186p9g9csf5xrzid2jv90x3n4p8r5nigy5j74m"
+   "commit": "ee0409588ebaee1aada351f1a75abcdc999ac9e2",
+   "sha256": "0afq5wjh74ks8hrsb9m41h1m9gyc0hvp2qmy4b1ls9kffgnk7ri2"
   }
  },
  {
@@ -2371,28 +2369,28 @@
   "repo": "seagle0128/all-the-icons-ivy-rich",
   "unstable": {
    "version": [
-    20200301,
-    656
+    20200324,
+    550
    ],
    "deps": [
     "all-the-icons",
     "ivy-rich"
    ],
-   "commit": "b3dda7af490e606b85e1e0cd9806988ce301dac5",
-   "sha256": "0bj0m7gbjkgwyh87zhsx2vhbw6g6ncjc1r63ai726scz10h5y0a4"
+   "commit": "a9a4389c1930a5a071857b4d450eaecb21f4d6b9",
+   "sha256": "133vl3awl3qxxd2ka8zdr33v6s8hrjpsv4bv2db5j8jz35m0hx9d"
   },
   "stable": {
    "version": [
     1,
-    1,
+    2,
     0
    ],
    "deps": [
     "all-the-icons",
     "ivy-rich"
    ],
-   "commit": "7344a94182cca55d33f3c04e0d9c9e9e91db0637",
-   "sha256": "03pmfx528dhywas4j40h95r1v3dprn9n3ydhk13jsclmjy471cz9"
+   "commit": "3e02da9a166df7ebea25aae476efd7b8d74d63e0",
+   "sha256": "0p91yvpqy7xjkz2mcpq6c8kjfxqfw9byxprqg2qqnzg421c5yv6x"
   }
  },
  {
@@ -2531,15 +2529,15 @@
   "repo": "zwild/ammonite-term-repl",
   "unstable": {
    "version": [
-    20190618,
-    1517
+    20200416,
+    559
    ],
    "deps": [
     "s",
     "scala-mode"
    ],
-   "commit": "9b3fe36654f03f6ab461bbec413f9ea014829a49",
-   "sha256": "09n9b1zkhaq0ikbgklnlxpgyyjf8hs9f7dcpgx5jjwi4pj0wzvi9"
+   "commit": "b552fe21977e005c1c460bf6607557e67241a6b6",
+   "sha256": "0g6ldvzcm6arm6hxiz1y168mj73kipgbjzxciif2b4sd3z7wpnp6"
   }
  },
  {
@@ -2588,6 +2586,24 @@
   }
  },
  {
+  "ename": "amread-mode",
+  "commit": "2155dbd9bdf7b1f6f500c11ad1796c2ba2ddadec",
+  "sha256": "19wafb0aszphdmx9ayiazvq2avj9kqhanszh714n397810ak7k0v",
+  "fetcher": "github",
+  "repo": "stardiviner/amread-mode",
+  "unstable": {
+   "version": [
+    20200404,
+    1143
+   ],
+   "deps": [
+    "cl-lib"
+   ],
+   "commit": "a595828fcc2257f765139b576beb6c33b4fc3bce",
+   "sha256": "1mwlj48hjp59mcafia612qqzmqxh30k0jshzrnzsnwlfbbsdxjwj"
+  }
+ },
+ {
   "ename": "amx",
   "commit": "c55bfad05343b2b0f3150fd2b4adb07a1768c1c0",
   "sha256": "1ikhjvkca0lsb9j719yf6spg6nwc0qaydkd8aax162sis7kp9fap",
@@ -2595,14 +2611,14 @@
   "repo": "DarwinAwardWinner/amx",
   "unstable": {
    "version": [
-    20200215,
-    1901
+    20200417,
+    1513
    ],
    "deps": [
     "s"
    ],
-   "commit": "e512e74e8368f9b1cf83bee16dd2522f3b1dbeea",
-   "sha256": "08vx7rd36j4ls7a7i2vn7mf74vbzcyrzzv0wzqzyb8ihv4qhjc0g"
+   "commit": "7fb7b874291e0cdeb1f0acb18564a686ec86788d",
+   "sha256": "0yc2b814zcl3c6lgamrr63cl4r3ayzlyfqql8875fzflc541nnnc"
   },
   "stable": {
    "version": [
@@ -2653,6 +2669,37 @@
   }
  },
  {
+  "ename": "anakondo",
+  "commit": "197ff9f72a46a5732495d97c6b0ecb526e6995f4",
+  "sha256": "14kypppdgvzj2plydcpd22b9wpkircr0nc6gs4rcw416h157l2bv",
+  "fetcher": "github",
+  "repo": "didibus/anakondo",
+  "unstable": {
+   "version": [
+    20200426,
+    28
+   ],
+   "deps": [
+    "projectile"
+   ],
+   "commit": "50ca8b69e0e53e4163215f3fcc325620b4d5d5af",
+   "sha256": "1sy0hxrj1vffqcwl5l48hl9yq4qswwjfgcc4445lairfycd4l9m7"
+  },
+  "stable": {
+   "version": [
+    0,
+    1,
+    1
+   ],
+   "deps": [
+    "json",
+    "projectile"
+   ],
+   "commit": "6ba040e6af4466949dcad2b4a47069705f200322",
+   "sha256": "05j9x11hy8wzq1fbbal1y1wzkw6h98l9pp8q0qmarg0lb6hjk52x"
+  }
+ },
+ {
   "ename": "anaphora",
   "commit": "8505db1945071a15ba0f2bb74b58d4a6875ca7d6",
   "sha256": "1wb7fb3pc4gxvpjlm6gjbyx0rbhjiwd93qwc4vfw6p865ikl19y2",
@@ -2815,8 +2862,8 @@
     "dash",
     "request"
    ],
-   "commit": "084ffad14fa700ad1ba95d8cbfe4a8f6052e2408",
-   "sha256": "0zjd5yid333shvjm4zy3p7zdpa09xcl96gc4wvi2paxjad6iqhwz"
+   "commit": "546774a453ef4617b1bcb0d1626e415c67cc88df",
+   "sha256": "1if610hq5j8rbjh1caw5bwbgnsn231awwxqbpwvrh966kdxzl4qf"
   }
  },
  {
@@ -2827,8 +2874,8 @@
   "repo": "davidshepherd7/anki-mode",
   "unstable": {
    "version": [
-    20191020,
-    1441
+    20200413,
+    1019
    ],
    "deps": [
     "dash",
@@ -2836,8 +2883,8 @@
     "request",
     "s"
    ],
-   "commit": "8022fbab57c47581102af831b4405fc27f71db92",
-   "sha256": "1nyiqd3093dbcimljj09vidanki6nbrzknzdxw4rkbl2kd1wfvlf"
+   "commit": "fcbcfa7cd7fb5c282e1138322e61242942729e3d",
+   "sha256": "06ab3zdaz5wf30zbci7cav3dvvnknnbzq18zfzzfi4xjcsi0zkvr"
   },
   "stable": {
    "version": [
@@ -2912,11 +2959,11 @@
   "repo": "bastibe/annotate.el",
   "unstable": {
    "version": [
-    20200219,
-    1558
+    20200330,
+    1640
    ],
-   "commit": "818f66f4a3d6a33ae90c4e5de12f8dce770e7875",
-   "sha256": "017yzg3jqf0x7zn7xhdgbr6m97zzcjv6icj5zl5q4zj0ksm9l82q"
+   "commit": "f0a71bb14806c79f09cb6aacb5ef98a852ef66e2",
+   "sha256": "1v2rbrhqg4kipk4l901xzfdc4wm5fkvvx4j3l8mfp7nvc2x8gcbw"
   },
   "stable": {
    "version": [
@@ -3065,26 +3112,26 @@
   "repo": "zellio/ansible-vault-mode",
   "unstable": {
    "version": [
-    20200130,
-    2300
+    20200305,
+    2240
    ],
    "deps": [
     "seq"
    ],
-   "commit": "5653e82a2706cc7e9f46d24c6319b00ba6eb7528",
-   "sha256": "02p970jh7vl2bx8arm04mk313rqgh2s48rm0mn8zbiam8s71m2bm"
+   "commit": "c4fe4b0af2ac7f9d32acee234716ab31fa824cef",
+   "sha256": "1xif6vv53rpc2k974pqckmzck55zhdhzyfl54kdp25w93xbs3js4"
   },
   "stable": {
    "version": [
     0,
     4,
-    0
+    1
    ],
    "deps": [
     "seq"
    ],
-   "commit": "898b0989f6054c813802e0ff0fb0c0094e3a71b5",
-   "sha256": "0qjjzmnx4pczv6jkafmji2kn2a0rqsxcm8g5jp8lq2cc6dx86ad4"
+   "commit": "9a50ed6b73222e9973c08d79b6955e57ed3b7d97",
+   "sha256": "1xif6vv53rpc2k974pqckmzck55zhdhzyfl54kdp25w93xbs3js4"
   }
  },
  {
@@ -3182,17 +3229,17 @@
  },
  {
   "ename": "anzu",
-  "commit": "855ea20024b606314f8590129259747cac0bcc97",
-  "sha256": "181hzwy9bc0zfhax26p20q9cjibrmi9ngps5fa3ja5g6scxfs9g1",
+  "commit": "2a2670edb1155f02d1cbe2600db84a82c8f3398b",
+  "sha256": "0m9wwq5fl7g6gfzv6m9hlrjf8nvqn1q7nqif1x93sh7q3vfwgxzl",
   "fetcher": "github",
-  "repo": "syohex/emacs-anzu",
+  "repo": "emacsorphanage/anzu",
   "unstable": {
    "version": [
-    20190303,
-    1701
+    20200331,
+    1717
    ],
-   "commit": "592f8ee6d0b1bc543943b36a30063c2d1aac4b22",
-   "sha256": "123zbnl36vi0gkffd6m6mkskhmjmm0am23j45w1mbmfyq03r1d8b"
+   "commit": "3e34fb3df53c0c68e842fa179c327a7395d1901d",
+   "sha256": "10jgh1mg8bxmpgaspsmqksgf3cqw9glap84cb9sdirvicsmisbsd"
   },
   "stable": {
    "version": [
@@ -3246,6 +3293,30 @@
   }
  },
  {
+  "ename": "apdl-mode",
+  "commit": "2fd3f323919b8eebba081689c93bb918d0af1359",
+  "sha256": "11in64hcs5gmvviv986043r68l34byi31v5vibwqx63qg8k3gqfn",
+  "fetcher": "github",
+  "repo": "dieter-wilhelm/apdl-mode",
+  "unstable": {
+   "version": [
+    20200417,
+    857
+   ],
+   "commit": "2fcf73e0d522e88e99813c84ac1c07f8a83b1e77",
+   "sha256": "1kfzvgxf34a1wdiiwv4q6bix24avdiwkldxbypkpw57sbrarwiva"
+  },
+  "stable": {
+   "version": [
+    20,
+    4,
+    0
+   ],
+   "commit": "03d4d55f5d44584d6de50033cdc1b1bc87db83a3",
+   "sha256": "0yv3l3j3syn2i4ff9rvsx7a2vp7mv7p9y08dzcvl6km1909adzc6"
+  }
+ },
+ {
   "ename": "apel",
   "commit": "4976446a8ae40980d502186615902fc05c15ec7c",
   "sha256": "0zrm8m66p3aqr0108s3cj6z4xqbg2hx37z1pam4c65bqlhh74s8y",
@@ -3414,6 +3485,25 @@
   }
  },
  {
+  "ename": "aqi",
+  "commit": "4218547747cdbe33aab3c59338cd2dc9da869cda",
+  "sha256": "1dzvf3i648ssavrdy4v1ckvf2gkywa3cc4zgddb8dj4ihpivm6bc",
+  "fetcher": "github",
+  "repo": "zzkt/aqi",
+  "unstable": {
+   "version": [
+    20200215,
+    1334
+   ],
+   "deps": [
+    "let-alist",
+    "request"
+   ],
+   "commit": "5fe8b035b2b6bc165728444bb8e9792d14b7409d",
+   "sha256": "1wbpjz5jgpph6c6wk29dxz8r368ai6jx9cb4y2mdcpngig8kmazm"
+  }
+ },
+ {
   "ename": "arc-dark-theme",
   "commit": "f8c9060669b262f0588643bd8758edac578834bc",
   "sha256": "0a61kxdyzm6gf8gf8fniqz5mqkxk24k8hpxww3996v9mqs1bn05s",
@@ -3456,11 +3546,11 @@
   "repo": "rubikitch/archive-region",
   "unstable": {
    "version": [
-    20140201,
-    2342
+    20200316,
+    1425
    ],
-   "commit": "0d357d4c42a6a248c457f358f81b20fd20fede2f",
-   "sha256": "03pmwgvlxxlp4wh0sg5czpx1i88i43lz8lwdbfa6l28g1sv0f264"
+   "commit": "53cd2d96ea7c33f320353982b36854f25c900c2e",
+   "sha256": "1c3ji0asnhdls8pa5hbqg65kc35jc6yndib7cx1zvnpb8pjlvbbr"
   }
  },
  {
@@ -3601,6 +3691,24 @@
   }
  },
  {
+  "ename": "ascii-table",
+  "commit": "d6d5599ff68bf9125a9825ddd2a00009242bf2e1",
+  "sha256": "0p3dyxzs5xaq17209nnf2cqs87hz2b1k3x1nkq4jvhn71v4jcaj1",
+  "fetcher": "github",
+  "repo": "lassik/emacs-ascii-table",
+  "unstable": {
+   "version": [
+    20200329,
+    1744
+   ],
+   "deps": [
+    "cl-lib"
+   ],
+   "commit": "572b62c8305b8c26082a17e15bc2f53066ddcb5a",
+   "sha256": "1k1wfbwzn9gjv7hmc7ffr3r211vxrxassryar6gnajmj9xbzwcgi"
+  }
+ },
+ {
   "ename": "asilea",
   "commit": "858e673c66e876d80f41d47d307c944d7bdb147d",
   "sha256": "1lb8nr6r6yy06m4pxg8w9ja4zv8k5xwhl95v2wv95y1qwhgnwg3j",
@@ -3678,6 +3786,24 @@
   }
  },
  {
+  "ename": "astyle",
+  "commit": "b495f29653edd15cef8eb3c9ea4d8aea35b0ac75",
+  "sha256": "0vchbm2lb9qa66fspyylyv0snmrxjfpzc332j0k7pkp6cmi08fnh",
+  "fetcher": "github",
+  "repo": "storvik/emacs-astyle",
+  "unstable": {
+   "version": [
+    20200328,
+    616
+   ],
+   "deps": [
+    "reformatter"
+   ],
+   "commit": "04ff2941f08c4b731fe6a18ee1697436d1ca1cc0",
+   "sha256": "0midga1dz9yl7mzn6syb3iwnfpzvnfpqnxi9rsv63rqnrm36qy4q"
+  }
+ },
+ {
   "ename": "asx",
   "commit": "2eda72c3574c41184104532bb129cbe0efc8afd4",
   "sha256": "0kijqfwkwm5kd1h3v0rab9fm8ivmqnmijy065iz5xhmi3yicx4aq",
@@ -3886,6 +4012,36 @@
   }
  },
  {
+  "ename": "auctex-cluttex",
+  "commit": "d08e481ad618a44f9bfa38c68ca30e67a6727538",
+  "sha256": "05cbiihq0k9d13l8xgd67yanxmj57hajcm2x2v3ils3lfkphqm5w",
+  "fetcher": "github",
+  "repo": "tsuu32/auctex-cluttex",
+  "unstable": {
+   "version": [
+    20200311,
+    1453
+   ],
+   "deps": [
+    "auctex"
+   ],
+   "commit": "76fba4a1a918ce8a276fa0e22f026ad9a45a47dc",
+   "sha256": "1rd92s2c08z3l2r2wxcs46bbri4rj0d0aym36v89pwq0fcqqx2ry"
+  },
+  "stable": {
+   "version": [
+    0,
+    1,
+    0
+   ],
+   "deps": [
+    "auctex"
+   ],
+   "commit": "e358f7148092d8ed64703641b5621e130cce458d",
+   "sha256": "1whzcp9wvpwn1c33n7mqxx8v6g4apg3cq5h2ffl74423ysymry71"
+  }
+ },
+ {
   "ename": "auctex-latexmk",
   "commit": "3f48af615c56f093dff417a5d3b705f9993c518f",
   "sha256": "1rdlgkiwlgm06i1gjxcfciz6wgdskfhln8qhixyfxk7pnz0ax327",
@@ -4505,14 +4661,14 @@
   "repo": "rranelli/auto-package-update.el",
   "unstable": {
    "version": [
-    20180712,
-    2045
+    20200421,
+    309
    ],
    "deps": [
     "dash"
    ],
-   "commit": "55870d313fbe9db40b1a2b59dbc420ba66a9297e",
-   "sha256": "06hnr7id7w774adip0yffxh6c2xk27j2kch03r8y0v19mnfrvb39"
+   "commit": "cf7f7486ed699f2ed7cc8af950740aece0de6124",
+   "sha256": "14sq8p3qbhlfmpisanjxpginiibngmb84mjga97aq5sgpxy38wix"
   },
   "stable": {
    "version": [
@@ -4600,6 +4756,24 @@
   }
  },
  {
+  "ename": "auto-scroll-mode",
+  "commit": "195041c70d2807184d4d8c711bcd3f54b8dfc73a",
+  "sha256": "1hvnhszn1cqzw42wn7w0hrq7wn161alg2w6xpd53ydg61g31i68n",
+  "fetcher": "github",
+  "repo": "stardiviner/auto-scroll-mode",
+  "unstable": {
+   "version": [
+    20200316,
+    134
+   ],
+   "deps": [
+    "cl-lib"
+   ],
+   "commit": "a23669a8747e71ca5b1003b923f7a3d3834740e3",
+   "sha256": "033msm39fdhm6iqd7khjsqvxrv4314h8klsq3g06zsrgpmjki1xr"
+  }
+ },
+ {
   "ename": "auto-shell-command",
   "commit": "ea710bfa77fee7c2688eea8258ca9d2105d1896e",
   "sha256": "1i78fh72i8yv91rnabf0vs78r43qrjkr36hndmn5ya2xs3b1g41j",
@@ -4645,7 +4819,7 @@
    "deps": [
     "f"
    ],
-   "commit": "bfad607be640bed3a107e36c91b091e136c1c9ec",
+   "commit": "22cd3dd6d3206cdab5c72792479a8f7f04a2b3e9",
    "sha256": "0nwnmqhfy4378p43a12bc32y4qqw349xjkrdh6x7fkdsd4wpf7f4"
   }
  },
@@ -4677,16 +4851,16 @@
   "repo": "robert-zaremba/auto-virtualenvwrapper.el",
   "unstable": {
    "version": [
-    20191120,
-    1159
+    20200416,
+    1128
    ],
    "deps": [
     "cl-lib",
     "s",
     "virtualenvwrapper"
    ],
-   "commit": "6380e8986d593655021f7f884d0d21895d7e63ad",
-   "sha256": "18k7azy456l7qizn3xnpb2dkj58gfrxy5q77dwplgakyvkr13y8p"
+   "commit": "f33e8c40e53c247ee6a4fd90af8805a9806735a1",
+   "sha256": "0hxwlm364xq66rp8izv0x09r37pg9kiddik0xbss736fdlw0sx4z"
   }
  },
  {
@@ -4757,6 +4931,21 @@
   }
  },
  {
+  "ename": "autocrypt",
+  "commit": "c5aac210984709f020f96f3ca166185900accddf",
+  "sha256": "1y5p5n2p2qk638i1as3wbfz82r08jv4q91470xz9r1gkdnn1xyx8",
+  "fetcher": "git",
+  "url": "https://git.sr.ht/~zge/autocrypt",
+  "unstable": {
+   "version": [
+    20200330,
+    2301
+   ],
+   "commit": "a16bf93ba833264b10d19abfa8fa684d9be32081",
+   "sha256": "119nii5qdds53cmwz3f8rl7f4k5l783h6k6ahizdawy4rf54xfz4"
+  }
+ },
+ {
   "ename": "autodisass-java-bytecode",
   "commit": "a094845521d76754a29435012af5fba9f7975a8e",
   "sha256": "1k19nkbxnysm3qkpdhz4gv2x9nnrp94xl40x84q8n84s6xaan4dc",
@@ -4965,14 +5154,14 @@
   "repo": "abo-abo/avy",
   "unstable": {
    "version": [
-    20191106,
-    1234
+    20200422,
+    1153
    ],
    "deps": [
     "cl-lib"
    ],
-   "commit": "cf95ba9582121a1c2249e3c5efdc51acd566d190",
-   "sha256": "0d7v04xzr385ybq0ai88d4h8ywl53q1ig197cbkrna2jl2s466bh"
+   "commit": "509471bad0e8094b8639729ec39ca141fae7d4bd",
+   "sha256": "0kj4nbp8g22xyvjdy8vh54v6zgd4f3z6srrw5pd55gbczm5csnbj"
   },
   "stable": {
    "version": [
@@ -5159,11 +5348,11 @@
   "url": "https://bitbucket.org/pdo/axiom-environment",
   "unstable": {
    "version": [
-    20200109,
-    2207
+    20200411,
+    1031
    ],
-   "commit": "2c5384b994266008a20558db4ffe0525e66c0f5f",
-   "sha256": "17f40w9r4whz0v007pp13w060jq87ag42p21hcj93c14py5s4g67"
+   "commit": "25932da0dc40c6877463cbf019b14ab05a6b0164",
+   "sha256": "1xbps0k4x982gh1a0pscpx4kayjjyykvm5pyj516wwkya7bac4a6"
   }
  },
  {
@@ -5409,20 +5598,20 @@
   "url": "https://git.sr.ht/~zge/bang",
   "unstable": {
    "version": [
-    20200102,
-    1933
+    20200414,
+    1123
    ],
-   "commit": "87589331a8f0850a46964dbdbdcc3f2191b03376",
-   "sha256": "0yzz090997jn3d1ah8a32q491bsgzan6zqp2szv7d8ga4ziv3gkp"
+   "commit": "1fb0162ffd2115080d4e1ddf65935277cf3c75db",
+   "sha256": "12nr5la6y5dnh46rfij3p1srgpwdc3fiaf4ckfx6f9kl0n1zyrls"
   },
   "stable": {
    "version": [
     1,
     0,
-    1
+    2
    ],
-   "commit": "87b5ad3c81ccf0f2435e3c26ad7f9a1d6191ddb9",
-   "sha256": "10cybpw6wks2p21g1cz9rr6chvhv1s7jasrnzbcgpg8vkzb3dj48"
+   "commit": "1fb0162ffd2115080d4e1ddf65935277cf3c75db",
+   "sha256": "12nr5la6y5dnh46rfij3p1srgpwdc3fiaf4ckfx6f9kl0n1zyrls"
   }
  },
  {
@@ -5501,11 +5690,11 @@
   "repo": "belak/base16-emacs",
   "unstable": {
    "version": [
-    20191031,
-    1607
+    20200414,
+    2048
    ],
-   "commit": "9eba6874c80ab429bf5cbf6c76bb0399d3d2a2cb",
-   "sha256": "0ag5fsr3377rz6xfa0b9j54r90zh0yiz98kpa27xzhky4f5jpdah"
+   "commit": "d68512c0856f57a19cd49d1034199836352c15a0",
+   "sha256": "1h98ra53i7hc7zi9yjc6p29f70r04hivdczhw4imds13akq6j034"
   },
   "stable": {
    "version": [
@@ -5560,6 +5749,44 @@
   }
  },
  {
+  "ename": "basic-ide",
+  "commit": "9aaac29f5711f93f9ba7c14e5a332888e8920a86",
+  "sha256": "1pvgbc3vxqm4l8qc43g7b4viz4ilw828k9qlmb6ynzmij5ykrfrq",
+  "fetcher": "gitlab",
+  "repo": "sasanidas/emacs-c64-basic-ide",
+  "unstable": {
+   "version": [
+    20200416,
+    1953
+   ],
+   "deps": [
+    "basic-mode",
+    "company",
+    "dash",
+    "f",
+    "flycheck"
+   ],
+   "commit": "5d186623fb6805db71fe5b226df497e6b2904b96",
+   "sha256": "1v9mhvi1fqh4pni03y3qrlrzj2jrz2s9jc5g3jjpxll4zhsfr6w4"
+  },
+  "stable": {
+   "version": [
+    0,
+    0,
+    3
+   ],
+   "deps": [
+    "basic-mode",
+    "company",
+    "dash",
+    "f",
+    "flycheck"
+   ],
+   "commit": "5bfd5f91b9f91e46158e0419c6bb5c350e7684a1",
+   "sha256": "0nb6dbk8aclkq7jki52y4lwgbxg61xh1598l08yfv2l1ykhgg0n0"
+  }
+ },
+ {
   "ename": "basic-mode",
   "commit": "71801bdc0720f150edeab6796487c753c6e7c3f5",
   "sha256": "1l0ylzww7jg6l804fdrklhay4is0wx1drfi9l9wn7gcdjh76mr6g",
@@ -5634,17 +5861,17 @@
  },
  {
   "ename": "bazel-mode",
-  "commit": "3945f7eba7d5f248cace11a7946262ac2500b01a",
-  "sha256": "10590pbpg6mwkcwlm01nxf0ypw694h1b57frvn5rnc53al87i586",
+  "commit": "10f3918c55426c8c4754ef0dfccf19300e516012",
+  "sha256": "1gylmwlhzg6kgj9936799ppahbhicrxn2zpbr3417qycib84nl8x",
   "fetcher": "github",
-  "repo": "codesuki/bazel-mode",
+  "repo": "bazelbuild/emacs-bazel-mode",
   "unstable": {
    "version": [
-    20191110,
-    2228
+    20200424,
+    1953
    ],
-   "commit": "7798e33cba5db14eb2c06ddcbc4e8fa361eb679c",
-   "sha256": "0gjm8276qj3a5kmh2qg93yadjhc2gcny058zpxwr6sialq9p7iwz"
+   "commit": "668a44907f7b3ad0e6fd300e319fba5862780140",
+   "sha256": "13llvkl40pybi4f1chak3v4f58fwwqw1kn9ygmv6dmn2wg4ag2mp"
   },
   "stable": {
    "version": [
@@ -5939,11 +6166,11 @@
   "repo": "DamienCassou/beginend",
   "unstable": {
    "version": [
-    20200203,
-    1035
+    20200415,
+    1752
    ],
-   "commit": "3ab68d77839060f5e85bbf9455846b68cc63ef00",
-   "sha256": "049r18sa4646rhp2cidpdnk09c87xxf52d6mffq82xphzsniqarz"
+   "commit": "bb51f7ee9229ff0b6ec5ba4a730f7360246fb9ea",
+   "sha256": "0l7lbmn6ljh8yv7ch2fax47mr7kxly5b5ps5vg61ra15nv8v5vfr"
   },
   "stable": {
    "version": [
@@ -6018,6 +6245,21 @@
   }
  },
  {
+  "ename": "bencoding",
+  "commit": "a668dc6c90a3be1a51be7478e385b9ab395f6852",
+  "sha256": "1qjk71gkzqq07yy84i0bkyg2wh0jn4gvglcknpcia38dd80m8b7z",
+  "fetcher": "github",
+  "repo": "xuchunyang/bencoding.el",
+  "unstable": {
+   "version": [
+    20200331,
+    1102
+   ],
+   "commit": "f0af19511831f3ade590879e7d1636387682a8e7",
+   "sha256": "1sfj694a6yjc4qwkxn2yvnl8xp8rzrkdgnsaj8ncwdyaa50xgw78"
+  }
+ },
+ {
   "ename": "bento",
   "commit": "aad104fd26adb419c5da1e3472807244794e8949",
   "sha256": "0a7yaikvaxxk8wmr7f9darpwb4r17rkzxcxaagfypn8n5kswddj4",
@@ -6213,14 +6455,14 @@
   "repo": "cpitclaudel/biblio.el",
   "unstable": {
    "version": [
-    20190624,
-    1408
+    20200416,
+    1407
    ],
    "deps": [
     "biblio-core"
    ],
-   "commit": "efeeab720cb8e3f95ddb4298d0cc62393cf237e9",
-   "sha256": "1ikp1899sn8v46ng561nfj7j7vg234l3n8l8xx3gg7yxp2l9g8ms"
+   "commit": "eb9baf1d2bf6a073d24ccb717025baa693e98f3e",
+   "sha256": "0s7wld8ikfyn2rz8zr4g3lj59b2g95mj1jnqw6xvmxys0ahnb0r5"
   },
   "stable": {
    "version": [
@@ -6260,16 +6502,16 @@
   "repo": "cpitclaudel/biblio.el",
   "unstable": {
    "version": [
-    20190624,
-    1408
+    20200416,
+    307
    ],
    "deps": [
     "dash",
     "let-alist",
     "seq"
    ],
-   "commit": "efeeab720cb8e3f95ddb4298d0cc62393cf237e9",
-   "sha256": "1ikp1899sn8v46ng561nfj7j7vg234l3n8l8xx3gg7yxp2l9g8ms"
+   "commit": "eb9baf1d2bf6a073d24ccb717025baa693e98f3e",
+   "sha256": "0s7wld8ikfyn2rz8zr4g3lj59b2g95mj1jnqw6xvmxys0ahnb0r5"
   },
   "stable": {
    "version": [
@@ -6342,6 +6584,45 @@
   }
  },
  {
+  "ename": "bibtex-completion",
+  "commit": "873ae2af16e03c8e10494be3f0e7840eb27172a3",
+  "sha256": "06mg9fwp6jwr6fbnzh4z8am47bspcl8hv0icmdpc9lmzbcyfpg8f",
+  "fetcher": "github",
+  "repo": "tmalsburg/helm-bibtex",
+  "unstable": {
+   "version": [
+    20200417,
+    1725
+   ],
+   "deps": [
+    "biblio",
+    "cl-lib",
+    "dash",
+    "f",
+    "parsebib",
+    "s"
+   ],
+   "commit": "631dc607e8f29f1a585adde01d6785af1fb35d12",
+   "sha256": "09l1h1z493dc7hp109sqs1lkkcaw0mh762p5cpda9xymr9hf6w31"
+  },
+  "stable": {
+   "version": [
+    2,
+    0,
+    0
+   ],
+   "deps": [
+    "cl-lib",
+    "dash",
+    "f",
+    "parsebib",
+    "s"
+   ],
+   "commit": "d6a98ac6f28d2a6a05e203115211c98333d40aca",
+   "sha256": "0arhy051945lxjqg77b275ny9nsv60cqj0qfpmvd8xkc07lqfn23"
+  }
+ },
+ {
   "ename": "bibtex-utils",
   "commit": "5764b6a880e8143db66e9011cc1c2bf0bcd61082",
   "sha256": "13llsyyvy0xc9s51cqqc1rz13m3qdqh8jw07gwywfbixlma59z8l",
@@ -6388,20 +6669,20 @@
   "repo": "riscy/bifocal-mode",
   "unstable": {
    "version": [
-    20190623,
-    2236
+    20200325,
+    539
    ],
-   "commit": "c354fc32b0a666203f5c546bb2d2c397cb003391",
-   "sha256": "0wzsbrj1rhfl6qgjnphbh6ijfbjdr2wid7mqzz49ykcb9ldm7kjj"
+   "commit": "773a6dde790c4a240e643a9071e4c7bce09d40de",
+   "sha256": "11dirb13hblfa95hqqshrsjri4d4qzcq5qhhnd4xqajdchr62758"
   },
   "stable": {
    "version": [
     0,
     0,
-    5
+    6
    ],
-   "commit": "add30c678488cec04976a85ba8cda20805938a01",
-   "sha256": "01j8s6c3qm4scxy1dk07l41y0n55gz83zzfi254kc2vyx02vqg7f"
+   "commit": "773a6dde790c4a240e643a9071e4c7bce09d40de",
+   "sha256": "11dirb13hblfa95hqqshrsjri4d4qzcq5qhhnd4xqajdchr62758"
   }
  },
  {
@@ -6448,8 +6729,8 @@
     "bind-key",
     "key-chord"
    ],
-   "commit": "42db6b3d90ee57d0f5947d3b0bf4b0010bdf7b40",
-   "sha256": "1an2whgy68l9c1l1qx8p8jz47g4hj2abf0kxvcmbc6wj8lp5zny8"
+   "commit": "c873d5529c9c80cb58222f22873a4f081c307cb2",
+   "sha256": "0jbq3w9ijsbl5gblhr24b0rh4gyp1xx696g20l438a7sbsk4b531"
   },
   "stable": {
    "version": [
@@ -6475,8 +6756,8 @@
     20191110,
     416
    ],
-   "commit": "42db6b3d90ee57d0f5947d3b0bf4b0010bdf7b40",
-   "sha256": "1an2whgy68l9c1l1qx8p8jz47g4hj2abf0kxvcmbc6wj8lp5zny8"
+   "commit": "c873d5529c9c80cb58222f22873a4f081c307cb2",
+   "sha256": "0jbq3w9ijsbl5gblhr24b0rh4gyp1xx696g20l438a7sbsk4b531"
   },
   "stable": {
    "version": [
@@ -6685,6 +6966,29 @@
   }
  },
  {
+  "ename": "blackout",
+  "commit": "9128d87569dc74b90f57dd65edead7199f5c7911",
+  "sha256": "06gxgald2vchfwhbiaap7rfjk7kirfv4yjc4r98g998v96bilw64",
+  "fetcher": "github",
+  "repo": "raxod502/blackout",
+  "unstable": {
+   "version": [
+    20200404,
+    1550
+   ],
+   "commit": "af37650d99bb5ae3ab05577a5bf99d5ff26b1e66",
+   "sha256": "18n1l6rwwfjrgaygm7nhrxg92fdd21aqkb38lc55lx3qhlrw1qwv"
+  },
+  "stable": {
+   "version": [
+    1,
+    0
+   ],
+   "commit": "87822abd1ed46411368ef91752a7f51c0ef2aee0",
+   "sha256": "0n0889vsm3lzswkcdgdykgv3vz4pb9s88wwkinc5bn70vc187byp"
+  }
+ },
+ {
   "ename": "blgrep",
   "commit": "e78ed9dc4a7ff57524e79213973157ab364ae14d",
   "sha256": "0w7453vh9c73hdfgr06693kwvhznn9xr1hqa65izlsx2fjhqc9gm",
@@ -6736,6 +7040,30 @@
   }
  },
  {
+  "ename": "blitzmax-mode",
+  "commit": "a1a59a8ac5bb12507e58cde85b09e7f19ce72a82",
+  "sha256": "1isqkmc6g412l7gbg0bmyfsl975wjv7fv753z1mi0bzr7ihv5ckz",
+  "fetcher": "github",
+  "repo": "Sodaware/blitzmax-mode",
+  "unstable": {
+   "version": [
+    20200415,
+    1529
+   ],
+   "commit": "5f67bb3c8e4baf1f6881cc998f9f031641a7b08a",
+   "sha256": "1hcx6b3ka0n6sbi9p0z2wqlsxk5d2pvkjawpcyh40b5f1r6dpfmc"
+  },
+  "stable": {
+   "version": [
+    1,
+    0,
+    0
+   ],
+   "commit": "d772deff2464d48d018bbe43b1e4b3745a4ac886",
+   "sha256": "0gzm2qzwbaqfmfi1vhcx23w9v1mcs6kx5kijncn9hbvhi0640j76"
+  }
+ },
+ {
   "ename": "bln-mode",
   "commit": "ee12ef97df241b7405feee69c1e66b3c1a67204b",
   "sha256": "0w4abaqx9gz04ls1hn1qz8qg9jpvi80b9jb597ddjcbnwqq9z83r",
@@ -6860,26 +7188,26 @@
   "repo": "sergeyklay/bnf-mode",
   "unstable": {
    "version": [
-    20200122,
-    2155
+    20200323,
+    1348
    ],
    "deps": [
     "cl-lib"
    ],
-   "commit": "11b19fa77ab0a6bb2208c776ccd17887a0325b8c",
-   "sha256": "10sb8ixfhxnan2cs6xhpy21lniv8yqp5xy0q9dla3z8897clrnw7"
+   "commit": "d88eef69ae66ea1ffa21a65317afe84c9ddb0814",
+   "sha256": "1bci2w8drwgcli9hqg55izaxpwq4fvqdigvlrfc0524s7021ij24"
   },
   "stable": {
    "version": [
     0,
     4,
-    3
+    4
    ],
    "deps": [
     "cl-lib"
    ],
-   "commit": "fecc2a8fc9cfff9d75da8809c24ef56ca4985dde",
-   "sha256": "04wj1s483khi2qvnbjcyfihip150qjmizc8qnjsqg60nwcxjh5j5"
+   "commit": "4a7aff6a3a691826ea4add9f519c854b9611d780",
+   "sha256": "1hnkvwl0as2s4aayqahclqclsriigqv51h8yafx0za1xfh4snfzv"
   }
  },
  {
@@ -6919,8 +7247,8 @@
    "deps": [
     "cl-lib"
    ],
-   "commit": "b5df3647f55359f8546dcfa991a351673a069a49",
-   "sha256": "1rfv036wzlrbqbki5i24871a9f2h6zk7yqd1lq6gnqrc4y7m477c"
+   "commit": "6c8fa1b4961e279ae63130902996c5f71a2e64e4",
+   "sha256": "0kph9898s2m086p8gj97bbzr7mba9y7hmyxh1z4mgpv5808zvd05"
   },
   "stable": {
    "version": [
@@ -7269,6 +7597,48 @@
   }
  },
  {
+  "ename": "brf",
+  "commit": "203e7d21e2387866107740ead4ec28787d82ebfb",
+  "sha256": "0439bzzzy6kx536zh9azxrdmfpb69xrr8axxg5q7989892iaqi5m",
+  "fetcher": "git",
+  "url": "https://bitbucket.org/MikeWoolley/brf-mode",
+  "unstable": {
+   "version": [
+    20200329,
+    1531
+   ],
+   "deps": [
+    "fringe-helper"
+   ],
+   "commit": "f1ae0c5eb74f62af109ebaf18e8663d6f51270cb",
+   "sha256": "1pzxz5irx6ysa8nhl9x50v8l5r2cvd6pafj71q4i5lrxv9a1dkl1"
+  }
+ },
+ {
+  "ename": "brightscript-mode",
+  "commit": "9acbba1c180ea7c03156009c08285697a7aae419",
+  "sha256": "0g0lwmd53v6lqihksqdirl12rz6a9ljp9zdm1xpd4wbqz72w17jw",
+  "fetcher": "github",
+  "repo": "viseztrance/brightscript-mode",
+  "unstable": {
+   "version": [
+    20200321,
+    2126
+   ],
+   "commit": "3b34032bdde6a37b4566c45ce93cb38da21d4965",
+   "sha256": "16p4404mxqgl1zqdalnq3bvbhwv11wgfl42871lxv3nndcsd30gr"
+  },
+  "stable": {
+   "version": [
+    1,
+    0,
+    0
+   ],
+   "commit": "01405633a14269ab26d053ca6f1494c987d24195",
+   "sha256": "0952smngj32an30v2bqgfc14xrl90xwr4a038w01cdgg9k848g7y"
+  }
+ },
+ {
   "ename": "broadcast",
   "commit": "6ed51896112e702a8b853059884aad50d37738c2",
   "sha256": "1h2c3mb49q3vlpalrsrx8q3rmy1zg0y45ayvzbvzdkfgs8idgbib",
@@ -7291,21 +7661,21 @@
   "repo": "rmuslimov/browse-at-remote",
   "unstable": {
    "version": [
-    20200127,
-    145
+    20200308,
+    639
    ],
    "deps": [
     "cl-lib",
     "f",
     "s"
    ],
-   "commit": "aeee6bf38f78aaed5dd2efd6305f30a7594e3060",
-   "sha256": "1hp61vd5vxgyz61l8h59v9yvadpqzrc3ihsd731gl1k9siajg8q2"
+   "commit": "6aecae4b5d202e582425fc8aa2c9c2b6a4779f25",
+   "sha256": "0c93ilvxmfv28a05fs2lbdyc2q308anjw0xvbkg7dc0blg0fgb05"
   },
   "stable": {
    "version": [
     0,
-    10,
+    14,
     0
    ],
    "deps": [
@@ -7313,8 +7683,8 @@
     "f",
     "s"
    ],
-   "commit": "47bab994640f086939c30cc6416e770ad067e950",
-   "sha256": "0vhia7xmszcb3lxrb8wh93a3knjfzj48h8nhj4fh8zj1pjz6args"
+   "commit": "771a3079e27f397d2f5a9470b945980fa68ee048",
+   "sha256": "0bx4ns0jb0sqrjk1nsspvl3mhz3n12925azf7brlwb1vcgnji09v"
   }
  },
  {
@@ -7372,6 +7742,21 @@
   }
  },
  {
+  "ename": "brutal-theme",
+  "commit": "e415b9a4d269cfee5ee2b0e58acb18804c2a8cb7",
+  "sha256": "1xjj2ssw3lbx21w6g4m6vqc471v8jgmgk0zw1z1hkmygg0xipgl3",
+  "fetcher": "github",
+  "repo": "topikettunen/brutal-emacs",
+  "unstable": {
+   "version": [
+    20200415,
+    602
+   ],
+   "commit": "ee63563b7cb07aeec342722ae684426cb0465a98",
+   "sha256": "1wx6771iv4psvlwhng0n09g0w3yml1pw3ga5lghjz9j6hba0bc6s"
+  }
+ },
+ {
   "ename": "brutalist-theme",
   "commit": "ec889956a5685c3a60003ad2bfa04b03b57aa8e8",
   "sha256": "0dg0432r3cpjgdlpz583vky4hj5vld9d25dvaj6nxlir2ph9g9hn",
@@ -7672,6 +8057,67 @@
   }
  },
  {
+  "ename": "buffer-wrap",
+  "commit": "446fb5528644d9e51a10ade59de97e248729d3f3",
+  "sha256": "1fdk490hwz1mf4ldw8bh0w2byxi03qwdapgdgcvzir3s913gagrw",
+  "fetcher": "github",
+  "repo": "jcs-elpa/buffer-wrap",
+  "unstable": {
+   "version": [
+    20200223,
+    605
+   ],
+   "commit": "460f90bc024b6c287ed8afac3ff1bed2a147c777",
+   "sha256": "07r50iiiyhbqbia9c8c3kz1hvqjs6dkb8rkqpq4yyv3vd1kc9qnb"
+  },
+  "stable": {
+   "version": [
+    0,
+    1,
+    1
+   ],
+   "commit": "813a3dab3007a34fa27cf0a1ae687dc0eae98240",
+   "sha256": "0m2ryic16083ab0x6qwfrxrpsgq84s518vn0cbfcxycblpdh89al"
+  }
+ },
+ {
+  "ename": "bufler",
+  "commit": "4ba5657f237eea9073a46a4127be5795be07c687",
+  "sha256": "1zxvkrgwk7v3404vcwyv5nag60ri72qqi5fkpwwmzc9cs2bckj20",
+  "fetcher": "github",
+  "repo": "alphapapa/bufler.el",
+  "unstable": {
+   "version": [
+    20200409,
+    1253
+   ],
+   "deps": [
+    "dash",
+    "dash-functional",
+    "f",
+    "magit-section",
+    "pretty-hydra"
+   ],
+   "commit": "b2b260e4f9e8ba76bb8b4d71344c7b75e05ac44f",
+   "sha256": "0ww7z2xz185i97wa1rnmqwlx2mvwx69hhlyi5m3sm0nkyckb2hjs"
+  },
+  "stable": {
+   "version": [
+    0,
+    2
+   ],
+   "deps": [
+    "dash",
+    "dash-functional",
+    "f",
+    "magit-section",
+    "pretty-hydra"
+   ],
+   "commit": "d6c79f04b7d288174d8294fb30488b567586364d",
+   "sha256": "0l35ssjry15wqcxnr8rf5lrv856pgnm0k2d4d6ag14ypjx9nfhw3"
+  }
+ },
+ {
   "ename": "bufshow",
   "commit": "543a734795eed11aa47a8e1348d14e362b341af0",
   "sha256": "027cd0jzb8yxm66q1bhyi75f2m9f2pq3aswgav1d18na3ybwg65h",
@@ -7972,19 +8418,19 @@
   "repo": "jorgenschaefer/emacs-buttercup",
   "unstable": {
    "version": [
-    20200229,
-    620
+    20200412,
+    1148
    ],
-   "commit": "b2985171b8f745c8edab3d6fccf72d036519ca86",
-   "sha256": "129rxvd83i3jzivmqkx9a9lpq3g80716y9mc55hqf60l7wxg9787"
+   "commit": "a91f2820256a4e0c8636cc33a2ef8515a26d3f81",
+   "sha256": "0nhsxj48a9aqfmwqs4m65zh2g0cmvijz4m69cvx1bcia31jaabpx"
   },
   "stable": {
    "version": [
     1,
-    20
+    21
    ],
-   "commit": "adba24e575a07f4db3e9058953b441f390e8f2a2",
-   "sha256": "0143j6f271l19j41a4pgakxvslip8375jg8pwcvn22gz25s4g45w"
+   "commit": "0dbd474460e4c314bf8bc6e4d3dec647081538c9",
+   "sha256": "1ra5r56k539q6l98msxdn4vfd7k6jm00g8cdhs6hpwvb1blj8di2"
   }
  },
  {
@@ -8001,8 +8447,8 @@
    "deps": [
     "buttercup"
    ],
-   "commit": "400227a45164e4e849048d288a02ab8243d09cd2",
-   "sha256": "1z972i1pzg8bkrzzbjha802486mybqyh9bhbvfk2sr6nzhvx2w1k"
+   "commit": "3ae4f84813c9e04e03a6e703990ca998b62b6deb",
+   "sha256": "0ndxbh2jff6qryczawzbg580744h18z7grg82dpg7fv0rbxnyi3j"
   },
   "stable": {
    "version": [
@@ -8025,11 +8471,11 @@
   "repo": "rolandwalker/button-lock",
   "unstable": {
    "version": [
-    20150223,
-    1354
+    20200309,
+    1323
    ],
-   "commit": "f9082feb329432fcf2ac49a95e64bed9fda24d58",
-   "sha256": "06qjvybf65ffrcnhhbqs333lg51fawaxnva3jvdg7zbrsv4m9acl"
+   "commit": "9afe0f4d05910b0cccc94cb6d4d880119f3b0528",
+   "sha256": "1d893isxvchrqxw6iaknbv8l31rgalfc4hmppf0l87gxp5y9hxa2"
   },
   "stable": {
    "version": [
@@ -8257,6 +8703,25 @@
   }
  },
  {
+  "ename": "calc-at-point",
+  "commit": "9ab725281ae66c1b97875518614a0f6312ace3a8",
+  "sha256": "1yzb2gmmdrcckgq1kd1gcbnbqf65aia7nx4j2lgrh2n9dlp40d03",
+  "fetcher": "github",
+  "repo": "walseb/calc-at-point",
+  "unstable": {
+   "version": [
+    20200406,
+    1618
+   ],
+   "deps": [
+    "dash",
+    "dash-functional"
+   ],
+   "commit": "11e40c8db9493ada71964b73069c6db529016492",
+   "sha256": "06dmm6b2xflkwgk5mysi3ycbi6yz5n0sci191a15nnzxg7vh1fbf"
+  }
+ },
+ {
   "ename": "calendar-norway",
   "commit": "c5d01230027d5cec9da2545a9ce9270a611f6567",
   "sha256": "1i23ks0bnq62bvn3szvqf0ikcam4s92yvr998mkjxhdhc94zd19c",
@@ -8418,8 +8883,8 @@
   "repo": "beacoder/call-graph",
   "unstable": {
    "version": [
-    20200211,
-    240
+    20200402,
+    910
    ],
    "deps": [
     "anaconda-mode",
@@ -8428,8 +8893,8 @@
     "ivy",
     "tree-mode"
    ],
-   "commit": "768a1b2169dca60a130204065dbc54bdff415b0f",
-   "sha256": "12f9wc3kp3pafip283yr8qd5s93nmcf84b07i72fv69nxxi4a41q"
+   "commit": "2f47dcb65ed8dc5393df846b4175a4872e254c05",
+   "sha256": "0xn8xk2x3ih22vlfjvnl6853ddpk57q70z9b0vwhjvwmi4idz7xp"
   },
   "stable": {
    "version": [
@@ -8884,11 +9349,11 @@
   "repo": "skk-dev/ddskk",
   "unstable": {
    "version": [
-    20151205,
-    1343
+    20200314,
+    1557
    ],
-   "commit": "f6abd9f4d4ec44edd04eeb75e23ec87988509d8b",
-   "sha256": "1vy653j7abbnvc03vy28y0vnvq8rzfd2zv0qbgp8zs70svfcnjxz"
+   "commit": "11d91b4cce988e15d7c5fc4345535c9d7a92d53b",
+   "sha256": "19fgk6m951q9swr958337a3jk9b4xgvswkc73al6wsdkigygmhji"
   }
  },
  {
@@ -8899,16 +9364,16 @@
   "repo": "MaskRay/emacs-ccls",
   "unstable": {
    "version": [
-    20200204,
-    444
+    20200327,
+    1915
    ],
    "deps": [
     "dash",
     "lsp-mode",
     "projectile"
    ],
-   "commit": "e5cc4c3e6f40c9c9f0f53e99154c08018eb36944",
-   "sha256": "1yc7jj4g0kh0m1a4r98shvr48wp9i5mawld0xzs9mbfj97dsb96v"
+   "commit": "17ec7bb4cf362b7268c24e070e841f0dfac1c919",
+   "sha256": "08pndwbw6wcpysnvhkqfvrw91ac0np31swiq0yv3dr2x0sq70cp5"
   }
  },
  {
@@ -8934,11 +9399,11 @@
   "repo": "skk-dev/ddskk",
   "unstable": {
    "version": [
-    20200210,
-    1326
+    20200314,
+    1557
    ],
-   "commit": "f6abd9f4d4ec44edd04eeb75e23ec87988509d8b",
-   "sha256": "1vy653j7abbnvc03vy28y0vnvq8rzfd2zv0qbgp8zs70svfcnjxz"
+   "commit": "11d91b4cce988e15d7c5fc4345535c9d7a92d53b",
+   "sha256": "19fgk6m951q9swr958337a3jk9b4xgvswkc73al6wsdkigygmhji"
   }
  },
  {
@@ -8949,11 +9414,11 @@
   "repo": "cdominik/cdlatex",
   "unstable": {
    "version": [
-    20191203,
-    646
+    20200305,
+    809
    ],
-   "commit": "b7af5a9884189412b4699a8fbffcb8fc17bdf617",
-   "sha256": "1ra5m51b9r0irp30bg8qm9wziaz5r4bi84b14s8ss5q3w950sdd5"
+   "commit": "a5cb624ef5f9e3d51fce6faa8dc153277f61043a",
+   "sha256": "0gicai05d21909mjjvfc6194ygrqg2pbff60pjh3w593c4l4jmcj"
   },
   "stable": {
    "version": [
@@ -9072,27 +9537,27 @@
   "repo": "ema2159/centaur-tabs",
   "unstable": {
    "version": [
-    20200214,
-    1651
+    20200325,
+    1236
    ],
    "deps": [
     "cl-lib",
     "powerline"
    ],
-   "commit": "96b7c90bdcb6fe3d7c5146b579ab7b9794c2a17b",
-   "sha256": "01dik5v8b331vplvm3qclg04z2qdcfk0gfb12rz8p503s8y4xisi"
+   "commit": "e6bf9f5257fa5401695e0e33d0376a0821ac2f2f",
+   "sha256": "1gm06par7pglwj25ydvlp1n2vniq6283mm0g4s53ra77ywsz73jv"
   },
   "stable": {
    "version": [
     3,
-    0
+    1
    ],
    "deps": [
     "cl-lib",
     "powerline"
    ],
-   "commit": "7d0d4e939d8089fc18b20a51a49de11b70947649",
-   "sha256": "19xm43f3p5klyiyycy3bp46j2mpqcf4jl5d34hvv0jynx4hxlk1f"
+   "commit": "af50f87d40697a4e5d6097e2042111fc4a930b40",
+   "sha256": "1c3szcv87gjlm2bndasrx9q46x699cxapmhfs2zs08yk6gc1yfji"
   }
  },
  {
@@ -9118,11 +9583,11 @@
   "repo": "anler/centered-window-mode",
   "unstable": {
    "version": [
-    20171127,
-    949
+    20200426,
+    1053
    ],
-   "commit": "24f7c5be9def20879f46659082d497e67b55d7af",
-   "sha256": "0387x0z2l0yvbhkvh3rf3h2ddk7bvwgkpvpngwhhsjbc4hh4k3hz"
+   "commit": "f50859941ab5c7cbeaee410f2d38716252b552ac",
+   "sha256": "1l7m3gfn7j1mxs0rj1pm5avknplw2f34dd2k24n5rldfm41pf8i8"
   }
  },
  {
@@ -9207,17 +9672,17 @@
     20171115,
     2108
    ],
-   "commit": "911033c7b88a5aa166cfabe36df3c9a2083caf8a",
-   "sha256": "1imbp99fxyq6zjkfnjmmhra68p0kgg3axhnx57k3xmlfqqw69hw9"
+   "commit": "5d5692e7526eb228308f91c10761f22c69c8ea35",
+   "sha256": "1shwvgakkv9q9mlvzcsxnrj4zd1ld8nf7k8pw6zl6j3wg0sj5fd3"
   },
   "stable": {
    "version": [
     3,
     15,
-    0
+    1
    ],
-   "commit": "76bc1fad91478de7064380c31d333e1975cf8126",
-   "sha256": "1amjzy3v7rhc6djl1ldqnhpd4m3prh7lfyd5hyb9fp0v8jhyg3w2"
+   "commit": "e766ee2484f9a7609688ac1832ff2ca7528624c5",
+   "sha256": "18iv6s2g7gz2dmqhipn6ln6g4qngywcj7fm4gqwrph04bx5dfqac"
   }
  },
  {
@@ -9325,11 +9790,11 @@
   "repo": "emacsmirror/cg",
   "unstable": {
    "version": [
-    20190316,
-    2206
+    20200305,
+    1845
    ],
-   "commit": "9349600829ca1758306e703a649874f8c63955fa",
-   "sha256": "1s3s37g99x19zxnq0xbiy95kjhm2hb09saxic2basapcp0sdfbwh"
+   "commit": "b0e4cca3d8a28054b3af2f592b528903c7e7c111",
+   "sha256": "06ff0blmixn38z013pxj0a5qqn6aw09kv50zzyx5prdyzb57fx6h"
   }
  },
  {
@@ -9791,6 +10256,40 @@
   }
  },
  {
+  "ename": "chronometrist",
+  "commit": "35d03fe9c066e7388d5ff4adad1afa1e30145995",
+  "sha256": "09dil46qjn7y55y7qax92l7mcw8g1bsb1mjqc92zgln96asi25kj",
+  "fetcher": "git",
+  "url": "https://framagit.org/contrapunctus/chronometrist/",
+  "unstable": {
+   "version": [
+    20200324,
+    653
+   ],
+   "deps": [
+    "dash",
+    "s",
+    "seq"
+   ],
+   "commit": "dc0fb3bed6b893ecb924f5b1228ab718325cc808",
+   "sha256": "08mzv8rijsagkj4ykxlgr99axp0kxnz36d3iaffkqzyv50cm4r6f"
+  },
+  "stable": {
+   "version": [
+    0,
+    4,
+    2
+   ],
+   "deps": [
+    "dash",
+    "s",
+    "seq"
+   ],
+   "commit": "cc791cd61ee4580c9786f8c58d9e1964e0ff0c64",
+   "sha256": "1ccy7qz1wcmggqlf3hwigbqq4wrx1amds4x9bxz9py6bypglyjc5"
+  }
+ },
+ {
   "ename": "chronos",
   "commit": "53648c5699fc03e50774270f9560c727e2c22873",
   "sha256": "1fwpll0mk6pc37qagbq3b3z32d2qwz993nxp9pjw4qbmlnq6sy9d",
@@ -9846,8 +10345,8 @@
   "repo": "clojure-emacs/cider",
   "unstable": {
    "version": [
-    20200227,
-    1414
+    20200420,
+    735
    ],
    "deps": [
     "clojure-mode",
@@ -9858,8 +10357,8 @@
     "sesman",
     "spinner"
    ],
-   "commit": "1a33e62cc56c1d3f4e4c80604140bdef40e3cf57",
-   "sha256": "0i4kbkl6vck2pnk2p6ars9ifj5b7haigfrmaid9qq8qq2nslczrq"
+   "commit": "7f4d4e81816e64238370e028824e6389f02a38c8",
+   "sha256": "03rbanapb2rg9is91r6c549gx96va5gkpdqhlm0gqgph4jg4jvfi"
   },
   "stable": {
    "version": [
@@ -10110,8 +10609,8 @@
   "repo": "andras-simonyi/citeproc-el",
   "unstable": {
    "version": [
-    20190914,
-    613
+    20200305,
+    2126
    ],
    "deps": [
     "dash",
@@ -10121,8 +10620,8 @@
     "s",
     "string-inflection"
    ],
-   "commit": "fd2188e5d76ca78723567ae3b369ae542402e633",
-   "sha256": "0a924bpb15259dlv8ry5bhlq61yczy31fnsbvx2lhzf9r0i06vvc"
+   "commit": "1884b5c88ad4eb35450a7acf053594369ccb1b22",
+   "sha256": "0dr4fx14kmahg533ij92ycn1a8kagbadfml9iyziisllxypmjrzf"
   },
   "stable": {
    "version": [
@@ -10142,21 +10641,6 @@
   }
  },
  {
-  "ename": "cl-font-lock",
-  "commit": "c4cc415c24fc1c404aa9e4d8fcc7bf70ed182633",
-  "sha256": "1igiclz5lshq9bz4sndf0qgsvnrfk39jnpld8g4a985gr2hislb4",
-  "fetcher": "github",
-  "repo": "equwal/cl-font-lock",
-  "unstable": {
-   "version": [
-    20191230,
-    2341
-   ],
-   "commit": "fa0f762cf55d42251b23b3096ab69ed32cd97c14",
-   "sha256": "1z4kplbnld62f396lh1hggdpvhlzk5fll7lcjz0dsh96m4cmx907"
-  }
- },
- {
   "ename": "cl-format",
   "commit": "855ea20024b606314f8590129259747cac0bcc97",
   "sha256": "09jwy0fgaz2f04dvcdns6w859s6izvrkp8ib4lws3x8kx8z918fy",
@@ -10363,11 +10847,11 @@
   "repo": "spudlyo/clipetty",
   "unstable": {
    "version": [
-    20200105,
-    15
+    20200327,
+    2241
    ],
-   "commit": "fda5a80cf4b24389b2f95eeec1d567df80a8fb11",
-   "sha256": "1nzlrd7vf4sqhb2a0bsg1gaj722id5i1s9f1wdi2bmx58rzhqnhp"
+   "commit": "01b39044b9b65fa4ea7d3166f8b1ffab6f740362",
+   "sha256": "1g1awdcqzrnw1a6gl4n87a97lniyn0ck5a51l9n6jz2m8k3idmsg"
   },
   "stable": {
    "version": [
@@ -10472,8 +10956,8 @@
   "repo": "clojure-emacs/clj-refactor.el",
   "unstable": {
    "version": [
-    20200229,
-    1105
+    20200405,
+    1419
    ],
    "deps": [
     "cider",
@@ -10486,8 +10970,8 @@
     "seq",
     "yasnippet"
    ],
-   "commit": "92d372393a031e5fa73ef926447afe72b574cb45",
-   "sha256": "0lnis1qwk1gyxgapl06d7ww1mlb9a8ahl8zwa7y2n3jrgfm25qp4"
+   "commit": "8259791e054382457b87d1f78061b5e3ce948907",
+   "sha256": "0vn32b8vhlp75vj4schy8blmiddc6dn92jl4f935yd4sg7pm04cj"
   },
   "stable": {
    "version": [
@@ -10650,11 +11134,11 @@
   "repo": "clojure-emacs/clojure-mode",
   "unstable": {
    "version": [
-    20191112,
-    1948
+    20200419,
+    559
    ],
-   "commit": "51016faaa88956bdd4decf2fa94dd5198777a47c",
-   "sha256": "13xx6ihhr2175w5d0m5zbyg3fmk1s46wj399f4lrc4skwjxbrlgg"
+   "commit": "da9f1ec717dac1194404b4a4562dba6bd9a4ee3a",
+   "sha256": "0v4q031rvy34llbxhksqlzf3ign4q5xcwf6b3fzblb9k5nz2b3hr"
   },
   "stable": {
    "version": [
@@ -10674,14 +11158,14 @@
   "repo": "clojure-emacs/clojure-mode",
   "unstable": {
    "version": [
-    20190712,
-    639
+    20200320,
+    823
    ],
    "deps": [
     "clojure-mode"
    ],
-   "commit": "51016faaa88956bdd4decf2fa94dd5198777a47c",
-   "sha256": "13xx6ihhr2175w5d0m5zbyg3fmk1s46wj399f4lrc4skwjxbrlgg"
+   "commit": "da9f1ec717dac1194404b4a4562dba6bd9a4ee3a",
+   "sha256": "0v4q031rvy34llbxhksqlzf3ign4q5xcwf6b3fzblb9k5nz2b3hr"
   },
   "stable": {
    "version": [
@@ -10983,19 +11467,17 @@
     20190710,
     1319
    ],
-   "commit": "61596e1cc861f975ec822f72d34842674b388646",
-   "sha256": "04m4im5qaxybh9kir1kclljzql3qiadhi1g64byyilgbl81vx6nv"
+   "commit": "eadafe2ebc419414fba42a3fe28b534bb2fc7a93",
+   "sha256": "11yhjsg2y6mxpd674wkqfwzfm4qzrmbh0mywq7617brg6hk71kb9"
   },
   "stable": {
    "version": [
     3,
     17,
-    0,
-    -1,
     1
    ],
-   "commit": "125f0451a9061c60036c5f92d104ee9fb3111a98",
-   "sha256": "15spvk8392ngnxxm5v919nnvakw8aw4h1g3i41mhr9fs901z9cis"
+   "commit": "bd580b7d568493a795a855c0710ba4ad88532485",
+   "sha256": "1ng8svdxwgjj4aq9f89lx18znrlhcjgl0brsfxwissf1z0539l9d"
   }
  },
  {
@@ -11063,11 +11545,11 @@
   "repo": "tumashu/cnfonts",
   "unstable": {
    "version": [
-    20200226,
-    206
+    20200327,
+    101
    ],
-   "commit": "1baddba41af7edd6d4eb3c24ac85ba4a1b30aa3f",
-   "sha256": "0hspqc5xhi0mmrwyakqbq7dikn56q05c5xsnpgkx2mjjx7z05jh1"
+   "commit": "d741332ad4bcd9a136d5dc4974a050da8ca28888",
+   "sha256": "1f2nrklzvm0b09d1s5rxvzahc32rs5qdqx910a45fj95hlw2w2wc"
   },
   "stable": {
    "version": [
@@ -11221,10 +11703,10 @@
  },
  {
   "ename": "codic",
-  "commit": "acc9b816796b9f142c53f90593952b43c962d2d8",
-  "sha256": "0fq2qfqhkd6injgl66vcpd61j67shl9xj260aj6cgb2nriq0jxgn",
+  "commit": "2a2670edb1155f02d1cbe2600db84a82c8f3398b",
+  "sha256": "05pa2a74c4ra7qqv3da3bx623vf36qrk5dm1jx1a4x1vbpgv5mz0",
   "fetcher": "github",
-  "repo": "syohex/emacs-codic",
+  "repo": "emacsorphanage/codic",
   "unstable": {
    "version": [
     20150926,
@@ -11274,11 +11756,11 @@
   "repo": "defunkt/coffee-mode",
   "unstable": {
    "version": [
-    20170324,
-    940
+    20200315,
+    1133
    ],
-   "commit": "86ab8aae8662e8eff54d3013010b9c693b16eac5",
-   "sha256": "0hf06wp6cpsm7fivwkph6xvc2r39xww8q3aibp4nprlrwcmmv2al"
+   "commit": "35a41c7d8233eac0b267d9593e67fb8b6235e134",
+   "sha256": "11jppi95j9229qmj1747kfa602640kjz1xf5254ph3nhljxb0nsv"
   },
   "stable": {
    "version": [
@@ -11319,14 +11801,14 @@
   "repo": "patbl/colemak-evil",
   "unstable": {
    "version": [
-    20171015,
-    2307
+    20200326,
+    2359
    ],
    "deps": [
     "evil"
    ],
-   "commit": "192c779281ae1fbf2405dcdb55b3c5b2a1d0b3d1",
-   "sha256": "1clnvr7n6mx5b8pq1c6zchq7n1g8ip8hwgzc61ywrmiyv0v8rnc6"
+   "commit": "981bdcb1a48c6d9139493abe7e25fabe126e43c3",
+   "sha256": "0dqyqaqr71z4mipb4g5jxdw96lzb108fd5w4wi27023hfll3j1hc"
   }
  },
  {
@@ -11445,11 +11927,11 @@
   "repo": "emacs-jp/replace-colorthemes",
   "unstable": {
    "version": [
-    20161219,
-    1144
+    20200315,
+    929
    ],
-   "commit": "4f7da6f955f7c584c5dfab2dc170f9a3debd80f8",
-   "sha256": "08wmllq3smg7cp7jspmvd67z5vzmxvi136c6j87r1gsgprhgmhw4"
+   "commit": "40464198e7bf2121694a7e6d87588342140a84ff",
+   "sha256": "0fhr0rvfrb9fmbh9zgzxx2c2zl28v16hxmn9jx6k73nsfwpy498j"
   },
   "stable": {
    "version": [
@@ -11469,14 +11951,14 @@
   "repo": "purcell/color-theme-sanityinc-solarized",
   "unstable": {
    "version": [
-    20190206,
-    59
+    20200304,
+    2156
    ],
    "deps": [
     "cl-lib"
    ],
-   "commit": "54daf1e5a0fbee6682cade1f59171daf185239e3",
-   "sha256": "0z9p9lbngrv8yx9asmz6x89183gw2v75l990hr8m0aydfbfn6gnz"
+   "commit": "c688337aaae9f47128a841479e4191858ac147f6",
+   "sha256": "0a16fn7h0yljlgg1scy82w5r6awd7gk6xf1qd83cx8kj2cg7k7vb"
   },
   "stable": {
    "version": [
@@ -11495,11 +11977,11 @@
   "repo": "purcell/color-theme-sanityinc-tomorrow",
   "unstable": {
    "version": [
-    20200220,
-    1500
+    20200419,
+    156
    ],
-   "commit": "437bdd7a96fee751c6f817aff0100dd44bb07b23",
-   "sha256": "0cjbl7m6a0mmiiidn7w7hcggc58l5503swfnasbzyd1pzdrnn15y"
+   "commit": "344b06ed3c139af717ebff59505fc66635678f6c",
+   "sha256": "00as07y5q71bscchbz3yzck4ljzbcd5x5ghzzajgz3pj484smz6z"
   },
   "stable": {
    "version": [
@@ -11536,11 +12018,11 @@
   "url": "https://git.sr.ht/~lthms/colorless-themes.el",
   "unstable": {
    "version": [
-    20200221,
-    1655
+    20200325,
+    1307
    ],
-   "commit": "a7b7c0a32b174988f40378996cd8997f73524f19",
-   "sha256": "0khsf4xz0wjn774hy08pxafm79j55ns28q25pfzyj9s07hi4r0vz"
+   "commit": "2b4c341640c8191a39e4bc28d6cd04c7d6dcbb37",
+   "sha256": "0ni9cnrv464fk840i1ll241kzkiy1zc6nfrbdv3ciixxdxbshxbn"
   },
   "stable": {
    "version": [
@@ -11630,11 +12112,11 @@
   "repo": "cyrus-and/comb",
   "unstable": {
    "version": [
-    20200114,
-    1325
+    20200411,
+    1040
    ],
-   "commit": "bd8e11b8593bc48f81ce01c0657d5a7977cafdf6",
-   "sha256": "0ndz25x1l0rzn5j8xg9ql2s2lgin1893kzf722chyk8147qwb0i8"
+   "commit": "59e025c3afb867706b869ac4bf2623665eb99821",
+   "sha256": "16swixv88nbs6gscgzy5lizi66pw0c9fm03xpm1kinan8v2s9m3v"
   },
   "stable": {
    "version": [
@@ -11926,11 +12408,11 @@
   "repo": "company-mode/company-mode",
   "unstable": {
    "version": [
-    20200228,
-    1919
+    20200425,
+    118
    ],
-   "commit": "94e22c45e92cf220abb9b5a582f85aa99c06004d",
-   "sha256": "0l3hxj2cf9fw7ma3ac95cigw733h2k0dv987hanfhlx2jckjyma1"
+   "commit": "fdde3d112ba85d034f83f95deafa24fd13be36e4",
+   "sha256": "1krc5gxlkhr87hw5wlch1wfrjxdin8isg51f8m6kjy20jx57jalc"
   },
   "stable": {
    "version": [
@@ -11950,8 +12432,8 @@
   "repo": "pythonic-emacs/company-anaconda",
   "unstable": {
    "version": [
-    20200129,
-    1830
+    20200404,
+    1859
    ],
    "deps": [
     "anaconda-mode",
@@ -11960,8 +12442,8 @@
     "dash",
     "s"
    ],
-   "commit": "a31354ca8ea35c0b2c1f6bb2b1a02a6cfb5e564b",
-   "sha256": "05qaxb3qpz3bi6c88qspf50sh15hzc01354zhj0amd07bmqzhwfg"
+   "commit": "da1566db41a68809ef7f91ebf2de28118067c89b",
+   "sha256": "1x260p0fj33xg6hkrz9q9dqrpibp4yn2n9is3a6s4xxfb485rz0g"
   },
   "stable": {
    "version": [
@@ -11988,14 +12470,14 @@
   "repo": "krzysztof-magosa/company-ansible",
   "unstable": {
    "version": [
-    20200228,
-    2134
+    20200306,
+    1441
    ],
    "deps": [
     "company"
    ],
-   "commit": "0bbf6561d95fb6e1f34aa971e7db5203f22366b5",
-   "sha256": "0ygdhrqva1q6qll40bg9bpd4z023vibzzb0xkidjvwhaa40m33b7"
+   "commit": "79dd421b161efa49fbdffad57fa40edb41f484a3",
+   "sha256": "0b05n6m47vyhirxfqzapzl4gf179aks1296qsw1sw8v84kb5kl0x"
   },
   "stable": {
    "version": [
@@ -12068,8 +12550,8 @@
     "axiom-environment",
     "company"
    ],
-   "commit": "2c5384b994266008a20558db4ffe0525e66c0f5f",
-   "sha256": "17f40w9r4whz0v007pp13w060jq87ag42p21hcj93c14py5s4g67"
+   "commit": "25932da0dc40c6877463cbf019b14ab05a6b0164",
+   "sha256": "1xbps0k4x982gh1a0pscpx4kayjjyykvm5pyj516wwkya7bac4a6"
   }
  },
  {
@@ -12170,8 +12652,8 @@
   "repo": "cpitclaudel/company-coq",
   "unstable": {
    "version": [
-    20191025,
-    2219
+    20200130,
+    2058
    ],
    "deps": [
     "cl-lib",
@@ -12180,8 +12662,8 @@
     "dash",
     "yasnippet"
    ],
-   "commit": "6e8bc2e367e8184079b7f4b4ab359b64ab884d7c",
-   "sha256": "192vvz77yik0lx2g4yfjwx2himzzq4zhrc9mlyhdpwsmzwx7bf4r"
+   "commit": "f9dba9ddff7da99a93d8a6e26d9b1d813bc96b2f",
+   "sha256": "1hl8gr8afx2i5bia7vq3vn4shbaz8fps3h30ldvq141kfvmcp8jm"
   },
   "stable": {
    "version": [
@@ -12208,14 +12690,14 @@
   "repo": "redguardtoo/company-ctags",
   "unstable": {
    "version": [
-    20200209,
-    47
+    20200407,
+    803
    ],
    "deps": [
     "company"
    ],
-   "commit": "fa5a3f7b765fc0e42a378fa2293be4c2817fe04e",
-   "sha256": "1wgxmy1pwwc7mvgw9bx3vvaay1pirzghvpqs6d9mnx1wbzn1x29b"
+   "commit": "b159e45b38226e046cf6fb7d08a0cf864ebbf772",
+   "sha256": "0h0k06c9fabyz6akka1bpwkz69wzl7ajcm0p108xdf5lymc75v5h"
   },
   "stable": {
    "version": [
@@ -12304,41 +12786,6 @@
   }
  },
  {
-  "ename": "company-edbi",
-  "commit": "5d881ff0927d5bd7f8192f58927ceabb9bad4beb",
-  "sha256": "067ff1xdyqy4qzgk5pmqf4kksfjk1glkrslcj3rk4zmhcalwrfrm",
-  "fetcher": "github",
-  "repo": "proofit404/company-edbi",
-  "unstable": {
-   "version": [
-    20160221,
-    1923
-   ],
-   "deps": [
-    "cl-lib",
-    "company",
-    "edbi",
-    "s"
-   ],
-   "commit": "ffaeff75d0457285d16d11db772881542a6026ad",
-   "sha256": "16v4wzb9sp9ryfhgl3rk108pqvam2v6rh6hl6008083g557nmhq1"
-  },
-  "stable": {
-   "version": [
-    0,
-    1
-   ],
-   "deps": [
-    "cl-lib",
-    "company",
-    "edbi",
-    "s"
-   ],
-   "commit": "08dc69ccfbcf10ca83f7075e9b735c6885cd7e11",
-   "sha256": "0n2hvrfbybsp57w6m9mm7ywjq30fwwx9bzc2rllfr06d2ms7naai"
-  }
- },
- {
   "ename": "company-emacs-eclim",
   "commit": "1e9d3075587fbd9ca188535fd945a7dc451c6d7e",
   "sha256": "1l56hcy0y3cr38z1pjf0ilsdqdzvj3zwd40markm6si2xhdr8xig",
@@ -12592,8 +13039,8 @@
     "company",
     "go-mode"
    ],
-   "commit": "939b4a677f2f843ea13d9dd90206d57111f0ceb9",
-   "sha256": "1yfw8y6czkqgxpyfdxwvkcrsmwbca7l0lr4jqmnpmm5m5rylcwr9"
+   "commit": "4acdcbdea79de6b3dee1c637eca5cbea0fdbe37c",
+   "sha256": "0i1hc089gb6a4mcgg56vn5l0q96wrlza2n08l4349s3dc2j559fb"
   },
   "stable": {
    "version": [
@@ -12695,22 +13142,22 @@
  },
  {
   "ename": "company-jedi",
-  "commit": "bded1840a39fbf1e014c01276eb2f9c5a4fc218f",
-  "sha256": "1krrgrjq967c3j02y0i345yx6w4crisnj1k3bhih6j849fvy3fvj",
+  "commit": "2a2670edb1155f02d1cbe2600db84a82c8f3398b",
+  "sha256": "0a1p00jcvslm7h08kzdf6by9v4lf850jb2ki8gl8hgdcf5yvkdyi",
   "fetcher": "github",
-  "repo": "syohex/emacs-company-jedi",
+  "repo": "emacsorphanage/company-jedi",
   "unstable": {
    "version": [
-    20151217,
-    321
+    20200324,
+    25
    ],
    "deps": [
     "cl-lib",
     "company",
     "jedi-core"
    ],
-   "commit": "2f54e791e10f5dc0ff164bfe97f1878359fab6f6",
-   "sha256": "0bpqswcc6a65wms0pdk9rsad9jiigmx2l1jaqr8bz4va945qdlhg"
+   "commit": "5232fbc1fdbfc81b1dd883afb720338c3e39556b",
+   "sha256": "155dba3qim7r8xhrv6dkhzhcc2km9761g5d3qmgd37jnk0mmd8l0"
   },
   "stable": {
    "version": [
@@ -12745,8 +13192,8 @@
     "lean-mode",
     "s"
    ],
-   "commit": "c9dffcda2951c22c483d1d22411d13bc132ce609",
-   "sha256": "1lj6j21hzya41fmlnw7faqmhvsdcgcidwibyvicgsb0gm6qqipjf"
+   "commit": "65b55b1711fb61129312044d5ac7e6a2c2ee245c",
+   "sha256": "1zmw8950qhry2ixk2ng0pg4j0vwx11nvjlrpab9jg6x47ys9j65n"
   }
  },
  {
@@ -12858,6 +13305,25 @@
   }
  },
  {
+  "ename": "company-native-complete",
+  "commit": "b112834a7ab05829fbc9101151bf82440bf6e551",
+  "sha256": "18f62r8y9k5flkqhzz6sr2w3srdhb6cpzrcyl98pv0zy3dq49lp4",
+  "fetcher": "github",
+  "repo": "CeleritasCelery/emacs-native-shell-complete",
+  "unstable": {
+   "version": [
+    20200315,
+    2144
+   ],
+   "deps": [
+    "company",
+    "native-complete"
+   ],
+   "commit": "ccb5b52940a9374fbfe92947f0101e7254ba445d",
+   "sha256": "0p3qrl59qhczwysydsak66j7ixpykr3397xdvjj3hkmmcrsachic"
+  }
+ },
+ {
   "ename": "company-nginx",
   "commit": "fb8843cddfa9133ea9e2790e8a1d8051cd4dabea",
   "sha256": "15pxz0v3zpshwri0v15yh995k7ih9h46y81n4xywlyyh34wys3sj",
@@ -12939,6 +13405,38 @@
   }
  },
  {
+  "ename": "company-org-roam",
+  "commit": "546d4c869c4d2a0981a572b5653f5e9ab8bcec47",
+  "sha256": "0kxf4fhs8ikw06ljdkk4ky1fb83xpmknasp7kyd3lpdk63cfvijh",
+  "fetcher": "github",
+  "repo": "jethrokuan/company-org-roam",
+  "unstable": {
+   "version": [
+    20200403,
+    614
+   ],
+   "deps": [
+    "company",
+    "dash",
+    "org-roam"
+   ],
+   "commit": "be645587aa51e764127dcbe49e70a13e618d4537",
+   "sha256": "0gk865wwkb9c6slfvm6sfq88c61s523bf52vi9rdq3gxghvqaaby"
+  },
+  "stable": {
+   "version": [
+    0,
+    1
+   ],
+   "deps": [
+    "company",
+    "org-roam"
+   ],
+   "commit": "a4c3f60883de783b190d4eb8bcc85f5912d9393a",
+   "sha256": "087z699i7y0q72s5qc7ks09bzin9cl3gm3aqs4ka99lzg676lrl8"
+  }
+ },
+ {
   "ename": "company-php",
   "commit": "ac283f1b65c3ba6278e9d3236e5a19734e42b123",
   "sha256": "1gnhklfkg17vxfx7fw65lr4nr07jx71y84mhs9zszwcr9p840hh5",
@@ -12954,8 +13452,8 @@
     "cl-lib",
     "company"
    ],
-   "commit": "7b8db219080b714a7b8ba452ddb82bd08f7db152",
-   "sha256": "1zm04hqy6dg57swk05qvl5idzb11camcdmh7lrh6mqsvrcsvym2q"
+   "commit": "6ca9baaafd3a3e429429986cc59097dcbfa7cda2",
+   "sha256": "0gj1w0ynd3nk84ac2l3anmcvm44p662scdy80zwp2xisfc0c301x"
   },
   "stable": {
    "version": [
@@ -12987,8 +13485,8 @@
     "company",
     "phpactor"
    ],
-   "commit": "5ccf65d59e6bbc9cd958dd5988e8fd2143b0d57f",
-   "sha256": "0k4dzn4a5y4kq7yz3ifvzziv90rp5si380c5ypgxr5iwb1b8a0l3"
+   "commit": "860d7e8784b261ee71deba354d01c3038cd777ab",
+   "sha256": "1d3fijh11g70xhx3a47l75mrp64bvkk7hh9lg83nl30qhn2vrbn3"
   },
   "stable": {
    "version": [
@@ -13052,15 +13550,15 @@
   "repo": "tumashu/company-posframe",
   "unstable": {
    "version": [
-    20200225,
-    454
+    20200408,
+    400
    ],
    "deps": [
     "company",
     "posframe"
    ],
-   "commit": "483ca5225681da5fa64ecc219604dc3acbab1059",
-   "sha256": "1jid82hvhdvvgcwy7ql5dd00bd9j3wgxrim15imjb22vwsq00qj3"
+   "commit": "9b59cd679c4396cbfe8118a9dfa8a5acfe038ac6",
+   "sha256": "1z18libg2nplx8a8dcycdzm354gczqzg8r37agzz0jk1a7frxa7m"
   },
   "stable": {
    "version": [
@@ -13084,27 +13582,27 @@
   "repo": "raxod502/prescient.el",
   "unstable": {
    "version": [
-    20191224,
-    220
+    20200404,
+    1550
    ],
    "deps": [
     "company",
     "prescient"
    ],
-   "commit": "7fd8c3b8028da4733434940c4aac1209281bef58",
-   "sha256": "1igsjdkxax2lavglc03h0dk3d7fpgqvlymnhyxx738sjyfzl09cr"
+   "commit": "0f4a89bdec61395138d968a38d375e63ccfbed63",
+   "sha256": "0nnf4y49pl9lcs90y5z6f02g1xwk1jjrl0qs7gcv6kpn0vn8kn0h"
   },
   "stable": {
    "version": [
     4,
-    0
+    1
    ],
    "deps": [
     "company",
     "prescient"
    ],
-   "commit": "ad9fbe8a17fe74b27a39bcc034f3da1865663387",
-   "sha256": "008hxy1vasnyz36wwg44gikpi80ng75hj85nrswk60b7z7cznbmr"
+   "commit": "aa3110281a0622fa7b5da115cefb71a319b5b1a0",
+   "sha256": "1rf5cz262hjpck7vpxg15bccdrwrmlhiyxc20liwcjb2ig36nis3"
   }
  },
  {
@@ -13159,6 +13657,38 @@
   }
  },
  {
+  "ename": "company-quickhelp-terminal",
+  "commit": "f5fa4121cd4e2a49adfd23929c73f385cf7d1264",
+  "sha256": "13pig4bkfhwvpak78v85dzmrv7hwqd3pz4s5y8cb7xa033i1v78s",
+  "fetcher": "github",
+  "repo": "jcs-elpa/company-quickhelp-terminal",
+  "unstable": {
+   "version": [
+    20200309,
+    245
+   ],
+   "deps": [
+    "company-quickhelp",
+    "popup"
+   ],
+   "commit": "0a7c86258b3069adbeb0889e21c6977390d00f4f",
+   "sha256": "0zbzbm4hchp1a8m0bdcp9d97i0yx3kkhp5vbs0m5pr2h13xdc7vj"
+  },
+  "stable": {
+   "version": [
+    0,
+    0,
+    2
+   ],
+   "deps": [
+    "company-quickhelp",
+    "popup"
+   ],
+   "commit": "344e30202fb38e1947b8b17f403bb7b2208936fe",
+   "sha256": "1gzmx8zz93261m9kks2hdgdhfs9vz8gsdxx5xkldbnz4g1wbmh2a"
+  }
+ },
+ {
   "ename": "company-racer",
   "commit": "c4671a674dbc1620a41e0ff99508892a25eec2ad",
   "sha256": "0zc8dzvsjz5qsrwhv7x9f7djzvb9awacc3pgjirsv8f8sp7p3am4",
@@ -13248,8 +13778,8 @@
     "company",
     "rtags"
    ],
-   "commit": "3d025d9c97359442f7190ec42a63ff7e5fd85a9a",
-   "sha256": "1c8llhbhvrv5kwmci7rlsjqv3gr4gxi45g6c21fqrblyhas95s3n"
+   "commit": "a42298e80dffae9a6b2e9816506174542f3cbbb7",
+   "sha256": "1674752bbyb7890na5p846dxcvh83zn0a6z19wras1x5c59s24i3"
   },
   "stable": {
    "version": [
@@ -13314,8 +13844,8 @@
     "company",
     "solidity-mode"
    ],
-   "commit": "b190993dcb8376e80fb1d9b71f3ed6170bd2a341",
-   "sha256": "0s5xk38k3mc1d40dszlcgfpn5rvb7nsnnpmgr3c0bwqa4xh6yqrg"
+   "commit": "022b3159832384a7dcdc2168809e698600826047",
+   "sha256": "144w84abffbrbb4wflgipndaasx82axf36xm373ybdih4131mi69"
   },
   "stable": {
    "version": [
@@ -13456,8 +13986,8 @@
   "repo": "TommyX12/company-tabnine",
   "unstable": {
    "version": [
-    20200102,
-    2025
+    20200327,
+    2137
    ],
    "deps": [
     "cl-lib",
@@ -13466,48 +13996,8 @@
     "s",
     "unicode-escape"
    ],
-   "commit": "a207f493eaf1cc766eb25ae84d0eca4c9d3e433b",
-   "sha256": "1qk0l4zcsd9jjivbaw7zbhx2dsdnb30slqc66qd3w69aq4r1xyv7"
-  }
- },
- {
-  "ename": "company-tern",
-  "commit": "acc9b816796b9f142c53f90593952b43c962d2d8",
-  "sha256": "17pw4jx3f1hymj6sc0ri18jz9ngggj4a41kxx14fnmmm8adqn6wh",
-  "fetcher": "github",
-  "repo": "proofit404/company-tern",
-  "unstable": {
-   "version": [
-    20161004,
-    1847
-   ],
-   "deps": [
-    "cl-lib",
-    "company",
-    "dash",
-    "dash-functional",
-    "s",
-    "tern"
-   ],
-   "commit": "10ac058b065ae73c1f30e9fb7d969dd1a79387be",
-   "sha256": "1pjyiy95axv92yxzks4ac871vcqxjnp7n2116nkdrdzzpmlb1x9h"
-  },
-  "stable": {
-   "version": [
-    0,
-    3,
-    0
-   ],
-   "deps": [
-    "cl-lib",
-    "company",
-    "dash",
-    "dash-functional",
-    "s",
-    "tern"
-   ],
-   "commit": "b20b3e490bf277c8480712210e3c92ea489859ef",
-   "sha256": "1l4b54rqwsb32r8zwwrag7s35zc3kpviafdrqkq8r1nyshg2yccm"
+   "commit": "e986a4ad0d0e0174b08f1fb94c4f804a98a344e4",
+   "sha256": "1g5qv1fg22x1nkj696n12ixa2akgzivdc5q7yzy502kqjg67mkx5"
   }
  },
  {
@@ -13549,15 +14039,15 @@
   "repo": "Wilfred/company-try-hard",
   "unstable": {
    "version": [
-    20191106,
-    2105
+    20200417,
+    1603
    ],
    "deps": [
     "company",
     "dash"
    ],
-   "commit": "8a417255b4da9f2e3889f6024755290dcc5884d1",
-   "sha256": "14b3sad9a7dr8j7xhnspk905ybidqz8h4hx2rw4bgl25imhmlysz"
+   "commit": "2b41136b5ed6e02032d99bcdb0599ecf00394fa5",
+   "sha256": "07c4vsrixqw6d6d2mqm6xzzzc9l9mgwgabcc6jlnw78cxij1wrsx"
   }
  },
  {
@@ -13662,23 +14152,23 @@
   "repo": "jjzmajic/compdef",
   "unstable": {
    "version": [
-    20200222,
-    338
+    20200304,
+    611
    ],
-   "commit": "79639b90e537058ab4de1961cee63a26c4ca2a10",
-   "sha256": "0rgf145x7v0y47knnkhx6dc1vflibs45daprc7wi8qlnjmjmr4vw"
+   "commit": "30fb5846ed851efee641ce8c5d8879ad36cd7ac6",
+   "sha256": "0qn99jynafjyxc6fy9z888h7j7drs2mz34acwq8yh22v314x2639"
   }
  },
  {
   "ename": "competitive-programming-snippets",
-  "commit": "0100042ee1356dd709d8bbeec4539ddc64317baa",
-  "sha256": "1mdkv2pn83mgj7yy4xf8nkm9bvxldiy7gdx4bpv36b9xw5zz6q6r",
+  "commit": "9a6d2467c37bf095c0a1e4605744474999ce04e2",
+  "sha256": "1yblnm1ar466fgwvhxybqv8sp2hn40p10p6hhnn9gi1xj9napam7",
   "fetcher": "github",
   "repo": "sei40kr/competitive-programming-snippets",
   "unstable": {
    "version": [
-    20200122,
-    1558
+    20200213,
+    1521
    ],
    "deps": [
     "yasnippet"
@@ -13700,6 +14190,21 @@
   }
  },
  {
+  "ename": "completions-frame",
+  "commit": "dcbb088900f76c05b04ffe25d32e43a477a0556f",
+  "sha256": "1ng5wmk1vp6yqrcyld23mrs8xdfa010l9acjy1vgkcsxjp3nmv3x",
+  "fetcher": "github",
+  "repo": "muffinmad/emacs-completions-frame",
+  "unstable": {
+   "version": [
+    20200419,
+    2027
+   ],
+   "commit": "2e726a497605752d7d57aaf0adf53178c1e9f7e4",
+   "sha256": "0f4vaq84si57p7y0zl0l93vixv0ld1srrxvav40ipil3p9fm1yig"
+  }
+ },
+ {
   "ename": "composable",
   "commit": "1fc0f076198e4be46a33a26eea9f2d273dda12b8",
   "sha256": "1fs4pczjn9sv12sladf6zbkz0cmzxr0jaqkiwryydal1l5nqqxcy",
@@ -13818,8 +14323,8 @@
   "repo": "necaris/conda.el",
   "unstable": {
    "version": [
-    20200120,
-    1721
+    20200420,
+    1418
    ],
    "deps": [
     "dash",
@@ -13827,8 +14332,8 @@
     "pythonic",
     "s"
    ],
-   "commit": "335474e409774e31125fe320a4a54c8d92bf5fa2",
-   "sha256": "10aadbvsg6qy11nfkmc5rvivjvyak6501srmjl6lvzxsw8q79fj4"
+   "commit": "f187948f7bda856befb54a08473c9aae3e595c8a",
+   "sha256": "02i3nq35cq0vlrg3xppyldi7s0zimvlf8j07xdn6pxm5ilrlmsl6"
   },
   "stable": {
    "version": [
@@ -14252,6 +14757,30 @@
   }
  },
  {
+  "ename": "cort",
+  "commit": "1c99109a816303b1a14ff15e7a8300c73910e3a7",
+  "sha256": "1r1plngky2djgpbja0xr2j7hgj79d0l2jcjq4kj97q6874r4fswq",
+  "fetcher": "github",
+  "repo": "conao3/cort.el",
+  "unstable": {
+   "version": [
+    20200330,
+    1641
+   ],
+   "commit": "eb94d2a5b3a048a495fb0218b2df9021f8c864f4",
+   "sha256": "0rc1jfqkc05ml41cp8dc8akrxx3ifziyjy1w4vvgpbb5z49m83ky"
+  },
+  "stable": {
+   "version": [
+    3,
+    0,
+    5
+   ],
+   "commit": "1df178e296feaf4465967567b1cfdce1dda5a09b",
+   "sha256": "0y23w34dcifk6cxw2kcgwydqdc8hn0mj5129z560fm6iwxd6cgkx"
+  }
+ },
+ {
   "ename": "cosmo",
   "commit": "3ab914dfefcddf6ecd65261bc11bd3eb12929c79",
   "sha256": "1pk34d0kv1jm2fq72qa5lj0y39x1yf2nbkjjg8jcj8ari28h9vfk",
@@ -14274,14 +14803,14 @@
   "repo": "abo-abo/swiper",
   "unstable": {
    "version": [
-    20200224,
-    2036
+    20200422,
+    1208
    ],
    "deps": [
     "swiper"
    ],
-   "commit": "fcf5dcfd5796637d64164fd17956c5bc54e25612",
-   "sha256": "1hx00axmjfgc14ixj16pg7029zj7rsx2i80sw6f2bvp543l2aicq"
+   "commit": "47ec37b395cc1b304bbf91e804f138634544a9df",
+   "sha256": "05k2qjj4z8vljfppkphfhw67wvb5ij4nz4m158v89lx87y0phh74"
   },
   "stable": {
    "version": [
@@ -14354,15 +14883,15 @@
   "repo": "hlissner/emacs-counsel-css",
   "unstable": {
    "version": [
-    20191031,
-    345
+    20200331,
+    632
    ],
    "deps": [
     "cl-lib",
     "counsel"
    ],
-   "commit": "61a38c9d50fa9d1e38b2fa550d07130eb9322524",
-   "sha256": "0c8assn7dc8dhzyzk37x7y8s266pvr6hs0vh13y65z0sgxk59i2w"
+   "commit": "6427dfcbda0d2bbd81db03f9d6b56b06c260ac02",
+   "sha256": "1g8gz5mz2qclia64qmgw02h5ivywgn46d6djlr7vcdfyp774cf64"
   },
   "stable": {
    "version": [
@@ -14421,14 +14950,14 @@
   "repo": "redguardtoo/counsel-etags",
   "unstable": {
    "version": [
-    20200224,
-    410
+    20200413,
+    213
    ],
    "deps": [
     "counsel"
    ],
-   "commit": "172c1f1d806f36d10bdeb6284e1adbce6c52091f",
-   "sha256": "0kbkf5244ajxri4x8aaxsc11jq90lsmpw3jyb5z8yfk1wisdx274"
+   "commit": "65298d82468a2221f154de3606ead9a7a7806fa0",
+   "sha256": "0zk4axx64s9bmwfnhi2yhcfd9bkxxv3l5q33ak6l6q5dmyprp8ay"
   },
   "stable": {
    "version": [
@@ -14656,14 +15185,14 @@
   "repo": "Lautaro-Garcia/counsel-spotify",
   "unstable": {
    "version": [
-    20200119,
-    1340
+    20200326,
+    156
    ],
    "deps": [
     "ivy"
    ],
-   "commit": "d70bdd7e92a138195234e0c002252c8972807e08",
-   "sha256": "1q94cgx86fi6xxys9a5j31mg10sg5ds2s8xljp71a3g1hcwk7vkw"
+   "commit": "5d23a898483de19cb60773492c9846facb8ae281",
+   "sha256": "0k9m8xi9p5w2qnpz0zmdf52ip6viws06qq5rssgvb0cr888iqib2"
   }
  },
  {
@@ -14716,6 +15245,25 @@
   }
  },
  {
+  "ename": "counsel-web",
+  "commit": "0dc010d5e4de5c5830ffac3ec0565faac4da7c19",
+  "sha256": "0phrna7bm20vmbnnxrri90i7qnbwcwkxrmycbaxkai5l2rk0ijy8",
+  "fetcher": "github",
+  "repo": "mnewt/counsel-web",
+  "unstable": {
+   "version": [
+    20200313,
+    5
+   ],
+   "deps": [
+    "counsel",
+    "request"
+   ],
+   "commit": "35c648b4cdd9f266ab54512a0fec2a3ca55d5bc6",
+   "sha256": "128vl9a5w8v2xzfi5xn9cqshxmcfq2pcmnkkqcxfmi401m2lm0bx"
+  }
+ },
+ {
   "ename": "counsel-world-clock",
   "commit": "7d9da8c45e7d06647f9591d80e83f851a7f3af85",
   "sha256": "151vm7g7g0jwjlp0wrwlxrjnh9qsckc10whkfgaz9czzvvmsf4cv",
@@ -14879,6 +15427,18 @@
    ],
    "commit": "08208ca7b9dc4ac940ce9ca1f79424d2f3d3d391",
    "sha256": "0yspf51h5b7wbqvi9lbd22chyw799n5d05xdzl5axg0i33lzk7bq"
+  },
+  "stable": {
+   "version": [
+    0,
+    2,
+    0
+   ],
+   "deps": [
+    "cl-lib"
+   ],
+   "commit": "08208ca7b9dc4ac940ce9ca1f79424d2f3d3d391",
+   "sha256": "0yspf51h5b7wbqvi9lbd22chyw799n5d05xdzl5axg0i33lzk7bq"
   }
  },
  {
@@ -14889,11 +15449,11 @@
   "url": "https://git.sr.ht/~zge/cpp-capf",
   "unstable": {
    "version": [
-    20190723,
-    1158
+    20200405,
+    8
    ],
-   "commit": "ca6d50f3853e1226a0ccad435aa8fbd7852c2149",
-   "sha256": "19vhayxy3ha3kkncz8vy5as2pdc17k4mycqszi2g0wywllnirhvv"
+   "commit": "0a4fd531e9e47369ff29d9f8583efd0bacd6bc50",
+   "sha256": "0q6kgh2mdx3pr8ywr3fhn96chvrf6zx6xxs2lyfviwmfq2c3pyph"
   },
   "stable": {
    "version": [
@@ -14929,6 +15489,21 @@
   }
  },
  {
+  "ename": "cpu-sos",
+  "commit": "612eddcec84562a1f060c9eb5a63f77ce88da7ea",
+  "sha256": "1mjbcyz8j1d0l6jnfa3bk4ba5dbb8xih56rvfri61caqmy73s6pz",
+  "fetcher": "github",
+  "repo": "oitofelix/cpu-sos",
+  "unstable": {
+   "version": [
+    20200409,
+    2356
+   ],
+   "commit": "1594b76d4ad3a6e3c471d82da366226d156e6226",
+   "sha256": "1pqw1gilj3m35fqaj5j51ggmxzwhdiks0k36hxmw3ihr63am0j5f"
+  }
+ },
+ {
   "ename": "cql-mode",
   "commit": "1084dd0ec0f2e8fe6fa8e97b322833c14e8e59d1",
   "sha256": "0wdal8w0i73xjak2g0wazs54z957f4lj4n8qdmzpcylzpl1lqd88",
@@ -15147,11 +15722,11 @@
   "repo": "emacs-pe/crontab-mode",
   "unstable": {
    "version": [
-    20190827,
-    1300
+    20200330,
+    920
    ],
-   "commit": "9acbb426c6bfb832e1e83f10fe01a8829452eb7e",
-   "sha256": "04wyngg5n5dr4ninfljl3n0gqx0pik5jbj6ny79bchrnxlh22f3k"
+   "commit": "9625228cbfce29ac3b443c6eff893ff828268f7d",
+   "sha256": "01s32ivn1fdqq99ms3s6a73hrqdc2r5khrg4jv3sniviql2k3i31"
   }
  },
  {
@@ -15273,11 +15848,11 @@
   "repo": "josteink/csharp-mode",
   "unstable": {
    "version": [
-    20191126,
-    1928
+    20200402,
+    919
    ],
-   "commit": "57bd21bda4edc16671a85c7d6d51484e40a6e640",
-   "sha256": "0chl9lzxn1mq59vy5lsim2iiy2hl20rg3d7ri41ljksjcfz9ki6v"
+   "commit": "31124dba6833a4de144ca508edb90d5adfeec209",
+   "sha256": "0jrj2ayna8bzhi441hhszhch3na08iciqnd7fsqrm8xbwlrq7l2x"
   },
   "stable": {
    "version": [
@@ -15297,8 +15872,8 @@
   "repo": "hlolli/csound-mode",
   "unstable": {
    "version": [
-    20200301,
-    31
+    20200402,
+    1509
    ],
    "deps": [
     "dash",
@@ -15306,8 +15881,8 @@
     "multi",
     "shut-up"
    ],
-   "commit": "f8a1af8cfdf9093911a159f73d39ba4f1f671e6c",
-   "sha256": "1gni984j1jlv2is0ah4730xalhv96wimm1iziavbsrsm4hcqqcgh"
+   "commit": "81bec1a71934a56f677f442e2c22fb6336b366c4",
+   "sha256": "1cxg2c8sz76b3ml8blb4f268xl6ql959p2hi5i4llil4fggw6df2"
   },
   "stable": {
    "version": [
@@ -15485,6 +16060,29 @@
   }
  },
  {
+  "ename": "ctrlf",
+  "commit": "46073c430c271aa1971e27948e7f6d4b65b3d533",
+  "sha256": "01d2zv7x588r55namcda58l21lg5sbwcn1ycnvg5md69pv5cg461",
+  "fetcher": "github",
+  "repo": "raxod502/ctrlf",
+  "unstable": {
+   "version": [
+    20200417,
+    1549
+   ],
+   "commit": "97b59f1974ddcfcd9eedcf4c2d286a38f5200273",
+   "sha256": "1axi9wdpr82ghsbjxz1k73v82kkp9g63ahgqy38w6560f40m32dr"
+  },
+  "stable": {
+   "version": [
+    1,
+    0
+   ],
+   "commit": "41eecedf44f2235ce13e021906c4ce92deddefdc",
+   "sha256": "10gnhafas54zj3z9173h1g7b519ac4i26afclmw3w1pk6qyyb03z"
+  }
+ },
+ {
   "ename": "ctune",
   "commit": "927ecd888bc00abff13f5fc335a88dffc2bf6779",
   "sha256": "1ymy508h19w6c7z93nww9fzirzk84w24j3dpbj08d08bifndhj1q",
@@ -15637,6 +16235,21 @@
   }
  },
  {
+  "ename": "curl-to-elisp",
+  "commit": "11453864d71c7853bc743341db7ca071126ca160",
+  "sha256": "16qyw6yx5vlm32ikmgxhf162jjl1nq7lmrcn6g43fkk93id0374n",
+  "fetcher": "github",
+  "repo": "xuchunyang/curl-to-elisp",
+  "unstable": {
+   "version": [
+    20200321,
+    953
+   ],
+   "commit": "79da15f739984e3ce3e0b137df3634582abb4546",
+   "sha256": "04qjap6wsjd8kdz47bz1a11h1bdn7bmlvfg6y0bqy5yq55f4ampa"
+  }
+ },
+ {
   "ename": "cursor-test",
   "commit": "6439f7561cfab4f6f3beb132d2a65e94b3deba9e",
   "sha256": "1c1d5xq4alamlwyqxjx557aykz5dw87acp0lyglsrzzkdynbwlb1",
@@ -15817,17 +16430,17 @@
     20190111,
     2150
    ],
-   "commit": "f6bf6aa9c7d2414b54e7289639ae5f43b15ede05",
-   "sha256": "0sl9vz753np0qb6v5c3nf1kgyd7gyp4yslas5fwfs5j4f3981cdk"
+   "commit": "f09e61ab721ad51526ec7a6798fc01d8346f539d",
+   "sha256": "0l6yzbshqkkbb4fhvnakrilbyc441va6r3yhczksaz0rxlyminlw"
   },
   "stable": {
    "version": [
     0,
     29,
-    15
+    16
    ],
-   "commit": "26cb654dcf4ed1b1858daf16b39fd13406b1ac64",
-   "sha256": "1b76f47yhalg4pipiarmax3869bwbv43a4qs8h1qrnibyzpwfy2z"
+   "commit": "c8425604fc3e4ea846016689942fa98e886b5f4f",
+   "sha256": "1794w6d9ams691ah8sah93vzb97wpss0j36z0fcn3sfvnf8kvpby"
   }
  },
  {
@@ -15915,11 +16528,11 @@
   "repo": "cbowdon/daemons.el",
   "unstable": {
    "version": [
-    20200129,
-    929
+    20200421,
+    912
    ],
-   "commit": "9320c6af524f923f20aa95c1a48b7ae41c3005a8",
-   "sha256": "0wlv3vjhw6v6q5br4bassw34k4kai6nrw10av4y6nkvw58i5b3h7"
+   "commit": "a26155d04cec399ffe25b88f71cbfa4ada784569",
+   "sha256": "0bvfcrr3blyz0861ysfw2qbfh1iq8nfdh1kw9wz4m7g6big27qgd"
   },
   "stable": {
    "version": [
@@ -15984,8 +16597,8 @@
   "repo": "jyp/dante",
   "unstable": {
    "version": [
-    20200131,
-    1211
+    20200416,
+    1217
    ],
    "deps": [
     "company",
@@ -15996,8 +16609,8 @@
     "lcr",
     "s"
    ],
-   "commit": "4955bc7363e250d22579bc34b0b4ab6611c0766c",
-   "sha256": "06xagrjl00iwvaf0cli3dhhvvn4x7ysvkir4120lwc9ispzc077m"
+   "commit": "7411904bfbde25cdb986e001ec682593dcb7c5e3",
+   "sha256": "0dhkp9g1cc1vlfk1fjncl3x3s7zd9a633ya85pjyxl70kky2qhnz"
   },
   "stable": {
    "version": [
@@ -16025,8 +16638,8 @@
   "repo": "emacs-lsp/dap-mode",
   "unstable": {
    "version": [
-    20200223,
-    1146
+    20200425,
+    606
    ],
    "deps": [
     "bui",
@@ -16037,8 +16650,8 @@
     "lsp-treemacs",
     "s"
    ],
-   "commit": "e7a5144ce746942b00a21d35a1ca8be71195f5d4",
-   "sha256": "1ryn49v89d204f7dhdc6igw03vzz5gzqrpqmsdrcxcj5yci2wxyk"
+   "commit": "43c672747e537620f5385ec4bd86c393b16d84dd",
+   "sha256": "0mqhzwk0l32k94msxq69wlcwxn8gc34cqbgxs7z1x9nddjirqmb1"
   },
   "stable": {
    "version": [
@@ -16394,14 +17007,14 @@
   "repo": "emacs-dashboard/emacs-dashboard",
   "unstable": {
    "version": [
-    20200225,
-    745
+    20200306,
+    1344
    ],
    "deps": [
     "page-break-lines"
    ],
-   "commit": "b7857a361967a9f0f6370879b30854f1e2fd81ff",
-   "sha256": "1l6n707v77gc4lgrg5livl2isigv7j6dsrkfppkcyjz2xyvl0n3y"
+   "commit": "bf38867ae80902d58207974b4a2bba4249324599",
+   "sha256": "1ksa1rq6xmyxc4srj1n3l0rd66zcz9br8k2bp3pzriljqvk8l753"
   },
   "stable": {
    "version": [
@@ -16436,6 +17049,40 @@
   }
  },
  {
+  "ename": "dashboard-ls",
+  "commit": "656977197e0030525c52b14de8f6e1faa042daeb",
+  "sha256": "10dsdzps7kh3v5p5grdjwf2xjr7rvaiqp57fg9vh4pficvhylqaa",
+  "fetcher": "github",
+  "repo": "jcs-elpa/dashboard-ls",
+  "unstable": {
+   "version": [
+    20200329,
+    1443
+   ],
+   "deps": [
+    "dashboard",
+    "f",
+    "s"
+   ],
+   "commit": "9026fd157f94b023a7b660a418b66ad638b14272",
+   "sha256": "1r78w47897qd9ki24mqxl3kgr2anzybfqv5x91y4xsvrk0siir64"
+  },
+  "stable": {
+   "version": [
+    0,
+    1,
+    2
+   ],
+   "deps": [
+    "dashboard",
+    "f",
+    "s"
+   ],
+   "commit": "9026fd157f94b023a7b660a418b66ad638b14272",
+   "sha256": "1r78w47897qd9ki24mqxl3kgr2anzybfqv5x91y4xsvrk0siir64"
+  }
+ },
+ {
   "ename": "dashboard-project-status",
   "commit": "dfc05873c6532c866d89c4cc07eb84b447a25c70",
   "sha256": "1r25xmscz3lrjm6jjix416py26za5l1ck3xa77qbyrr4rf1gsakg",
@@ -16662,6 +17309,37 @@
   }
  },
  {
+  "ename": "dbc",
+  "commit": "0f82920ec0b8544c7008a57a412fe3ba15fc5e0f",
+  "sha256": "0xba153ky52iiyjndryzm6n3v019d0710r4k91chvv8gvyb4jr9z",
+  "fetcher": "gitlab",
+  "repo": "matsievskiysv/display-buffer-control",
+  "unstable": {
+   "version": [
+    20200331,
+    1826
+   ],
+   "deps": [
+    "cl-lib",
+    "ht"
+   ],
+   "commit": "17c6640a409424ec32fdb6bfd6065562e726bf1f",
+   "sha256": "18mamp8j3lmmcpcyfrwrqppxvyx7zirn30rwp4wndczpyapkwv4n"
+  },
+  "stable": {
+   "version": [
+    0,
+    1
+   ],
+   "deps": [
+    "cl-lib",
+    "ht"
+   ],
+   "commit": "5123477396a562fae350a89fbed79464cc498bc9",
+   "sha256": "0xd94cpqpv0yw70ajrvs69ygds62m40fk0m4s59zvdn5qs7ivj4k"
+  }
+ },
+ {
   "ename": "ddskk",
   "commit": "6eccccb79881eaa04af3ed6395cd2ab981d9c894",
   "sha256": "01pb00p126q7swsl12yjrhghln2wgaj65jhjr0k7dkk64x4psyc9",
@@ -16669,15 +17347,15 @@
   "repo": "skk-dev/ddskk",
   "unstable": {
    "version": [
-    20200301,
-    237
+    20200403,
+    1308
    ],
    "deps": [
     "ccc",
     "cdb"
    ],
-   "commit": "f6abd9f4d4ec44edd04eeb75e23ec87988509d8b",
-   "sha256": "1vy653j7abbnvc03vy28y0vnvq8rzfd2zv0qbgp8zs70svfcnjxz"
+   "commit": "11d91b4cce988e15d7c5fc4345535c9d7a92d53b",
+   "sha256": "19fgk6m951q9swr958337a3jk9b4xgvswkc73al6wsdkigygmhji"
   }
  },
  {
@@ -16719,16 +17397,16 @@
   "repo": "Wilfred/deadgrep",
   "unstable": {
    "version": [
-    20200202,
-    1520
+    20200411,
+    652
    ],
    "deps": [
     "dash",
     "s",
     "spinner"
    ],
-   "commit": "3ec95398d09719a9dbdc3a67d29d22ca224516cf",
-   "sha256": "0rxzm30md5s87s6j1aqgjxa9kb637v11b7q194l8zzhf457ky6la"
+   "commit": "bdcdf138cd71b0a5a80ca64b3bd68b7355084757",
+   "sha256": "1f0gbl2s6h945h1d4pg6cms3w2jwppqiddy3ja9b02ckcld1c227"
   },
   "stable": {
    "version": [
@@ -16752,11 +17430,11 @@
   "url": "https://salsa.debian.org/emacsen-team/debian-el.git",
   "unstable": {
    "version": [
-    20181020,
-    1513
+    20200401,
+    1622
    ],
-   "commit": "8ff1f5d73d5d56bee65e45e9d8ac4e75aa8b8e4c",
-   "sha256": "0hqxl0gi9csp2zfc65s01c3i6himh38fia46cn68i3hh5d6kb6qx"
+   "commit": "d7117ab18b15f449f194cd7d91ff22e55fcfa817",
+   "sha256": "09i2n4990d5ra4zqswzv8sjk4psd9lf71xdsgnfbr88pdv1q8bhf"
   },
   "stable": {
    "version": [
@@ -16988,11 +17666,11 @@
   "repo": "abo-abo/define-word",
   "unstable": {
    "version": [
-    20191031,
-    1736
+    20200417,
+    844
    ],
-   "commit": "d8c76d503be3d561221631067ec5274e7c147248",
-   "sha256": "18yy7gw8x3y9sk3v7xpd59p425qc36dymj0wgk6mzarfq5rhv79h"
+   "commit": "08c71b1ff4fd07bf0c78d1fcf77efeaafc8f7443",
+   "sha256": "053kyg2jqayphdkm7s8fz8yl97yspib6qszcajyr77m6n7j4i764"
   },
   "stable": {
    "version": [
@@ -17323,11 +18001,11 @@
   "repo": "raxod502/diary-manager",
   "unstable": {
    "version": [
-    20190702,
-    2148
+    20200404,
+    1549
    ],
-   "commit": "964dd7bf60a8e8abc880ef5b73319bc65d5ea5e3",
-   "sha256": "1w1hffypsx41n63yrpz0lcyzia4x4lis0sja8gksik7dvwwkyhwb"
+   "commit": "6d9b86faecb2ab7c2e1eb90dcf7bffdf70804470",
+   "sha256": "05v449px4nq565w9kcg2bbz1j27qlgiw17z4drgriz2qf2m50v18"
   },
   "stable": {
    "version": [
@@ -17366,15 +18044,15 @@
   "repo": "cqql/dictcc.el",
   "unstable": {
    "version": [
-    20200209,
-    1810
+    20200421,
+    1422
    ],
    "deps": [
     "cl-lib",
     "ivy"
    ],
-   "commit": "e07ebfc577b904b3387705a91395ac873e42c727",
-   "sha256": "0wi3iz31qizd3xsys1pyfr2zfn03x27lrja5s8170s27zqkwm56j"
+   "commit": "3950011197ba81f27cc82b4e6075c9100945f936",
+   "sha256": "0xmmkzsg48q6awhkbi5naqjm0yjdnwb437k17razgd6y99vyh0ns"
   },
   "stable": {
    "version": [
@@ -17453,11 +18131,11 @@
   "repo": "ideasman42/emacs-diff-at-point",
   "unstable": {
    "version": [
-    20200106,
-    441
+    20200413,
+    200
    ],
-   "commit": "c26027d701f2a1512e0a2b18e4b34f02e9140ee0",
-   "sha256": "1c5pibjmpkw7fi26vnsvv5yjg4y851jccwymzwa06gbxb3jf5ggc"
+   "commit": "5b06de513297a80cf3a2081b8ee0914e90da810b",
+   "sha256": "1ib8297alpsvcxl9c56n2bjh5j4m49k92nz1mgdybiqwg3z4is21"
   }
  },
  {
@@ -17468,14 +18146,14 @@
   "repo": "dgutov/diff-hl",
   "unstable": {
    "version": [
-    20191223,
-    26
+    20200406,
+    37
    ],
    "deps": [
     "cl-lib"
    ],
-   "commit": "fb9eb1cd3c4c6ed24b93de1a7cfb369d2983be74",
-   "sha256": "0ksp86izjw7vgh21jn4rwl5vnfn1jvgs05lv216mnwia8p14ihjz"
+   "commit": "a625033fb1dde83f6e4c2fc21f632b22ec34b609",
+   "sha256": "01m0aknqn0pgb46877kbz9n1nqmlamrlm58g2q894imbhybgfpan"
   },
   "stable": {
    "version": [
@@ -17570,19 +18248,20 @@
   "repo": "retroj/digistar-mode",
   "unstable": {
    "version": [
-    20160218,
-    1955
+    20200322,
+    2109
    ],
-   "commit": "15288b1e1a04b79b5ab7097fdd26d48b2ff41076",
-   "sha256": "0qxdfv1p0140fqcxh677hhxwpx1fihvwhvh76pysn4q4pcfr6ldr"
+   "commit": "567fff3933f80f00f53610e7b08f75bb636b12c0",
+   "sha256": "0252lhkv2r8gy4512frhdh381xrf64nspvfm2hp7bkhz47dlrs7y"
   },
   "stable": {
    "version": [
     0,
-    4
+    6,
+    1
    ],
-   "commit": "0dcde58ec6e473042e55d4f283b223554546de5b",
-   "sha256": "0jzwaivsqh66py9hd3dg1ys5rc3p6pn8ndpwpvgyivk4pg6zhhj6"
+   "commit": "8b350b7a143219b3f927cb3a1aeb16a299363f05",
+   "sha256": "1sxfzirl8kgzmq8l9l868yl92mz1r8yk58fnxf7p6z4y0pdlcqfg"
   }
  },
  {
@@ -17698,8 +18377,8 @@
     20191127,
     1326
    ],
-   "commit": "96b47cf90360e4bd19138fe82dc59bfa86c7bf7d",
-   "sha256": "1ar2bl1w4s3gx8slryf5qzq4qzprdyhm1fngvlnfhxg83k2g3969"
+   "commit": "6ec6ebc391371418efc6c98d70b013f34af5a2ee",
+   "sha256": "0q8pihj9fwq9w978ycmvzv8kq8ksrdf8zfadjy8i2iwc4ib0jg7y"
   },
   "stable": {
    "version": [
@@ -17742,20 +18421,20 @@
   "repo": "gonewest818/dimmer.el",
   "unstable": {
    "version": [
-    20200301,
-    43
+    20200329,
+    35
    ],
-   "commit": "b9a35a236314e9afe173287a5aaf5ac7307f6067",
-   "sha256": "1a8aagg6087l9pi4pjk91k1liikbsp6mxbnpx3mzzcvylh2kis5f"
+   "commit": "5298af739ce30bacadda892b620858b95709c84b",
+   "sha256": "0dlgk66mcbzdbpw0xn6l7fxjayvgczccsx0igda9745pwm8yvy9z"
   },
   "stable": {
    "version": [
     0,
     4,
-    1
+    2
    ],
-   "commit": "5c0d50439afb43362b06a249a40e1ee00ce837a8",
-   "sha256": "1ykzr7h96a55hnj0bwq9fds4fdwinzx48p3i3k2g6fy8qcn7ydlb"
+   "commit": "e45bf2d064a8ecdea2b4caf646ece2d0adc1d84e",
+   "sha256": "0dw0qh5hm1x76s5cqxvylvmjgy0jwy11xm258g6kmx6w1k6r1d2l"
   }
  },
  {
@@ -18114,17 +18793,17 @@
  },
  {
   "ename": "dired-k",
-  "commit": "7f8a828b2fbfa11c4b74192d9d0cfa0ad34b3da7",
-  "sha256": "0lghdmy9qcjykscfxvfrz8cpp87qc0vfd03vw8nfpvwcs2sd28i8",
+  "commit": "2a2670edb1155f02d1cbe2600db84a82c8f3398b",
+  "sha256": "1nimv6rzk0rrzvniirrsxzd78f4yil1aajcxyra2nmx7dr4xszqh",
   "fetcher": "github",
-  "repo": "syohex/emacs-dired-k",
+  "repo": "emacsorphanage/dired-k",
   "unstable": {
    "version": [
-    20170313,
-    1503
+    20200322,
+    2035
    ],
-   "commit": "c50e8f73358060a448bff66db2d330b52bbeffc1",
-   "sha256": "14yvsv7cvfviszii0bj0qf094rmnwzssinrqrkpxg4jil2n4bb9d"
+   "commit": "1f90cf6ac932ad30ccfefec27ea7e514c24ab335",
+   "sha256": "1bmpn18z42i8dy331yrks5gsivpvwj677yc58iw66ckjnyjnyjps"
   },
   "stable": {
    "version": [
@@ -18143,11 +18822,11 @@
   "repo": "thomp/dired-launch",
   "unstable": {
    "version": [
-    20180607,
-    1841
+    20200403,
+    308
    ],
-   "commit": "ad45940f76ef2f6c3bb55e998829b311de191dae",
-   "sha256": "057nqlvqnq30gxfidmynp33040bgdq4gbwk0qdm294c5ap2af5yj"
+   "commit": "6e5d26ca859f7af624351ba2af6b1be83982053b",
+   "sha256": "0xy8c90d6lv21cp5p2xzqqv5da2m3mry8bdkz54rknv2v9in8g0l"
   }
  },
  {
@@ -18278,11 +18957,11 @@
   "repo": "Vifon/dired-rifle.el",
   "unstable": {
    "version": [
-    20181012,
-    2131
+    20200308,
+    2358
    ],
-   "commit": "a4f7b1e798397688b9c00d3507fcd395ece17a40",
-   "sha256": "09jp54drbx1hb4fj6bzh8ava7nk56pp500xsa9712vscg1f38fpz"
+   "commit": "99e4110c80d65ca43e2b0ec078e3202995e392d7",
+   "sha256": "034qak8kdp7laz1ylqy9np5ajhwf741mdl0bj5kb7rrrsijxada6"
   }
  },
  {
@@ -18316,15 +18995,15 @@
   "repo": "stsquad/dired-rsync",
   "unstable": {
    "version": [
-    20200225,
-    1343
+    20200308,
+    1150
    ],
    "deps": [
     "dash",
     "s"
    ],
-   "commit": "276a313bd61096ad680769c8d419c1cf3d5981e9",
-   "sha256": "1s4cllfwyspp65f05f3jw449ijn6m96pbn3vjpil4b116hsxm1qb"
+   "commit": "bfd5c155be1cb6b71c83e5f41116c81b6532b6d5",
+   "sha256": "096lqsq4bh5fgxhfscvmscd5v8d4ji88wks2chi92h9v85sha3b6"
   },
   "stable": {
    "version": [
@@ -18347,14 +19026,14 @@
   "repo": "jojojames/dired-sidebar",
   "unstable": {
    "version": [
-    20200226,
-    333
+    20200409,
+    801
    ],
    "deps": [
     "dired-subtree"
    ],
-   "commit": "5f88a4570eae9645be06ff22542f110aeb70dd7d",
-   "sha256": "0l1wr7g4lfqmvhw3vir6fmwxmid9sasxlf5pxxvh0z8kps53f0cn"
+   "commit": "6e569c851418890c21fd37d03a62f85343aa0900",
+   "sha256": "0jxljpmzncbh9xb22y4xr9bzcxwijy68pn8chqsvqmivss5py7n9"
   },
   "stable": {
    "version": [
@@ -18377,11 +19056,11 @@
   "repo": "crocket/dired-single",
   "unstable": {
    "version": [
-    20180824,
-    312
+    20200303,
+    1144
    ],
-   "commit": "cfd463598175d89672a766a4f4a4a778836186e2",
-   "sha256": "0bpk4hqa9k702k0mcbg62wy29sx1n1dzrprkzp4x76ixgzfav3lj"
+   "commit": "90ade369ba478fdebf61957f837c0b10cef128b1",
+   "sha256": "08qm8s77kfx9yfhm10vivhq15jrndvd29azkv4y1wd9qsrh5ylk0"
   },
   "stable": {
    "version": [
@@ -18444,11 +19123,11 @@
   "repo": "renard/dired-toggle-sudo",
   "unstable": {
    "version": [
-    20151109,
-    1006
+    20200401,
+    1353
    ],
-   "commit": "02449dbda4e168f99fe5352c9628df5d39e11483",
-   "sha256": "0ajj8d6k5in2hclcrqckinfh80ylddplva0ryfbkzsjkfq167cv2"
+   "commit": "13bbe52c54893f5aa3e56228450ffdd0c9e1d169",
+   "sha256": "1fw1pb1z6krqd1pfxxhr6rrfr9ckkcb0zsjzbjk0i2i1q5cg6car"
   },
   "stable": {
    "version": [
@@ -18513,14 +19192,14 @@
   "repo": "wbolster/emacs-direnv",
   "unstable": {
    "version": [
-    20200229,
-    1525
+    20200319,
+    2357
    ],
    "deps": [
     "dash"
    ],
-   "commit": "1f93e3f9cae5ec171939fe5c1fe9744a28fa6576",
-   "sha256": "0xkqn4604k2imas6azy1www56br8ls4iv9a44pxcd8h94j1fp44d"
+   "commit": "1daf479b9b7600ce9681f2a980deae7fcb2f3d59",
+   "sha256": "08hwjd1xmq6hxab537zm11kwqhwnc1dfznfqzy66c4agl9z9a7vx"
   },
   "stable": {
    "version": [
@@ -18635,11 +19314,11 @@
   "repo": "purcell/disable-mouse",
   "unstable": {
    "version": [
-    20181225,
-    2206
+    20200304,
+    2159
    ],
-   "commit": "689ea9f3d702529a5b5ac2493e28eefca65c7abb",
-   "sha256": "0na9kkx2rjakgxq416cr2wjdggzf4ycki7jj7ywpra966zldf84s"
+   "commit": "a8318f5f21716316053cc092ab9abb43cb681fe0",
+   "sha256": "0z9749hd3x1z2sf3lyzx2rrcfarixmfg0hnc5xsckkgyb7gbn6hq"
   },
   "stable": {
    "version": [
@@ -19270,8 +19949,8 @@
   "repo": "Silex/docker.el",
   "unstable": {
    "version": [
-    20200218,
-    1257
+    20200421,
+    822
    ],
    "deps": [
     "dash",
@@ -19281,8 +19960,8 @@
     "tablist",
     "transient"
    ],
-   "commit": "a2092b3b170214587127b6c05f386504cae6981b",
-   "sha256": "1q3fgh3sjly62h86yvjqhr7j1yyrsfygk4rqkx0p7a052s2qvqi7"
+   "commit": "08745207332d940130a2357eb5c5e00fd88bd6af",
+   "sha256": "15fgcmld7z83b89jkwi0a5i9lls43kpbqav0lhfdyq3m941whzs4"
   },
   "stable": {
    "version": [
@@ -19441,11 +20120,11 @@
   "repo": "progfolio/doct",
   "unstable": {
    "version": [
-    20200225,
-    2305
+    20200413,
+    157
    ],
-   "commit": "671ff27f9ee97b4ca79edcad8626a0356732d0cc",
-   "sha256": "0ajvys20w8fp661x8y7j7f72kmw5ylwvcdxrhiplk6h6xhacjwdc"
+   "commit": "c237e72e0bc53a67a83c05d9c1bb28e80fd15c1e",
+   "sha256": "0bh7yckr1cfampc1kmigbg98b6kwvnjgq8143lqlj1hmg0hw5cb6"
   }
  },
  {
@@ -19560,30 +20239,30 @@
   "repo": "seagle0128/doom-modeline",
   "unstable": {
    "version": [
-    20200301,
-    657
+    20200425,
+    553
    ],
    "deps": [
     "all-the-icons",
     "dash",
     "shrink-path"
    ],
-   "commit": "0df558598451c36714c0793283fecc064adaf786",
-   "sha256": "1gi3qcqnv0qs8f1921s0bs6ppc3z44sbb035qdlzm1lii7s2v4ll"
+   "commit": "c177959bbfa7fa6f199b1145c6986e55f462f1c1",
+   "sha256": "0iclkfryfj72c5377rydsxh090maq6i0sxj90cm6dalyazd7rl4k"
   },
   "stable": {
    "version": [
-    2,
-    9,
-    2
+    3,
+    0,
+    0
    ],
    "deps": [
     "all-the-icons",
     "dash",
     "shrink-path"
    ],
-   "commit": "e6d690bae01cb68e7171857fe07ac914d7a19f4b",
-   "sha256": "0k5rppzpycl1aggg6cvwvgxylgvjbxksvdah8fkrrmx3dwcr2y3p"
+   "commit": "b44955841a301f4930b054e912fa4c1a700d426d",
+   "sha256": "08m75rl5i812pa87zcsjvb4mm3jjhpwzgx9mf2m7sxj807airz5d"
   }
  },
  {
@@ -19594,14 +20273,14 @@
   "repo": "hlissner/emacs-doom-themes",
   "unstable": {
    "version": [
-    20200225,
-    1641
+    20200331,
+    1901
    ],
    "deps": [
     "cl-lib"
    ],
-   "commit": "756cf15a6bfb3146f2a28a861c1d9e4e86605cdf",
-   "sha256": "01w67r9vms19mrz8nc8mbyq0gkvgbixpcl14xbb51mrvnssaf3qb"
+   "commit": "8d5ddbbb72752fdd981407bdc2e33d917675e919",
+   "sha256": "16d1mlz5ll89p2f4avz8cbyg2wkxkjydb19aff9y6c75pw948cks"
   },
   "stable": {
    "version": [
@@ -19809,8 +20488,8 @@
     20161021,
     1211
    ],
-   "commit": "4953f1c8a68472e157a0dcd0a7e35a4ec2577133",
-   "sha256": "1i7k7d2gnzd2izplhdmjbkcxvkwnc3y3y0hrcp2rq60bjpkcl1gv"
+   "commit": "a69e364532fffa451d1f12ade8fadb9cdbd8318c",
+   "sha256": "12pwfv0j54idvn061l3qxf0vrrl56085n517izh8x6jkgxjcx7k0"
   },
   "stable": {
    "version": [
@@ -19830,20 +20509,20 @@
   "repo": "dracula/emacs",
   "unstable": {
    "version": [
-    20200228,
-    1008
+    20200412,
+    1112
    ],
-   "commit": "f7cf1b23ae8f70aaf723552159213d143b92889a",
-   "sha256": "1lz24sbwc3d98ibjvqb160qb2jkknm53v0imdykw86bjqgplxvv7"
+   "commit": "81d06717d1b75d2b51c1b7d3da93b6a01d7e253d",
+   "sha256": "1ywzxhygf8qyif4d6kg0rhbpdxxb74wnip8n4n9m9mabmff5xkzk"
   },
   "stable": {
    "version": [
     1,
-    5,
-    1
+    7,
+    0
    ],
-   "commit": "66e429f4d576346661ae3a111bafaa06febc1d94",
-   "sha256": "0lyy8vjzzcfcj4hm7scxl4cg4qm67rprzdj7dmyc3907yad4n023"
+   "commit": "7751d4d3115c5e873b73b670248c49ce8910997e",
+   "sha256": "15y2djc5jljlvls1x9kp50m1kp0dcksmyixafsyimj66xpq9ngh0"
   }
  },
  {
@@ -20042,8 +20721,8 @@
   "repo": "dtk01/dtk",
   "unstable": {
    "version": [
-    20200215,
-    554
+    20200315,
+    1931
    ],
    "deps": [
     "cl-lib",
@@ -20051,8 +20730,8 @@
     "s",
     "seq"
    ],
-   "commit": "eb153de123af04fa7ce10ba4ce77f0cf764bc2de",
-   "sha256": "0prk6fl76dl5ay27ncfqr06spiv2fqr7hc8dad5dqw70w9d29vji"
+   "commit": "d21a5b7958da058bb53d36fe9234089409f62c5e",
+   "sha256": "0w46yr5d108z2pipvh449p15qnm6mnix21pbnq3alczilzxzf9lw"
   }
  },
  {
@@ -20078,19 +20757,19 @@
   "repo": "jscheid/dtrt-indent",
   "unstable": {
    "version": [
-    20191019,
-    2141
+    20200410,
+    920
    ],
-   "commit": "48221c928b72746d18c1e284c45748a0c2f1691f",
-   "sha256": "0jmlb54b0qrp2mr9cnbzki1vy7i0wv5y1h03ns8acwa2hmpjk30a"
+   "commit": "9163cd990fb1f43dafed3948c6e406c13a45a6be",
+   "sha256": "1x73akd8l7bsn59wnz2cg0mxms98r1li40w3by121p9md49fd0r8"
   },
   "stable": {
    "version": [
-    0,
-    9
+    1,
+    1
    ],
-   "commit": "48221c928b72746d18c1e284c45748a0c2f1691f",
-   "sha256": "0jmlb54b0qrp2mr9cnbzki1vy7i0wv5y1h03ns8acwa2hmpjk30a"
+   "commit": "9163cd990fb1f43dafed3948c6e406c13a45a6be",
+   "sha256": "1x73akd8l7bsn59wnz2cg0mxms98r1li40w3by121p9md49fd0r8"
   }
  },
  {
@@ -20160,8 +20839,8 @@
   "repo": "jacktasia/dumb-jump",
   "unstable": {
    "version": [
-    20200222,
-    2006
+    20200423,
+    1658
    ],
    "deps": [
     "dash",
@@ -20169,8 +20848,8 @@
     "popup",
     "s"
    ],
-   "commit": "a0ec2f139325bf3b39664e2a85be042a06f63af8",
-   "sha256": "12agvqxx50sg0klz3q6rcgfx5m2dw7idn65vwwamb019fpr4q94p"
+   "commit": "d760aa880fc1052570ab0fd7e586eeffb7636af6",
+   "sha256": "0a27fv2yi4c19g78hgflrp8vx135v74q6n8ak3g3b2gh66vkvq7p"
   },
   "stable": {
    "version": [
@@ -20214,17 +20893,17 @@
     20191016,
     1241
    ],
-   "commit": "d90488a7e2c24ecc7136bbcb270bfb30d4f1ad4f",
-   "sha256": "0pqlwkz3j5kpghqgx29xns0s8a66mi48prarirgqq8knfd7vkvzs"
+   "commit": "17895c30724c2a5ea18c0140d4022e2ef83d7208",
+   "sha256": "0sgn56g1225ar45kgp5qcdd6fc95skr36zci1lz1fszy94v162z7"
   },
   "stable": {
    "version": [
     2,
-    3,
+    5,
     1
    ],
-   "commit": "4e9ca5de1bf9eb8cd3d2277634d418ba747be864",
-   "sha256": "124x7yh8mjmqrf3z962sdcakd1ka3js5kg2vx767ygw4q6w8cjdh"
+   "commit": "4d1ef91df8c732d516ddea4a953f5956e99692b2",
+   "sha256": "1ljhwsyl277lvmii4v439dafyc0y2l2jf2ds5zivpbrh168851di"
   }
  },
  {
@@ -20259,20 +20938,20 @@
  },
  {
   "ename": "dyalog-mode",
-  "commit": "e608f40d00a3b2a80a6997da00e7d04f76d8ef0d",
-  "sha256": "0w61inyfvxiyihx5z9fk1ckawcd3cr6xiradbbwzmn25k99gkbgr",
-  "fetcher": "bitbucket",
+  "commit": "1a8f86df54f1243fea71e1e73ed0b9fb049032bd",
+  "sha256": "00mbkl275g8x3w341nsi90ffm5cfalnrfzx8ww1hnxc86q5ldivw",
+  "fetcher": "github",
   "repo": "harsman/dyalog-mode",
   "unstable": {
    "version": [
-    20191002,
-    1352
+    20200301,
+    1149
    ],
    "deps": [
     "cl-lib"
    ],
-   "commit": "4e214c1804eefde07b1dcd2ea07b8e41f33d7ee7",
-   "sha256": "1vq1fhn8x6i6wmccwiq482dbrdpn5cllkdn3v0ki0427a8gwkdal"
+   "commit": "5dceeefaed6fbedb680bb6cc9aba14fb5f890310",
+   "sha256": "137kgixsdkw2rqj1402gc31gd6hdbna7bx5j1xxhyiig2x2b3aqx"
   }
  },
  {
@@ -20283,11 +20962,11 @@
   "repo": "dylan-lang/dylan-mode",
   "unstable": {
    "version": [
-    20190831,
-    1910
+    20200425,
+    1347
    ],
-   "commit": "4801b7adcc984edfffa3f951e2c35329fae2b6e4",
-   "sha256": "1xm27fc98rj8fsfm9na1x3d7zgp8fkxf782ajvirzbbq5nj0lyma"
+   "commit": "64f3aed546315c766331c69be3c7e78c7da6c333",
+   "sha256": "1r63gxy1hlij1ck570agvj39rynby6kna5kcfhrr0imi7hl98mzz"
   }
  },
  {
@@ -20580,16 +21259,16 @@
   "repo": "aki2o/e2wm-term",
   "unstable": {
    "version": [
-    20141009,
-    1308
+    20200322,
+    729
    ],
    "deps": [
     "e2wm",
     "log4e",
     "yaxception"
    ],
-   "commit": "65b5ac88043d5c4048920a048f3599904ca55981",
-   "sha256": "0qv3kh6q3q7vgfsd8x25x8agi3fp96dkpjnxdidkwk6k8h9n0jzw"
+   "commit": "74362d6271e736272df32ea807c5a22e4df54a50",
+   "sha256": "1cr2mp1visx4fnxc73sk6gw7wnl1mxfb624rm1sxz7wwry8b8fx9"
   },
   "stable": {
    "version": [
@@ -20614,14 +21293,14 @@
   "repo": "redguardtoo/eacl",
   "unstable": {
    "version": [
-    20191230,
-    1057
+    20200407,
+    756
    ],
    "deps": [
     "ivy"
    ],
-   "commit": "a25c28f4ee1126d1ee51dae22843f3440520f1a3",
-   "sha256": "0pz894saz6ncira9ag9aqmfw394v56sfxldv25phh3z44y1ij01z"
+   "commit": "47b839f305e63e119b6a554497cd4b99512e8e00",
+   "sha256": "1gdppgjdapjx25ns5ja1lnnypq26m8w9s5vbnfg7p0j64kd2mdwh"
   },
   "stable": {
    "version": [
@@ -20883,25 +21562,26 @@
   "repo": "joostkremers/ebib",
   "unstable": {
    "version": [
-    20200229,
-    741
+    20200419,
+    2017
    ],
    "deps": [
     "parsebib"
    ],
-   "commit": "96dff9eacad70d2fbd3cc432c9235413569080f9",
-   "sha256": "044p78y48cgv9wyxpf6kd137ppbh96dmd5xyaykafk9jf75h47kz"
+   "commit": "87920ab793e6e854903eb101b80a0746f588dab6",
+   "sha256": "0mw5spmjn8yyjbdpas06rf9cmfsfa3k2z0yfrs7xvmaalpxz55xm"
   },
   "stable": {
    "version": [
     2,
-    22
+    22,
+    1
    ],
    "deps": [
     "parsebib"
    ],
-   "commit": "f094f7741264ba5de14624b1b8da8a2ba678bfe7",
-   "sha256": "1hn11y09bpb10hxp0b7j72shivnnq1qyvw13lyjqlycr6rgvckb9"
+   "commit": "cd37aaa9a11e3b2232b8aa12cfe9a8ae9b830b10",
+   "sha256": "0spiz5r2y4pdpyc4d3f9w228giq0j9rm8f5h5akzn5rwiq9pfkwz"
   }
  },
  {
@@ -20912,11 +21592,11 @@
   "repo": "flexibeast/ebuku",
   "unstable": {
    "version": [
-    20200203,
-    1122
+    20200422,
+    723
    ],
-   "commit": "2f1af38469966c788483cbce4ab70436f72cf30d",
-   "sha256": "15liiczqjf8p2jr9356zrj65ijp5gdrnb5i7m09armyhb8282rmg"
+   "commit": "ec8a5057dd2bf6275c8cdfca53c51e0b7f21b8f3",
+   "sha256": "0j6g56vqi12m5533dm6f716vsqcw59awfbiiv0jafb5kw9wj698v"
   }
  },
  {
@@ -21063,90 +21743,6 @@
   }
  },
  {
-  "ename": "edbi-database-url",
-  "commit": "e25bf3d65ef2fb09eb0802cfd3e3faee86a5cfdb",
-  "sha256": "018rxijmy0lvisy281d501ra9lnh5xi0wmvz5avbjpb0fi4q1zdn",
-  "fetcher": "github",
-  "repo": "proofit404/edbi-database-url",
-  "unstable": {
-   "version": [
-    20160221,
-    1923
-   ],
-   "deps": [
-    "edbi"
-   ],
-   "commit": "d56c580268cd93651998c4c6b1c5558e6b6ca90f",
-   "sha256": "1nkfl8jngkdz8h951jig39af1wh5vrc5lqk58l2i4lc2znprj9lx"
-  }
- },
- {
-  "ename": "edbi-django",
-  "commit": "10dd853022ab93e345761b04d760b3763f4d2384",
-  "sha256": "02vcbqgkvhlw9msf65777f85c8myxr95g2dz199nlfmz4vpqrkgq",
-  "fetcher": "github",
-  "repo": "proofit404/edbi-django",
-  "unstable": {
-   "version": [
-    20190212,
-    1417
-   ],
-   "deps": [
-    "edbi",
-    "pythonic"
-   ],
-   "commit": "9b73db66c02a222fc62dc3bc590962f58c5b43d8",
-   "sha256": "1yinm4qzwpdmr4a0isbkiw6ny23gllajcppwh7g0d62di3v242dm"
-  }
- },
- {
-  "ename": "edbi-minor-mode",
-  "commit": "5fb878b60c7ecbb1e3a47aef1d9765061c510644",
-  "sha256": "0p7vdf9cp6i7mhjxj82670pfflf1kacalmakb7ssgigs1nsf3spi",
-  "fetcher": "github",
-  "repo": "proofit404/edbi-minor-mode",
-  "unstable": {
-   "version": [
-    20160706,
-    1447
-   ],
-   "deps": [
-    "edbi"
-   ],
-   "commit": "566a2141a6eb9d9d5d7e1bd7c251d1c5e8f0d2ec",
-   "sha256": "1g6mlmrwl8p5ffj9q298vymd9xi2kpp7mhbmz4by4f6a3g831c88"
-  },
-  "stable": {
-   "version": [
-    0,
-    1
-   ],
-   "deps": [
-    "edbi"
-   ],
-   "commit": "566a2141a6eb9d9d5d7e1bd7c251d1c5e8f0d2ec",
-   "sha256": "1g6mlmrwl8p5ffj9q298vymd9xi2kpp7mhbmz4by4f6a3g831c88"
-  }
- },
- {
-  "ename": "edbi-sqlite",
-  "commit": "acc9b816796b9f142c53f90593952b43c962d2d8",
-  "sha256": "1w53ypz3pdqaml3vq9j3f1w443n8s9hb2ys090kxvjqnb8x8v44y",
-  "fetcher": "github",
-  "repo": "proofit404/edbi-sqlite",
-  "unstable": {
-   "version": [
-    20160221,
-    1923
-   ],
-   "deps": [
-    "edbi"
-   ],
-   "commit": "52cb9ca1af7691b592f2cfd2f007847e7a4ccd5f",
-   "sha256": "1vll81386fx90lq5sy4rlxcik6mvw7zx5cc51f0yaca9bkcckp51"
-  }
- },
- {
   "ename": "ede-compdb",
   "commit": "3b70138b7d82aec2d60f4a7c0cd21e734a1fc52a",
   "sha256": "1ypi7rxbgg2qck1b571hcw5m4ipllb48g6sindpdf180kbfbfpn7",
@@ -21289,6 +21885,24 @@
   }
  },
  {
+  "ename": "edit-chrome-textarea",
+  "commit": "d9e8d07ed13d190a8a7eab75a59ec5b9a01d97a8",
+  "sha256": "0xp7925y04gr09j204r01jq7hqjp32gqsazwsbih4fkx0n30aqbs",
+  "fetcher": "github",
+  "repo": "xuchunyang/edit-chrome-textarea.el",
+  "unstable": {
+   "version": [
+    20200324,
+    1513
+   ],
+   "deps": [
+    "websocket"
+   ],
+   "commit": "e9ef6a72bdc6b58f932c51aa161869cee11b4bc9",
+   "sha256": "1akyxq0ja06q5bywa6nb4klnbvrw6f6d83bzrjdz2sc7ddk3a4hz"
+  }
+ },
+ {
   "ename": "edit-color-stamp",
   "commit": "2ad2ea105b895cb958ce0ab2bf2fad2b40d41b2f",
   "sha256": "1f8v8w3w7vb8jv29w06mplah8yfcs5qfjz2w4irv0rg7dwzy3zk8",
@@ -21384,8 +21998,8 @@
     20181016,
     1125
    ],
-   "commit": "af46de40e2991b046f04856c18a6483badce38aa",
-   "sha256": "1lfdfnc7cx3lqa69mpn72jhsz4dwmfnrfpzrnk6lfh10h65yfdiw"
+   "commit": "43f180809fcbc7e104f96f95608a97c4c2a2c8b3",
+   "sha256": "0v9nn85pw7lll516p8bb9y6dk44rj2h88ky4zz9wgkrppjs7qdb0"
   },
   "stable": {
    "version": [
@@ -21458,8 +22072,8 @@
    "deps": [
     "editorconfig"
    ],
-   "commit": "ddf60923c6f4841cb593b2ea04c9c710a01d262f",
-   "sha256": "1v5a6s4x7cm6i0bxaqdpsg8vqj479lp5h45glx4ipk0icdq8cvd9"
+   "commit": "4f75e175ad15ce2038f926fe4f0e5a0c1d0cbc46",
+   "sha256": "12a78187ar4mxdf1sk8bkrdcxly1nc5m9krkry04jklj6h9dayj3"
   }
  },
  {
@@ -21562,14 +22176,14 @@
  },
  {
   "ename": "edts",
-  "commit": "782db7fba2713bfa17d9305ae15b0a9e1985445b",
-  "sha256": "0f0rbd0mqqwn743qmr1g5mmi1sbmlcglclww8jxvbvb61jq8vspr",
+  "commit": "92b0d3a2af833e0f11e6a935d54eba5e3879d690",
+  "sha256": "1363k9fh1z7r6hxccsqx2a1d688kldr4h6vp91hwph7ihk4868il",
   "fetcher": "github",
-  "repo": "tjarvstrand/edts",
+  "repo": "sebastiw/edts",
   "unstable": {
    "version": [
-    20200217,
-    801
+    20200413,
+    1929
    ],
    "deps": [
     "auto-complete",
@@ -21580,8 +22194,8 @@
     "popup",
     "s"
    ],
-   "commit": "299e4553551a88dc5f26921125bccbc3efc662ef",
-   "sha256": "0fsgnh7g1fignsvl5i0kbkqb6f4ffc9k0202xm8p3b41vxgzdky5"
+   "commit": "e797eb57ede8332205b3abd7d7adeccbb319ad29",
+   "sha256": "1101yx1dg82msw0bbji9hpnzq029ghh9ca4a6588fik8sn3v786j"
   },
   "stable": {
    "version": [
@@ -21719,6 +22333,21 @@
   }
  },
  {
+  "ename": "egg-timer",
+  "commit": "a8fbafbeec955fb9bb421519de1e3d09d9812c66",
+  "sha256": "1q3l8hxymk3vxa0nf8pydy4k9qnbzzzpgkp86c9d744smal5xn3v",
+  "fetcher": "github",
+  "repo": "wpcarro/egg-timer.el",
+  "unstable": {
+   "version": [
+    20200217,
+    1650
+   ],
+   "commit": "e3542aeb80905956b94373a222a9cbac04e6497e",
+   "sha256": "0pq6ni2kvdps7j8pdlv16cka198sv29axp9xrp7c755k82pydhk4"
+  }
+ },
+ {
   "ename": "egison-mode",
   "commit": "3416586d4d782cdd61a56159c5f80a0ca9b3ddf4",
   "sha256": "0bch4863l9wxrss63fj46gy3nx3hp635709xr4c2arw0j7n82lzd",
@@ -21729,17 +22358,17 @@
     20200107,
     2333
    ],
-   "commit": "de8ccd81a8312634a3c8c7f06b6993105538d29f",
-   "sha256": "08wpwpyskx59k31bqakw3mzir0blqcqk8m7dmr5mvp9gji41mb2d"
+   "commit": "8e0706fdb5ae139a1db93bdd24203a261b13c875",
+   "sha256": "09jqjdgjrg740a326vn086wj3gv548w19dk8pz9k7k3dvlncw24y"
   },
   "stable": {
    "version": [
-    3,
-    10,
-    3
+    4,
+    0,
+    0
    ],
-   "commit": "79ab16f093aa3b2373422d0044f3119467755f5e",
-   "sha256": "0fisq0g3css641fh7y9vhagkfbsm2rfw9pnzyz434cr41wnjmjfz"
+   "commit": "400465de0ece5b03607895bd1c83b1cfae34079a",
+   "sha256": "196jn2cmyjvjai3nbij5kk64djz908ch4kddi4qdpkighwslkh2i"
   }
  },
  {
@@ -21750,27 +22379,27 @@
   "repo": "joaotavora/eglot",
   "unstable": {
    "version": [
-    20200113,
-    1722
+    20200424,
+    1852
    ],
    "deps": [
     "flymake",
     "jsonrpc"
    ],
-   "commit": "606e234ea867d057f201fde9a4de2a896f35782e",
-   "sha256": "0fjgy377vb3znzlb49xjf5a6k4ihmql1lbiaw2fla7282r5z5ja6"
+   "commit": "e5cf30e26bd3107583418f2b4539c7385d37d6c8",
+   "sha256": "0fx2zx46j4mivb2h1bdz7n17bmmd6811az1wzi8g4q430kiv9hpi"
   },
   "stable": {
    "version": [
     1,
-    5
+    6
    ],
    "deps": [
     "flymake",
     "jsonrpc"
    ],
-   "commit": "33a4f869972f0958c15c33b47035672b265a8b55",
-   "sha256": "1x6nlsc93scq8lidx1l5ipi7r7s0p63m2vwkl77p3v59glir15cb"
+   "commit": "e02479a8c20cd79c3dfeb553deaaecd7d6e97e51",
+   "sha256": "13r1ysdhnxkc025wypwi6w507v18hm5qf0x29qrycql46f8klrjb"
   }
  },
  {
@@ -21781,28 +22410,28 @@
   "repo": "non-Jedi/eglot-jl",
   "unstable": {
    "version": [
-    20200120,
-    1457
+    20200413,
+    1930
    ],
    "deps": [
     "eglot",
     "julia-mode"
    ],
-   "commit": "94e84fe0d14585192dca53e1e962bec7596f095c",
-   "sha256": "0dsnyp30c9nrglv4ifv6g272sa6pgrn5f75ak81z4pkdhdn6wvnb"
+   "commit": "a37aaa7c2a3e0282e02f97c0b8946dbd6d6cbf06",
+   "sha256": "09mzxg0j5a9dqx8sf5m91sapzdlr3vj5ds2ll7nxmgd57m185pfs"
   },
   "stable": {
    "version": [
     1,
-    1,
-    1
+    2,
+    0
    ],
    "deps": [
     "eglot",
     "julia-mode"
    ],
-   "commit": "94e84fe0d14585192dca53e1e962bec7596f095c",
-   "sha256": "0dsnyp30c9nrglv4ifv6g272sa6pgrn5f75ak81z4pkdhdn6wvnb"
+   "commit": "a37aaa7c2a3e0282e02f97c0b8946dbd6d6cbf06",
+   "sha256": "09mzxg0j5a9dqx8sf5m91sapzdlr3vj5ds2ll7nxmgd57m185pfs"
   }
  },
  {
@@ -21830,17 +22459,17 @@
  },
  {
   "ename": "eide",
-  "commit": "a42244392719c620b47bc43a7a8501dab4b6f74e",
-  "sha256": "1962shxcfn3v1ljann7182ca6ciy5xfbcd6l9l8rc8gikp55qv8m",
+  "commit": "1dd52b48fbac25ee2873645d87a1238351a6ff74",
+  "sha256": "1akmb48rpq05mmb022yh0qnjlbs1wx5x6f1gk2kw5fb5g45swb0c",
   "fetcher": "git",
-  "url": "https://framagit.org/eide/eide.git",
+  "url": "https://forge.tedomum.net/eide/eide.git",
   "unstable": {
    "version": [
-    20191213,
-    2119
+    20200419,
+    2126
    ],
-   "commit": "2153a68b58910e7892b16cc32414e2be99e33f36",
-   "sha256": "17fbxijpiachsb16ngbv7wpy9f4m0456bc5q9g7z8qi28dgzlz9p"
+   "commit": "827f29b9fd8e20e2e460cffc67a8f9ac9623c450",
+   "sha256": "1bqsvk70l9n929b41xz6j3sg3irwrcrlbvqxpvq0d8jqjl4nw51g"
   },
   "stable": {
    "version": [
@@ -21875,8 +22504,8 @@
   "repo": "millejoh/emacs-ipython-notebook",
   "unstable": {
    "version": [
-    20200301,
-    802
+    20200425,
+    1940
    ],
    "deps": [
     "anaphora",
@@ -21886,8 +22515,8 @@
     "request",
     "websocket"
    ],
-   "commit": "10d7f10179f05eec243de3e55addd533bc46ce31",
-   "sha256": "0w2vlsr6s79mdlis4vsad9svs4ywbrkbyg5wygpd89m10sclkqcy"
+   "commit": "42134adf3c95b7768e2d725bab39ddb98feafa09",
+   "sha256": "07lwxl5kbsc0xlmnvp524p3r4m9f4ldxnkwm0gmbk8aq1lg1gyw6"
   },
   "stable": {
    "version": [
@@ -21961,8 +22590,8 @@
   "repo": "kostafey/ejc-sql",
   "unstable": {
    "version": [
-    20200212,
-    1038
+    20200424,
+    1623
    ],
    "deps": [
     "auto-complete",
@@ -21971,8 +22600,8 @@
     "direx",
     "spinner"
    ],
-   "commit": "af7a59dba2ee2e906cbe6d1686d639b65f8838b2",
-   "sha256": "1pvhb1i4xhic89hn9l27afinxrgs50s0lpln8daa6dci3z0i8xx8"
+   "commit": "0914ff731630ebdaa4e07dba97644e0e57bbf18e",
+   "sha256": "0qm4sdzxmkm35kg3ldijj6vwbdn8yflivyv09m4w05vz0liks0qa"
   },
   "stable": {
    "version": [
@@ -22055,8 +22684,8 @@
     20181006,
     225
    ],
-   "commit": "456fea0866ee71cb5a68eb65e9464565674081bf",
-   "sha256": "1hcjf88xjgkgp5wv7ccnfifnmpdj33csx6xm7rrdal3cy0f3ydj8"
+   "commit": "64abd393d5cefb1d59380dcc1344befdf618735b",
+   "sha256": "006c2kgkky81mv7an24m55521ay0d6ang5cwi16ac88j8x3n1q4i"
   },
   "stable": {
    "version": [
@@ -22169,20 +22798,19 @@
   "repo": "raxod502/el-patch",
   "unstable": {
    "version": [
-    20191114,
-    1639
+    20200404,
+    1548
    ],
-   "commit": "4744d6b1a5405001cb75f2c362a681964367319c",
-   "sha256": "1l4rjvdrdzvgq5zq6njg6gv0b7p6j545h4v27mpyxfh3z5jc8c49"
+   "commit": "f5c785a6f951a4aa6d6ab5cda84460dad2a072cc",
+   "sha256": "12fw4zk3w8kh8g94k4hcqjixxb1vvnv4qivc672lwdj4d8a218jw"
   },
   "stable": {
    "version": [
     2,
-    2,
     3
    ],
-   "commit": "ef56cbc6950dffd91de93009bafe51efb81eb84f",
-   "sha256": "18djslz177q6q33y82zmg2v6n9236a76kiqfvxdk4vbqzjbq82f7"
+   "commit": "278a27477a4d7032fe06bb56ab01701cb10df808",
+   "sha256": "15bwjl6377ngg3qwn1g8wc2wi61pcm6xlhjzj28ap5vz7y7zxps2"
   }
  },
  {
@@ -22250,15 +22878,15 @@
   "repo": "eschulte/el-sprunge",
   "unstable": {
    "version": [
-    20140107,
-    139
+    20200312,
+    1212
    ],
    "deps": [
     "htmlize",
     "web-server"
    ],
-   "commit": "37855ec60aeb4d565c49a4d711edc7341e9a22cb",
-   "sha256": "04k1fz0ypmfzgwamncp2vz0lq54bq6y7c8k9nm39csp2564vmbbc"
+   "commit": "e4365ea0bdf60969817619376bdcc98003fec33d",
+   "sha256": "13d2dr5r9nv97ma3abcnhqgq86rqwqlwvq64z3hm0qibsxxajdhq"
   }
  },
  {
@@ -22323,11 +22951,11 @@
   "repo": "tumashu/el2org",
   "unstable": {
    "version": [
-    20190504,
-    1114
+    20200408,
+    146
    ],
-   "commit": "fbb2c5bff78564111ff1826976101555314bfc53",
-   "sha256": "17d85fdckbzj551j98j0hrhdj0ag8ba2kpk2ix8fmvdnssxdnvm0"
+   "commit": "7db77fdd73f378d4e60e34c11bbdf00677adc32c",
+   "sha256": "196nrg4cp57calv36if0fkc8bjiz6qzisr29ry49zmkgjlqaafq3"
   },
   "stable": {
    "version": [
@@ -22398,11 +23026,11 @@
   "repo": "Mstrodl/elcord",
   "unstable": {
    "version": [
-    20200224,
-    1509
+    20200322,
+    2027
    ],
-   "commit": "61cd3834f8650a13d34d845138e40c5aaab75cb7",
-   "sha256": "0l3hv190xkzyalfnxsb0x7npmwdgf9bpc0qdi7p7issbf0vrjp4n"
+   "commit": "94b0afb9bac32fa72354517347646166d6bec986",
+   "sha256": "11gj67d83hx9wfjf4j277jy8jxf97i6bd9r8r057v4i8301qh91p"
   }
  },
  {
@@ -22446,11 +23074,11 @@
   "repo": "doublep/eldev",
   "unstable": {
    "version": [
-    20200221,
-    2047
+    20200315,
+    1527
    ],
-   "commit": "a533ea3add577bb50a96ba24cee26f7e3e79a13f",
-   "sha256": "0wfpy5ib0f54lj394jmd45835iks8mvzxhnn0ii3qcsyjfs1jdnj"
+   "commit": "98fc3206c36bf6384bf333f93b4ae3d9382f5c57",
+   "sha256": "0a6a20n4nwfnzh0fbndpf3f77mchax4sdc2bwhn66yncm9kikjyh"
   },
   "stable": {
    "version": [
@@ -22470,11 +23098,11 @@
   "repo": "casouri/eldoc-box",
   "unstable": {
    "version": [
-    20191102,
-    1433
+    20200316,
+    1956
    ],
-   "commit": "913786070769fac83e7b8ef790b57c8d8cbf8853",
-   "sha256": "0lgwixznvrmgzkridbsmhxqdsgchs5k56vb8nmpmchgf08qvaiz2"
+   "commit": "c1a1b77ec0c7fff9ecf7122d10dcd16eebcd3829",
+   "sha256": "1gg3gxw5ks4fds7lgl9mqxyb2qjrdsdwyyc183nfz6aq0m4w91yb"
   },
   "stable": {
    "version": [
@@ -22532,15 +23160,15 @@
   "repo": "stardiviner/eldoc-overlay",
   "unstable": {
    "version": [
-    20200216,
-    546
+    20200328,
+    619
    ],
    "deps": [
     "inline-docs",
     "quick-peek"
    ],
-   "commit": "4dcd6644c7aee2565dd32c1f65e2d1fa4432ceb8",
-   "sha256": "0xnp937xpjvypz2cv0xsdc47g484qr7kbdjccdflgv2yn244dc37"
+   "commit": "ec318acb564ac5679285b51b7d979410d393fac9",
+   "sha256": "0dx1b9d7zyqcwsnhl18hyrkmrc0zy68zwhp81d43fw84gjb4jcx8"
   }
  },
  {
@@ -22596,14 +23224,14 @@
   "repo": "davidshepherd7/electric-operator",
   "unstable": {
    "version": [
-    20191005,
-    1109
+    20200410,
+    928
    ],
    "deps": [
     "dash"
    ],
-   "commit": "71d65e4abaef5e49a9e1b8fce706ce0296f9d5e2",
-   "sha256": "168ri3wahr6zjv2dvqc3jbqih2m4d0mfzp4gqw5mss000fqmx9ns"
+   "commit": "f8454905a147045f25ab03da7aa6406e4f20cc64",
+   "sha256": "1x087fry0yx5sk9vvgqv1zh7fkpgzvykl14fzns1920sxacgms68"
   },
   "stable": {
    "version": [
@@ -22750,28 +23378,28 @@
   "repo": "fasheng/elfeed-protocol",
   "unstable": {
    "version": [
-    20200301,
-    236
+    20200426,
+    1143
    ],
    "deps": [
     "cl-lib",
     "elfeed"
    ],
-   "commit": "8f5cdb32c7d9f53427086fd8309c6c72d0bd9e79",
-   "sha256": "0brc185y8gb34xci5cv3g5i9s0gzrglkkbyxck5zk36icbh6wm3k"
+   "commit": "294b0d70f2cb85d5563019343f14c64938ae4b07",
+   "sha256": "0bm6vn61awwa4yd97idjqbbwp3ypz11n5w9mswg5yivhg4kc82sm"
   },
   "stable": {
    "version": [
     0,
     7,
-    3
+    5
    ],
    "deps": [
     "cl-lib",
     "elfeed"
    ],
-   "commit": "7048b8e3f55d6c8a9508d34b86f7a3434cda8e30",
-   "sha256": "0rg2nczzzbljmm3kkh5cnvj3ji0shrhwxw46lg3h93dp1nja9lzz"
+   "commit": "bffe74f0f7d7126691f6a9dd9eadf8714545dfe0",
+   "sha256": "16cmm59lwkgq0yj0pg9sn46afvqqjjx06xv5sc96vgwvn1n0lfi7"
   }
  },
  {
@@ -22782,28 +23410,28 @@
   "repo": "sp1ff/elfeed-score",
   "unstable": {
    "version": [
-    20200222,
-    7
+    20200328,
+    1855
    ],
    "deps": [
     "cl-lib",
     "elfeed"
    ],
-   "commit": "f14c0526676dd90be62b6aa086462047f7ac2da0",
-   "sha256": "099ch2jlj0fxn3d2v6z9rymkqbkrm3xp0bz4zkqbm54qcvdwib79"
+   "commit": "916c47b3590b2ff3c5075dcc1def4b36a4b14947",
+   "sha256": "1vhchbyy3c79cgvdz12wnryklr5g1bwh02d604zj2wca3b0199w4"
   },
   "stable": {
    "version": [
     0,
-    3,
-    0
+    4,
+    4
    ],
    "deps": [
     "cl-lib",
     "elfeed"
    ],
-   "commit": "f14c0526676dd90be62b6aa086462047f7ac2da0",
-   "sha256": "099ch2jlj0fxn3d2v6z9rymkqbkrm3xp0bz4zkqbm54qcvdwib79"
+   "commit": "916c47b3590b2ff3c5075dcc1def4b36a4b14947",
+   "sha256": "1vhchbyy3c79cgvdz12wnryklr5g1bwh02d604zj2wca3b0199w4"
   }
  },
  {
@@ -22924,11 +23552,11 @@
   "repo": "xuchunyang/elisp-demos",
   "unstable": {
    "version": [
-    20200219,
-    2102
+    20200329,
+    2310
    ],
-   "commit": "1d3b349f90dc6572a90d49ee247c43a4ba64252e",
-   "sha256": "0jvphz7ql4wbcj88w9igcgid4mjn7qysqgp8jmp7aqaf9zfpl2bd"
+   "commit": "57dd4ae3e47ecca6cb9eee87328f159b3eb53702",
+   "sha256": "15cjv97240nnmjjbdx9iqz4qwxvbxxsyjllcjwbmkkbpv6x91b89"
   },
   "stable": {
    "version": [
@@ -22956,6 +23584,24 @@
   }
  },
  {
+  "ename": "elisp-depmap",
+  "commit": "8c86ca9b1ad39282f965d36ec2a8df807cc0ebb1",
+  "sha256": "08qjrc3vrn18apnb856qd2m0wzza8755fbh8ly9nh58dlbjhkkd7",
+  "fetcher": "github",
+  "repo": "mtekman/elisp-depmap.el",
+  "unstable": {
+   "version": [
+    20200413,
+    1215
+   ],
+   "deps": [
+    "dash"
+   ],
+   "commit": "e47616c968dd82e30cb10961452e2b46c7900163",
+   "sha256": "1jpqdi15lvyd48jsbndlallnjc8bkmv0mxwyf51m483vz9v8nn2i"
+  }
+ },
+ {
   "ename": "elisp-docstring-mode",
   "commit": "855ea20024b606314f8590129259747cac0bcc97",
   "sha256": "0mdh3ikn6zfd3fbmifvivqih2fsijvlzalljdvm32crs9cy6fa96",
@@ -22993,24 +23639,28 @@
   "repo": "gonewest818/elisp-lint",
   "unstable": {
    "version": [
-    20200217,
-    38
+    20200324,
+    2217
    ],
    "deps": [
     "dash",
     "package-lint"
    ],
-   "commit": "7a3866326631ba1ba8f4cd7a6cfd03c467c32aae",
-   "sha256": "1ldyv0c21dvl362kj566q8gd84gqq8g558slxyl73cf651q0nr84"
+   "commit": "35a3fcc3131c243206fa914b8562cda771eab8c5",
+   "sha256": "09ibaq3mjnw3vm1rwrljdcgybxly2fk9gjdim39s9fpgar4ys12p"
   },
   "stable": {
    "version": [
     0,
-    3,
+    4,
     0
    ],
-   "commit": "d4dc13addde8cacd7660efcb369af5e54a547114",
-   "sha256": "1zyy8dj11sn74wq86hibp17a1zbps2pv26ncn8fh8wvsfy1vdfif"
+   "deps": [
+    "dash",
+    "package-lint"
+   ],
+   "commit": "2b645266be8010a6a49c6d0ebf6a3ad5bd290ff4",
+   "sha256": "1gg9ik0x67cnldzsclp45i7gf190y9pxl11k3grdkrkqjiph1375"
   }
  },
  {
@@ -23069,25 +23719,25 @@
   "repo": "purcell/elisp-slime-nav",
   "unstable": {
    "version": [
-    20200129,
-    2057
+    20200304,
+    2201
    ],
    "deps": [
     "cl-lib"
    ],
-   "commit": "fea3bedf6383fea8370a9484a5610759c25055f9",
-   "sha256": "1mxs519gqax1fnaf5lirg69jrv4hj5a39hf7lzai7hyhcf9slzc1"
+   "commit": "9ab52362600af9f97f1590f05a295538025170b3",
+   "sha256": "08k4zlawjkb0ldn4lgrhih8nzln398x7dwzpipqfyrmp0xziywma"
   },
   "stable": {
    "version": [
     0,
-    9
+    10
    ],
    "deps": [
     "cl-lib"
    ],
-   "commit": "0e96d9f1f0d334f09414b509d44d5c000b51f432",
-   "sha256": "11vyy0bvzbs1h1kggikrvhd658j7c730w0pdp6qkm60rigvfi1ih"
+   "commit": "9ab52362600af9f97f1590f05a295538025170b3",
+   "sha256": "08k4zlawjkb0ldn4lgrhih8nzln398x7dwzpipqfyrmp0xziywma"
   }
  },
  {
@@ -23177,8 +23827,8 @@
   "repo": "jcollard/elm-mode",
   "unstable": {
    "version": [
-    20200301,
-    19
+    20200406,
+    214
    ],
    "deps": [
     "dash",
@@ -23186,8 +23836,8 @@
     "reformatter",
     "s"
    ],
-   "commit": "3f042ec430e7d915bfdca21d4f4d6201a882434b",
-   "sha256": "16b66kv49bslnnhya2a9q0zshcwx58017sy0ab451j5zsq42v2qh"
+   "commit": "7782be0814b52f7c35a09b21a4839c1502a4707f",
+   "sha256": "0g3mxp80hfjwf3adaslwykk01w5fh5y6nwj4687wbm5dldvhr42i"
   },
   "stable": {
    "version": [
@@ -23515,8 +24165,8 @@
   "repo": "jorgenschaefer/elpy",
   "unstable": {
    "version": [
-    20200202,
-    2031
+    20200329,
+    1830
    ],
    "deps": [
     "company",
@@ -23525,13 +24175,13 @@
     "s",
     "yasnippet"
    ],
-   "commit": "b25ab8c195472cf152fed80c212750b33837025e",
-   "sha256": "1nidig1yxr1fbwkfhpgd5zyqkd4mi5bp5h9bg17azs79xqprkrfx"
+   "commit": "816061cf16d53448d95612380855e7ccaf59a417",
+   "sha256": "0fjz3y0yh2hfmx0470jcyni1glc6m3bm5gh20iakvlwxf4wa8801"
   },
   "stable": {
    "version": [
     1,
-    32,
+    33,
     0
    ],
    "deps": [
@@ -23541,8 +24191,8 @@
     "s",
     "yasnippet"
    ],
-   "commit": "d54e78edad91660caaabd19e4a6e416889ccfe31",
-   "sha256": "0f00mdnzx6xqwni86rgvaa6sfkwyh62xfbwz8qsar15j0j6vc2dj"
+   "commit": "b69ae7652e5efdda2e3dc650cd425b987ddd65ad",
+   "sha256": "1g9x67dvg5al6i9hnjcyi0zjsz71iv2jbinpzj7gcx77d0dn3cpk"
   }
  },
  {
@@ -23714,15 +24364,15 @@
   "repo": "wamei/elscreen-multi-term",
   "unstable": {
    "version": [
-    20151022,
-    233
+    20200417,
+    821
    ],
    "deps": [
     "elscreen",
     "multi-term"
    ],
-   "commit": "7b6048a0dd80f69460a62bbc6f1af8856141a5ea",
-   "sha256": "1cninrbgxzg0gykkpjx0i8pk2yc7sgr2kliqd35lgcxz2q4jlr51"
+   "commit": "4ea89bae0444d9d4377515929f76cb3e98140f1f",
+   "sha256": "0j5dpikjxwn1679ndy894g55qm9hs0n65lqyxx483h584nqxsdkg"
   }
  },
  {
@@ -23828,11 +24478,11 @@
   "repo": "emacscollective/elx",
   "unstable": {
    "version": [
-    20191226,
-    1614
+    20200422,
+    1352
    ],
-   "commit": "4cbdcd79524db4a71abbf761a3945617086f5d09",
-   "sha256": "1gb2sh2mcx8va8lgyc46pch9fswfm761935806myi9fl1v67ayk6"
+   "commit": "d5ebd8ab6439fea3dcae0bcaece6e914f4ee1f6c",
+   "sha256": "1h1dx6dpwr4cml2a57mz3lq4f746cja007ckrpk3vii9ap413hf8"
   },
   "stable": {
    "version": [
@@ -24041,17 +24691,17 @@
  },
  {
   "ename": "emamux",
-  "commit": "6de1ed3dfccb9f7e7b8586e8334af472a4988840",
-  "sha256": "1pg0gzi8rn0yafssrsiqdyj5dbfy984srq1r4dpp8p3bi3n0fkfz",
+  "commit": "2a2670edb1155f02d1cbe2600db84a82c8f3398b",
+  "sha256": "0y75dnaz65fwk8d9l6n1bkbj32rcmzaf58fhj686b1n55bsz3xz6",
   "fetcher": "github",
-  "repo": "syohex/emacs-emamux",
+  "repo": "emacsorphanage/emamux",
   "unstable": {
    "version": [
-    20170227,
-    337
+    20200315,
+    1220
    ],
-   "commit": "39f57786b2cdd3844888df42d71c7bd251f07158",
-   "sha256": "184669qynz1m93s9nv5pdc8m4bnvqa56wz472nsq4xhixz44jjsv"
+   "commit": "6172131d78038f0b1490e24bac60534bf4ad3b30",
+   "sha256": "1cv9b15lj2663aik9s0s2bj05vv4zfzz2w7wjbj6s5vlnf5byfnl"
   },
   "stable": {
    "version": [
@@ -24064,10 +24714,10 @@
  },
  {
   "ename": "emamux-ruby-test",
-  "commit": "f11759710881bdf5a77bd309acb03a6699cc7fd6",
-  "sha256": "1l1hp2dggjlc287qkfyj21w9lri4agh91g5x707qqq8nicdlv3xm",
+  "commit": "2a2670edb1155f02d1cbe2600db84a82c8f3398b",
+  "sha256": "1lk2fpqnmzh1gsbp9pkh36lgr76sf2mbf12577xs4scia7xr29bc",
   "fetcher": "github",
-  "repo": "syohex/emamux-ruby-test",
+  "repo": "emacsorphanage/emamux-ruby-test",
   "unstable": {
    "version": [
     20130812,
@@ -24532,6 +25182,38 @@
   }
  },
  {
+  "ename": "emoji-github",
+  "commit": "64d18d6bb06d2d747b101845d3ed298787abaec0",
+  "sha256": "09b9kyx1zzi1i2m4isvnhb5526589vscv81xg35pgxwv6ilkky4z",
+  "fetcher": "github",
+  "repo": "jcs-elpa/emoji-github",
+  "unstable": {
+   "version": [
+    20200323,
+    233
+   ],
+   "deps": [
+    "emojify",
+    "request"
+   ],
+   "commit": "43f63c0dd64aae6c8054c2dad617bf810abdfadd",
+   "sha256": "0wcxsy3q8912kf87bn3mi2si010i5dd99yinf23nhb2nqvqgiw94"
+  },
+  "stable": {
+   "version": [
+    0,
+    2,
+    2
+   ],
+   "deps": [
+    "emojify",
+    "request"
+   ],
+   "commit": "5d1512fb30c65018a507ef549d92c668d8221da3",
+   "sha256": "00dj0kfllyhiklylj4cjcv64zjaxs6a4cc79f8pppmzvf1spivvz"
+  }
+ },
+ {
   "ename": "emoji-recall",
   "commit": "8f03b34d3e8e5edf9888c71b6e4bd2e1a5aec016",
   "sha256": "06cahk2h6q3vlw2p4jmjrpzycxpm884p31yhbp77lagkqhs2fzbk",
@@ -24554,15 +25236,15 @@
   "repo": "iqbalansari/emacs-emojify",
   "unstable": {
    "version": [
-    20191017,
-    420
+    20200309,
+    553
    ],
    "deps": [
     "ht",
     "seq"
    ],
-   "commit": "4c84ef9502988b52b1e296630bcee7f7c62cfc02",
-   "sha256": "11v7br4j1yx1hqqlv2phkxn3jx2qa3vrb4cq61ymfdx82v8j78jj"
+   "commit": "e05217ee668db3ffb537528408ce8004fadb75c0",
+   "sha256": "1blhvzrvjabh81si1h9iznldfp6mkchd31ig68byqfjvi6d34nxq"
   },
   "stable": {
    "version": [
@@ -24618,8 +25300,8 @@
   "repo": "Wilfred/emacs-refactor",
   "unstable": {
    "version": [
-    20191122,
-    1911
+    20200420,
+    721
    ],
    "deps": [
     "cl-lib",
@@ -24632,8 +25314,8 @@
     "projectile",
     "s"
    ],
-   "commit": "8038ab88a000a835ca73af2068b1ef536bc7e33c",
-   "sha256": "1d27y6chxjf4k9cgsk93xjf1wq9lrv0516lpnqqlp2rdd7m3nv7y"
+   "commit": "a8f6ab823453decf43f0764d02e554d05009a631",
+   "sha256": "0d1qd9jzmh0vg1in6q1xjlwq85sgds5lfvyg2wi6z8ci5a7m3ahs"
   },
   "stable": {
    "version": [
@@ -24805,25 +25487,6 @@
   }
  },
  {
-  "ename": "envdir",
-  "commit": "79c1497f709f6d23e4886359e09ab0456ed61777",
-  "sha256": "085bfm4w7flrv8jvzdnzbdg3j5n29xfzbs1wlrr29mg9dja6s8g8",
-  "fetcher": "github",
-  "repo": "proofit404/envdir-mode",
-  "unstable": {
-   "version": [
-    20160221,
-    1923
-   ],
-   "deps": [
-    "dash",
-    "f"
-   ],
-   "commit": "f29346c55ccf11d8c75628edc6d430ed63c36917",
-   "sha256": "1jyhr9gv3d0rxv5iks2g9x6xbxqv1bvf1fnih96h4pgsfxz8wrp6"
-  }
- },
- {
   "ename": "eopengrok",
   "commit": "2b87ea158a6fdbc6b4e40fd7c0f6814d135f8545",
   "sha256": "0756x78113286hwk1i1m5s8xq04gh7zxb4fkmw58lg2ssff8q6av",
@@ -24917,15 +25580,15 @@
   "repo": "emacscollective/epkg",
   "unstable": {
    "version": [
-    20191228,
-    2011
+    20200309,
+    546
    ],
    "deps": [
     "closql",
     "dash"
    ],
-   "commit": "075f6afa81f7a83a35088b699ed44d6029192198",
-   "sha256": "0g1ggna56w3c1qdqi3g1aq4gz6hdpacwc4hd31bqa03gydr8ghlg"
+   "commit": "37f06fd2daca6a7afa163ceb0ccccd450af85e68",
+   "sha256": "18prjspaz4wlfrk2zzzzpxs4z8dkxxx68sbq2b4bdgg34fgnj02z"
   },
   "stable": {
    "version": [
@@ -25093,14 +25756,14 @@
   "repo": "atomontage/erc-crypt",
   "unstable": {
    "version": [
-    20200103,
-    1329
+    20200424,
+    2024
    ],
    "deps": [
     "cl-lib"
    ],
-   "commit": "26e16e0fc3af78e70b095f47995d2a368f8de61d",
-   "sha256": "197sj97j7mc9jwhamra4narnypdg3xpxy5rb95an5gqqzhy9bccm"
+   "commit": "ba36632666ea0a631d23b6fc54c16ada55673b02",
+   "sha256": "1q7bia9l672dfa0q4mrhv2cnxk2c8vhpl7n649zw7zwfpkqnzh70"
   },
   "stable": {
    "version": [
@@ -25122,20 +25785,20 @@
   "repo": "leathekd/erc-hl-nicks",
   "unstable": {
    "version": [
-    20180415,
-    1946
+    20200317,
+    16
    ],
-   "commit": "756c4438a8245ccd3e389bf6c9850ee8453783ec",
-   "sha256": "0c82rxpl5v7bbxirf1ksg06xv5xcddh8nkrpj7i6nvfarwdfnk4f"
+   "commit": "a67fe361c8f2aa20fc235447fbb898f424b51439",
+   "sha256": "0k57scxa8rm859fqsm8srhps7rlq06jzazhjbwnadzrh8i5fyvra"
   },
   "stable": {
    "version": [
     1,
     3,
-    3
+    4
    ],
-   "commit": "756c4438a8245ccd3e389bf6c9850ee8453783ec",
-   "sha256": "0c82rxpl5v7bbxirf1ksg06xv5xcddh8nkrpj7i6nvfarwdfnk4f"
+   "commit": "a67fe361c8f2aa20fc235447fbb898f424b51439",
+   "sha256": "0k57scxa8rm859fqsm8srhps7rlq06jzazhjbwnadzrh8i5fyvra"
   }
  },
  {
@@ -25460,15 +26123,15 @@
   "repo": "ergoemacs/ergoemacs-mode",
   "unstable": {
    "version": [
-    20190527,
-    348
+    20200319,
+    1250
    ],
    "deps": [
     "cl-lib",
     "undo-tree"
    ],
-   "commit": "7d3656541a00cc04ba4cefa31c0d127adb5a260a",
-   "sha256": "1rw237xiw5nz736l5jdmlsa11l14qvzdac0wqymi80a0rfwqikga"
+   "commit": "4a6ba06d9c618e9380d059fa25ed677b45d134a7",
+   "sha256": "0wgdzxla6kz1zfc3vfd8wc2j40kq023z7b83m2k435hcqdffark8"
   },
   "stable": {
    "version": [
@@ -25512,21 +26175,21 @@
   "repo": "erlang/otp",
   "unstable": {
    "version": [
-    20200220,
-    2206
+    20200313,
+    1030
    ],
-   "commit": "2839ecb8fc1ba424b863867b2086127fad839d28",
-   "sha256": "0r7cljx0f1c0mbzgvny7aka0zsyvmnryvzly9qfx0psgr06x8qfw"
+   "commit": "7ec0ad6ed076b76de8cd52e28445f324a5f2853a",
+   "sha256": "0r0sn8vfmgamf3mnjjkkv9y0r8a6xkn5f5axw1av0liiv95kgrm8"
   },
   "stable": {
    "version": [
     23,
     0,
     -1,
-    1
+    3
    ],
-   "commit": "2b823b90b7dbd56aae3a3fbdcb182f9fd5127a59",
-   "sha256": "00dsbnii0w56jmbzzn43j18rprmc4d2ckd8ad0kzc6cb856mxs9s"
+   "commit": "9f17d424ada5353db1e5b31296484d95679f8ca8",
+   "sha256": "0012fbf9a1whq2bzii73m645bvf4vww403fcd54j9k27916vcfx5"
   }
  },
  {
@@ -25668,8 +26331,8 @@
   "repo": "rejeep/ert-runner.el",
   "unstable": {
    "version": [
-    20180831,
-    1145
+    20200321,
+    2158
    ],
    "deps": [
     "ansi",
@@ -25679,13 +26342,13 @@
     "s",
     "shut-up"
    ],
-   "commit": "90b8fdd5970ef76a4649be60003b37f82cdc1a65",
-   "sha256": "04nxmyzncacj2wmzd84vv9wkkr2dk9lcb10dvygqmg3p1gadnwzz"
+   "commit": "1829f05c46b0baaae160d900f89c8881f4fcdbcc",
+   "sha256": "08gygn9fjank5gpi4v6ynrkn0jbknxbwsn7md4p9ndygdbmnkf98"
   },
   "stable": {
    "version": [
     0,
-    7,
+    8,
     0
    ],
    "deps": [
@@ -25696,8 +26359,8 @@
     "s",
     "shut-up"
    ],
-   "commit": "00056c37817f15b1870ccedd13cedf102e3194dd",
-   "sha256": "0rdgdslspzb4s0n4a68hnwfm8vm8baasa8nzrdinf0nryn7rrhbf"
+   "commit": "1829f05c46b0baaae160d900f89c8881f4fcdbcc",
+   "sha256": "08gygn9fjank5gpi4v6ynrkn0jbknxbwsn7md4p9ndygdbmnkf98"
   }
  },
  {
@@ -26048,11 +26711,11 @@
   "repo": "zwild/eshell-prompt-extras",
   "unstable": {
    "version": [
-    20191104,
-    1230
+    20200319,
+    322
    ],
-   "commit": "356a540f9365b2f37f8a8cfb9c0e0e1994d12f4a",
-   "sha256": "0gb07mns23dgqqr6qfy7d6ndizy15sqgbgfaig6k5xbjnwi02v9g"
+   "commit": "1801b3aeccf1363f138fe01ee99d892d10fc2a07",
+   "sha256": "1dgfd9yf4ikn5whqpxyliyp21vs1h852wjfqy5lmxzhnzic1xsi1"
   },
   "stable": {
    "version": [
@@ -26172,8 +26835,8 @@
    "deps": [
     "dash"
    ],
-   "commit": "98c669e3653bf94c236c54946c6faba7f782ef0d",
-   "sha256": "1v4s3srn6cc4rbb8hg3wri8c3vnijkyz582qmpyf1vd44mldfq4x"
+   "commit": "0c431141be9a408c28aead152ea454df0804364f",
+   "sha256": "0yyssbgfi3fg3dbfrzsy9sms42z87apk6amql8pijwzb3b735jc2"
   },
   "stable": {
    "version": [
@@ -26264,11 +26927,11 @@
   "repo": "walseb/espy",
   "unstable": {
    "version": [
-    20180929,
-    1602
+    20200317,
+    2333
    ],
-   "commit": "b64a99185c96c20d4d4caa3daf1f5510b039bd6a",
-   "sha256": "1i8wc55rihah39i95w0rryp5scq8v3zyk4cayw5pz8g5bbl8w4zb"
+   "commit": "2c01be937a5e5bde62921684a0b27300705fb4e0",
+   "sha256": "1nnnr184y29g1svxqxlqyg5irzrf1xmay4p78jfv8v07sisl90kp"
   }
  },
  {
@@ -26316,14 +26979,14 @@
   "repo": "emacs-ess/ESS",
   "unstable": {
    "version": [
-    20200226,
-    2140
+    20200419,
+    1920
    ],
    "deps": [
     "julia-mode"
    ],
-   "commit": "a2be8cb97c6fff13fc28170d6359f835b8b562a5",
-   "sha256": "1jj040lng03jmp8ddn5fi8cg2v6fwxxv9ikispx3n03va1mrzf7m"
+   "commit": "007fa4b5192154db3d90e6e861f96193c1b145f5",
+   "sha256": "12kj006yxl84fav2ryxx6ajk284rskgy6imi9wjpfl8qqfcykcm0"
   },
   "stable": {
    "version": [
@@ -26458,14 +27121,14 @@
   "repo": "jschaf/esup",
   "unstable": {
    "version": [
-    20200130,
-    2034
+    20200318,
+    2256
    ],
    "deps": [
     "cl-lib"
    ],
-   "commit": "4e5bf7d265c3b1484017fc0fd0ad50d2403c2bbe",
-   "sha256": "1jdsy5bqnmbai7kylidyfd0nla26apqvfl2f6vdvjs02hlr1w2s7"
+   "commit": "c9c95e245068d15d8e2732098af9a5d2bc8ec931",
+   "sha256": "0i4cwwvs5zs8g2ajrrkqgrpxzywsa255rc1g7a6bxzvg9hk77f4k"
   },
   "stable": {
    "version": [
@@ -26491,8 +27154,8 @@
     20171129,
     807
    ],
-   "commit": "5548ceba17deae0c3c6d0092672edc4de3c75ce3",
-   "sha256": "00vv8a75wdklygdyr4km9mc2ismxak69c45jmcny41xl44rp9x8m"
+   "commit": "193d199305e7abcb5ed795b9bc5434ded20ae60e",
+   "sha256": "1cbzdwfndz6pdmb3vzb6l2smxb2l47sncmkccya0nzlvvhz3p8c0"
   },
   "stable": {
    "version": [
@@ -26772,38 +27435,38 @@
   "repo": "emacs-evil/evil",
   "unstable": {
    "version": [
-    20200224,
-    914
+    20200417,
+    1238
    ],
    "deps": [
     "cl-lib",
     "goto-chg",
     "undo-tree"
    ],
-   "commit": "7c42ba4de086dc8f5b2d277c8d2806adc6b84279",
-   "sha256": "1pzznnibgk0x33m04064w2r0ksk26liynswa785nld4king70iq2"
+   "commit": "d243eae8649272799ec3864fde14c1164f036940",
+   "sha256": "0fpjcxyzql7fl904asxbff3gqdc1byhwn32i38r4zd4bqrqsqfw4"
   },
   "stable": {
    "version": [
     1,
-    12,
-    17
+    14,
+    0
    ],
    "deps": [
     "cl-lib",
     "goto-chg",
     "undo-tree"
    ],
-   "commit": "5b690258fcfc47ca1fed25f17e04356edc713925",
-   "sha256": "001ywnhjl0dmywc8vg8brsisx432kcfdgv6xksawbg1czw6j0y02"
+   "commit": "4dc63903d9688e2ce838a220b0e24d8f14a64c12",
+   "sha256": "17xrn3s6a4afmls8fw8nnxa1jq9dmj2qqrxa2vngh50hxpz8840p"
   }
  },
  {
   "ename": "evil-anzu",
-  "commit": "06b0609b56016d938b28d56d9eeb6305116b38af",
-  "sha256": "19cmc61l370mm4h2m6jw5pdcsvj4wcv9zpa8z7k1fjg57mwmmn70",
+  "commit": "2a2670edb1155f02d1cbe2600db84a82c8f3398b",
+  "sha256": "08cc33wjq5853c0hqwn30342ylkfldy7xg7yd2ak0apjxnz4qr40",
   "fetcher": "github",
-  "repo": "syohex/emacs-evil-anzu",
+  "repo": "emacsorphanage/evil-anzu",
   "unstable": {
    "version": [
     20170124,
@@ -26975,16 +27638,16 @@
   "repo": "emacs-evil/evil-collection",
   "unstable": {
    "version": [
-    20200219,
-    1042
+    20200426,
+    848
    ],
    "deps": [
     "annalist",
     "cl-lib",
     "evil"
    ],
-   "commit": "a478a95a8a3665e40bdae3bab2a0519db6c1f29c",
-   "sha256": "15ii5lw6hs4yyl22yyzfwzagdma2sman4rm5gq4m9773g4ava515"
+   "commit": "695e941d8ac59dc7534524e5cd27ced9490259a1",
+   "sha256": "0fdqxgkp0fl5862b15qxnl2njs97vznsydw5jm6hw8fq94a1crhn"
   },
   "stable": {
    "version": [
@@ -27057,15 +27720,15 @@
   "repo": "PythonNut/evil-easymotion",
   "unstable": {
    "version": [
-    20180114,
-    654
+    20200424,
+    135
    ],
    "deps": [
     "avy",
     "cl-lib"
    ],
-   "commit": "79c13ed3bce018ac09d358e642e5bd7025e93603",
-   "sha256": "0496dnbciq8gbivihas1y58gwd4nbfz767rr98zpwgkz8l2jvy73"
+   "commit": "f96c2ed38ddc07908db7c3c11bcd6285a3e8c2e9",
+   "sha256": "0xsva9bnlfwfmccm38qh3yvn4jr9za5rxqn4pwxbmhnx4rk47cch"
   }
  },
  {
@@ -27509,15 +28172,15 @@
   "repo": "emacs-evil/evil-magit",
   "unstable": {
    "version": [
-    20200226,
-    1347
+    20200409,
+    1909
    ],
    "deps": [
     "evil",
     "magit"
    ],
-   "commit": "ba0e59248f8d7f59de811ed2e1f2c565dd7da1ca",
-   "sha256": "1jy1nzjr8mxn4153qdcvk3s0cdy7xrim7jq2c6dzdqxjdprhj8nz"
+   "commit": "253c644807013fe92429acdef418748794b8f254",
+   "sha256": "08mh7phxsdb9w4dfs0pmr4l4fdzzr2rm88z2s8karfi5j5ik2ag5"
   },
   "stable": {
    "version": [
@@ -27577,8 +28240,8 @@
    "deps": [
     "evil"
    ],
-   "commit": "11d98debf8b051b10068137668eb54c2fede0e30",
-   "sha256": "1jppiqz1mlmz9wnxmaymg15sz6j59kghhrv95r6hkv90zwdvbqvw"
+   "commit": "076ace3ee22a61890f375ae492c634f71ce84301",
+   "sha256": "0d4xdrqa8ylh67wgyywxsh0crm06y31babc8sksrpwxlr12xyaww"
   },
   "stable": {
    "version": [
@@ -27706,11 +28369,11 @@
   "repo": "redguardtoo/evil-nerd-commenter",
   "unstable": {
    "version": [
-    20200222,
-    901
+    20200417,
+    59
    ],
-   "commit": "fa40dab8d2f010db17e1e62dfd245c1504d0542f",
-   "sha256": "0dn712k54qsxy82jqbqip77k5i3zv8m7afj2yi39zqx28iqvic0z"
+   "commit": "1bd2de52011c39777a3e8779b14cee2790dc873b",
+   "sha256": "0h8hzqjh6qq4fj0imrb5ic5m4zn3ig6s3b7b2x9r6ig9m15jpg6n"
   },
   "stable": {
    "version": [
@@ -28027,26 +28690,26 @@
   "repo": "porras/evil-ruby-text-objects",
   "unstable": {
    "version": [
-    20190821,
-    1527
+    20200323,
+    1552
    ],
    "deps": [
     "evil"
    ],
-   "commit": "0ddc4c256a0c778fa65d75b707f20df874e5b5fa",
-   "sha256": "1ppwcyfy5dssswfzd16i1rx14si5r80mdvrnfwaf9jr3c2ws23lg"
+   "commit": "32983d91be83ed903b6ef9655e00f69beed2572c",
+   "sha256": "0qha7xxqxh7c6n6r26r49y85inxcbr4nvxlv2zzj0qkifw7f9ana"
   },
   "stable": {
    "version": [
     0,
-    1,
+    2,
     0
    ],
    "deps": [
     "evil"
    ],
-   "commit": "93cfc5ae3da0ffb19319e301734c51ecb43506b5",
-   "sha256": "0jizvchrisrdc7bl6xfc59axyjz1dmr6hi36jyv1bdwyayj2ifqi"
+   "commit": "e69abb6aad7687222cb47a8a64dc4dd66ef96a9e",
+   "sha256": "0m1ilv4w4rlg8005cqp5l5dwdhqnrf1mb44qmvd8qwkl2rvslsbs"
   }
  },
  {
@@ -28118,15 +28781,15 @@
   "repo": "hlissner/evil-snipe",
   "unstable": {
    "version": [
-    20200103,
-    923
+    20200422,
+    519
    ],
    "deps": [
     "cl-lib",
     "evil"
    ],
-   "commit": "3ec8adfd4990f95fa0fab2b7019ead3596857673",
-   "sha256": "0q689f52saky3rfap351n4bkjn0kpg7xkjias926affqpghywb1r"
+   "commit": "2ba6353bb9253dbbc4193f1d35403e7dcc1317b1",
+   "sha256": "1sqbwg41by88qq7npsw7w9q3zmfk5adzqpqh2m84zk6fd64mc6h2"
   },
   "stable": {
    "version": [
@@ -28187,8 +28850,8 @@
     "evil",
     "string-inflection"
    ],
-   "commit": "008b74a9b2994abfb4ff5b679b8a5a26fd45e98a",
-   "sha256": "0lwwrd9n0ha2xn5a053s8a1l05zya4smf61yc5c1s4fqv0xai9fj"
+   "commit": "6913de02a210487c063cd63ecf27b17a24797870",
+   "sha256": "1wyd903yvp8lxbhavsr4grn79hkxcsz71mcvy3hrvnf7ifhw514a"
   },
   "stable": {
    "version": [
@@ -28303,26 +28966,26 @@
   "repo": "emacs-evil/evil",
   "unstable": {
    "version": [
-    20200129,
-    815
+    20200304,
+    911
    ],
    "deps": [
     "evil"
    ],
-   "commit": "7c42ba4de086dc8f5b2d277c8d2806adc6b84279",
-   "sha256": "1pzznnibgk0x33m04064w2r0ksk26liynswa785nld4king70iq2"
+   "commit": "d243eae8649272799ec3864fde14c1164f036940",
+   "sha256": "0fpjcxyzql7fl904asxbff3gqdc1byhwn32i38r4zd4bqrqsqfw4"
   },
   "stable": {
    "version": [
     1,
-    12,
-    17
+    14,
+    0
    ],
    "deps": [
     "evil"
    ],
-   "commit": "5b690258fcfc47ca1fed25f17e04356edc713925",
-   "sha256": "001ywnhjl0dmywc8vg8brsisx432kcfdgv6xksawbg1czw6j0y02"
+   "commit": "4dc63903d9688e2ce838a220b0e24d8f14a64c12",
+   "sha256": "17xrn3s6a4afmls8fw8nnxa1jq9dmj2qqrxa2vngh50hxpz8840p"
   }
  },
  {
@@ -28426,10 +29089,10 @@
  },
  {
   "ename": "evil-textobj-line",
-  "commit": "24bf766525ffdaded519ac9f78ae89d8ab5108ef",
-  "sha256": "158w524qzj0f03ihid2fisxyf1g7vwpv3ckfkzi7c2l549jnsdsa",
+  "commit": "2a2670edb1155f02d1cbe2600db84a82c8f3398b",
+  "sha256": "1jwhg56nhf5iv7zbfdzi6ygikc49bnrqh1r5kd98n5wxz9vz2h75",
   "fetcher": "github",
-  "repo": "syohex/evil-textobj-line",
+  "repo": "emacsorphanage/evil-textobj-line",
   "unstable": {
    "version": [
     20150729,
@@ -28678,11 +29341,39 @@
   "repo": "jjzmajic/ewal",
   "unstable": {
    "version": [
-    20200301,
-    823
+    20200305,
+    230
+   ],
+   "commit": "4ecc355dae9c7d648cd2874e01a15dfa02b9350d",
+   "sha256": "1v444nfrzz0lkybrgfics5kc8gncbvvs23qlq1pkz7ann6q84ip0"
+  },
+  "stable": {
+   "version": [
+    0,
+    2,
+    1
    ],
    "commit": "732a2f4abb480f9f5a3249af822d8eb1e90324e3",
    "sha256": "09dgs0g5hcf5hris8i1w6w7wxarzmsagyc3l50rflvxy3djhlbkd"
+  }
+ },
+ {
+  "ename": "ewal-doom-themes",
+  "commit": "5f59228fa54a9733f549c1ba531cd90d4350fb62",
+  "sha256": "14blxk8dkr0hkhf1hd75xk0zzx6qxavynymhbwbvbf3m0mp64x6l",
+  "fetcher": "gitlab",
+  "repo": "jjzmajic/ewal",
+  "unstable": {
+   "version": [
+    20200301,
+    839
+   ],
+   "deps": [
+    "doom-themes",
+    "ewal"
+   ],
+   "commit": "4ecc355dae9c7d648cd2874e01a15dfa02b9350d",
+   "sha256": "1v444nfrzz0lkybrgfics5kc8gncbvvs23qlq1pkz7ann6q84ip0"
   },
   "stable": {
    "version": [
@@ -28690,6 +29381,10 @@
     2,
     1
    ],
+   "deps": [
+    "doom-themes",
+    "ewal"
+   ],
    "commit": "732a2f4abb480f9f5a3249af822d8eb1e90324e3",
    "sha256": "09dgs0g5hcf5hris8i1w6w7wxarzmsagyc3l50rflvxy3djhlbkd"
   }
@@ -28708,8 +29403,8 @@
    "deps": [
     "ewal"
    ],
-   "commit": "732a2f4abb480f9f5a3249af822d8eb1e90324e3",
-   "sha256": "09dgs0g5hcf5hris8i1w6w7wxarzmsagyc3l50rflvxy3djhlbkd"
+   "commit": "4ecc355dae9c7d648cd2874e01a15dfa02b9350d",
+   "sha256": "1v444nfrzz0lkybrgfics5kc8gncbvvs23qlq1pkz7ann6q84ip0"
   },
   "stable": {
    "version": [
@@ -28739,8 +29434,8 @@
     "ewal",
     "spacemacs-theme"
    ],
-   "commit": "732a2f4abb480f9f5a3249af822d8eb1e90324e3",
-   "sha256": "09dgs0g5hcf5hris8i1w6w7wxarzmsagyc3l50rflvxy3djhlbkd"
+   "commit": "4ecc355dae9c7d648cd2874e01a15dfa02b9350d",
+   "sha256": "1v444nfrzz0lkybrgfics5kc8gncbvvs23qlq1pkz7ann6q84ip0"
   },
   "stable": {
    "version": [
@@ -28817,8 +29512,8 @@
    "deps": [
     "evil"
    ],
-   "commit": "88266fa7fcfbef704032f671b94f756f2f98bd4f",
-   "sha256": "0nmm7pvs81429a4zpal6aidfd1n58yavv3skscrav5r0wnlbz773"
+   "commit": "d5daea30176d48e74c9d063ac9bfc240ebeb97d0",
+   "sha256": "18mb7ik15yygfyjr5y2awbn5lrr3b9z1f31gnfslvrlav2nl1m7d"
   },
   "stable": {
    "version": [
@@ -28947,11 +29642,11 @@
   "repo": "magnars/expand-region.el",
   "unstable": {
    "version": [
-    20200224,
-    1501
+    20200304,
+    1839
    ],
-   "commit": "1603d01fbfbef0d73ac940f7847c7e0b9b978093",
-   "sha256": "0apwvqbv04pgl682ja96l6cchfflr83s2h4p7vzpjc05h8pc0znr"
+   "commit": "ea6b4cbb9985ddae532bd2faf9bb00570c9f2781",
+   "sha256": "1pc3nnyb6cy4x6xnm25kdhmjmfm2rar7cnxsfck2wg5nm11p0klm"
   },
   "stable": {
    "version": [
@@ -29031,11 +29726,11 @@
   "repo": "extemporelang/extempore-emacs-mode",
   "unstable": {
    "version": [
-    20200213,
-    1249
+    20200408,
+    2253
    ],
-   "commit": "d73c1af831584311d8ad8b45b2ec14cac6eb6edb",
-   "sha256": "1wm4qavrf9b76309cmmw0jf5hg7j3cym5m5syjhv9lh2hlyl358q"
+   "commit": "09518ae6650d7be33a4633a4c0f31b7130d04c6e",
+   "sha256": "0hfza9lzdsz94gxhmzyp9fwviscv19rmnjgd0q613faayn11sjsp"
   }
  },
  {
@@ -29152,8 +29847,8 @@
     "exwm",
     "exwm-firefox-core"
    ],
-   "commit": "9407977034baf5f8b1e43c07ed8728f8f42d70d8",
-   "sha256": "1fha5fxjylgylmbr6fn5cz9py9csh4na9h7vljvapkrazwkpvbsy"
+   "commit": "14643ee53a506ddcb5d2e06cb9f1be7310cd00b1",
+   "sha256": "12rhsy5f662maip1sma0vi364xb8swb7g59r4dmafjv3b52gxik8"
   }
  },
  {
@@ -29322,11 +30017,11 @@
   "repo": "thblt/eziam-theme-emacs",
   "unstable": {
    "version": [
-    20200124,
-    1045
+    20200327,
+    1810
    ],
-   "commit": "9ae0fdb2ad751044b3bd60aee08523d460db2bd6",
-   "sha256": "0gvf7g5s7wrchwbh0bnr0ryx9zaw56mx09bd4f32793lpv9sxyi6"
+   "commit": "7a585de01b6fee081eaa167b09d7e12d02cf4149",
+   "sha256": "11v8rbaiaihpky1m7azbflz77mwg76nbg8hsgybs86wyjk5797dv"
   },
   "stable": {
    "version": [
@@ -29518,11 +30213,11 @@
   "repo": "WJCFerguson/emacs-faff-theme",
   "unstable": {
    "version": [
-    20191028,
-    1846
+    20200304,
+    1414
    ],
-   "commit": "a16c4b36ef50731a83a57c1c6341a49e9897d225",
-   "sha256": "10850175c6jll4grsdjl180hs3rd72yajq55x6fz3a8mm8v5fqk9"
+   "commit": "3a2f4b567de490ee7af32ecca46de741e7fd7d6a",
+   "sha256": "0h3i61md4w6zsjarqan0s3p3kxz5af6ic3fww4ly6s8q1nv57xsc"
   },
   "stable": {
    "version": [
@@ -29634,6 +30329,29 @@
   }
  },
  {
+  "ename": "fantom-theme",
+  "commit": "e5cb6a9f6a657b72a00a39c118d90416ae2f343c",
+  "sha256": "18p82f82hr1sx8w9lmjxr3hvvy4ddxvyd245v32vjay5zc730y33",
+  "fetcher": "github",
+  "repo": "adsva/fantom-emacs-theme",
+  "unstable": {
+   "version": [
+    20200328,
+    604
+   ],
+   "commit": "2c1c7fd53086c2ff86ee0961642c3b58e2343c08",
+   "sha256": "1clvpjsf241fdkk3915zjqb4wivsjsvc9phf633pzbvi61qwhaap"
+  },
+  "stable": {
+   "version": [
+    1,
+    0
+   ],
+   "commit": "70cef2886ca90c93bcafc869bcc77bad1e390c33",
+   "sha256": "1q15wx53zq6b9f567anrfmfpj04f3r6wz28w4237f9lg62yqhm9x"
+  }
+ },
+ {
   "ename": "farmhouse-theme",
   "commit": "3b0d427db8ab66d2fe323366b0837595b3b59afa",
   "sha256": "0hbqdrw6x25b331qhbg3yaaa45c2b896wknsjm0a1kg142klq229",
@@ -29865,6 +30583,36 @@
   }
  },
  {
+  "ename": "feather",
+  "commit": "ffb7d037679110473a8c3f9e98f737ecaba37c40",
+  "sha256": "1k3sxwpibk5sdim4pzfi83pzsm4vnq0xl006dy76pv363r9mvs21",
+  "fetcher": "github",
+  "repo": "conao3/feather.el",
+  "unstable": {
+   "version": [
+    20200321,
+    1237
+   ],
+   "deps": [
+    "async",
+    "async-await",
+    "page-break-lines",
+    "ppp"
+   ],
+   "commit": "529b7ec69f1694d7dc8aacb5066cf4ddcf24cc58",
+   "sha256": "0flph6yv5fj5ladksjqfpj9j8p2jcc102kbc833bvx1cnmjx7qk4"
+  },
+  "stable": {
+   "version": [
+    0,
+    0,
+    1
+   ],
+   "commit": "4cb69055cfc42841bad1de072f69dd6923899766",
+   "sha256": "1fq5ysxwiaah56rizkc47vjqi8906af3ga1n1frvrvap8m9vdz4m"
+  }
+ },
+ {
   "ename": "feature-mode",
   "commit": "0a70991695f9ff305f12cfa45e0a597f4a782ba3",
   "sha256": "0ryinmpqb3c91qcna6gbijcmqv3skxdc947dlr5s1w623z9nxgqg",
@@ -29910,11 +30658,11 @@
   "repo": "technomancy/fennel-mode",
   "unstable": {
    "version": [
-    20200206,
-    2001
+    20200405,
+    1935
    ],
-   "commit": "c02f4a9ed1b9c26f9cfc3237906c2844f5937622",
-   "sha256": "1bcdicgp3wlxpdzardx1ry9js192dy26q8af6pdlvrnxqvdl2asm"
+   "commit": "7fadf2580c3afcae3f6ebc54dad0e519b7600f1d",
+   "sha256": "1qpfpfdm2d8bdqm7h62y3hgbip67yqmblhg66zlmfxfdnsad5ls6"
   }
  },
  {
@@ -29947,8 +30695,8 @@
     "f",
     "s"
    ],
-   "commit": "1f2199f653ebae152ab34ebd8ccd364ab96ae392",
-   "sha256": "1idpm3gbbvq4s0q5dk7gs3lycnfwi58nhg4vdss084kgckwfz62r"
+   "commit": "9a80e1d42a4b01879a7585485384af6431b34651",
+   "sha256": "129mfslbp15d9z83r38lcqxnfx3n5jldaja5qbdgrmlw14irgx0r"
   },
   "stable": {
    "version": [
@@ -29996,16 +30744,16 @@
  },
  {
   "ename": "figlet",
-  "commit": "5b7972602399f9df9139cff177e38653bb0f43ed",
-  "sha256": "1m7hw56awdbvgzdnjysb3wqkhkjqy68jxsxh9f7fx266wjqhp6yj",
-  "fetcher": "bitbucket",
+  "commit": "caca0b2bc2aaac563074cbb4ea4296fce749e203",
+  "sha256": "0p5xnq3c4bvvy7nqgi18ylsha7kz9r7apw7lz84kq5hwhni298k5",
+  "fetcher": "github",
   "repo": "jpkotta/figlet",
   "unstable": {
    "version": [
     20160218,
     2237
    ],
-   "commit": "70ca269d706eedd34838fe2435073c6860be470b",
+   "commit": "19a38783a90e151faf047ff233a21a729db0cea9",
    "sha256": "1c18b1h154sdxkksqwk8snyk8n43bwzgavi75l8mnz8dnl1ciaxs"
   }
  },
@@ -30313,6 +31061,21 @@
   }
  },
  {
+  "ename": "fira-code-mode",
+  "commit": "0dc34b2d3cfd5e48df0fbe2086b8b4be1358dea4",
+  "sha256": "09i3xyk1xj7j895xmjwmxl1gaw73j9y22c5mgnavq0sm3fbpk4w0",
+  "fetcher": "github",
+  "repo": "jming422/fira-code-mode",
+  "unstable": {
+   "version": [
+    20200415,
+    2356
+   ],
+   "commit": "a61d7fce35eadba39236a6a3e9aa301e161d147b",
+   "sha256": "1bn81qwkvhznc5pi6bq08kp83208pj09vknfszx152r72sv5fpmz"
+  }
+ },
+ {
   "ename": "firecode-theme",
   "commit": "641d1959bd31598fcdacd39a3d1bb077dcccfa5c",
   "sha256": "10lxd93lkrvz8884dv4sh6fzzg355j7ab4p5dpvwry79rhs7f739",
@@ -30368,20 +31131,20 @@
   "repo": "johanvts/emacs-fireplace",
   "unstable": {
    "version": [
-    20181211,
-    1927
+    20200402,
+    2206
    ],
-   "commit": "571ffa7dd0ce46edca838df74d055aaa83da4d78",
-   "sha256": "1iw17rkihsn50p3zljag82v09zyav8bzgfn6mfa267fkf4f1fgjy"
+   "commit": "f6c23e259349922aae25cf2898ba815a7d8f2527",
+   "sha256": "16cb8grw2cfgdix1sr5a3fnwhhc93ci8qgbhgs5ilyayy2cb6s4c"
   },
   "stable": {
    "version": [
     1,
-    1,
-    2
+    2,
+    0
    ],
-   "commit": "2b966ed65b714c613f79e9144d004dfa3b28f1ed",
-   "sha256": "1f5053bbvjdmm64zv6r2qkswkpwvx0s3qz4bwm9zya583a6g0nv8"
+   "commit": "f6c23e259349922aae25cf2898ba815a7d8f2527",
+   "sha256": "16cb8grw2cfgdix1sr5a3fnwhhc93ci8qgbhgs5ilyayy2cb6s4c"
   }
  },
  {
@@ -30416,11 +31179,11 @@
   "repo": "IBM/firrtl-mode",
   "unstable": {
    "version": [
-    20190224,
-    344
+    20200329,
+    2002
    ],
-   "commit": "e55c555809037b7aaf2367ad2255f0a27addd23a",
-   "sha256": "1nsihyx9znblc4kxyk06r7alhd4wh67312zwp9discgyf4ksm572"
+   "commit": "fa40141411a876ce7a1a9d6d3fe47134bc1fa954",
+   "sha256": "1pj7b8ppkbjp8q5dzw5v086v8lp1gv1il6qc65l4nlm8p5iicvzq"
   }
  },
  {
@@ -30471,6 +31234,30 @@
   }
  },
  {
+  "ename": "fit-text-scale",
+  "commit": "5ccb1803a5783834685c4bdf40e6b1e876ea3ea4",
+  "sha256": "0w4wg7zl9082q558dyj1hk021ry1sig5w5abnn90plvjc65xs72q",
+  "fetcher": "gitlab",
+  "repo": "marcowahl/fit-text-scale",
+  "unstable": {
+   "version": [
+    20200315,
+    2120
+   ],
+   "commit": "387acab18f9f4064c051771cf666b8550718dc27",
+   "sha256": "0mrl112vjsl6ddjv0j2pg97s6zk8c2qb92wqsq775ahr1cbhvbw7"
+  },
+  "stable": {
+   "version": [
+    1,
+    1,
+    3
+   ],
+   "commit": "75f74aa14bb38ab00f184ae0a51262eaab07a27c",
+   "sha256": "1nc1p4qbpvnqq2vi7pck3zygahhippvy2xgqmha4lpq5f996lmyx"
+  }
+ },
+ {
   "ename": "fix-input",
   "commit": "7d31f907997d1d07ec794a4f09824f43818f035c",
   "sha256": "03xpr7rlv0xq1d9126j1fk0c2j7ssf366n0yc8yzm9vq32n9pp4p",
@@ -30648,6 +31435,21 @@
   }
  },
  {
+  "ename": "flatfluc-theme",
+  "commit": "de15ce71674965c5e0a8564ae2e640bc05dbd589",
+  "sha256": "0rpmiw71scdl3dgrvf2j9d909wmafyvlgraxfg5hsxngcyj5gjk0",
+  "fetcher": "github",
+  "repo": "seblemaguer/flatfluc-theme",
+  "unstable": {
+   "version": [
+    20200419,
+    1033
+   ],
+   "commit": "42f93b2ffb651901d6bad7eb5587790298dda371",
+   "sha256": "035zm6dh416jk1ipg35qnkr8cbfsjkb92dhc4ryay4p30rp1yljz"
+  }
+ },
+ {
   "ename": "flatland-black-theme",
   "commit": "641d1959bd31598fcdacd39a3d1bb077dcccfa5c",
   "sha256": "0cl2qbry56nb4prbsczffx8h35x91pgicw5pld0ndw3pxid9h2da",
@@ -30764,16 +31566,16 @@
  },
  {
   "ename": "flex-isearch",
-  "commit": "5b7972602399f9df9139cff177e38653bb0f43ed",
-  "sha256": "1msgrimi2a0xm5h23p78jflh00bl5bx44xpc3sc9pspznjv1d0k3",
-  "fetcher": "bitbucket",
+  "commit": "caca0b2bc2aaac563074cbb4ea4296fce749e203",
+  "sha256": "0y5j90y4ssw3kwqhji9h4icy8xj2pa5fjvkbkl4x7rxs8kwwm989",
+  "fetcher": "github",
   "repo": "jpkotta/flex-isearch",
   "unstable": {
    "version": [
     20170308,
     2010
    ],
-   "commit": "8b934ea6f1e4324088f055454a2e8b714961854a",
+   "commit": "b1f7e04de762282c276343cc2709af9ff4abc9d2",
    "sha256": "0xbwrzkfv4i91qxs80p0pfjlvj5pyigvidby8m5lammm8idwx9dh"
   }
  },
@@ -30785,14 +31587,14 @@
   "repo": "wanderlust/flim",
   "unstable": {
    "version": [
-    20190526,
-    1034
+    20200303,
+    319
    ],
    "deps": [
     "apel"
    ],
-   "commit": "e4bd54fd7d335215b54f7ef27ed974c8cd68d472",
-   "sha256": "0sl3skyqqzanjrp34hd1rh8wvdgsj2cm7k7hx5kc5ipggp77720r"
+   "commit": "f303f2f6c124bc8635add96d3326a2209749437b",
+   "sha256": "08gxrpzxxfgbxznvpj00bjvh8l7afg2h2vaj6iasis9724f3mgl6"
   }
  },
  {
@@ -30803,14 +31605,11 @@
   "repo": "IvanMalison/flimenu",
   "unstable": {
    "version": [
-    20170418,
-    147
-   ],
-   "deps": [
-    "dash"
+    20200415,
+    2353
    ],
-   "commit": "9351201d89b05cbdaec312a6ebd7fd10c38d6112",
-   "sha256": "1qb08j66a9mvybqhc2vyywwn16w3kkjb06k50rfqf6sbcmndz8va"
+   "commit": "f110bc77415a7594742f3b12551571c4069c9157",
+   "sha256": "1y832w4n10k9lfi90lhq8l9s56zcg24j9j8jklkzby1vf34vq0ql"
   }
  },
  {
@@ -30955,11 +31754,11 @@
   "repo": "amake/flutter.el",
   "unstable": {
    "version": [
-    20200226,
-    640
+    20200416,
+    1225
    ],
-   "commit": "ec92a4df842ad7e5bd8f60a648ffe7b004abb09d",
-   "sha256": "1l7nd01p5p9l2a4k2rl61vjs337sagx4m3qr4isvhvy2bk2cppmy"
+   "commit": "293b7225b9bacbad4bf14d43d20a765f4862c563",
+   "sha256": "0acn2bdqcvj1m6plm304adgw6ndycv04qh6asgbgdwlz1admzjga"
   }
  },
  {
@@ -30977,8 +31776,8 @@
     "flutter",
     "flycheck"
    ],
-   "commit": "ec92a4df842ad7e5bd8f60a648ffe7b004abb09d",
-   "sha256": "1l7nd01p5p9l2a4k2rl61vjs337sagx4m3qr4isvhvy2bk2cppmy"
+   "commit": "293b7225b9bacbad4bf14d43d20a765f4862c563",
+   "sha256": "0acn2bdqcvj1m6plm304adgw6ndycv04qh6asgbgdwlz1admzjga"
   }
  },
  {
@@ -31088,8 +31887,8 @@
   "repo": "flycheck/flycheck",
   "unstable": {
    "version": [
-    20200224,
-    2057
+    20200425,
+    1426
    ],
    "deps": [
     "dash",
@@ -31097,8 +31896,8 @@
     "pkg-info",
     "seq"
    ],
-   "commit": "08345d38e2872a3dcb14228edff796195809266f",
-   "sha256": "183s05gm7zkgwphrwq0bq9fv2sldhrxjik8skz7rvbz448syh0c5"
+   "commit": "c8218044c849f21cc628b6c077e41c690f046bc0",
+   "sha256": "11n3h7x9nszqljd0awi6jzrhrkac7sdyrwvb94bikrj1d7yin25g"
   },
   "stable": {
    "version": [
@@ -31307,14 +32106,14 @@
   "repo": "alexmurray/flycheck-clang-analyzer",
   "unstable": {
    "version": [
-    20190724,
-    542
+    20200320,
+    428
    ],
    "deps": [
     "flycheck"
    ],
-   "commit": "223faa244502150d08a34898858a0b4806c92d4c",
-   "sha256": "1di3d9y0p8g8mndwkzkiiq2svsgk05rnzf7bzfnhig2fchg7ipap"
+   "commit": "7e1bf9853a34828c7f81d824dc4785f1620f2006",
+   "sha256": "1iw3vjdnskbk8zlbyvxiwlisj72d7q8nz8n55ffwz3v44ymzhya6"
   }
  },
  {
@@ -31375,14 +32174,14 @@
   "repo": "borkdude/flycheck-clj-kondo",
   "unstable": {
    "version": [
-    20190619,
-    1743
+    20200414,
+    1444
    ],
    "deps": [
     "flycheck"
    ],
-   "commit": "f652a8dc4cff01e78bba50b555bae7ba6115b552",
-   "sha256": "09k87wfz4m16r32g6ry4jl2zagh1gpgfd9sik54wvyky24s605y4"
+   "commit": "5472c26ffdf754a0661357564874ffd4f8598805",
+   "sha256": "0nb88mil1nlhv0nalswl3xwndzz91yah52zpri2jfbyvivshpfm4"
   },
   "stable": {
    "version": [
@@ -31813,8 +32612,8 @@
     "let-alist",
     "seq"
    ],
-   "commit": "debd0af563cb6c2944367a691c7fa3021d9378c1",
-   "sha256": "1vl0lss2n50pz5wscqj6vhjwb4hbg8xx2chh5vafsrnn0a3fryrd"
+   "commit": "1b60050efd4729bfba548f3e5adbcb58436667cb",
+   "sha256": "1kjms9d2c98ffd1qxs879qhg0n4jzic0r5kni9y4gz3v09ww8zms"
   }
  },
  {
@@ -31959,31 +32758,31 @@
  },
  {
   "ename": "flycheck-grammalecte",
-  "commit": "fdd82aa0568d998a3d176b5ee47b8a227438ea09",
-  "sha256": "0xqg995a42cl6mvmpi68ay56fgs636cbzg65q5si5yc1yzgl74nv",
+  "commit": "ddaffa55c1b99cce9097c019efe9a236e2f5a395",
+  "sha256": "1fblc6mvj9n676ci8597as3rnwh6hmbh2hfwr92gi1dd8ibnd2pn",
   "fetcher": "git",
   "url": "https://git.deparis.io/flycheck-grammalecte/",
   "unstable": {
    "version": [
-    20191003,
-    1844
+    20200416,
+    1620
    ],
    "deps": [
     "flycheck"
    ],
-   "commit": "11cc5a0480dbdd4a9fa2bc12184b3fb56efc5cf3",
-   "sha256": "1x7y0sjq1p7idzsy2bdqhdll8vj2ci45cd5jn8qgzv02kms65djp"
+   "commit": "d99833992eb874cbbd25e991e3037642e125bb59",
+   "sha256": "07ph5kk9zb375nkdqryzpfzqn9rr89minf2jgyzlnv58fzqiwpjp"
   },
   "stable": {
    "version": [
-    0,
-    9
+    1,
+    0
    ],
    "deps": [
     "flycheck"
    ],
-   "commit": "d1ca6d9d4d64aa343598018134506930434ac5e0",
-   "sha256": "0s7kbs764nhq4nlfbbilz5clvadcyz5bi0ksrbm9kczhagisxnjv"
+   "commit": "ca4b87d22474d3337db72e19f88105f557f44867",
+   "sha256": "0wj81xfy3wlgdlnhhyhz5lfkl6sfb2ajwb6s8f2y4bcvqa8gz3qj"
   }
  },
  {
@@ -32127,14 +32926,26 @@
   "repo": "gexplorer/flycheck-indicator",
   "unstable": {
    "version": [
-    20190729,
-    1501
+    20200331,
+    1142
    ],
    "deps": [
     "flycheck"
    ],
-   "commit": "6b1386296ddf2ccc11ca8fa719dc0b2f16808424",
-   "sha256": "0bd8k3jzipm0r0242hpl2lkcdfnb367yf4xpj6r23g3y99f6f0yk"
+   "commit": "e00d9a20cbc21d6814c27cc9206296da394478e8",
+   "sha256": "0y3dzamm7xcac9fcgx88z48l6nkgmz5lx0a6lnxxywkh0h1y2kqn"
+  },
+  "stable": {
+   "version": [
+    1,
+    1,
+    1
+   ],
+   "deps": [
+    "flycheck"
+   ],
+   "commit": "e00d9a20cbc21d6814c27cc9206296da394478e8",
+   "sha256": "0y3dzamm7xcac9fcgx88z48l6nkgmz5lx0a6lnxxywkh0h1y2kqn"
   }
  },
  {
@@ -32242,26 +33053,26 @@
   "repo": "candid82/flycheck-joker",
   "unstable": {
    "version": [
-    20180913,
-    504
+    20200412,
+    2346
    ],
    "deps": [
     "flycheck"
    ],
-   "commit": "51e99e697761ee8dab863930910abdba7607c1bd",
-   "sha256": "07pxfvnrgp7f3rb27j1zrq04pncvga4291krqqy3dzwazsjplz48"
+   "commit": "93576295fef7a749bf779eeece5edd85e21868e2",
+   "sha256": "1hz5nlrhbrlwwk8rcjvc3jhj0g9wgm6xw903ap8fxq470mj99gln"
   },
   "stable": {
    "version": [
     1,
-    3,
+    5,
     0
    ],
    "deps": [
     "flycheck"
    ],
-   "commit": "51e99e697761ee8dab863930910abdba7607c1bd",
-   "sha256": "07pxfvnrgp7f3rb27j1zrq04pncvga4291krqqy3dzwazsjplz48"
+   "commit": "93576295fef7a749bf779eeece5edd85e21868e2",
+   "sha256": "1hz5nlrhbrlwwk8rcjvc3jhj0g9wgm6xw903ap8fxq470mj99gln"
   }
  },
  {
@@ -32331,25 +33142,25 @@
   "repo": "purcell/flycheck-ledger",
   "unstable": {
    "version": [
-    20191128,
-    203
+    20200304,
+    2204
    ],
    "deps": [
     "flycheck"
    ],
-   "commit": "2065beab564c23e6ab380547d19bdb5a9b3b25fc",
-   "sha256": "16wq9l8q15iw7mdicrx2c28qrhndmd0fmg8f3yiyk2frmb8ack9h"
+   "commit": "628e25ba66604946085571652a94a54f4d1ad96f",
+   "sha256": "1djrj3is0dzrl2703bw7bclf33dp4xqmy144q7xj5pvpb9v3kf50"
   },
   "stable": {
    "version": [
     0,
-    4
+    5
    ],
    "deps": [
     "flycheck"
    ],
-   "commit": "9401b6c83f60bfd29edfc62fee76f75e17a3a41e",
-   "sha256": "1pdssw5k88ym5fczllfjv26sp4brlyrywnlzq5baha5pq91h9cb6"
+   "commit": "628e25ba66604946085571652a94a54f4d1ad96f",
+   "sha256": "1djrj3is0dzrl2703bw7bclf33dp4xqmy144q7xj5pvpb9v3kf50"
   }
  },
  {
@@ -32484,8 +33295,8 @@
    "deps": [
     "flycheck"
    ],
-   "commit": "12a77ee8ee3f6e774365f63be3cd5aede6462dd5",
-   "sha256": "187v8877wh247j26d5h2qcnc8i3fmqgyzfvjjjlw9sswqgrln6m7"
+   "commit": "5b4e14ab0cbce2ff35fee7e69b5b95eafd609c80",
+   "sha256": "1cx1rm40ns3y5bdbk8hfycdaq16p4zxkjjss02xs6hl96yvc4kaj"
   }
  },
  {
@@ -32609,15 +33420,15 @@
   "repo": "purcell/flycheck-package",
   "unstable": {
    "version": [
-    20200222,
-    512
+    20200304,
+    2151
    ],
    "deps": [
     "flycheck",
     "package-lint"
    ],
-   "commit": "e867b83dc84f1f8870eea069a71fa2a24cbcd5c9",
-   "sha256": "1b7javiqbcfzh1xkrjld9f5xrmld69gvnjz72mqpqmzbilfvmdpq"
+   "commit": "caea75f77dc7668c7aa0ebcd48f677e3522b5d77",
+   "sha256": "1x63rwpyzcn99jzhyxh91l3hp2j55wspxdv5rhvnpbar5nlqlbz1"
   },
   "stable": {
    "version": [
@@ -32670,6 +33481,25 @@
   }
  },
  {
+  "ename": "flycheck-pest",
+  "commit": "f0c1b89d79456ecaa22b95f3c292799f5d1aa133",
+  "sha256": "06nvryshinagp26idjcb1r98k39x4k82cjj735l9kiwpiag53ash",
+  "fetcher": "github",
+  "repo": "ksqsf/pest-mode",
+  "unstable": {
+   "version": [
+    20200317,
+    1503
+   ],
+   "deps": [
+    "flycheck",
+    "pest-mode"
+   ],
+   "commit": "4ae88a9c81d499bbe99978ff0216b645fed70023",
+   "sha256": "1zc7dmgp3s9q33wkvw6i7zzlcaa65ixx3hxb78m62lk2a7fzb3ih"
+  }
+ },
+ {
   "ename": "flycheck-phpstan",
   "commit": "5a2b6cc39957e6d7185bd2bdfa3755e5b1f474a6",
   "sha256": "1dr0h6cnwxdjmhlackv4gpsljwzs27gk41p8q99r0m44dada9gaf",
@@ -32677,28 +33507,28 @@
   "repo": "emacs-php/phpstan.el",
   "unstable": {
    "version": [
-    20200122,
-    1256
+    20200411,
+    531
    ],
    "deps": [
     "flycheck",
     "phpstan"
    ],
-   "commit": "6744215d82ce9e82416d83e5b27fb9bac9e8d461",
-   "sha256": "0hbm881w84nm4g67085xzikz422vkb08y98hfk2n3kqmznvp8i51"
+   "commit": "2f715a186c5fe6576de83d4c0b64a37e2bfce101",
+   "sha256": "03ix2s068pzmybj0fcb08dlfgdqw0pmqhbdf4id2077f67bfad0w"
   },
   "stable": {
    "version": [
     0,
-    3,
-    3
+    5,
+    0
    ],
    "deps": [
     "flycheck",
     "phpstan"
    ],
-   "commit": "535e172e1c561bc7b8c706b4e03bbf71689bd83a",
-   "sha256": "1hn1rdgymv81rm8nkibnc5jazgjrx3sz4w1lin85rgypzbfaf6wk"
+   "commit": "bf9e82a63f2ccb12af02c9e79a83e7989eeb7cb1",
+   "sha256": "15kv5xv6lcfgf048wr2zsnpvrplbxypy3wq56zvrzbq18hwprqg1"
   }
  },
  {
@@ -32709,16 +33539,16 @@
   "repo": "Wilfred/flycheck-pkg-config",
   "unstable": {
    "version": [
-    20180430,
-    2243
+    20200409,
+    501
    ],
    "deps": [
     "dash",
     "flycheck",
     "s"
    ],
-   "commit": "e72e4c1b8153611ed82695673af84096f4d52795",
-   "sha256": "07zyrbib9qzy4kj3p7kljcfi53qhb28nf0sjhhkqzdj09iv2k9wf"
+   "commit": "b76b24ea1f4800f5fb96ce9c6c4788e0e63133d3",
+   "sha256": "01wzzrpfgh3z28qsynxvkfm92xy98vyvkkv31qh53kxxdicnzlh0"
   }
  },
  {
@@ -32878,14 +33708,14 @@
   "repo": "msherry/flycheck-pycheckers",
   "unstable": {
    "version": [
-    20200206,
-    2158
+    20200414,
+    1901
    ],
    "deps": [
     "flycheck"
    ],
-   "commit": "c5349c0fb3b719469b7e66dbdfbe58d0813f6a74",
-   "sha256": "02886xggdb09880jp57cah3fmf1nm77gvb0aaws8j4abl278g7x5"
+   "commit": "467f9b94d9eecc8a8027cf204d304e258f72edaa",
+   "sha256": "03yiva5lmbfawdjjfsmqlqgvrdgfni1gh1qbdpma5gqhckz5j0d7"
   },
   "stable": {
    "version": [
@@ -32944,27 +33774,27 @@
   "repo": "purcell/flycheck-relint",
   "unstable": {
    "version": [
-    20200226,
-    508
+    20200320,
+    2223
    ],
    "deps": [
     "flycheck",
     "relint"
    ],
-   "commit": "6dbd319a49d334653a3e4f9bff229f482bbb7ba4",
-   "sha256": "0rmnq0llmc96hmvhim451fknzafj80pjkd6qdb0x1bdr7iww1ilc"
+   "commit": "296cf8e2f9e85ab0c1c591816b50ecd7c766060c",
+   "sha256": "148xh1alng4s3ydnhwjjrcmq1390pn6ymjszaamrzljwfqzh85ky"
   },
   "stable": {
    "version": [
     0,
-    2
+    5
    ],
    "deps": [
     "flycheck",
     "relint"
    ],
-   "commit": "6dbd319a49d334653a3e4f9bff229f482bbb7ba4",
-   "sha256": "0rmnq0llmc96hmvhim451fknzafj80pjkd6qdb0x1bdr7iww1ilc"
+   "commit": "296cf8e2f9e85ab0c1c591816b50ecd7c766060c",
+   "sha256": "148xh1alng4s3ydnhwjjrcmq1390pn6ymjszaamrzljwfqzh85ky"
   }
  },
  {
@@ -32982,8 +33812,8 @@
     "flycheck",
     "rtags"
    ],
-   "commit": "3d025d9c97359442f7190ec42a63ff7e5fd85a9a",
-   "sha256": "1c8llhbhvrv5kwmci7rlsjqv3gr4gxi45g6c21fqrblyhas95s3n"
+   "commit": "a42298e80dffae9a6b2e9816506174542f3cbbb7",
+   "sha256": "1674752bbyb7890na5p846dxcvh83zn0a6z19wras1x5c59s24i3"
   },
   "stable": {
    "version": [
@@ -33843,14 +34673,14 @@
   "repo": "beetleman/flymake-joker",
   "unstable": {
    "version": [
-    20200118,
-    1937
+    20200315,
+    1429
    ],
    "deps": [
     "flymake-quickdef"
    ],
-   "commit": "c4350eb9198fb6fe1ebfb356e3c9c37dd6b0f171",
-   "sha256": "0c25nzainwcy5wxh2q1r98fvbnvgylyp6s41sh4zdpzid34rf1vz"
+   "commit": "fc132beedac9e6f415b72e578e77318fd13af9ee",
+   "sha256": "1pqi6d1kgn5s6bkabi8jxk26ffwqq7g3rl3xgas49rn9vgqwqmq1"
   }
  },
  {
@@ -34017,6 +34847,24 @@
   }
  },
  {
+  "ename": "flymake-pest",
+  "commit": "747e1b060e3aa78b91d61abcf2c9a4dc0d4aaf7e",
+  "sha256": "17bsvrd1g7d5b0z5psx0bvg2ym0bi7dh1vvl8a45dnzpig141f36",
+  "fetcher": "github",
+  "repo": "ksqsf/pest-mode",
+  "unstable": {
+   "version": [
+    20200317,
+    1503
+   ],
+   "deps": [
+    "pest-mode"
+   ],
+   "commit": "4ae88a9c81d499bbe99978ff0216b645fed70023",
+   "sha256": "1zc7dmgp3s9q33wkvw6i7zzlcaa65ixx3hxb78m62lk2a7fzb3ih"
+  }
+ },
+ {
   "ename": "flymake-php",
   "commit": "cae2ac3513e371a256be0f1a7468e38e686c2487",
   "sha256": "12ds2l5kvs7fz38syp4amasbjkpqd36rlpajnb3xxll0hbk6vffk",
@@ -34064,6 +34912,36 @@
   }
  },
  {
+  "ename": "flymake-phpstan",
+  "commit": "bc0ea837b6813002826d861acb7f3cc506c337ba",
+  "sha256": "0fg2skkzd9xn42a5jdxg69bjg0jw26p5jrq6i5v815vgisxfgjbv",
+  "fetcher": "github",
+  "repo": "emacs-php/phpstan.el",
+  "unstable": {
+   "version": [
+    20200415,
+    1637
+   ],
+   "deps": [
+    "phpstan"
+   ],
+   "commit": "2f715a186c5fe6576de83d4c0b64a37e2bfce101",
+   "sha256": "03ix2s068pzmybj0fcb08dlfgdqw0pmqhbdf4id2077f67bfad0w"
+  },
+  "stable": {
+   "version": [
+    0,
+    5,
+    0
+   ],
+   "deps": [
+    "phpstan"
+   ],
+   "commit": "bf9e82a63f2ccb12af02c9e79a83e7989eeb7cb1",
+   "sha256": "15kv5xv6lcfgf048wr2zsnpvrplbxypy3wq56zvrzbq18hwprqg1"
+  }
+ },
+ {
   "ename": "flymake-puppet",
   "commit": "302dbe34e7949da9c65e9c7bf2ab924db91b968f",
   "sha256": "1izq6s33p74dy4wzfnjii8wjs723bm5ggl0w6hkvzgbmyjc01hxv",
@@ -34118,20 +34996,20 @@
   "repo": "karlotness/flymake-quickdef",
   "unstable": {
    "version": [
-    20190727,
-    2028
+    20200308,
+    2342
    ],
-   "commit": "5b3980a7c1763171e8cdb28ebfd5f4eaad32f9f9",
-   "sha256": "0rhg29jcpa4314ld9shhvf81m1ar8xp2853hxm94bxpnnza5d8x7"
+   "commit": "150c5839768a3d32f988f9dc08052978a68f2ad7",
+   "sha256": "19gfd539l97j8xbrq1fw83b54mxbcamlz9m896088d3p01zf8b0g"
   },
   "stable": {
    "version": [
-    0,
     1,
-    1
+    0,
+    0
    ],
-   "commit": "53bf206f1a71b2fc12f49741832a94f6498ae6a6",
-   "sha256": "0wqfn068ylb30f8988knrcd9v3r3xck5yb1fj9jnrw2bs6qxxc57"
+   "commit": "150c5839768a3d32f988f9dc08052978a68f2ad7",
+   "sha256": "19gfd539l97j8xbrq1fw83b54mxbcamlz9m896088d3p01zf8b0g"
   }
  },
  {
@@ -34262,11 +35140,11 @@
   "repo": "federicotdn/flymake-shellcheck",
   "unstable": {
    "version": [
-    20181214,
-    24
+    20200329,
+    2005
    ],
-   "commit": "e22385a9e752e58b18d4c6371e6ff1602bb764f2",
-   "sha256": "0gfk2wsi72n4zkgjpqasdn83zrxlzm735q6c3gs1sfqd7h1jqnwq"
+   "commit": "78956f0e5bb9c4d35989657a55929e8e3f5691e6",
+   "sha256": "068mx5p4drwgppy4ry1rfq6qi79w6d82b4rnpl2jm37grsg94lix"
   }
  },
  {
@@ -34382,8 +35260,8 @@
     20200215,
     1408
    ],
-   "commit": "e765d1a3d9621decd478aa3fd08b53425da93a87",
-   "sha256": "195id7zscwbhmgv5jhcrvr65y4rwszdr4qz8l6w5bz5zxik2mxwp"
+   "commit": "fd8ac7a4f922ce5ea1cc5d4583a7d584847cb6b5",
+   "sha256": "1z7gcppp8nv4zm6giqwahc1svw1fa2ynjy5y3230dwcfn98m73c3"
   },
   "stable": {
    "version": [
@@ -34410,8 +35288,8 @@
     "avy-menu",
     "flyspell-correct"
    ],
-   "commit": "e765d1a3d9621decd478aa3fd08b53425da93a87",
-   "sha256": "195id7zscwbhmgv5jhcrvr65y4rwszdr4qz8l6w5bz5zxik2mxwp"
+   "commit": "fd8ac7a4f922ce5ea1cc5d4583a7d584847cb6b5",
+   "sha256": "1z7gcppp8nv4zm6giqwahc1svw1fa2ynjy5y3230dwcfn98m73c3"
   },
   "stable": {
    "version": [
@@ -34442,8 +35320,8 @@
     "flyspell-correct",
     "helm"
    ],
-   "commit": "e765d1a3d9621decd478aa3fd08b53425da93a87",
-   "sha256": "195id7zscwbhmgv5jhcrvr65y4rwszdr4qz8l6w5bz5zxik2mxwp"
+   "commit": "fd8ac7a4f922ce5ea1cc5d4583a7d584847cb6b5",
+   "sha256": "1z7gcppp8nv4zm6giqwahc1svw1fa2ynjy5y3230dwcfn98m73c3"
   },
   "stable": {
    "version": [
@@ -34474,8 +35352,8 @@
     "flyspell-correct",
     "ivy"
    ],
-   "commit": "e765d1a3d9621decd478aa3fd08b53425da93a87",
-   "sha256": "195id7zscwbhmgv5jhcrvr65y4rwszdr4qz8l6w5bz5zxik2mxwp"
+   "commit": "fd8ac7a4f922ce5ea1cc5d4583a7d584847cb6b5",
+   "sha256": "1z7gcppp8nv4zm6giqwahc1svw1fa2ynjy5y3230dwcfn98m73c3"
   },
   "stable": {
    "version": [
@@ -34506,8 +35384,8 @@
     "flyspell-correct",
     "popup"
    ],
-   "commit": "e765d1a3d9621decd478aa3fd08b53425da93a87",
-   "sha256": "195id7zscwbhmgv5jhcrvr65y4rwszdr4qz8l6w5bz5zxik2mxwp"
+   "commit": "fd8ac7a4f922ce5ea1cc5d4583a7d584847cb6b5",
+   "sha256": "1z7gcppp8nv4zm6giqwahc1svw1fa2ynjy5y3230dwcfn98m73c3"
   },
   "stable": {
    "version": [
@@ -34780,6 +35658,21 @@
   }
  },
  {
+  "ename": "font-lock-cl",
+  "commit": "b7a2635ceb34f49f84f35e11c14521592a9d330f",
+  "sha256": "1d8r3d558ipk324hpgfm4fv4kxk6mhvkka3aqd4kcv8zv0k79iq3",
+  "fetcher": "github",
+  "repo": "font-lock-cl/font-lock-cl",
+  "unstable": {
+   "version": [
+    20200321,
+    533
+   ],
+   "commit": "9f82d31f9f0fb06bbc2ce18e21e79d1eabbe6c5e",
+   "sha256": "0b6g36frvp1i92qn8rv3dcm8sxiw5yvbvhl7j58x2xwvawn79nfd"
+  }
+ },
+ {
   "ename": "font-lock-profiler",
   "commit": "b372892a29376bc3f0101ea5865efead41e1df26",
   "sha256": "089r74jgi5gwjk9w1bc600vkj0p5ac84rgcl7aqcpqfbh9ylwcp9",
@@ -34843,10 +35736,10 @@
  },
  {
   "ename": "fontawesome",
-  "commit": "93b92f10802ceffc353db3d220dccfd47ea7fa41",
-  "sha256": "07hn4s929xklc74j8s6pd61rxmxw3911dq47wql77vb5pijv6dr3",
+  "commit": "2a2670edb1155f02d1cbe2600db84a82c8f3398b",
+  "sha256": "1xqq0ndq6hndpyar11qlylkdgqpq5kxhbayyjbad3vbm6r5i9nri",
   "fetcher": "github",
-  "repo": "syohex/emacs-fontawesome",
+  "repo": "emacsorphanage/fontawesome",
   "unstable": {
    "version": [
     20170305,
@@ -34914,11 +35807,11 @@
   "repo": "k-talo/foreign-regexp.el",
   "unstable": {
    "version": [
-    20180224,
-    1121
+    20200325,
+    50
    ],
-   "commit": "2ec5c44f27c2396ee487aa0ed77ae47d143fa5aa",
-   "sha256": "0zww0q8x99sfwzf05pk7blsi3v8xiw4xgmlwnv1qlf2qxjkz1xhb"
+   "commit": "e2dd47f2160cadc194eb156e7c76c3c869e6706e",
+   "sha256": "0bqhabpv992ss8rw3fgym6q5kq1d6b9ycs0a5ndgjpcz19rmlr66"
   }
  },
  {
@@ -34980,8 +35873,8 @@
   "repo": "magit/forge",
   "unstable": {
    "version": [
-    20200228,
-    1527
+    20200425,
+    2225
    ],
    "deps": [
     "closql",
@@ -34993,8 +35886,8 @@
     "markdown-mode",
     "transient"
    ],
-   "commit": "0ade907a469d7159d9f5b3290e2aebec4397c58a",
-   "sha256": "12pvnasc4nr3n4k91ch90zsvyc1rv1ghga8lx7xp78fc6b3y959r"
+   "commit": "e2da80660a0550f613400ce3b238025589800417",
+   "sha256": "0m80w0qh6icj365pcg9d0kb2nvmv48c3874wy15mjcilzb6i97av"
   },
   "stable": {
    "version": [
@@ -35028,8 +35921,8 @@
     20160102,
     2253
    ],
-   "commit": "799ca3e72b20a59a755a094b8cead57f654f3170",
-   "sha256": "0nj056x87gcpdqkgx3li5syp6wbj58a1mw2aqa48zflbqwyvs03i"
+   "commit": "15bbcb2d2df21910af3b9686b671e0c7d1c93b26",
+   "sha256": "1vfnpm6kp4xf3qc73i41rg73bhbym1sd4z6jam4k1f44iny0zqxz"
   },
   "stable": {
    "version": [
@@ -35049,15 +35942,15 @@
   "repo": "lassik/emacs-format-all-the-code",
   "unstable": {
    "version": [
-    20200219,
-    1628
+    20200422,
+    1731
    ],
    "deps": [
     "cl-lib",
     "language-id"
    ],
-   "commit": "8c8c47a863a397d947999fff4358caf20bafca0a",
-   "sha256": "0ayb57p114z64ppf74g2wpm2g2iga2vrl8rhay7fnfv1j2i4xjss"
+   "commit": "c157b57e963da0b44a079b0477d6c742e9c5a10b",
+   "sha256": "15pqff80ydcvkvbiyi50aix5mnwgrhvvajk60i6cwgkb2xghs20r"
   },
   "stable": {
    "version": [
@@ -35194,26 +36087,26 @@
   "repo": "rnkn/fountain-mode",
   "unstable": {
    "version": [
-    20200218,
-    1249
+    20200416,
+    841
    ],
    "deps": [
     "seq"
    ],
-   "commit": "974c9df2c73cf52030dfe0c771d97d3d37bd08e4",
-   "sha256": "0103rnq9x07a11930jgcg04ayd7npri9wd2j2ghr510y7sm86p0d"
+   "commit": "5998d977ca84930e124558007dc65370164ed960",
+   "sha256": "1hmc3pacscr0f02cw6hbbv444k07k5gf1909lyz8jpfr5r5wi2in"
   },
   "stable": {
    "version": [
     3,
-    0,
-    3
+    1,
+    0
    ],
    "deps": [
     "seq"
    ],
-   "commit": "974c9df2c73cf52030dfe0c771d97d3d37bd08e4",
-   "sha256": "0103rnq9x07a11930jgcg04ayd7npri9wd2j2ghr510y7sm86p0d"
+   "commit": "9027c6f2b2a2d7d64501e55ff3531cdef26c463d",
+   "sha256": "08giwg0jwk8zzj2i4cm08322qr6znrnv9a49za7c6j47bykpwj6s"
   }
  },
  {
@@ -35473,6 +36366,60 @@
   }
  },
  {
+  "ename": "freeze-it",
+  "commit": "0b50aa7ce66a827ddd975eddf8e95ba655e05239",
+  "sha256": "03wnmp6m9ss3vvzibajjdvzbgh2ydvq95xk9k2rhrgjj9pdz5ml8",
+  "fetcher": "github",
+  "repo": "rnkn/freeze-it",
+  "unstable": {
+   "version": [
+    20200416,
+    1605
+   ],
+   "commit": "b93af18633bc783c2cb8443808aeeaaca33e1146",
+   "sha256": "0gljal6hmchx5zyd268kwlqn8pqq206y8a89ff7kq6qaql88mngn"
+  },
+  "stable": {
+   "version": [
+    0,
+    2,
+    1
+   ],
+   "commit": "b93af18633bc783c2cb8443808aeeaaca33e1146",
+   "sha256": "0gljal6hmchx5zyd268kwlqn8pqq206y8a89ff7kq6qaql88mngn"
+  }
+ },
+ {
+  "ename": "friendly-tramp-path",
+  "commit": "cb18ad238792570e5ef825a101059bfdc293949f",
+  "sha256": "120g9w1l4i544km5d1jx5g4vsfb92lizn7ibxl767zffgahqhbdf",
+  "fetcher": "github",
+  "repo": "p3r7/friendly-tramp-path",
+  "unstable": {
+   "version": [
+    20200419,
+    851
+   ],
+   "deps": [
+    "cl-lib"
+   ],
+   "commit": "ce7d15dd96300d376d483d685aa4a34357da8d6a",
+   "sha256": "01v311c8w86s954adl1ncmbhmk07acm8pnak70gn93dpz77vl9g4"
+  },
+  "stable": {
+   "version": [
+    0,
+    1,
+    0
+   ],
+   "deps": [
+    "cl-lib"
+   ],
+   "commit": "be2714118876c592fae199aaa877c49475b6176a",
+   "sha256": "1z1rcm8pc8p2d7zzf02nms6cz2ik8y1b95a58lqxlp8n75rz4c5i"
+  }
+ },
+ {
   "ename": "fringe-current-line",
   "commit": "eaaa6f7f2f753a7c8489415ae406c4169eda9fa8",
   "sha256": "125yn0wbrrxrmdn7qfxj0f4538sb3xnqb3r2inz3gpblc1vxnqb8",
@@ -35595,8 +36542,8 @@
   "repo": "FStarLang/fstar-mode.el",
   "unstable": {
    "version": [
-    20200131,
-    1622
+    20200424,
+    2235
    ],
    "deps": [
     "company",
@@ -35606,8 +36553,8 @@
     "quick-peek",
     "yasnippet"
    ],
-   "commit": "336b41ecd7ecb64fac869ec61e683e20a14d79d2",
-   "sha256": "1122m5l16sw3mi9xvsmkrxxsvx6895g0agd55w8wk5968323n01y"
+   "commit": "d8b586518f32d4acde049852d81902670d1ee277",
+   "sha256": "0av315lf58nwgvix100bj279mq2pm175vwc5dip19gn73bq4d9vi"
   },
   "stable": {
    "version": [
@@ -35637,8 +36584,8 @@
    "deps": [
     "cl-lib"
    ],
-   "commit": "573e4ed198584f17126549f708bd8426e93058be",
-   "sha256": "0baqikbbgxb2a0jyqz8s9ibivh9q14bq2g2kngd89pssd74fv04k"
+   "commit": "298bbddeb1dcc135c075d484f283f409f0d0d055",
+   "sha256": "199a1gs7ja9l3bc2sw9cwv9jv0zvqqaa2pp6hibbyl00rsk2xs58"
   },
   "stable": {
    "version": [
@@ -35791,14 +36738,14 @@
   "repo": "diku-dk/futhark-mode",
   "unstable": {
    "version": [
-    20200123,
-    931
+    20200415,
+    1228
    ],
    "deps": [
     "cl-lib"
    ],
-   "commit": "ca22b1e5fe46125b968c3da46e0bc9780b32e346",
-   "sha256": "1zkqlacxmiwprx8xbnp6phf3gh3faxghxv0j90019k0g3dq9l3ws"
+   "commit": "2befd490ce7d78a43d001b4bb0bd4300d086d645",
+   "sha256": "0p4ii7mbspx1fsmzx9n8z2siq9n8ixpisxs388ndd2ccp7x3k6nm"
   }
  },
  {
@@ -36067,26 +37014,35 @@
   "repo": "koral/gcmh",
   "unstable": {
    "version": [
-    20200213,
-    944
+    20200409,
+    1456
    ],
-   "commit": "8867533a736f2098917904c26fd833feca2310a5",
-   "sha256": "0fwbxh0ywy6prjvgl91xdxfmcca4cnnn2cy2zndj5mdl0zx5k3a2"
+   "commit": "b1bde5089169a74f62033d027e06e98cbeedd43f",
+   "sha256": "0k0gh1dr3hipg73mpgkw6hlg27c7c5r8aa61p4vj2rpmf6k90pc5"
   }
  },
  {
   "ename": "gdscript-mode",
-  "commit": "52f99eafb2e80a7fa13a98add98b03a147f35e8b",
-  "sha256": "0v4ab5xxpq1kya2is5qq61fmfgxgvbigyz7wp907z3mc00kg2818",
+  "commit": "b4414989beecd113ec405116402a5232ac32cb85",
+  "sha256": "1clakvkjifqhi847p6zrxxfkr5s3hv33qsh7r96w04pihyd38q9l",
   "fetcher": "github",
-  "repo": "AdamBark/gdscript-mode",
+  "repo": "GDQuest/emacs-gdscript-mode",
   "unstable": {
    "version": [
-    20180118,
-    456
+    20200404,
+    112
    ],
-   "commit": "31af5283eaec207bc864022a28e2824132471eaf",
-   "sha256": "0f24zsklkhhvj6qdyid2j1qcyhjnncxjma93zhr0klvn5j1z3aar"
+   "commit": "9a74dd3b6cfe73dd7510faf26ee7bc14e3c7dbc6",
+   "sha256": "1rrwhb6ak0gajcci4kk7fdyfm0c5wfhj6zys9f4m5xjya9pb3wb4"
+  },
+  "stable": {
+   "version": [
+    1,
+    1,
+    0
+   ],
+   "commit": "86577f81dc2640d5388565d0430b4df241bdd38e",
+   "sha256": "0cpfdbza3gh1s6y5igs51b1m7g7dfa7jszjfawz3v2g49p4a5m2d"
   }
  },
  {
@@ -36174,11 +37130,11 @@
   "repo": "jaor/geiser",
   "unstable": {
    "version": [
-    20200225,
-    1423
+    20200419,
+    2111
    ],
-   "commit": "5fcd56b2d560c04a173ae7d8b21540471322afa4",
-   "sha256": "00zvll0glzx9lp4s9l1ix1grdqa9cj24kszil1akaa8rqniiafn1"
+   "commit": "07912e512a7bf1507d0dd5ba3774b684c5ac3287",
+   "sha256": "0w2rhk04x4wqcx6brfacqx3r7whyzdnbgwzfgmba0xsrpb2x7rpz"
   },
   "stable": {
    "version": [
@@ -36198,14 +37154,14 @@
   "repo": "noctuid/general.el",
   "unstable": {
    "version": [
-    20191031,
-    2024
+    20200425,
+    1425
    ],
    "deps": [
     "cl-lib"
    ],
-   "commit": "f6e928622d78d927c7043da904782ed7160ea803",
-   "sha256": "1l541isnwhcg3y8h709zw6nskhkgwnkbdbl1zv702mgfsbl5am62"
+   "commit": "42e38034cd2305fa7432866323c923979d8f9b06",
+   "sha256": "0aalp4x5gp0yhv037ymspsj4n3vqzxld0c1nk8ihl50k6krl4kxy"
   }
  },
  {
@@ -36245,6 +37201,53 @@
   }
  },
  {
+  "ename": "geoip",
+  "commit": "40336cd135414e1c6f478705e5873eaa396554b0",
+  "sha256": "0j70gl9423ghrjp4k250kq8xpngxa8pzlpivpksyzzj32s7dy1nw",
+  "fetcher": "github",
+  "repo": "xuchunyang/geoip.el",
+  "unstable": {
+   "version": [
+    20200310,
+    911
+   ],
+   "commit": "25eb1278788b942c38405c233d3614a1de92ddea",
+   "sha256": "0nbgbqxmpq6c487yx4igph58zmaslqn7z92x9b1xymw58fnlyrm6"
+  }
+ },
+ {
+  "ename": "geolocation",
+  "commit": "fddc094aa08365c0e04f0d8f2f19a47908964f50",
+  "sha256": "03mxy8dfmy8db8rx9j7q1lvzy11grz0bd3054ckwgmlb6ng7d72q",
+  "fetcher": "github",
+  "repo": "gonewest818/geolocation.el",
+  "unstable": {
+   "version": [
+    20200308,
+    2324
+   ],
+   "deps": [
+    "deferred",
+    "request-deferred"
+   ],
+   "commit": "83ab28e64bc067016b5344dffe93e380e9807e9c",
+   "sha256": "0ns7pgi4gbpfb192n9fdhv12zflq74jdmqc518rgh7hqlyp26mf4"
+  },
+  "stable": {
+   "version": [
+    0,
+    2,
+    0
+   ],
+   "deps": [
+    "deferred",
+    "request-deferred"
+   ],
+   "commit": "83ab28e64bc067016b5344dffe93e380e9807e9c",
+   "sha256": "0ns7pgi4gbpfb192n9fdhv12zflq74jdmqc518rgh7hqlyp26mf4"
+  }
+ },
+ {
   "ename": "german-holidays",
   "commit": "bf5b3807ff989b13f95e8d6fad2f26a42ff0643c",
   "sha256": "0fgrxdgyl6va6axjc5l4sp90pyqaz5zha1g73xyhbxblshm5dwxn",
@@ -36574,15 +37577,15 @@
   "repo": "magit/ghub",
   "unstable": {
    "version": [
-    20200228,
-    4
+    20200425,
+    2233
    ],
    "deps": [
     "let-alist",
     "treepy"
    ],
-   "commit": "b0faadaf079542f81ac06a15a1bd225e2a7af1ec",
-   "sha256": "1fasnipic9mkhkm7km56f43s19cyzrrs1cd8nr81b9kxmp95ik3r"
+   "commit": "03d2546614619f42ac2983e79d0069ca4cbcfbfc",
+   "sha256": "0j0j86cbv87i2wfcvcyjb53wdzd003770krlnpx0gjkq036vvkwk"
   },
   "stable": {
    "version": [
@@ -36637,11 +37640,11 @@
   "repo": "Ambrevar/emacs-gif-screencast",
   "unstable": {
    "version": [
-    20200207,
-    1358
+    20200327,
+    1332
    ],
-   "commit": "dce0f3bb71ab8761a689c7382864a20198874b8e",
-   "sha256": "0yf665w06ijjxvzfbg8naa95f5ga3z2kcaq9baq7md222r52xd7q"
+   "commit": "e39786458fb30e2e9683094c75c6c2cef537d9c4",
+   "sha256": "135mkyi8kqsxs0a3qa20splvx4xhl8k91s48yy6gwlz6m81vwvb5"
   },
   "stable": {
    "version": [
@@ -36804,11 +37807,11 @@
   "repo": "ryuslash/git-auto-commit-mode",
   "unstable": {
    "version": [
-    20200217,
-    2348
+    20200322,
+    2007
    ],
-   "commit": "ae69e61233417a7f14efba35e42bd842b707aeb0",
-   "sha256": "0nrx3wnn2jii4yiv9c1cbbll4bgll5j73ypp1fi82kk99n0d8372"
+   "commit": "dd0c2441de0f5ff8c69c8260d9450d0b607e3e55",
+   "sha256": "0r7jry1sbqsp7c1vxf7fchc7ivmnccfrflg52379v3gmpvd8s0kn"
   },
   "stable": {
    "version": [
@@ -36858,15 +37861,15 @@
   "repo": "walseb/git-backup-ivy",
   "unstable": {
    "version": [
-    20191224,
-    1254
+    20200424,
+    1049
    ],
    "deps": [
     "git-backup",
     "ivy"
    ],
-   "commit": "0a6226c37b63660e6b246bc9bbcf919e44270a99",
-   "sha256": "081dfbxs417zv2dds4i16ak6dri41cfn012sbfmalp8qslpclb6z"
+   "commit": "d9361c9ad903e0d58f25ccebad99d9a753f1937a",
+   "sha256": "0jkkajv0scbp91al18fqqyvvcda2z6wkkbz0p1rcwzap5g96b7ag"
   }
  },
  {
@@ -36933,8 +37936,8 @@
     "transient",
     "with-editor"
    ],
-   "commit": "c8cd22e28d20b0d7ae74102df4e35d7c0c61ebe6",
-   "sha256": "134n9m2zrf60ljm867bv92qjgk61cmgns1a3cqpvj4wflpaahnbv"
+   "commit": "8de6ecf5c5c840f8a964c3e5bd4d7a1aedf04e10",
+   "sha256": "0fwaasr7g4qj9l8dxcy1228p2rpb2xy16w2g27gqdzyd6a5sc2jw"
   },
   "stable": {
    "version": [
@@ -37006,17 +38009,17 @@
  },
  {
   "ename": "git-gutter",
-  "commit": "81f0f525680fea98e804f39dbde1dada887e8821",
-  "sha256": "19s344i95piixlzq4mjgmgjw7cy8af02z6hg89jjjdbxrfl4i2fg",
+  "commit": "2a2670edb1155f02d1cbe2600db84a82c8f3398b",
+  "sha256": "1vcrjxg9pckixsbfmvpf0624s990nx33qn0p6xhnag4jn81ih03x",
   "fetcher": "github",
-  "repo": "syohex/emacs-git-gutter",
+  "repo": "emacsorphanage/git-gutter",
   "unstable": {
    "version": [
-    20161105,
-    1356
+    20200326,
+    1814
    ],
-   "commit": "00c05264af046b5ce248e5b0bc42f117d9c27a09",
-   "sha256": "1c7byzv27sqcal0z7113s1897prxhynk6y89mq1fjlxmr0g20vzb"
+   "commit": "2c3242116a42dbbe30fc0844d1ec3c41074cdaba",
+   "sha256": "18gbns5mjwr5kirgpzjp4iqmj130qa5m1hs4phx1057qdq11ihrr"
   },
   "stable": {
    "version": [
@@ -37062,22 +38065,22 @@
  },
  {
   "ename": "git-gutter-fringe",
-  "commit": "81f0f525680fea98e804f39dbde1dada887e8821",
-  "sha256": "10k07dzmkxsxzwc70vpv05rxjyps9494y6k7yhlv8d46x7xjyp0z",
+  "commit": "2a2670edb1155f02d1cbe2600db84a82c8f3398b",
+  "sha256": "1i8vvh2si3fdgq1m0yyzs9qbw5jzykp4qgl3ksm4xrimlw1ln4vc",
   "fetcher": "github",
-  "repo": "syohex/emacs-git-gutter-fringe",
+  "repo": "emacsorphanage/git-gutter-fringe",
   "unstable": {
    "version": [
-    20170113,
-    533
+    20200323,
+    2249
    ],
    "deps": [
     "cl-lib",
     "fringe-helper",
     "git-gutter"
    ],
-   "commit": "16226caab44174301f1659f7bf8cc67a76153445",
-   "sha256": "1y77gjl0yznamdj0f55d418zb75k22izisjg7ikvrfsl2yfqf3pm"
+   "commit": "da19a474137876b29b5658ee7e9ae366f2b65c1d",
+   "sha256": "015qaaap2cvy4cxl31r27z48zbgd9vyj6rac9yv3caw5zsvzlkiv"
   },
   "stable": {
    "version": [
@@ -37205,11 +38208,11 @@
   "repo": "sshaw/git-link",
   "unstable": {
    "version": [
-    20191119,
-    1420
+    20200331,
+    2329
    ],
-   "commit": "2fb0e4be8801e7d53e02fc7f14ec0f9a14586ba2",
-   "sha256": "1y5qw5iyblj14zjvw4is51qyvmy2z0f0iba7cqr628zn9q1fqll6"
+   "commit": "7142ec898f0cb97aa5d1a68da7957b4710bbfa87",
+   "sha256": "0xcgzhlxd7ycfxmbgkwm04pdfjysygkka3jis4p45zy6mrackn4c"
   },
   "stable": {
    "version": [
@@ -37223,20 +38226,20 @@
  },
  {
   "ename": "git-messenger",
-  "commit": "e791293133f30e5d96c4b29e972f9016c06c476d",
-  "sha256": "1rnqsv389why13cy6462vyq12qc2zk58p01m3hsazp1gpfw2hfzn",
+  "commit": "2a2670edb1155f02d1cbe2600db84a82c8f3398b",
+  "sha256": "0nmxx7543x7cl40m69lmyb5fv68gzdwbr8dq18qbi5kapvhg5b8y",
   "fetcher": "github",
-  "repo": "syohex/emacs-git-messenger",
+  "repo": "emacsorphanage/git-messenger",
   "unstable": {
    "version": [
-    20170102,
-    440
+    20200321,
+    2337
    ],
    "deps": [
     "popup"
    ],
-   "commit": "83815915eb8c1cb47443ff34bca3fecf7d2edf3a",
-   "sha256": "1jkfzcn8gl3s5y2hwqkac7lm88q80hgcp66zvy7vnylka1scb6lz"
+   "commit": "2d64e62e33be9f881ebb019afc183caac9c62eda",
+   "sha256": "1w23qjc740bxj95gdzjcy3qldfmx4y19dhcrzh83l9wfz4y566c7"
   },
   "stable": {
    "version": [
@@ -37661,16 +38664,17 @@
   "repo": "charignon/github-review",
   "unstable": {
    "version": [
-    20200123,
-    523
+    20200314,
+    438
    ],
    "deps": [
     "dash",
+    "deferred",
     "ghub",
     "s"
    ],
-   "commit": "1de2d6d148e3604899270be36eb6b0385b837aac",
-   "sha256": "1g1j6c93aw9n9v7r20dzlnylkn4292vwi59l8hai49i1944hr00h"
+   "commit": "50c6bcc7cf4d7193577b3f74eea4dd72f2b7795b",
+   "sha256": "0khsxsqzx81y5krj06i8v84qsb3z86b1z17knyr1xizrd2lmraqp"
   }
  },
  {
@@ -38000,11 +39004,11 @@
   "repo": "jimhourihan/glsl-mode",
   "unstable": {
    "version": [
-    20191017,
-    2148
+    20200420,
+    1839
    ],
-   "commit": "43d906688a8e2fe650005806eb69bea131d9321a",
-   "sha256": "1783gimn1adfgs2xybz15nrx8wsz1xb4xk8mxrc18hyci7fwk04r"
+   "commit": "9bf168017eb3af7a396165a79a7b870572d59666",
+   "sha256": "13k4am1bk20b6pncg145g4p9abw42ksgaj0zq2bz7b4b8pnfdzp0"
   }
  },
  {
@@ -38218,11 +39222,11 @@
   "repo": "emacsorphanage/gnuplot",
   "unstable": {
    "version": [
-    20191212,
-    1801
+    20200322,
+    53
    ],
-   "commit": "a406143d52618638d908b6b0b1c1c90c045b83ee",
-   "sha256": "0vq7ha6z07x46pf7qig1f6p1rr8vyhj8vafrmq40h3gw5422vv8y"
+   "commit": "f0001c30010b2899e36d7d89046322467e923088",
+   "sha256": "1qnlcfzaihwc6kxdr1h2mrhccnhlwsdqwmcygxi2s01q2ifq1nc1"
   },
   "stable": {
    "version": [
@@ -38420,10 +39424,10 @@
  },
  {
   "ename": "go-add-tags",
-  "commit": "55d3b893bd68d3d2d86ecdbb4ed442edd256516a",
-  "sha256": "0nvas44rsvqzk2ay5bhzkbrnzql13vnxq9pk4lp4mvp86dda9qim",
+  "commit": "2a2670edb1155f02d1cbe2600db84a82c8f3398b",
+  "sha256": "0syra7h9wixiq3g4ydamvzw2vc0852zcx5ij0rhw103hrvhrzcjd",
   "fetcher": "github",
-  "repo": "syohex/emacs-go-add-tags",
+  "repo": "emacsorphanage/go-add-tags",
   "unstable": {
    "version": [
     20161123,
@@ -38461,8 +39465,8 @@
    "deps": [
     "auto-complete"
    ],
-   "commit": "939b4a677f2f843ea13d9dd90206d57111f0ceb9",
-   "sha256": "1yfw8y6czkqgxpyfdxwvkcrsmwbca7l0lr4jqmnpmm5m5rylcwr9"
+   "commit": "4acdcbdea79de6b3dee1c637eca5cbea0fdbe37c",
+   "sha256": "0i1hc089gb6a4mcgg56vn5l0q96wrlza2n08l4349s3dc2j559fb"
   },
   "stable": {
    "version": [
@@ -38520,10 +39524,10 @@
  },
  {
   "ename": "go-direx",
-  "commit": "032c0c3cd04f36f1bc66bb7d9d789d354c620a09",
-  "sha256": "0dq5d7fsld4hww8fl68c18qp6fl3781dqqwd98cg68bihw2wwni7",
+  "commit": "2a2670edb1155f02d1cbe2600db84a82c8f3398b",
+  "sha256": "0x9yrbbcwsc5kf88d1j75g02yndavgb4g4wwhy9ml58a6d6kq5y3",
   "fetcher": "github",
-  "repo": "syohex/emacs-go-direx",
+  "repo": "emacsorphanage/go-direx",
   "unstable": {
    "version": [
     20150316,
@@ -38581,10 +39585,10 @@
  },
  {
   "ename": "go-eldoc",
-  "commit": "6ce1190db06cc214746215dd27648eded5fe5140",
-  "sha256": "1k115dirfqxdnb6hdzlw41xdy2dxp38g3vq5wlvslqggha7gzhkk",
+  "commit": "2a2670edb1155f02d1cbe2600db84a82c8f3398b",
+  "sha256": "1x8qwmn8b2wc79dqqx89c3l1m9sj08hgdwh5lwrlp1l80vhfp3sr",
   "fetcher": "github",
-  "repo": "syohex/emacs-go-eldoc",
+  "repo": "emacsorphanage/go-eldoc",
   "unstable": {
    "version": [
     20170305,
@@ -38706,8 +39710,8 @@
     "cl-lib",
     "go-mode"
    ],
-   "commit": "53c76cddf54638dea5e4cae99ce0181de28e1064",
-   "sha256": "0fpdschrcbx2fjx01x5z84gk7pmicssxv23q9p88k6d11nj80iqc"
+   "commit": "734d5232455ffde088021ea5908849ac570e890f",
+   "sha256": "0228l3s3afmvm4cy3vwcpz3g2gkmyhqdq2kwwn1n5dsha8fzbdps"
   },
   "stable": {
    "version": [
@@ -38749,10 +39753,10 @@
  },
  {
   "ename": "go-impl",
-  "commit": "aa1a0845cc1a6970018b397d13394aaa8147e5d0",
-  "sha256": "09frwpwc080rfpwkb63yv47dyj741lrpyrp65sq2bn4sf03xw0cx",
+  "commit": "2a2670edb1155f02d1cbe2600db84a82c8f3398b",
+  "sha256": "1vi986ymza88cpjlxjz88na1w9dq4dr9d82vdbpav762vz828h9i",
   "fetcher": "github",
-  "repo": "syohex/emacs-go-impl",
+  "repo": "emacsorphanage/go-impl",
   "unstable": {
    "version": [
     20170125,
@@ -38799,11 +39803,11 @@
   "repo": "dominikh/go-mode.el",
   "unstable": {
    "version": [
-    20200112,
-    2140
+    20200425,
+    1740
    ],
-   "commit": "53c76cddf54638dea5e4cae99ce0181de28e1064",
-   "sha256": "0fpdschrcbx2fjx01x5z84gk7pmicssxv23q9p88k6d11nj80iqc"
+   "commit": "734d5232455ffde088021ea5908849ac570e890f",
+   "sha256": "0228l3s3afmvm4cy3vwcpz3g2gkmyhqdq2kwwn1n5dsha8fzbdps"
   },
   "stable": {
    "version": [
@@ -38907,8 +39911,8 @@
    "deps": [
     "go-mode"
    ],
-   "commit": "53c76cddf54638dea5e4cae99ce0181de28e1064",
-   "sha256": "0fpdschrcbx2fjx01x5z84gk7pmicssxv23q9p88k6d11nj80iqc"
+   "commit": "734d5232455ffde088021ea5908849ac570e890f",
+   "sha256": "0228l3s3afmvm4cy3vwcpz3g2gkmyhqdq2kwwn1n5dsha8fzbdps"
   },
   "stable": {
    "version": [
@@ -39033,17 +40037,26 @@
  },
  {
   "ename": "god-mode",
-  "commit": "2dff8dc08583048f9b7b4cb6d8f05a18dd4e8b42",
-  "sha256": "01xx2byjh6vlckaxamm2x2qzicd9qc8h6amyjg0bxz3932a4llaa",
+  "commit": "c4f8b0a0766bcff6b716b9e35da25c00b8a91abd",
+  "sha256": "0l8hdn227axan7ryx6z4fbk9nqsb50bmhwqxgy3g8g19vqhflhfr",
   "fetcher": "github",
-  "repo": "chrisdone/god-mode",
+  "repo": "emacsorphanage/god-mode",
   "unstable": {
    "version": [
-    20180117,
-    1134
+    20200413,
+    2144
    ],
-   "commit": "344167ed9b4c212273dd056e7481cf1373b461d0",
-   "sha256": "0y7phh7amrdphv9dkf0304z2knyas745ir59ybngh1a55dfc2mf4"
+   "commit": "1eb6ef3a4f67a805c5d6deb1e3895b6c853707d7",
+   "sha256": "0kqw6w72prhxbqvxccbrc80q82yfif0y99nfgqd60rfk9mpl369k"
+  },
+  "stable": {
+   "version": [
+    2,
+    16,
+    2
+   ],
+   "commit": "1eb6ef3a4f67a805c5d6deb1e3895b6c853707d7",
+   "sha256": "0kqw6w72prhxbqvxccbrc80q82yfif0y99nfgqd60rfk9mpl369k"
   }
  },
  {
@@ -39119,11 +40132,11 @@
   "repo": "jixiuf/golden-ratio-scroll-screen",
   "unstable": {
    "version": [
-    20170224,
-    229
+    20200419,
+    451
    ],
-   "commit": "44e947194d3e5cbe0fd2f3c4886a4e6e1a0c0791",
-   "sha256": "1wd19jskpp9w0lrg0ky3hvnliq9l09kmxy59hdp06hsdmvr31jwv"
+   "commit": "1b6ff0e3e8822423335d3f7d88c1fcb4cf43ce42",
+   "sha256": "0kniznqdbaim9llf76zi0cbwpa21xcf07w970hrspffjpzkcadnv"
   }
  },
  {
@@ -39155,16 +40168,16 @@
     20180221,
     2015
    ],
-   "commit": "910be7a94367618fd0fd25eaabbee4fdc0ac7092",
-   "sha256": "08gskshgfwxhmm9i4vgd4q7kqd5i7yihqh33v6r07br6kqd0g995"
+   "commit": "738671d3881b9731cc63024d5d88cf28db875626",
+   "sha256": "0jkiz4py59jjnkyxbxifpf7bsar11lbgmj5jiq2kic5k03shkn9c"
   }
  },
  {
   "ename": "gom-mode",
-  "commit": "0a1e5f505e048b36c12de36b23b779beeaefc45f",
-  "sha256": "07zr38gzqb3ds9mpf94c1vhl1rqd0cjh4g4j2bz86q16c0rnmp7m",
+  "commit": "2a2670edb1155f02d1cbe2600db84a82c8f3398b",
+  "sha256": "0qwqvkdvxmwnijj60jvqzwvikw1avrg6i66cl74qbqqcqkhazbpz",
   "fetcher": "github",
-  "repo": "syohex/emacs-gom-mode",
+  "repo": "emacsorphanage/gom-mode",
   "unstable": {
    "version": [
     20131008,
@@ -39175,6 +40188,24 @@
   }
  },
  {
+  "ename": "gomacro-mode",
+  "commit": "ce33236843b8eb266769f588e8d8341b056ccf2c",
+  "sha256": "0gfx9z8cb3lakr1c6irjmcb7fv3val349vxibwlxjbmax689r5v5",
+  "fetcher": "github",
+  "repo": "storvik/gomacro-mode",
+  "unstable": {
+   "version": [
+    20200326,
+    1103
+   ],
+   "deps": [
+    "go-mode"
+   ],
+   "commit": "3112e56d2d5e645a3e0fd877f3e810dbccbf989f",
+   "sha256": "1f3y46q7djr1riz7x26gc7a1gf9p8sfdrnlqyiwzmi9vkk6h8wdz"
+  }
+ },
+ {
   "ename": "google",
   "commit": "45237d37da807559498bb958184e05109f880070",
   "sha256": "11a521cq5bj7afl7bqiilg0c81dy00lnhak7h3d9c9kwg7kfljiq",
@@ -39200,8 +40231,8 @@
     20180130,
     1736
    ],
-   "commit": "305ac8725a166ed42e3f5dd3f80d6de2cf840ef1",
-   "sha256": "05znbhy98pyc6r7dii8drw4p8vy6f5b3zk0hmlw8w73vcwia59ay"
+   "commit": "43f20c361143beba2e0f3f737597f2f1f8725160",
+   "sha256": "0md3y2vr113sdgyf5q692fzif10bl0is96ly2hfgh6z27awb76l6"
   }
  },
  {
@@ -39484,35 +40515,6 @@
   }
  },
  {
-  "ename": "goto-gem",
-  "commit": "a52b516b7b10bdada2f64499c8f43f85a236f254",
-  "sha256": "0i79z1isdbnqmz5rlqjjys68l27nl90m1gzks4f9d6dsgfryhgwx",
-  "fetcher": "gitlab",
-  "repo": "pidu/goto-gem",
-  "unstable": {
-   "version": [
-    20140729,
-    1845
-   ],
-   "deps": [
-    "s"
-   ],
-   "commit": "e3206f11f48bb7e798514a4ca2c2f60649613e5e",
-   "sha256": "0j2hdxqfsifm0d8ilwcw7np6mvn4xm58xglzh42gigj2fxv87g99"
-  },
-  "stable": {
-   "version": [
-    1,
-    2
-   ],
-   "deps": [
-    "s"
-   ],
-   "commit": "6f5bd405c096ef879fed1298c09d0daa0bae5dac",
-   "sha256": "188q7jr1y872as3w32m8lf6vwl2by1ibgdk6zk7dhpcjwd0ik7x7"
-  }
- },
- {
   "ename": "goto-last-change",
   "commit": "d68945f5845e5e44fb6c11726a56acd4dc56e101",
   "sha256": "1yl9p95ls04bkmf4d6az72pycp27bv7q7wxxzvj8sj97bgwvwajx",
@@ -39592,8 +40594,8 @@
     "magit-popup",
     "s"
    ],
-   "commit": "5d909f3e947adbce0482a0a00ede8654499cd28b",
-   "sha256": "122r7clj081gwxgw03d162garrjw604ynfpyzhawix0wh8hwmg9z"
+   "commit": "3decde69e9aa0bcc8a831e3f87acae26c2151c4a",
+   "sha256": "1zvnhcbqqiv8671x3zizrpm789ci8z74xb6qr2ik6h4z79agmri8"
   },
   "stable": {
    "version": [
@@ -39828,8 +40830,8 @@
     "s",
     "websocket"
    ],
-   "commit": "ffff850b77ebbab827538f6ebee872b2638586bc",
-   "sha256": "1kxcnivlbv7dl09y09j72368sycqs96hk5nf7vsnqlfrrbc0337a"
+   "commit": "709bf3124b6e130efcede8b38fc2fed38699e19b",
+   "sha256": "1lz74qqzznv5c6pnsnnp0x0k16q663pkqakvwpg69lavcg68ysxh"
   },
   "stable": {
    "version": [
@@ -39991,11 +40993,11 @@
   "repo": "ppareit/graphviz-dot-mode",
   "unstable": {
    "version": [
-    20200203,
-    1919
+    20200304,
+    432
    ],
-   "commit": "0a4197d1c2b440db37f3e77cba01fb2c00a1a88d",
-   "sha256": "0a2p4vnchb63275j0w9fhkq1x4dkyyvaxqpyhx41zlg2zfzvcpwh"
+   "commit": "3642a0a5f41a80c8ecef7c6143d514200b80e194",
+   "sha256": "16aq9zz4dnccngk9q1k2qa0mwd63cycwrzdkvzg4nn6ikq6w7wnp"
   },
   "stable": {
    "version": [
@@ -40232,21 +41234,6 @@
   }
  },
  {
-  "ename": "grin",
-  "commit": "855ea20024b606314f8590129259747cac0bcc97",
-  "sha256": "0rak710fp9c7wx39qn4dc9d0xfjr5w7hwklxh99v1x1ihkla9378",
-  "fetcher": "bitbucket",
-  "repo": "dariusp686/emacs-grin",
-  "unstable": {
-   "version": [
-    20110806,
-    658
-   ],
-   "commit": "f541aa22da52b8ff2f7af79bc5e4b58b9f5db8be",
-   "sha256": "0rqpgc50z86j4waijfm6kw4zjmzqfii6nnvyix4rkd4y3ryny1x2"
-  }
- },
- {
   "ename": "grip-mode",
   "commit": "de97f1c15b3ab53ca5e314b679c289705302bb64",
   "sha256": "162ss93hbkxv5zd0vid6xh77ln7bsx2ngzr7h1y4dmcg36npmy5d",
@@ -40254,20 +41241,20 @@
   "repo": "seagle0128/grip-mode",
   "unstable": {
    "version": [
-    20200217,
-    1151
+    20200312,
+    1136
    ],
-   "commit": "061f78d0f1699288e7abc7eaa0dd13749524464a",
-   "sha256": "0dg4aq4x2wn7mwv04nydkz773ip3n3ps7j1kw4mcrvv65m62ks9y"
+   "commit": "9615c4774727a719d38313a679d70f2a2c6aca68",
+   "sha256": "01imyi1l33ng78m6c5g4pma5gy4j7jy7dwmqwsqgwbws08qdbwgr"
   },
   "stable": {
    "version": [
     2,
     2,
-    0
+    1
    ],
-   "commit": "25650c9412df8b57c6546ffecfa5a9f6c0c362c8",
-   "sha256": "06xjr34srrmbbxaml45y3f6cq1n1q6a0rfjd54zq30fwanplklqk"
+   "commit": "9615c4774727a719d38313a679d70f2a2c6aca68",
+   "sha256": "01imyi1l33ng78m6c5g4pma5gy4j7jy7dwmqwsqgwbws08qdbwgr"
   }
  },
  {
@@ -40421,14 +41408,14 @@
   "repo": "greduan/emacs-theme-gruvbox",
   "unstable": {
    "version": [
-    20200216,
-    2257
+    20200307,
+    1522
    ],
    "deps": [
     "autothemer"
    ],
-   "commit": "d5218aec3283d21566cb2c5619a19268743fc07e",
-   "sha256": "1cp7imprwk5vvgsfskpvjzxypq06xf5pqjhicvnyg4386ckznfib"
+   "commit": "647796a42951a807ee1694a648442b3d83057e43",
+   "sha256": "0j0w6g0pr1p90wjyrwl21y0hlvjms8ba4yw90sd89lnzn7ncscm8"
   },
   "stable": {
    "version": [
@@ -40532,6 +41519,30 @@
   }
  },
  {
+  "ename": "gtk-variant",
+  "commit": "12bcbebf4b604e29cee443825c56336f5249e088",
+  "sha256": "1dcj0k2j89yx7k0cqqinb4xnhl0i2yivlvrb87xbj89zbijss967",
+  "fetcher": "github",
+  "repo": "bepvte/gtk-variant.el",
+  "unstable": {
+   "version": [
+    20200416,
+    2136
+   ],
+   "commit": "4462a5ab071ec001734e92d1ac2e5fa9721b94bd",
+   "sha256": "0v2h846k9xv47am66nv4piqhvn74xijhp2bq84v3wpls4msvfk70"
+  },
+  "stable": {
+   "version": [
+    1,
+    0,
+    4
+   ],
+   "commit": "4462a5ab071ec001734e92d1ac2e5fa9721b94bd",
+   "sha256": "0v2h846k9xv47am66nv4piqhvn74xijhp2bq84v3wpls4msvfk70"
+  }
+ },
+ {
   "ename": "guess-language",
   "commit": "6e78cb707943fcaaba0414d7af2af717efce84d0",
   "sha256": "1p8j18hskvsv4pn3cal5s91l19hgshq8hpclmp84z9hlnj9g9fpm",
@@ -40539,14 +41550,14 @@
   "repo": "tmalsburg/guess-language.el",
   "unstable": {
    "version": [
-    20190325,
-    1436
+    20200326,
+    1725
    ],
    "deps": [
     "cl-lib"
    ],
-   "commit": "e64d88f287a547198e4c96e2fff543e103f2b456",
-   "sha256": "0dmbr7gylnc1dsjaldfw51nmli66lizs1w5a8p1zacpf7w5kf7x2"
+   "commit": "f4ce91eba3c479d08fedf0a3ced6c1265a7838ca",
+   "sha256": "0z7agqi5sgjjidhmnrv7615737xk7p1s6pdhr6swjcr117dq44fm"
   }
  },
  {
@@ -40798,14 +41809,14 @@
   "repo": "hhvm/hack-mode",
   "unstable": {
    "version": [
-    20191218,
-    1628
+    20200421,
+    157
    ],
    "deps": [
     "s"
    ],
-   "commit": "fd6a661b091490920804d043303596f9e60a5dd7",
-   "sha256": "1x4nymp53rdm1d0jjkz0mha4d8y8wzmakf65d56fn5mnziqh2l5d"
+   "commit": "330df61f7297344cff9cf9e2d802a4d041279de3",
+   "sha256": "00g9h96kb9d3qg544x9143hx4nc5crw67cq93ip4mrh3d86rkpc1"
   },
   "stable": {
    "version": [
@@ -40820,30 +41831,6 @@
   }
  },
  {
-  "ename": "hack-time-mode",
-  "commit": "6481dc9f487c5677f2baf1bffdf8f2297185345e",
-  "sha256": "0vz72ykl679a69sb0r2h9ymcr3xms7bij1w6vxndlfw5v9hg3hk5",
-  "fetcher": "gitlab",
-  "repo": "marcowahl/hack-time-mode",
-  "unstable": {
-   "version": [
-    20190827,
-    956
-   ],
-   "commit": "74465859154314228482b4f41fcda726c82c71c9",
-   "sha256": "1q9k7r09y532fcvzjkgcqnk5hdms55hrshawgxhiz3qwxxc3svsi"
-  },
-  "stable": {
-   "version": [
-    0,
-    1,
-    1
-   ],
-   "commit": "df8e86ab04beb655bf5b3860f8bea41cf1fbc3eb",
-   "sha256": "1n4kirb65r4s8k2kiga857fk8zylk14ibq0k2vdx5b8axbz71ggh"
-  }
- },
- {
   "ename": "hacker-typer",
   "commit": "3416586d4d782cdd61a56159c5f80a0ca9b3ddf4",
   "sha256": "0vf18hylhszvplam6c4yynr53zc3n816p9k36gywm6awwblfpyfb",
@@ -41273,11 +42260,11 @@
   "repo": "haskell/haskell-mode",
   "unstable": {
    "version": [
-    20200221,
-    1959
+    20200408,
+    247
    ],
-   "commit": "35363a98445e27dad532d134d3ce863f8d95dd91",
-   "sha256": "1m3mhvaj5b7vavv507x92mzhm7r4clqs1via8zsza4v3ccbsgjws"
+   "commit": "bbdbc0e9231f49a45ce787ebfb3f2b019615bf61",
+   "sha256": "0qln2zc4zx8w4ffplp6b17sksg578x61hyvwv1l79pc8bmpgn0ww"
   },
   "stable": {
    "version": [
@@ -41545,11 +42532,11 @@
   "repo": "purcell/emacs-hcl-mode",
   "unstable": {
    "version": [
-    20200225,
-    2130
+    20200315,
+    2129
    ],
-   "commit": "6599520a350e01354300a962463ecbf5564db622",
-   "sha256": "18vs2cwa1pyly2kh2lapm10n8akam5fvsx8rvgp41lcwrdxs2323"
+   "commit": "c3d1158ad1a64f06aa8986ab1cdea6b7fbdd4bf7",
+   "sha256": "0qza5pgpzcabik3592dk25glsv9zcg84pn1jzm43f9b1j9w5iv4i"
   },
   "stable": {
    "version": [
@@ -41607,30 +42594,30 @@
   "repo": "emacs-helm/helm",
   "unstable": {
    "version": [
-    20200227,
-    923
+    20200426,
+    534
    ],
    "deps": [
     "async",
     "helm-core",
     "popup"
    ],
-   "commit": "21e778bc8858b082ed45e3d0bb287ca9d13e101b",
-   "sha256": "14rcgdmb7vlxzkfprps2svzk8r9198fzzkkrls8cafw9zg4fimxg"
+   "commit": "3fddd8c425c918074a4bda9982ce90c29e45adbd",
+   "sha256": "1vhdiwvv2s9gw6mh4dr1blqlyy1k0cvm4wx833cwzgdg5iakan1f"
   },
   "stable": {
    "version": [
     3,
     6,
-    0
+    1
    ],
    "deps": [
     "async",
     "helm-core",
     "popup"
    ],
-   "commit": "ac3c49be00df1efecc76ef0b33db2884039579b8",
-   "sha256": "0miq2q52pbicijp7pmj0widk252qixswywc03d120s4hya2b7vd7"
+   "commit": "55281e1390bae54310dc880ae3805e0595d5c1bd",
+   "sha256": "1sghq7xjd4a9ysh3cywd5rss9y47rwk82y86cwh1g7p0jv89gqaf"
   }
  },
  {
@@ -41654,10 +42641,10 @@
  },
  {
   "ename": "helm-ack",
-  "commit": "258d447778525c26c65a5819ba1edc00e2bb65e5",
-  "sha256": "1a8sc5gd2g57dl9g18wyydfmihy74yniwhjr27h7vxylnf2g3pni",
+  "commit": "2a2670edb1155f02d1cbe2600db84a82c8f3398b",
+  "sha256": "124w7grwindyv86xfshfm70h0xfq29ns067pchk8dcbjbgh9yl7b",
   "fetcher": "github",
-  "repo": "syohex/emacs-helm-ack",
+  "repo": "emacsorphanage/helm-ack",
   "unstable": {
    "version": [
     20141030,
@@ -41724,31 +42711,31 @@
  },
  {
   "ename": "helm-ag",
-  "commit": "81f0f525680fea98e804f39dbde1dada887e8821",
-  "sha256": "050qh5xqh8lwkgmz3jxm8gql5nd7bq8sp9q6mzm2z7367qy4qqyf",
+  "commit": "2a2670edb1155f02d1cbe2600db84a82c8f3398b",
+  "sha256": "0jzfycbaz88r6scsiw74prcnbvilsaphljdys6i5k9g5rhn5sxh5",
   "fetcher": "github",
-  "repo": "syohex/emacs-helm-ag",
+  "repo": "emacsorphanage/helm-ag",
   "unstable": {
    "version": [
-    20170209,
-    1545
+    20200426,
+    1427
    ],
    "deps": [
     "helm"
    ],
-   "commit": "2fc02c4ead29bf0db06fd70740cc7c364cb650ac",
-   "sha256": "1gnn0byywbld6afcq1vp92cjvy4wlag9d1wgymnqn86c3b1bcf21"
+   "commit": "6387437acf687a64af66138649f8604d65eb6789",
+   "sha256": "177grx9flqg6d9vcl2ln7gflvh3r2in8va39sgd7a4vl6qn2w1lh"
   },
   "stable": {
    "version": [
     0,
-    58
+    59
    ],
    "deps": [
     "helm"
    ],
-   "commit": "39ed137823665fca2fa5b215f7c3e8701173f7b7",
-   "sha256": "0a6yls52pkqsaj6s5nsi70kzpvssdvb87bfnp8gp26q2y3syx4ni"
+   "commit": "79373d7f1616d175a5e0730e1e0c3855f04bd945",
+   "sha256": "0vsz2b5qw4qahlf74059z4p1grinhfz28f0psw4c3qf4jasv3b9j"
   }
  },
  {
@@ -41868,26 +42855,22 @@
  },
  {
   "ename": "helm-bibtex",
-  "commit": "f4118a7721435240cf8489daa4dd39369208855b",
-  "sha256": "037pqgyyb2grg88yfxx1r8yp4lrgz2fyzz9fbbp34l8s6vk3cp4z",
+  "commit": "873ae2af16e03c8e10494be3f0e7840eb27172a3",
+  "sha256": "0ciz4lczfv9b4n12jd9r5w81yj884pmi53xmm9cqzvrv3hh9n8hs",
   "fetcher": "github",
   "repo": "tmalsburg/helm-bibtex",
   "unstable": {
    "version": [
-    20191028,
-    1313
+    20200415,
+    1311
    ],
    "deps": [
-    "biblio",
+    "bibtex-completion",
     "cl-lib",
-    "dash",
-    "f",
-    "helm",
-    "parsebib",
-    "s"
+    "helm"
    ],
-   "commit": "d4471232be26793fbf56c0ac3690b5f537c378b9",
-   "sha256": "1bkzhic6qckb267025il1r3xcpz99kisphxiafni1pxvf9jafr0j"
+   "commit": "1e5b50652d1f5189cfeb6b5ce3c4437e0239d4f5",
+   "sha256": "05xl3x98w4cr81zp04dcqy5xnims8x3k77qxzddcqcrvi9zjlfc7"
   },
   "stable": {
    "version": [
@@ -42041,6 +43024,37 @@
   }
  },
  {
+  "ename": "helm-bufler",
+  "commit": "4ba5657f237eea9073a46a4127be5795be07c687",
+  "sha256": "0wb1ds3acc36hl7798phbvhygfljjc6br11lf4y3043q8v0lz6gi",
+  "fetcher": "github",
+  "repo": "alphapapa/bufler.el",
+  "unstable": {
+   "version": [
+    20200409,
+    1253
+   ],
+   "deps": [
+    "bufler",
+    "helm"
+   ],
+   "commit": "b2b260e4f9e8ba76bb8b4d71344c7b75e05ac44f",
+   "sha256": "0ww7z2xz185i97wa1rnmqwlx2mvwx69hhlyi5m3sm0nkyckb2hjs"
+  },
+  "stable": {
+   "version": [
+    0,
+    2
+   ],
+   "deps": [
+    "bufler",
+    "helm"
+   ],
+   "commit": "d6c79f04b7d288174d8294fb30488b567586364d",
+   "sha256": "0l35ssjry15wqcxnr8rf5lrv856pgnm0k2d4d6ag14ypjx9nfhw3"
+  }
+ },
+ {
   "ename": "helm-bundle-show",
   "commit": "2f10f7387cca102696c38af1d8dc0fe5da5e366f",
   "sha256": "1af5g233kjf04m2fryizk51a1s2mcmj36zip5nyb8skcsfl4riq7",
@@ -42462,26 +43476,26 @@
   "repo": "emacs-helm/helm",
   "unstable": {
    "version": [
-    20200207,
-    1836
+    20200424,
+    607
    ],
    "deps": [
     "async"
    ],
-   "commit": "21e778bc8858b082ed45e3d0bb287ca9d13e101b",
-   "sha256": "14rcgdmb7vlxzkfprps2svzk8r9198fzzkkrls8cafw9zg4fimxg"
+   "commit": "3fddd8c425c918074a4bda9982ce90c29e45adbd",
+   "sha256": "1vhdiwvv2s9gw6mh4dr1blqlyy1k0cvm4wx833cwzgdg5iakan1f"
   },
   "stable": {
    "version": [
     3,
     6,
-    0
+    1
    ],
    "deps": [
     "async"
    ],
-   "commit": "ac3c49be00df1efecc76ef0b33db2884039579b8",
-   "sha256": "0miq2q52pbicijp7pmj0widk252qixswywc03d120s4hya2b7vd7"
+   "commit": "55281e1390bae54310dc880ae3805e0595d5c1bd",
+   "sha256": "1sghq7xjd4a9ysh3cywd5rss9y47rwk82y86cwh1g7p0jv89gqaf"
   }
  },
  {
@@ -42645,14 +43659,14 @@
   "repo": "emacs-helm/helm-dictionary",
   "unstable": {
    "version": [
-    20191110,
-    2202
+    20200406,
+    1632
    ],
    "deps": [
     "helm"
    ],
-   "commit": "6a21ac1ba424ffa87b3b3e1b53d0fdd529844a28",
-   "sha256": "1qpcly4v7yf6ncp951gl1c18riln86xgyasf66n56qj26mfq8bhq"
+   "commit": "1dfec049c7851754a5967329a60e9e9a9f805423",
+   "sha256": "042rn38myq8b2024mdpisakmqysp34mmhvbdnw433vl9qxw6pikd"
   }
  },
  {
@@ -42802,16 +43816,16 @@
   "repo": "emacs-helm/helm-emms",
   "unstable": {
    "version": [
-    20191111,
-    1954
+    20200322,
+    1309
    ],
    "deps": [
     "cl-lib",
     "emms",
     "helm"
    ],
-   "commit": "f0bf6b307f9747ba16b3f582e8364a5012e41465",
-   "sha256": "0wldy81xyb96kg1pz6l2i463pi83qz84m1rmiff7866w9rl1fifd"
+   "commit": "37e5aa029abfa5a5c48636314de8157142944fa2",
+   "sha256": "0r1ai6xhzayyik30w2sx9n62bxxwm12vfmjspv0daqif9az8y3vg"
   },
   "stable": {
    "version": [
@@ -42989,15 +44003,28 @@
   "repo": "emacs-helm/helm-exwm",
   "unstable": {
    "version": [
-    20180827,
-    837
+    20200325,
+    1022
+   ],
+   "deps": [
+    "exwm",
+    "helm"
+   ],
+   "commit": "00ddb4d2a127087a0b99f0a440562bd54408572d",
+   "sha256": "0g4k01ps14bp2az8v6dcag9llg045k2b4kdis81xx4lvw76znr9v"
+  },
+  "stable": {
+   "version": [
+    0,
+    0,
+    2
    ],
    "deps": [
     "exwm",
     "helm"
    ],
-   "commit": "e21c6ffabadd2fe8d6c7805b6027cc59a6f914e9",
-   "sha256": "11fyqk3h9cqynifc2zzqn0czrcj082wkdg1qhbj97nl4gcj787rl"
+   "commit": "00ddb4d2a127087a0b99f0a440562bd54408572d",
+   "sha256": "0g4k01ps14bp2az8v6dcag9llg045k2b4kdis81xx4lvw76znr9v"
   }
  },
  {
@@ -43075,15 +44102,15 @@
   "repo": "emacs-helm/helm-firefox",
   "unstable": {
    "version": [
-    20161202,
-    1317
+    20200306,
+    1408
    ],
    "deps": [
     "cl-lib",
     "helm"
    ],
-   "commit": "b290734807ee68e7a7aface2af781d86e1fd5950",
-   "sha256": "02m05fy5qf5xfd5dh402pibbzwzmcfgqymqigkbdfyjbfbljl3zx"
+   "commit": "7065e01188ed17b86a7b4f01b95ace575a15eef1",
+   "sha256": "0kk7d73hcrxcnsrq803zp5lh1hyk30nahb6wdlalqvkczksgpkml"
   },
   "stable": {
    "version": [
@@ -43641,20 +44668,20 @@
  },
  {
   "ename": "helm-gtags",
-  "commit": "81f0f525680fea98e804f39dbde1dada887e8821",
-  "sha256": "1kbpfqhhbxmp3f70h91x2fws9mhx87zx4nzjjl29lpl93vf8xckl",
+  "commit": "2a2670edb1155f02d1cbe2600db84a82c8f3398b",
+  "sha256": "0qcn6hmm26irlljcq93c6ap0k1kihdakr2jpgzvdbm8km2cxrm47",
   "fetcher": "github",
-  "repo": "syohex/emacs-helm-gtags",
+  "repo": "emacsorphanage/helm-gtags",
   "unstable": {
    "version": [
-    20170116,
-    529
+    20200409,
+    1559
    ],
    "deps": [
     "helm"
    ],
-   "commit": "108e93d0d099ebb7b98847388f368311cf177033",
-   "sha256": "0hfshcnzrrvf08yw4xz5c93g9pw6bvjp2bmv0s6acrsjqgwhx158"
+   "commit": "25b81d7774622911c1e95d9020209ae4ace1542b",
+   "sha256": "14k0yrf8p015gsgdgq8ykvrjjhd1brq2gsfx7m3jv0p789yxw7zk"
   },
   "stable": {
    "version": [
@@ -43845,10 +44872,10 @@
  },
  {
   "ename": "helm-ispell",
-  "commit": "edc42b26027dcd7daf0d6f2bd19ca4736fc12d6d",
-  "sha256": "0qyj6whgb2p0v231wn6pvx4awvl1wxppppqqbx5255j8r1f3l1b0",
+  "commit": "2a2670edb1155f02d1cbe2600db84a82c8f3398b",
+  "sha256": "14slvcjyqd1ryymh63an7r2z1882dybwpq73bb50xkwrk7rs0389",
   "fetcher": "github",
-  "repo": "syohex/emacs-helm-ispell",
+  "repo": "emacsorphanage/helm-ispell",
   "unstable": {
    "version": [
     20151231,
@@ -44019,8 +45046,8 @@
     "helm",
     "lean-mode"
    ],
-   "commit": "c9dffcda2951c22c483d1d22411d13bc132ce609",
-   "sha256": "1lj6j21hzya41fmlnw7faqmhvsdcgcidwibyvicgsb0gm6qqipjf"
+   "commit": "65b55b1711fb61129312044d5ac7e6a2c2ee245c",
+   "sha256": "1zmw8950qhry2ixk2ng0pg4j0vwx11nvjlrpab9jg6x47ys9j65n"
   }
  },
  {
@@ -44166,16 +45193,16 @@
   "repo": "emacs-lsp/helm-lsp",
   "unstable": {
    "version": [
-    20200103,
-    1659
+    20200420,
+    1546
    ],
    "deps": [
     "dash",
     "helm",
     "lsp-mode"
    ],
-   "commit": "6f62659cc528b7e37ffcc8fb356633acd7031be8",
-   "sha256": "1gf3pzrcxrymlj677mghxf4yrqiqa90y3ip1g1f1h186wnwa2vcg"
+   "commit": "db243993ea70be6343949759b4f2c556d9130751",
+   "sha256": "0yaik74g61iyrg9inarl7s9r6vnj75q5vxzxc5bkl224w49hf5bh"
   }
  },
  {
@@ -44186,16 +45213,30 @@
   "repo": "montag451/helm-lxc",
   "unstable": {
    "version": [
-    20190116,
-    2050
+    20200323,
+    816
    ],
    "deps": [
     "cl-lib",
     "helm",
     "lxc-tramp"
    ],
-   "commit": "a4e17dda329ec39a3dac5751ddcef1145b3d91c1",
-   "sha256": "1z6d752682b21ydp7s5a9jkhjqw7nbascv21qcs9418ydisl8q8d"
+   "commit": "37fe2d7ed97967edf59a3b68b1434910516ae24f",
+   "sha256": "1xnkwmdcdjfvslahhslw2xnlcym9fvb3m8384c455bas6s180qxh"
+  },
+  "stable": {
+   "version": [
+    0,
+    2,
+    0
+   ],
+   "deps": [
+    "cl-lib",
+    "helm",
+    "lxc-tramp"
+   ],
+   "commit": "02812daf09d5ffb02abef7a8e0fa1f7b7c472d67",
+   "sha256": "14x69laf6mfz766w6lrzj5a430jr0lrilk60ywc6i1wlpcs2v10v"
   }
  },
  {
@@ -44348,16 +45389,17 @@
   "repo": "emacs-helm/helm-navi",
   "unstable": {
    "version": [
-    20181226,
-    29
+    20200401,
+    904
    ],
    "deps": [
     "helm",
+    "helm-org",
     "navi-mode",
     "s"
    ],
-   "commit": "3b9abcc39ce7c657bc2dcc054b850dc2a7cf0448",
-   "sha256": "1kxv8qx7s51fnzrslwqrgayqvyq30ycnb84p5qy7jf0rf69hxxjh"
+   "commit": "9bba79119edd8959d26484326c2f6868b7d942c0",
+   "sha256": "136shiqwr7k95gqywrlqqykx1pgpvyjbfzggwj7q1akqjslxfffn"
   }
  },
  {
@@ -44425,10 +45467,10 @@
  },
  {
   "ename": "helm-open-github",
-  "commit": "81f0f525680fea98e804f39dbde1dada887e8821",
-  "sha256": "1wqlwg21s9pjgcrwr8kdrppinmjn235nadkp4003g0md1d64zxpx",
+  "commit": "2a2670edb1155f02d1cbe2600db84a82c8f3398b",
+  "sha256": "1lqjaprgybs4svnrgxvnbbzrkibgkf1zvhbg4ipiljz7h1byzqs7",
   "fetcher": "github",
-  "repo": "syohex/emacs-helm-open-github",
+  "repo": "emacsorphanage/helm-open-github",
   "unstable": {
    "version": [
     20170220,
@@ -44462,14 +45504,14 @@
   "repo": "emacs-helm/helm-org",
   "unstable": {
    "version": [
-    20191229,
-    635
+    20200311,
+    633
    ],
    "deps": [
     "helm"
    ],
-   "commit": "8457e1e46227bf87726e05c42cec5a4b51c2ef7b",
-   "sha256": "0kcjhwwi492n9m2w894hvdavfvhj45zygy7bwvx103wvpay5h6h6"
+   "commit": "b7a18dfc17e8b933956d61d68c435eee03a96c24",
+   "sha256": "0sbk8c05v28xz7mdpzrlawn5iwf3hkkr1fj8lsi861l4fhjbmcap"
   },
   "stable": {
    "version": [
@@ -44484,6 +45526,42 @@
   }
  },
  {
+  "ename": "helm-org-multi-wiki",
+  "commit": "536cf8f9a0b16e6e9bda30de67d0da44bb1b5877",
+  "sha256": "0wk08m6y2rvjbj28h3hqf9w3cgx0ykiv8z6f6kqjfpik8fl2bzbj",
+  "fetcher": "github",
+  "repo": "akirak/org-multi-wiki",
+  "unstable": {
+   "version": [
+    20200419,
+    1833
+   ],
+   "deps": [
+    "dash",
+    "helm",
+    "helm-org",
+    "org-multi-wiki",
+    "org-ql"
+   ],
+   "commit": "aef5975ac18d7cb101c0fb688333cc241782a8a0",
+   "sha256": "1m3p839wkrvf7n2467czj03rljv43bk32p7vlzdp5zby22bn7nag"
+  },
+  "stable": {
+   "version": [
+    0,
+    4,
+    0
+   ],
+   "deps": [
+    "dash",
+    "org-multi-wiki",
+    "org-ql"
+   ],
+   "commit": "80791ea872939df0578dc3a2992a2f7fd5618971",
+   "sha256": "0avg5xwnb3c9ylj9dqdcqmh8kykl98jsr6cl3rrivkj7l47i1rl0"
+  }
+ },
+ {
   "ename": "helm-org-rifle",
   "commit": "f39cc94dde5aaf0d6cfea5c98dd52cdb0bcb1615",
   "sha256": "0hx764vql2qgw9i8qrr3kkn23lw6jx3x604dm1y33ig6a15gy3a3",
@@ -44633,21 +45711,21 @@
  },
  {
   "ename": "helm-perldoc",
-  "commit": "81f0f525680fea98e804f39dbde1dada887e8821",
-  "sha256": "1qx0g81qcqanjiz5fxysagjhsxaj31g6nsi2hhdgq4x4nqrlmrhb",
+  "commit": "2a2670edb1155f02d1cbe2600db84a82c8f3398b",
+  "sha256": "1xl075bg35lc48zxnwbvyr7dqcz8cxk3v87i9v506kqwfmfpiz95",
   "fetcher": "github",
-  "repo": "syohex/emacs-helm-perldoc",
+  "repo": "emacsorphanage/helm-perldoc",
   "unstable": {
    "version": [
-    20160918,
-    556
+    20200315,
+    1716
    ],
    "deps": [
     "deferred",
     "helm-core"
    ],
-   "commit": "1979f9f67814c11ec9498502237c89a5e1153100",
-   "sha256": "0fvjw8sqnwnjx978y7fghvgp5dznx31hx0pjp4iih01xa1hcwbnc"
+   "commit": "6f3526f07f3df3059dbde779f8e681f5f1fee6ea",
+   "sha256": "1g7f2vdvzh9qhk8lviii86w7cb06a60kz6gvv8gnbqx88mndqclq"
   },
   "stable": {
    "version": [
@@ -44911,10 +45989,10 @@
  },
  {
   "ename": "helm-pydoc",
-  "commit": "81f0f525680fea98e804f39dbde1dada887e8821",
-  "sha256": "1sh7gqqiwk85kx89l1sihlkb8ff1g9n460nwj1y1bsrpfl6if4j7",
+  "commit": "2a2670edb1155f02d1cbe2600db84a82c8f3398b",
+  "sha256": "0a2vn7xgvcil8vp40jiljff83hwb2ysb240amd8darxbfxz1j9mi",
   "fetcher": "github",
-  "repo": "syohex/emacs-helm-pydoc",
+  "repo": "emacsorphanage/helm-pydoc",
   "unstable": {
    "version": [
     20160918,
@@ -45140,10 +46218,10 @@
  },
  {
   "ename": "helm-robe",
-  "commit": "e7018f57f6f0e4bd71e172ae23c050b44276581b",
-  "sha256": "1gi4nkm9xvnxv0frmhiiw8dkmnmhfpr9n0b6jpidlvr8xr4s5kyw",
+  "commit": "2a2670edb1155f02d1cbe2600db84a82c8f3398b",
+  "sha256": "143azbrj32mk0xv0i7wpvwcj4lqvphbjj3rbcpwnx76rywi3iqp7",
   "fetcher": "github",
-  "repo": "syohex/emacs-helm-robe",
+  "repo": "emacsorphanage/helm-robe",
   "unstable": {
    "version": [
     20151209,
@@ -45202,8 +46280,8 @@
     "helm",
     "rtags"
    ],
-   "commit": "3d025d9c97359442f7190ec42a63ff7e5fd85a9a",
-   "sha256": "1c8llhbhvrv5kwmci7rlsjqv3gr4gxi45g6c21fqrblyhas95s3n"
+   "commit": "a42298e80dffae9a6b2e9816506174542f3cbbb7",
+   "sha256": "1674752bbyb7890na5p846dxcvh83zn0a6z19wras1x5c59s24i3"
   },
   "stable": {
    "version": [
@@ -45571,14 +46649,14 @@
   "repo": "emacsorphanage/helm-swoop",
   "unstable": {
    "version": [
-    20200121,
-    1859
+    20200321,
+    231
    ],
    "deps": [
     "helm"
    ],
-   "commit": "9324d8c196ab2a86fde7142f159e081b87a4d277",
-   "sha256": "1nznfrnzfbxa5qlwbddjma96k93f9hr7jv9sqx3krc0i1061nbg8"
+   "commit": "069dc0b3970f1e796e34b7789ae51b1b7979ee30",
+   "sha256": "1jf1573r8v4mda1xiszrz51qarb1ii31cyk0v3ci16bi9dpp8swb"
   },
   "stable": {
    "version": [
@@ -45694,20 +46772,20 @@
  },
  {
   "ename": "helm-themes",
-  "commit": "81f0f525680fea98e804f39dbde1dada887e8821",
-  "sha256": "0r7kyd0i0spwi7xkjrpm2kyphrsl3hqm5pw96nd3ia0jiwp8550j",
+  "commit": "2a2670edb1155f02d1cbe2600db84a82c8f3398b",
+  "sha256": "15qs23f467j99wybjd0n6dacgik5ibf96jn00j9fip55v8rp66gj",
   "fetcher": "github",
-  "repo": "syohex/emacs-helm-themes",
+  "repo": "emacsorphanage/helm-themes",
   "unstable": {
    "version": [
-    20160918,
-    545
+    20200323,
+    712
    ],
    "deps": [
     "helm-core"
    ],
-   "commit": "1160af42590b0d845a55e65e1e782d9e4027fd6e",
-   "sha256": "0856h8rnbgrxp3v3jpfmwq7kcdm1ymd4gcfvh0h27mk05113vz53"
+   "commit": "244121903650c2d25a233d12b378060cf8b010e7",
+   "sha256": "0ii70wn3vadx8a36q2frmsvrmlpz1w58qgn2w3knjivj195knliw"
   },
   "stable": {
    "version": [
@@ -46069,25 +47147,26 @@
   "repo": "jjzmajic/hercules.el",
   "unstable": {
    "version": [
-    20190929,
-    637
+    20200420,
+    747
    ],
    "deps": [
     "which-key"
    ],
-   "commit": "031f8eec95240fc46481061f0f44822c0f7fe65e",
-   "sha256": "0snfmvri4cpmhrk5s4hxxlyzs3d58ysmqzaiyiz4979admdc1lmb"
+   "commit": "557da39878d0637395fdded91243b340c37eff7b",
+   "sha256": "1rp37rhkj8jm07dwr74vc68dhrbvyvrxjdavpb0h073ps9vl9dsc"
   },
   "stable": {
    "version": [
     0,
-    3
+    3,
+    1
    ],
    "deps": [
     "which-key"
    ],
-   "commit": "031f8eec95240fc46481061f0f44822c0f7fe65e",
-   "sha256": "0snfmvri4cpmhrk5s4hxxlyzs3d58ysmqzaiyiz4979admdc1lmb"
+   "commit": "557da39878d0637395fdded91243b340c37eff7b",
+   "sha256": "1rp37rhkj8jm07dwr74vc68dhrbvyvrxjdavpb0h073ps9vl9dsc"
   }
  },
  {
@@ -46128,11 +47207,11 @@
   "repo": "kuanyui/hexo.el",
   "unstable": {
    "version": [
-    20180815,
-    219
+    20200416,
+    1410
    ],
-   "commit": "6bca18f911f6b2cd5c055ed73ddec98c385f9f86",
-   "sha256": "1zawz3nry832rhx80hyfqfs0gfw3hyrn96060zj3n75avx13rr8j"
+   "commit": "d600b6c2d51959f1331c8abf3953365544322afa",
+   "sha256": "07w6jlq3z5y019n5kplqn38gw60ffk2yx4vchp6qgif98lhcjiyr"
   }
  },
  {
@@ -46278,6 +47357,21 @@
   }
  },
  {
+  "ename": "hidepw",
+  "commit": "f2ee7663bcedaffa935b8379cc77168035cb1f14",
+  "sha256": "0qnvlcjldg1mcb5ilcy538sbf294glrx5g1a7vbmspdm3wby7lna",
+  "fetcher": "github",
+  "repo": "jekor/hidepw",
+  "unstable": {
+   "version": [
+    20200326,
+    112
+   ],
+   "commit": "73f099da79d73fe4087472df3469d8b9b20a59f2",
+   "sha256": "1lcm5nfpcrvy3700g1zzi89j59n0508xvk3v66x9px5aq6a8xk2j"
+  }
+ },
+ {
   "ename": "hideshow-org",
   "commit": "3de48eee24a5cca9c8b7dba2d6d01dfbc679d8d6",
   "sha256": "1bzx5ii06r64nra92zv1dvw5zv3im7la2dd3md801hxyfrpb74gc",
@@ -46455,11 +47549,11 @@
   "repo": "DarthFennec/highlight-indent-guides",
   "unstable": {
    "version": [
-    20190108,
-    3
+    20200412,
+    2328
    ],
-   "commit": "0b10f38c54ffc099861ce8463e16a1b07ddbb203",
-   "sha256": "0fa41y9gdci60417zksj9bgjx1knwh781i3dfphkgr7qbx25iky7"
+   "commit": "1b12c7b440ff988c7237936187c1375ac4ddc7f4",
+   "sha256": "03dpwklrwbkminfds8v129w0i47p5mkwdyhlhv05a22xnmlanyrs"
   }
  },
  {
@@ -46533,16 +47627,16 @@
  },
  {
   "ename": "highlight-operators",
-  "commit": "e7bd74b7a3484e437c6db4f18613744ebae030f5",
-  "sha256": "00agrwp2i3mkacnp4qhqcnpwn5qlbj9qv97zrw7a7ldqga0vwvhn",
-  "fetcher": "bitbucket",
+  "commit": "caca0b2bc2aaac563074cbb4ea4296fce749e203",
+  "sha256": "1l0ci20r0qm4lc9chvvwxgyi3vg41n3ccj0csfgzilzicsvjs9ic",
+  "fetcher": "github",
   "repo": "jpkotta/highlight-operators",
   "unstable": {
    "version": [
     20170213,
     2220
    ],
-   "commit": "3938e88e78c592936fc8fc6eabbfaf7205a967c8",
+   "commit": "7696b43419505d6e3511ad2781f9f1dd3c55ef8c",
    "sha256": "1h5whrc1iphzq0g8x9mmkhjkbmbdg9i9bvr1y8zrwrs8za8k127y"
   }
  },
@@ -46917,11 +48011,11 @@
   "repo": "ideasman42/emacs-hl-block-mode",
   "unstable": {
    "version": [
-    20200118,
-    310
+    20200404,
+    702
    ],
-   "commit": "6a8f871d7aa5d0d58b7c6ede281f8f8965124c9e",
-   "sha256": "1jdqz3cfncka4rdqxa4qg7f8dhkwx2h9s16gd3xqjwh8xrpf9qnd"
+   "commit": "6dc75e71b0b179d7c087cf7de51823f5810d671a",
+   "sha256": "142nrxq72dkl45lq93c076nl2ifdl6vdgiydpcs4lwg0crja8qzl"
   }
  },
  {
@@ -46932,14 +48026,14 @@
   "repo": "laishulu/hl-fill-column",
   "unstable": {
    "version": [
-    20190608,
-    203
+    20200404,
+    306
    ],
    "deps": [
     "names"
    ],
-   "commit": "612441e69772c24f9ce67ae73e47c84f29ee653d",
-   "sha256": "0b7770prp5sj4yinrdgzvblqky05vm245i40d38frcbghwqr2jl4"
+   "commit": "43cb3c35a92c912b7205b8a36f1ad0ec0a5b4a22",
+   "sha256": "0pf1hk21xbahccw1cdz95haqvhrf50cwg32qa36v9nammd37752z"
   }
  },
  {
@@ -47085,16 +48179,16 @@
   "repo": "thanhvg/emacs-hnreader",
   "unstable": {
    "version": [
-    20190909,
-    258
+    20200321,
+    1900
    ],
    "deps": [
     "org",
     "promise",
     "request"
    ],
-   "commit": "7e68beff596a7c67ff436be5cc29660acd46f5df",
-   "sha256": "0yynfz8bw7nvzk05zxypn183y6hf243s55kxfiicnxx7shag217i"
+   "commit": "5dd287e932e2398aab0f34cb23b99457b81ac370",
+   "sha256": "0ynq9dg00frk1sriraglzsszxpx51mpfdkbd1iqdz648rlhzyp3m"
   }
  },
  {
@@ -47320,6 +48414,30 @@
   }
  },
  {
+  "ename": "hover",
+  "commit": "0dea54ebe452094c141e99f724a5fbfffe9381f0",
+  "sha256": "1vnxga7bbv96la2jjvh3r71j3fgaz59v81q7z5yixgn7vxrcvvc9",
+  "fetcher": "github",
+  "repo": "ericdallo/hover.el",
+  "unstable": {
+   "version": [
+    20200321,
+    1819
+   ],
+   "commit": "6f9ed1a6517e3a43ef2deafc2f86c70b2abce008",
+   "sha256": "06vhxmvd57hf8kc21ncv6is9h70syjbzqwfcl3xf5zwcpc8vn13s"
+  },
+  "stable": {
+   "version": [
+    1,
+    1,
+    3
+   ],
+   "commit": "6f9ed1a6517e3a43ef2deafc2f86c70b2abce008",
+   "sha256": "06vhxmvd57hf8kc21ncv6is9h70syjbzqwfcl3xf5zwcpc8vn13s"
+  }
+ },
+ {
   "ename": "howdoi",
   "commit": "d08f4d6c8bdf16f47d2474f92273fd214179cb18",
   "sha256": "12vgbypawxhhrnjp8dgh0wrcp7pvjccfaxw4yhq7msai7ik3h83b",
@@ -47350,8 +48468,8 @@
     "promise",
     "request"
    ],
-   "commit": "8bfaffeff945bcfbc1e2b2cfb65e8452a7a34717",
-   "sha256": "05k7ar832bbzvjicri4v5dyivdrypgkqgninf72izykl89v8yzgx"
+   "commit": "ef7f42c14f0f4aec475b74d56931daa36aded6c8",
+   "sha256": "1a1wr86z5368zwvlgyp979x1ypz38m2w2qnp5607vjjplcrcmay2"
   }
  },
  {
@@ -47702,11 +48820,11 @@
   "repo": "humanoid-colors/emacs-humanoid-themes",
   "unstable": {
    "version": [
-    20200209,
-    1402
+    20200403,
+    1939
    ],
-   "commit": "80eeceadc595899a7b87abccf33099c3d4a14d0a",
-   "sha256": "0ji1wxlfyjdrwkfphkn6yl3y57701a0ywqzxpjbb9k762i20qycr"
+   "commit": "22c9a0987c7d746d7eb9fe850f93f232d91cae14",
+   "sha256": "1h3v76p17mzigwr0kpjlm5fgas4vvrm59g73l1699pnq1n1i5kgx"
   }
  },
  {
@@ -47732,11 +48850,11 @@
   "repo": "nflath/hungry-delete",
   "unstable": {
    "version": [
-    20170412,
-    102
+    20200309,
+    209
    ],
-   "commit": "0434458d3f6b2b585f332271feaa054bf4ec96d7",
-   "sha256": "04g8gdfqpzdhxf5rnl2k49f2klmzxwys79aib7xs30i0n8c8qb7d"
+   "commit": "4a341cfa3a19185c5ecb687970e299082e1144e3",
+   "sha256": "1gwksvvizz3kdpfzgwp45l1idjbrn8kz4jf0zx4fva20mh6mjz01"
   },
   "stable": {
    "version": [
@@ -47867,15 +48985,15 @@
   "repo": "abo-abo/hydra",
   "unstable": {
    "version": [
-    20200228,
-    1830
+    20200306,
+    913
    ],
    "deps": [
     "cl-lib",
     "lv"
    ],
-   "commit": "d2b921d067d7c7ea2f087b4d8edfdc37bcdf4af8",
-   "sha256": "1zsm7qhqj17wnx611rz6f917lvvj4ifz4vg4x144y8a5740pkihi"
+   "commit": "16fa8d109ec5799931a793b2e866ea9d593bee84",
+   "sha256": "1l6pi5ldmdcgv5qyg3kk1x8sxb639brzbfj0iddy5752hmg08g3h"
   },
   "stable": {
    "version": [
@@ -48036,25 +49154,25 @@
   "repo": "purcell/ibuffer-projectile",
   "unstable": {
    "version": [
-    20181202,
-    352
+    20200304,
+    2205
    ],
    "deps": [
     "projectile"
    ],
-   "commit": "76496214144687cee0b5139be2e61b1e400cac87",
-   "sha256": "0vv9xwb1qd5x8zhqmmsn1nrpd11cql9hxb7483nsdhcfwl4apqav"
+   "commit": "504b0edaa0d937ce60ccc8fdf09f2dae0a90fbaf",
+   "sha256": "18cqxnwzzbkcj9jcaw89b210432yzhrl1dwsv48p0jbhfnr17k41"
   },
   "stable": {
    "version": [
     0,
-    2
+    3
    ],
    "deps": [
     "projectile"
    ],
-   "commit": "8b225dc779088ce65b81d8d86dc5d394baa53e2e",
-   "sha256": "1zcnp61c9cp2kvns3v499hifk072rxm4rhw4pvdv2mm966vcxzvc"
+   "commit": "504b0edaa0d937ce60ccc8fdf09f2dae0a90fbaf",
+   "sha256": "18cqxnwzzbkcj9jcaw89b210432yzhrl1dwsv48p0jbhfnr17k41"
   }
  },
  {
@@ -48122,25 +49240,40 @@
   "repo": "purcell/ibuffer-vc",
   "unstable": {
    "version": [
-    20181225,
-    2227
+    20200304,
+    2207
    ],
    "deps": [
     "cl-lib"
    ],
-   "commit": "64cb03887bcae6127e80f0d9342c33206e21d2d2",
-   "sha256": "1ayqa7l5ny7g01pb3917w2phnsdfw69scw3lk6bpa773pq00n2vi"
+   "commit": "1249c1e30cf11badfe032ac3b1058f24ba510ace",
+   "sha256": "1mgn7b786j4hwq1ks012hxxgvrfn5rz90adi2j190gmjz60rc5g5"
   },
   "stable": {
    "version": [
     0,
-    10
+    11
    ],
    "deps": [
     "cl-lib"
    ],
-   "commit": "b2bac7aa69335933ebb2e6f34259fa96d2c8d46a",
-   "sha256": "0bqdi5w120256g74k0j4jj81x804x1gcg4dxa74w3mb6fl5xlvs8"
+   "commit": "1249c1e30cf11badfe032ac3b1058f24ba510ace",
+   "sha256": "1mgn7b786j4hwq1ks012hxxgvrfn5rz90adi2j190gmjz60rc5g5"
+  }
+ },
+ {
+  "ename": "icomplete-vertical",
+  "commit": "1a952162da476b4a0f496d9dc15d2d7a8d0964f6",
+  "sha256": "10rbsxp3jp8xyzcklpcc2zs0sv4pvvkqb7i96js9cp13nc9a7rgz",
+  "fetcher": "github",
+  "repo": "oantolin/icomplete-vertical",
+  "unstable": {
+   "version": [
+    20200417,
+    1755
+   ],
+   "commit": "a2ee9254085431ec9e5c88d522e2c700355003ef",
+   "sha256": "1bqnlvv1gvrjriazvzd3bq98r8ii6fqax0zznhvkl1ij5pf55a90"
   }
  },
  {
@@ -48380,16 +49513,16 @@
   "repo": "DarwinAwardWinner/ido-completing-read-plus",
   "unstable": {
    "version": [
-    20200215,
-    1841
+    20200310,
+    25
    ],
    "deps": [
     "cl-lib",
     "memoize",
     "seq"
    ],
-   "commit": "46202cf953139332ea79b8904bc30166a9cc6148",
-   "sha256": "06h437hni3lh90qnxq2a489h6f312b11wfvrcj21jwbn2zxak1hb"
+   "commit": "98d3a6e56b1d3652da7b47f49f76d77f82ea80ba",
+   "sha256": "0rmqyxb0cr3avm6lzz26r2d9fmja2csrh3whmky8h2giz79mjf7d"
   },
   "stable": {
    "version": [
@@ -48419,8 +49552,8 @@
    "deps": [
     "dash"
    ],
-   "commit": "a142ff1c33df23ed9665497d0dcae2943b3c706a",
-   "sha256": "0967709jyp9s04i6gi90axgqzhz03cdf1j1w39yrkds6q1b6v7jw"
+   "commit": "a814e25cb272401bdfee94cb98d915119d307414",
+   "sha256": "040mpwwldivyapmj0pjxsk8drgi113k7rpx8ym4jqz1hah5n33s1"
   },
   "stable": {
    "version": [
@@ -48605,8 +49738,8 @@
    "deps": [
     "dash"
    ],
-   "commit": "522af5d55b3d4cd6885f3b4100913566c202cec4",
-   "sha256": "0yh8px5ffx4pjmy97v1z9nwxb3qgzc5pdaj9nn6lsdxv9z7w5p3v"
+   "commit": "6a0bfeaca2e334b47b4f38ab80d63f53535b189e",
+   "sha256": "0q4w0akmnwk42ldbzqxbr7swz026q8wr1g27bl4i4k25bidqlx9q"
   },
   "stable": {
    "version": [
@@ -48815,11 +49948,11 @@
   "repo": "victorhge/iedit",
   "unstable": {
    "version": [
-    20190419,
-    803
+    20200412,
+    756
    ],
-   "commit": "e2c100cdd67b7d82835d281ac2cd1bf4f374bc8f",
-   "sha256": "0wr3w2id95wx2rma8n1ifjrv9rx37ly26ijc5zi58id0yrip3hnc"
+   "commit": "0fb3d380866664c3ab543acede606d343c257406",
+   "sha256": "0fz3p41j6d6bwk95v626j7w1z4rvbdxms6a4azy9dfncplnbnih0"
   },
   "stable": {
    "version": [
@@ -49176,34 +50309,34 @@
   "repo": "petergardfjall/emacs-immaterial-theme",
   "unstable": {
    "version": [
-    20200217,
-    1302
+    20200308,
+    1330
    ],
-   "commit": "a0fd571723adcfc780fd31a3a4444e1d6edbb64d",
-   "sha256": "1xby0qsbv1maqs31lkaq6h8djm08cahsxkas8q0cvnlfvgxxim1d"
+   "commit": "19c46859e041a0c0e7f40a9157a6c4d0d660f441",
+   "sha256": "0nx1g7caypnkid7bzhm4gg44cmpikpz1qz1cp11y6rlq1lwrb1d9"
   },
   "stable": {
    "version": [
     0,
-    3,
-    10
+    4,
+    2
    ],
-   "commit": "1a18584252a79553dbc3bbfd3b6612235661bad3",
-   "sha256": "1dvl52innx742pg4lls1dgx8avpg2k3kqll7x04alxkc9wk6ms73"
+   "commit": "19c46859e041a0c0e7f40a9157a6c4d0d660f441",
+   "sha256": "0nx1g7caypnkid7bzhm4gg44cmpikpz1qz1cp11y6rlq1lwrb1d9"
   }
  },
  {
   "ename": "immortal-scratch",
-  "commit": "1f9f4a59d88106ddfee740653abd28e305f6dfe0",
-  "sha256": "0rxhaqivvjij59hhv3mh4wwrc0bl0xv144j1i237xhlvhxk6nnn6",
-  "fetcher": "bitbucket",
+  "commit": "caca0b2bc2aaac563074cbb4ea4296fce749e203",
+  "sha256": "00g68abnssf9xw233zs09jyjqbm0720isamc97rfr95d7wvrb2cr",
+  "fetcher": "github",
   "repo": "jpkotta/immortal-scratch",
   "unstable": {
    "version": [
     20160517,
     2118
    ],
-   "commit": "b354aba33d91a16a1878c87a931564505f6a0ee1",
+   "commit": "faeab0ad6c33c74c0cbd1dfcebffaa0690de40c6",
    "sha256": "1mx9f8pwnbrm6q9ngdyv64aqkw1izj83m0mf7zqlpww7yfhv1q9b"
   }
  },
@@ -49239,16 +50372,15 @@
   "repo": "skeeto/impatient-mode",
   "unstable": {
    "version": [
-    20181002,
-    1231
+    20200327,
+    1619
    ],
    "deps": [
-    "cl-lib",
     "htmlize",
     "simple-httpd"
    ],
-   "commit": "96f6a05f8de74e19d570217fe83f0734623ddb0c",
-   "sha256": "1qddy3b3fmxgkpl10p0hvmgrzhkrxyxg72sxxg5ndfwvjpf2rf91"
+   "commit": "fc84f4a333d47ca853842570cf35e659753a3ebe",
+   "sha256": "14zycqky7xkmbfacmfdqbmq1qs3sj2r41nfmg09dv0hl97pavir8"
   },
   "stable": {
    "version": [
@@ -49296,10 +50428,10 @@
  },
  {
   "ename": "import-popwin",
-  "commit": "a6f0629515f36e2e98839a6894ca8c0f58862dc2",
-  "sha256": "0vkw6y09m68bvvn1wzah4gzm69z099xnqhn359xfns2ljm74bvgy",
+  "commit": "2a2670edb1155f02d1cbe2600db84a82c8f3398b",
+  "sha256": "0ax0s2jkfmjlnvj741n58m52srppzcn58l4vqq5gvmqj3dbh9rhd",
   "fetcher": "github",
-  "repo": "syohex/emacs-import-popwin",
+  "repo": "emacsorphanage/import-popwin",
   "unstable": {
    "version": [
     20170218,
@@ -49387,8 +50519,8 @@
     20200128,
     1052
    ],
-   "commit": "2976e6d9679f3578196ed7c104b4054f4a713b7e",
-   "sha256": "0ggnlvarpy49cp98970jla34khknj7xlkkg4r74hrywa9kk7j0hk"
+   "commit": "9548f14e7f0f7220d6cd1b8e88756b89fc57c471",
+   "sha256": "1hmrg1pyzcldqh858j3zpb6y0ap4x6142m56pas0lyh65d2wzggk"
   },
   "stable": {
    "version": [
@@ -49547,26 +50679,26 @@
   "repo": "clojure-emacs/inf-clojure",
   "unstable": {
    "version": [
-    20200118,
-    1533
+    20200425,
+    1648
    ],
    "deps": [
     "clojure-mode"
    ],
-   "commit": "49390d9dfde1d6354629b7662edd0ee422477f4a",
-   "sha256": "1jhh4ablxmwy4diai6jhki5ifiw1d0fcza7l9gy8iqqnd1yc2m25"
+   "commit": "f29861204ddbb032b425c7d693e8c006b7b027c6",
+   "sha256": "127kl64hqdy04qdbqr1xfzky3d8fzgbmp7z4hv6mjsc0p4s19azw"
   },
   "stable": {
    "version": [
     2,
-    1,
+    2,
     0
    ],
    "deps": [
     "clojure-mode"
    ],
-   "commit": "247ca70f8ba5104be292aea20fbde6adb37e359f",
-   "sha256": "11hyva006bc4hbhzjwb4brilm6fb7qfm5h66nl0gmmyva40y6412"
+   "commit": "ff72d667c2709166d19ac15a36f7aac3423cefa1",
+   "sha256": "07l8wkm0j6y2cj7bbb24x4rkjgf4q6ag0c1kcjs0sfmf1kaf14bk"
   }
  },
  {
@@ -49622,11 +50754,11 @@
   "repo": "nonsequitur/inf-ruby",
   "unstable": {
    "version": [
-    20200228,
-    2320
+    20200327,
+    1418
    ],
-   "commit": "fe1ea9925c6a6cfa7620fe13ea7769e264494749",
-   "sha256": "0zk4w3fwgashql8vx4ihn6zdfzn6206gklf74wn2b3k4awb9mj8b"
+   "commit": "41e5ed3a886fca56990486f1987bb3bae0dbd54b",
+   "sha256": "12qgd2p664rh0ks5kq6sxaqi5nlmxrzj5p0kpqrx40caicj6jfpl"
   },
   "stable": {
    "version": [
@@ -49692,9 +50824,9 @@
  },
  {
   "ename": "info-buffer",
-  "commit": "3c44a1d69725b687444329d8af43c9799112b407",
-  "sha256": "1vkgkwgwym0j5xip7mai11anlpa2h7vd5m9i1xga1b23hcs9r1w4",
-  "fetcher": "github",
+  "commit": "6a7caa8c4fea7ef2211f01bc8340c660a6e6c5f3",
+  "sha256": "1si3sz34bmzcnqm4bc6nq7q2rmsyksh0610bn0r9frf12vakg28p",
+  "fetcher": "gitlab",
   "repo": "llvilanova/info-buffer",
   "unstable": {
    "version": [
@@ -49747,11 +50879,11 @@
   "repo": "oitofelix/info-rename-buffer",
   "unstable": {
    "version": [
-    20191005,
-    2346
+    20200328,
+    1450
    ],
-   "commit": "c983ae687481f39b8fd0d4ee9d85fd82b6a4ba03",
-   "sha256": "068flcy4rdzwjpzqqlxpcpcqjxd5f11xq00g55ph17vzxf4iwk3c"
+   "commit": "87fb263b18717538fd04878e3358e1e720415db8",
+   "sha256": "07ylrbl9i2d09nspj481hkgcq9vs4ikvl86sfj7594zzdyy6b8qx"
   }
  },
  {
@@ -49824,20 +50956,20 @@
   "repo": "zonuexe/init-open-recentf.el",
   "unstable": {
    "version": [
-    20161206,
-    1445
+    20200321,
+    737
    ],
-   "commit": "7d8fb124806291f7f6ef2ec3a664ea25899b6d68",
-   "sha256": "0vswa7304s7m6cirbaky9rmrxjb2aylvif2vg2p6l274k37c4jyh"
+   "commit": "369304d6adb6875948c4534419c4f303ac23c4f6",
+   "sha256": "1i41xcjj0kdhn7m29jb5gq2j2cyxn424y4lwx6s3fjj1ckx808ii"
   },
   "stable": {
    "version": [
     0,
-    0,
-    3
+    2,
+    1
    ],
-   "commit": "a4f5338a14302d44fa5aebb1ddc7aff3dc9abbe3",
-   "sha256": "0iph5cpz2dva1rnvp5xynmkndny87z308pziadk1qgf05mc0i61d"
+   "commit": "369304d6adb6875948c4534419c4f303ac23c4f6",
+   "sha256": "1i41xcjj0kdhn7m29jb5gq2j2cyxn424y4lwx6s3fjj1ckx808ii"
   }
  },
  {
@@ -49889,8 +51021,8 @@
     20191218,
     2038
    ],
-   "commit": "ed488fcbc8c015121a4b1acd8d08db229fd6735a",
-   "sha256": "14y87fvav10wjc88bbi1pwy8lxnqcdk4cahwhd9cg5bhsqwhm32m"
+   "commit": "8b648afaaab5eaddb7afcd602b8a76cbfb12412b",
+   "sha256": "0zfv4cnj11i7lagfyqmy4ch01szj450458yqffjn84hfikbf4q78"
   }
  },
  {
@@ -49963,11 +51095,11 @@
   "url": "https://git.sr.ht/~zge/kaomoji",
   "unstable": {
    "version": [
-    20200102,
-    1942
+    20200325,
+    2248
    ],
-   "commit": "0c52e1266e61131ca0c8bd0f2092aad7b6d44ed9",
-   "sha256": "01sqc1cg89flxzhav9bgr733840xgqxy1i4sphfhd96c05yj287z"
+   "commit": "b943fe73327acc08dcd431eb8168a01609b9ab76",
+   "sha256": "13fk3b80gmgmr0d5296csvjfyjdq1jdxy3iahaj5mbhb9m3ganpc"
   },
   "stable": {
    "version": [
@@ -49990,8 +51122,8 @@
     20180403,
     1214
    ],
-   "commit": "7bfea92ba1dae9d13d442e2f84f9fb6c05a0a9bd",
-   "sha256": "01f2p58qsny7p9l6vrra0i2m2g1k05p39m0bzi906zm5awx7l0rr"
+   "commit": "af5f95ff98e2432837f5aa848ba38dd626e82fce",
+   "sha256": "0rdh4bzwq60m641r41kbsgzpkx8hxl7vx82y1cf7zp8zk8la4pd8"
   },
   "stable": {
    "version": [
@@ -50259,11 +51391,14 @@
   "repo": "thierryvolpiatto/ioccur",
   "unstable": {
    "version": [
-    20130822,
-    548
+    20200326,
+    1341
    ],
-   "commit": "4c0ef992a6fcd2aed62e3866d56650463108ab5a",
-   "sha256": "1rz5wf19lg1lnm0h73ynhb0vl3c99k7vpipay2f8jls24pv60bra"
+   "deps": [
+    "cl-lib"
+   ],
+   "commit": "59350b2066d61444f93c8a51b16353e746486e4c",
+   "sha256": "1055db76008a5nkb243ciq680fg4nn5yzkdv4x8sd1mq1hrs33qh"
   }
  },
  {
@@ -50740,11 +51875,11 @@
   "repo": "abo-abo/swiper",
   "unstable": {
    "version": [
-    20200229,
-    2136
+    20200425,
+    1938
    ],
-   "commit": "fcf5dcfd5796637d64164fd17956c5bc54e25612",
-   "sha256": "1hx00axmjfgc14ixj16pg7029zj7rsx2i80sw6f2bvp543l2aicq"
+   "commit": "47ec37b395cc1b304bbf91e804f138634544a9df",
+   "sha256": "05k2qjj4z8vljfppkphfhw67wvb5ij4nz4m158v89lx87y0phh74"
   },
   "stable": {
    "version": [
@@ -50758,26 +51893,22 @@
  },
  {
   "ename": "ivy-bibtex",
-  "commit": "c23c09225c57a9b9abe0a0a770a9184ae2e58f7c",
-  "sha256": "0qni48s09lgzqr98r49dhrzpfqp9yfwga11h7vhqclscjvlalpc2",
+  "commit": "873ae2af16e03c8e10494be3f0e7840eb27172a3",
+  "sha256": "0ri0f8cfzyymx9jrw0bldwzx74bzdd5gc90yv16hv239g65scbvx",
   "fetcher": "github",
   "repo": "tmalsburg/helm-bibtex",
   "unstable": {
    "version": [
-    20191028,
-    1313
+    20200415,
+    1311
    ],
    "deps": [
-    "biblio",
+    "bibtex-completion",
     "cl-lib",
-    "dash",
-    "f",
-    "parsebib",
-    "s",
     "swiper"
    ],
-   "commit": "d4471232be26793fbf56c0ac3690b5f537c378b9",
-   "sha256": "1bkzhic6qckb267025il1r3xcpz99kisphxiafni1pxvf9jafr0j"
+   "commit": "1e5b50652d1f5189cfeb6b5ce3c4437e0239d4f5",
+   "sha256": "05xl3x98w4cr81zp04dcqy5xnims8x3k77qxzddcqcrvi9zjlfc7"
   },
   "stable": {
    "version": [
@@ -50806,8 +51937,8 @@
   "repo": "wpcarro/ivy-clipmenu.el",
   "unstable": {
    "version": [
-    20200217,
-    1656
+    20200302,
+    1419
    ],
    "deps": [
     "dash",
@@ -50815,8 +51946,8 @@
     "ivy",
     "s"
    ],
-   "commit": "305ff456e700621e96b552f8e4857a7edc664518",
-   "sha256": "06pi64375bmmdal3pdhsv9j35jfizxciks9zwbvwc90k9wbgvxrf"
+   "commit": "ef25acf3f058fe1ede3a29fae2e9cdac8b08cd17",
+   "sha256": "1yzvaf95pncfi1r3xj8h6393dfvx291q3ahdwpp7qn3jh71kjx6k"
   }
  },
  {
@@ -50872,6 +52003,24 @@
   }
  },
  {
+  "ename": "ivy-emoji",
+  "commit": "f1121a85321a3184d1fa990ae86f5d1f3b04f145",
+  "sha256": "0sp8z7r1kffgfm4jrn5cqfi335vaynn27hs9345ybrxi3r4a3c0g",
+  "fetcher": "github",
+  "repo": "sbozzolo/ivy-emoji",
+  "unstable": {
+   "version": [
+    20200316,
+    2351
+   ],
+   "deps": [
+    "ivy"
+   ],
+   "commit": "a1b7d32048278afd9b06536a8af96f533639d146",
+   "sha256": "0h3051qq6xjc7gkl2a8if9b9ak6wnlc4gmh268s8jvi0nd8dfw2z"
+  }
+ },
+ {
   "ename": "ivy-erlang-complete",
   "commit": "ac1b9e350d3f066e4e56202ebb443134d5fc3669",
   "sha256": "00fqjgrhvcn3ibpgiy4b0sr4x9p6ym5r1rvi4rdzsw2i3nxmgf3a",
@@ -50888,8 +52037,8 @@
     "erlang",
     "ivy"
    ],
-   "commit": "7d60ed111dbfd34ab6ec1b07c06e2d16a5380b9a",
-   "sha256": "0z34ljmwr0hmkaq5z85p87vljywpv3nnsvhp1zc8cw4hvqarcjqg"
+   "commit": "c443dba0c466d36bef01a8985474f5da0a5a65fe",
+   "sha256": "0f0qr6h4y891lzlfi3k0a555qg0jw79fl9bfgv5fxi06m24q4683"
   },
   "stable": {
    "version": [
@@ -51033,15 +52182,15 @@
   "repo": "abo-abo/swiper",
   "unstable": {
    "version": [
-    20191018,
-    1251
+    20200421,
+    1120
    ],
    "deps": [
     "hydra",
     "ivy"
    ],
-   "commit": "fcf5dcfd5796637d64164fd17956c5bc54e25612",
-   "sha256": "1hx00axmjfgc14ixj16pg7029zj7rsx2i80sw6f2bvp543l2aicq"
+   "commit": "47ec37b395cc1b304bbf91e804f138634544a9df",
+   "sha256": "05k2qjj4z8vljfppkphfhw67wvb5ij4nz4m158v89lx87y0phh74"
   },
   "stable": {
    "version": [
@@ -51205,15 +52354,15 @@
   "repo": "tumashu/ivy-posframe",
   "unstable": {
    "version": [
-    20191226,
-    637
+    20200331,
+    536
    ],
    "deps": [
     "ivy",
     "posframe"
    ],
-   "commit": "6d697ff00ac406b919eba8665b1bc18a2b423cda",
-   "sha256": "05zhfhml8bd1zi1msy6zjkimirwq59i9fwa0mxy9l88si3dmb2hb"
+   "commit": "ae9bafe94fe6b77b6fe45766ae6172646f6a5d50",
+   "sha256": "1j6yns5d7lh2v1nfcznrirl7qicdli9csciqvfgj4gkh72a97pw1"
   }
  },
  {
@@ -51224,27 +52373,27 @@
   "repo": "raxod502/prescient.el",
   "unstable": {
    "version": [
-    20191224,
-    220
+    20200415,
+    1457
    ],
    "deps": [
     "ivy",
     "prescient"
    ],
-   "commit": "7fd8c3b8028da4733434940c4aac1209281bef58",
-   "sha256": "1igsjdkxax2lavglc03h0dk3d7fpgqvlymnhyxx738sjyfzl09cr"
+   "commit": "0f4a89bdec61395138d968a38d375e63ccfbed63",
+   "sha256": "0nnf4y49pl9lcs90y5z6f02g1xwk1jjrl0qs7gcv6kpn0vn8kn0h"
   },
   "stable": {
    "version": [
     4,
-    0
+    1
    ],
    "deps": [
     "ivy",
     "prescient"
    ],
-   "commit": "ad9fbe8a17fe74b27a39bcc034f3da1865663387",
-   "sha256": "008hxy1vasnyz36wwg44gikpi80ng75hj85nrswk60b7z7cznbmr"
+   "commit": "aa3110281a0622fa7b5da115cefb71a319b5b1a0",
+   "sha256": "1rf5cz262hjpck7vpxg15bccdrwrmlhiyxc20liwcjb2ig36nis3"
   }
  },
  {
@@ -51286,26 +52435,26 @@
   "repo": "Yevgnen/ivy-rich",
   "unstable": {
    "version": [
-    20200214,
-    504
+    20200322,
+    1326
    ],
    "deps": [
     "ivy"
    ],
-   "commit": "af43abad5c87b44a46ce74d57e54cad5112c22eb",
-   "sha256": "0qa6kj88dh4vrxiyxrd7jg231hkmw7mfk96jvxqyldvsagp5ybcc"
+   "commit": "596874d1469667f896b83731914d7d4456025553",
+   "sha256": "0yym3l24zzn1yjg3fjkq7lpvpp9w7wi2vl161v53pmg1v94xig6s"
   },
   "stable": {
    "version": [
     0,
     1,
-    5
+    6
    ],
    "deps": [
     "ivy"
    ],
-   "commit": "d2e64aee221228e27e670f6b1c051052cea33ea6",
-   "sha256": "1g45pk1w5vcrrlv7d7yz4qdk26v31a8ik2zkzk323bqwzc2safhi"
+   "commit": "840e13314774a40b69f10f0a15ce1d6af4187b12",
+   "sha256": "1ra18v6lgz3m6asm6d5b92zn1x22yiz4cwxd9b54dnvwi11121m7"
   }
  },
  {
@@ -51323,8 +52472,8 @@
     "ivy",
     "rtags"
    ],
-   "commit": "3d025d9c97359442f7190ec42a63ff7e5fd85a9a",
-   "sha256": "1c8llhbhvrv5kwmci7rlsjqv3gr4gxi45g6c21fqrblyhas95s3n"
+   "commit": "a42298e80dffae9a6b2e9816506174542f3cbbb7",
+   "sha256": "1674752bbyb7890na5p846dxcvh83zn0a6z19wras1x5c59s24i3"
   },
   "stable": {
    "version": [
@@ -51347,14 +52496,14 @@
   "repo": "Kungsgeten/ivy-todo",
   "unstable": {
    "version": [
-    20171208,
-    1609
+    20200323,
+    2005
    ],
    "deps": [
     "ivy"
    ],
-   "commit": "964e347cea1a6097854d7113f5b07f6c5ef81df0",
-   "sha256": "07208qdk1a77dgh9qmpn164x5mgkzvprsdvb7y35ax12r2q541b8"
+   "commit": "d74501cd334b7d709659946c5e02b21cfd5507de",
+   "sha256": "0j9cdzr5s7zi6qf4cax8bc2jrprgaz85mfvc9cx52ryd3yn8l6g0"
   }
  },
  {
@@ -51590,11 +52739,11 @@
   "url": "https://bitbucket.org/sbarbit/jack-connect",
   "unstable": {
    "version": [
-    20191125,
-    1321
+    20200325,
+    1639
    ],
-   "commit": "e951217ee3ea0ac6b9ed9a209305ef9a72ec019a",
-   "sha256": "03dklv7daxlqzmv8dq9whc07ia0fihy988gfgdr006pfy2x6mnq7"
+   "commit": "c227d1ed3016960c8666a60e4215bbb029436bc7",
+   "sha256": "1w66dpn0cmdqwgjd1528cd2739ijxhsr62zyx2arlr9ldrnqy5f6"
   }
  },
  {
@@ -51886,11 +53035,11 @@
   "repo": "donderom/jazz-theme",
   "unstable": {
    "version": [
-    20170411,
-    1411
+    20200417,
+    2042
    ],
-   "commit": "b1cb78a97cc4050f19d88a89e455c3e52d98240e",
-   "sha256": "0q9gfa40qh9wypvzg3xrv4kh6l51az9swb39133961dc8zrrrinm"
+   "commit": "b6694f09e10aa7df14836aac2f6615c32aa572dd",
+   "sha256": "1mjzfr2iz72n3ds6d0sqhqd2a5kcfn8d2kji9hqmydmplg247apx"
   }
  },
  {
@@ -52143,8 +53292,8 @@
   "repo": "emiller88/emacs-jest",
   "unstable": {
    "version": [
-    20200223,
-    28
+    20200318,
+    237
    ],
    "deps": [
     "cl-lib",
@@ -52155,8 +53304,23 @@
     "projectile",
     "s"
    ],
-   "commit": "777cca00f8fdb93226225b16b48eb955493243c5",
-   "sha256": "0292bhkc98pbj6lchfkx9i6zyllab2h60cly07ck71glq96kfx3c"
+   "commit": "b51be19c1de9e82ee1dc62921be2222fc5685eed",
+   "sha256": "1jdphlhp9vxvkj51cswqfgka910216snyjhql700x4dgpmvkcv56"
+  }
+ },
+ {
+  "ename": "jest-test-mode",
+  "commit": "767499b7048cc0f1e47dff17f66f1e2fe8b023b5",
+  "sha256": "09vwidm49bw8kb4a9vax4rgbzk1ndg0fkdaj9k9sy973rapb213a",
+  "fetcher": "github",
+  "repo": "rymndhng/jest-test-mode",
+  "unstable": {
+   "version": [
+    20200329,
+    506
+   ],
+   "commit": "f04d08db36715d7509fd68448f74f917c6c1a382",
+   "sha256": "1pmzls19wpg60ql0b5l6rhml8hh8mzpbc0dgylzhps1jghi055s1"
   }
  },
  {
@@ -52256,15 +53420,15 @@
   "repo": "nyyManni/jiralib2",
   "unstable": {
    "version": [
-    20190927,
-    2010
+    20200331,
+    1940
    ],
    "deps": [
     "dash",
     "request"
    ],
-   "commit": "e913f8e4a994850d2cff18ce2b1f4177cac62c91",
-   "sha256": "022jndjwj0ml2w829id0nx43p24h6jpmilc12n9hiy4p80vjgy1y"
+   "commit": "ccf69e417911e091ec4c28d47d178ee63196c626",
+   "sha256": "170fjz7k9bk17qk7wrd56xw484xp8zckx635360pm0lfg4dvycpc"
   }
  },
  {
@@ -52392,11 +53556,11 @@
   "repo": "ljos/jq-mode",
   "unstable": {
    "version": [
-    20190718,
-    913
+    20200317,
+    852
    ],
-   "commit": "a439bd395e0ad6b6110789b8f10d0efbe1fe889d",
-   "sha256": "18r9igkxy7ymj5xran806f6cy099gb19mg8minchs98jsjjmka9g"
+   "commit": "bc904840f27fe7b0e6dbdaeb912a7175a3837110",
+   "sha256": "0w5cgys1yfhirhsvj4n5k6km2xwyqvlnbv0m0sim1vavizzfmda4"
   },
   "stable": {
    "version": [
@@ -52453,8 +53617,8 @@
     20180807,
     1352
    ],
-   "commit": "0ea56bf620105af71d2575f62f9527773b6e3d68",
-   "sha256": "1zdp9r97bd85ylb9km27129pxxf5mvmhr4fqvphzb57j7yml3z0h"
+   "commit": "306abcfb9f6e46962061a34b68d4f6baa8c7aba4",
+   "sha256": "1pifplr4qr9667bbbqgqg39v8dyglvg6ljglkjga0d2n39am7r2q"
   },
   "stable": {
    "version": [
@@ -52566,14 +53730,14 @@
   "repo": "sooqua/js-react-redux-yasnippets",
   "unstable": {
    "version": [
-    20190911,
-    1259
+    20200316,
+    1144
    ],
    "deps": [
     "yasnippet"
    ],
-   "commit": "70785d126a28ffcb314fb4b354319418586e06b1",
-   "sha256": "0adlnjkcq0kpadc1dqwfzrrk0xd4jc0rc4k8hbj6nh4dhc7shnk0"
+   "commit": "9f509043f01fa59bff4daf31b2e95d63f8deab4a",
+   "sha256": "00icd76y7sp3cby6n1mkxma4h6aqkrq6cqsnbqrpsgq99qqy30my"
   }
  },
  {
@@ -52886,14 +54050,14 @@
   "repo": "skeeto/elisp-json-rpc",
   "unstable": {
    "version": [
-    20180104,
-    1528
+    20200417,
+    1629
    ],
    "deps": [
     "cl-lib"
    ],
-   "commit": "0992ae71964055230aa5d4d934a1b93b5dfd7eb4",
-   "sha256": "0nfccwxss3dz1ig6i3dig703xpsy90m7i96bm3pysrw2jfp4by9s"
+   "commit": "81a5a520072e20d18aeab2aac4d66c046b031e56",
+   "sha256": "13s18mjh6dpdxvva9yx4841rxvayxsvaj3vblxril6zm2wcqw2lm"
   }
  },
  {
@@ -53046,19 +54210,19 @@
   "repo": "JuliaEditorSupport/julia-emacs",
   "unstable": {
    "version": [
-    20191225,
-    858
+    20200331,
+    1658
    ],
-   "commit": "5238f9adb7dd1c161fd6130435ebf0ac3755f33c",
-   "sha256": "1482wx9vhxvs1msdqmcv7hv31q57r2pkwij39rvscc3s046x61vr"
+   "commit": "88d7d875ef32eb9fb76917c97150654bb91ac96a",
+   "sha256": "1zsqj31avcil6ml2clfxk7hnmg5fx014xqbbvhm17ii7ggky4qdn"
   },
   "stable": {
    "version": [
     0,
-    3
+    4
    ],
-   "commit": "d21b83db56ae74d232dc2be2cd87810c5b8a6451",
-   "sha256": "0h4v227qdd7w0caigzbgjmjh6ddjlwgcd0g7s30ac45vdwr877lc"
+   "commit": "8bfc709716a257521cb386f20b8932e83db930a9",
+   "sha256": "1w131jb9mhvyjxa0p93iwfhzidgbcs6b8i6jg79yisqb9wchik99"
   }
  },
  {
@@ -53069,14 +54233,14 @@
   "repo": "tpapp/julia-repl",
   "unstable": {
    "version": [
-    20191209,
-    1051
+    20200310,
+    1145
    ],
    "deps": [
     "s"
    ],
-   "commit": "b11a5729709c5ca541db2b6472b6579166723060",
-   "sha256": "0vb464y21jvqdkswz8hm8lm345fs811i6ns1zbwx7rz7bav4zlw5"
+   "commit": "5fa04de4e76e10d5ee37d4244f48ddae4503faa1",
+   "sha256": "1xnb3r5999ipkkvh7fl2kr0yy0j3vmnw7a6n23m9ps4fvy6hpl9n"
   },
   "stable": {
    "version": [
@@ -53107,6 +54271,50 @@
   }
  },
  {
+  "ename": "julia-snail",
+  "commit": "4b80da8bdccaa0992deb07cef7ea4a582d9707ae",
+  "sha256": "0yljiqgamm5gjr1dbzjfqvnrijhgrpjd7gj8and1w33s1d2qh8gd",
+  "fetcher": "github",
+  "repo": "gcv/julia-snail",
+  "unstable": {
+   "version": [
+    20200423,
+    2236
+   ],
+   "deps": [
+    "cl-lib",
+    "dash",
+    "julia-mode",
+    "parsec",
+    "s",
+    "spinner",
+    "vterm"
+   ],
+   "commit": "e14c5590a79ee5529f574f6d4b0701d608e3e47b",
+   "sha256": "1xckmrdg41ai9qbpy9lxva4b1yq5jji9xff4fz9d4v72nqz7qn0w"
+  },
+  "stable": {
+   "version": [
+    1,
+    0,
+    0,
+    -1,
+    3
+   ],
+   "deps": [
+    "cl-lib",
+    "dash",
+    "julia-mode",
+    "parsec",
+    "s",
+    "spinner",
+    "vterm"
+   ],
+   "commit": "483d088853584a9f1603a062bce5705f0a7d99fe",
+   "sha256": "0k3lwq6r1y23gmlqx7a70psgzncf4k1zcykc7plzl79xas28rbrz"
+  }
+ },
+ {
   "ename": "jumblr",
   "commit": "b47000c35a181c03263e85e8955eb4b4c9e69e4d",
   "sha256": "1wnawz1m6x95iyzac453p55h7hlr5q0ry5437aqqx0bw7gdwg3dp",
@@ -53238,8 +54446,8 @@
   "repo": "dzop/emacs-jupyter",
   "unstable": {
    "version": [
-    20191019,
-    1519
+    20200417,
+    1907
    ],
    "deps": [
     "cl-lib",
@@ -53247,14 +54455,14 @@
     "websocket",
     "zmq"
    ],
-   "commit": "9e3c1633586982e278f072dfaaabd115fa4d19f7",
-   "sha256": "08aig8b2xh9yr5dqj6jivv54vc93277xffmmd3q0k5ghf4087c8n"
+   "commit": "785edbbff65abb0c929dc2fbd8b8305c77fd529e",
+   "sha256": "1l1fd062dmig3mgkwixr4ly8x12z9skh5wj18hkyc84n7rwdar47"
   },
   "stable": {
    "version": [
     0,
     8,
-    1
+    2
    ],
    "deps": [
     "cl-lib",
@@ -53262,8 +54470,8 @@
     "websocket",
     "zmq"
    ],
-   "commit": "6650dd35887e0e987385a4fb74b0a3c1661e149b",
-   "sha256": "152g22bm970px2mi3bfr6f59mvvbk2p8prv5vs5b9n0cmviqm50w"
+   "commit": "403c70c83cb3754c83da0932b0efaf5e72bdca9a",
+   "sha256": "1sr007wsl2y6wqpzkmv3inbpwhvgdcb2nmqzgfg7w1awapi2r13p"
   }
  },
  {
@@ -53565,15 +54773,15 @@
   "repo": "ogdenwebb/emacs-kaolin-themes",
   "unstable": {
    "version": [
-    20200210,
-    237
+    20200324,
+    1349
    ],
    "deps": [
     "autothemer",
     "cl-lib"
    ],
-   "commit": "0afcaff33ceff03420635feca835d760915e4c08",
-   "sha256": "0rw7dgd4dv8gk4n5xjl6mlvgyxm29vnzk8zlk7b07k264kxqr7c7"
+   "commit": "9877c12ad412e79b3d88423f911be1ff59a72e0e",
+   "sha256": "079si7dhl45rx2vf8kf8srflk6nd6yxqz44xbsrh0s39gpp9v5dh"
   },
   "stable": {
    "version": [
@@ -53851,11 +55059,11 @@
   "repo": "tarsius/keycast",
   "unstable": {
    "version": [
-    20200103,
-    1239
+    20200418,
+    2028
    ],
-   "commit": "adb55497c0f16e90069d6e5e86b4f9f65f13624b",
-   "sha256": "1sprdfx0gvyqmq0fkf4bf56q3d8xxig2vxi38nzjx90llzvka35q"
+   "commit": "a912c4db1b88390f76b14e3b47ded314fdc8f48c",
+   "sha256": "07gfldj9y4jfvna1rqlr7w6y6daqdsvc1fb2m7acjn37bpmfrc3b"
   },
   "stable": {
    "version": [
@@ -53948,14 +55156,14 @@
   "repo": "tarsius/keymap-utils",
   "unstable": {
    "version": [
-    20191222,
-    2258
+    20200413,
+    1858
    ],
    "deps": [
     "cl-lib"
    ],
-   "commit": "0b9bb7f4959ca54f0827b202f513ec7508c11e0e",
-   "sha256": "11y1vdrj2isn00mh428ynzqnfxjsg0138wx0bs619j0pv6d3j09g"
+   "commit": "195e0ca5b1b9967faf94a3e5a634d8975b796705",
+   "sha256": "0ckv9mbqb1f2lp17sv3nxjwww4ph9v3bhlxwvchvkkdlbcg87i5n"
   },
   "stable": {
    "version": [
@@ -54271,8 +55479,8 @@
     20180702,
     2029
    ],
-   "commit": "9398c8d5d260c9f4d5dd0aadc7de5001bddaf984",
-   "sha256": "1hps804r3pwnkndwr797ayg002i857ck3lvknvzz7j04xvs7g5s3"
+   "commit": "108a9151eb55b00f246613c511d88b7d58334595",
+   "sha256": "16wsaz29avmv9p3lfy0wjgxfwpszq8g3v9vl05azqkvjahf0lxib"
   },
   "stable": {
    "version": [
@@ -54294,15 +55502,15 @@
   "repo": "stardiviner/kiwix.el",
   "unstable": {
    "version": [
-    20200301,
-    307
+    20200426,
+    637
    ],
    "deps": [
     "cl-lib",
     "request"
    ],
-   "commit": "f11e8fb9955b89a14db7092e48baa0b69667834e",
-   "sha256": "1ipkgnlvbdmgxh92hsrvqmyg8hxv4165kr0305hz2cr88wp8zsm1"
+   "commit": "6c6c44386e00d352d96064cb25b50e960cd1ba22",
+   "sha256": "16k93w5xylx3v5q1hlzmlmg1ydg88bklgi2idd3h6k3sbi4linvs"
   },
   "stable": {
    "version": [
@@ -54559,25 +55767,24 @@
   "repo": "abrochard/kubel",
   "unstable": {
    "version": [
-    20200211,
-    1819
+    20200406,
+    2112
    ],
    "deps": [
+    "dash",
+    "s",
     "transient"
    ],
-   "commit": "fe9f51e678a8b74e1116bffd662abc3d504fc857",
-   "sha256": "1dhhpjjpxl0j18nq4h0pmkz9l55cdzd7kaxhvkr0r0mvhpa7d04m"
+   "commit": "74db5b2e8418d0baeb8d3d0c274dfba3b9f32018",
+   "sha256": "1v8d8cvbqr12pglnd0lwijklfry5nz2j7nbv447bdkp5cp7y5f01"
   },
   "stable": {
    "version": [
-    1,
+    2,
     0
    ],
-   "deps": [
-    "transient"
-   ],
-   "commit": "fe9f51e678a8b74e1116bffd662abc3d504fc857",
-   "sha256": "1dhhpjjpxl0j18nq4h0pmkz9l55cdzd7kaxhvkr0r0mvhpa7d04m"
+   "commit": "6fafe9c2b8edcb9df96965a315474c83a90b1809",
+   "sha256": "1q1wkwsx9dyjw1b6cxnz1w0xi8r75x7n6iq18v038ny2k110m6g9"
   }
  },
  {
@@ -54588,27 +55795,27 @@
   "repo": "abrochard/kubel",
   "unstable": {
    "version": [
-    20191231,
-    1429
+    20200312,
+    1349
    ],
    "deps": [
     "evil",
     "kubel"
    ],
-   "commit": "fe9f51e678a8b74e1116bffd662abc3d504fc857",
-   "sha256": "1dhhpjjpxl0j18nq4h0pmkz9l55cdzd7kaxhvkr0r0mvhpa7d04m"
+   "commit": "74db5b2e8418d0baeb8d3d0c274dfba3b9f32018",
+   "sha256": "1v8d8cvbqr12pglnd0lwijklfry5nz2j7nbv447bdkp5cp7y5f01"
   },
   "stable": {
    "version": [
-    1,
+    2,
     0
    ],
    "deps": [
     "evil",
     "kubel"
    ],
-   "commit": "fe9f51e678a8b74e1116bffd662abc3d504fc857",
-   "sha256": "1dhhpjjpxl0j18nq4h0pmkz9l55cdzd7kaxhvkr0r0mvhpa7d04m"
+   "commit": "6fafe9c2b8edcb9df96965a315474c83a90b1809",
+   "sha256": "1q1wkwsx9dyjw1b6cxnz1w0xi8r75x7n6iq18v038ny2k110m6g9"
   }
  },
  {
@@ -54796,11 +56003,11 @@
   "repo": "ksjogo/labburn-theme",
   "unstable": {
    "version": [
-    20200206,
-    1213
+    20200309,
+    1556
    ],
-   "commit": "ae3dafe552ab6f9d5b0760ace44555317e6c90c6",
-   "sha256": "1lx7ci0j5havhsymjr4mb4nnh71ajmviysmanjbbm6wsg470ig7r"
+   "commit": "d11537a2060df7e992217ede8f65d6c11de49458",
+   "sha256": "0aqdl3hq76r315h2h75lxgbyb7hw3hdg49n72frm1wx7hj372d0g"
   },
   "stable": {
    "version": [
@@ -54828,6 +56035,25 @@
   }
  },
  {
+  "ename": "lambdapi-mode",
+  "commit": "86702d5ad9279f03bdae5facb0b546e133c1fedd",
+  "sha256": "0ha9k0wc5snb5j0bpzjj91b7kd9ppsk8wbcj454wdkx87x73npdd",
+  "fetcher": "github",
+  "repo": "Deducteam/lambdapi",
+  "unstable": {
+   "version": [
+    20200423,
+    1441
+   ],
+   "deps": [
+    "eglot",
+    "math-symbol-lists"
+   ],
+   "commit": "e205bd95602e120186a1e18ca825e6bbc3b6c4d1",
+   "sha256": "12y297h0hln7smy26nixqbjzy9nk1pwc2a7sab8dlzjkyz37zbfg"
+  }
+ },
+ {
   "ename": "lammps-mode",
   "commit": "8f5471a8e17977c17ad84b12a77fe80f37eda25e",
   "sha256": "06i48pxp9vq4z7hffna0cndr6iblapim169659pmhidbc4pp7bm4",
@@ -54931,25 +56157,26 @@
   "repo": "lassik/emacs-language-id",
   "unstable": {
    "version": [
-    20200214,
-    2254
+    20200409,
+    607
    ],
    "deps": [
     "cl-lib"
    ],
-   "commit": "dc18099dd74a954601ab425ef6cfd3ed32003023",
-   "sha256": "1mwkv4cyz8n8vm9jf7nw980j0ig487ch37ayx356nvvznnrfnm5s"
+   "commit": "bf17d80b6c4b58fb66cddc2b2914f57d48468e97",
+   "sha256": "1p21smbm3z6xfq0zk8pv62wppbbxx8mh994ax8b00kh16j7yhh2c"
   },
   "stable": {
    "version": [
     0,
-    4
+    5,
+    1
    ],
    "deps": [
     "cl-lib"
    ],
-   "commit": "dc18099dd74a954601ab425ef6cfd3ed32003023",
-   "sha256": "1mwkv4cyz8n8vm9jf7nw980j0ig487ch37ayx356nvvznnrfnm5s"
+   "commit": "bf17d80b6c4b58fb66cddc2b2914f57d48468e97",
+   "sha256": "1p21smbm3z6xfq0zk8pv62wppbbxx8mh994ax8b00kh16j7yhh2c"
   }
  },
  {
@@ -54960,8 +56187,8 @@
   "repo": "mihaiolteanu/lastfm.el",
   "unstable": {
    "version": [
-    20200207,
-    1316
+    20200320,
+    1839
    ],
    "deps": [
     "anaphora",
@@ -54970,13 +56197,13 @@
     "request",
     "s"
    ],
-   "commit": "cff7699343467b36ff3dad90061b567025ff9b23",
-   "sha256": "1jk400xh07pnwzab23xwsiyv9j0f4b8fl0v6w712vsn2n1ab88gm"
+   "commit": "54636059512adec0176950e8fce3b9bf7423619d",
+   "sha256": "1ffvh71vgsdv118hhz0x2xfmqb2bayk7i3mdxc1ybs2vrdggnim4"
   },
   "stable": {
    "version": [
     1,
-    0
+    2
    ],
    "deps": [
     "anaphora",
@@ -54985,8 +56212,8 @@
     "request",
     "s"
    ],
-   "commit": "c2b39d2fa4fb7f56e4aacb0a50ed2aa509ab992c",
-   "sha256": "09k8p5bpl7f4dgkvvx4gf91pgyc5ikm6kynkjhdwrsnpnnl2cc9b"
+   "commit": "96568f07324ba32804be9352016956694923f5f3",
+   "sha256": "04a563g6rby8374azpfjdagbgdylcg2glfx5wdx5agd98bs15j28"
   }
  },
  {
@@ -54997,15 +56224,15 @@
   "repo": "storvik/emacs-lastpass",
   "unstable": {
    "version": [
-    20191102,
-    611
+    20200320,
+    2117
    ],
    "deps": [
     "cl-lib",
     "seq"
    ],
-   "commit": "e07b1a062153b9d56d0112ac45caf76d6bce67c5",
-   "sha256": "0pz5svbs7jp7zcjl7p5pbfxqh6xzh48dzz3swkywms9hfh2ynqzp"
+   "commit": "ac472f844bd1e109c62479253cbc40bb5e50ed8f",
+   "sha256": "07bh7vkczzpmkbxxyyhn912b5rjm975a49y1bq08y4vd006zsq4x"
   }
  },
  {
@@ -55206,8 +56433,8 @@
    "deps": [
     "colorless-themes"
    ],
-   "commit": "a7b7c0a32b174988f40378996cd8997f73524f19",
-   "sha256": "0khsf4xz0wjn774hy08pxafm79j55ns28q25pfzyj9s07hi4r0vz"
+   "commit": "2b4c341640c8191a39e4bc28d6cd04c7d6dcbb37",
+   "sha256": "0ni9cnrv464fk840i1ll241kzkiy1zc6nfrbdv3ciixxdxbshxbn"
   },
   "stable": {
    "version": [
@@ -55282,20 +56509,40 @@
   "repo": "conao3/leaf.el",
   "unstable": {
    "version": [
-    20200225,
-    1023
+    20200422,
+    644
    ],
-   "commit": "0179836fcc8ef613d6f9d7fa509a79a8fbf8db22",
-   "sha256": "0r5crz2n0q8xrh840gp3m8gy647i0khvwzj9pc3w5y9xkw7ca7vh"
+   "commit": "27f21ed46a907a911222a72a31b41e414c956cfb",
+   "sha256": "041qgyskq39f91wjwr3d4ic5f1q7rvigannyyr9q4a2nbrn2dzhy"
   },
   "stable": {
    "version": [
-    3,
-    6,
+    4,
+    1,
     0
    ],
-   "commit": "c0a0fca2f9c83909c49729af75664411b4affab8",
-   "sha256": "18vrk19273xlg2nhkf7fvvhspnsfgk4dxa42x2q5599p9z7aph00"
+   "commit": "0841ab466a1542868b5448bb375ac9f0c33e2b3f",
+   "sha256": "0lpgkd2hhv98k7bi7zdplhlv0p3gbp4aq2cb0kyiwp2yxlnmkbzv"
+  }
+ },
+ {
+  "ename": "leaf-convert",
+  "commit": "db2fa6cdfe98aea41eeafb59527050edfa9ef6e5",
+  "sha256": "1hw6imdf8f7939r077zccv0sa23xfcmwpbhjyb49g4nhzs5grpnv",
+  "fetcher": "github",
+  "repo": "conao3/leaf-convert.el",
+  "unstable": {
+   "version": [
+    20200415,
+    1725
+   ],
+   "deps": [
+    "leaf",
+    "leaf-keywords",
+    "ppp"
+   ],
+   "commit": "2a8ec045d5d36e85e7deb2a46aefacaecf4bfafe",
+   "sha256": "133id4zd9dnx962r71m0irxvqs9dwaqnv5l4b8bjd3gigijah1dp"
   }
  },
  {
@@ -55306,14 +56553,14 @@
   "repo": "conao3/leaf-keywords.el",
   "unstable": {
    "version": [
-    20200214,
-    1749
+    20200415,
+    419
    ],
    "deps": [
     "leaf"
    ],
-   "commit": "138af8613feded5eaeda84ffaff2621e62c2e0fe",
-   "sha256": "03jvjmr6ki28ngdc0j7sjj14qyzd730jxp8gdcajjln76ni5cayy"
+   "commit": "8c956f9e39cb589544a90861ac05b9b2ee4d320b",
+   "sha256": "0qy1hmg7ycbx898cx5cckmk5l8bysyvvdc5y2gl3bsxjwlv1wlrg"
   },
   "stable": {
    "version": [
@@ -55326,6 +56573,56 @@
   }
  },
  {
+  "ename": "leaf-manager",
+  "commit": "e1d80f4662a0f77360244fc4b34f2076db4fd478",
+  "sha256": "1pr5yljhif5ffm63g6w6544cy6m15kljbdvxs87ivnisblbl4s21",
+  "fetcher": "github",
+  "repo": "conao3/leaf-manager.el",
+  "unstable": {
+   "version": [
+    20200414,
+    543
+   ],
+   "deps": [
+    "leaf",
+    "leaf-convert",
+    "ppp"
+   ],
+   "commit": "f2ae35e02ebe218daa3076a0e9d83b4feadfbb0a",
+   "sha256": "09ll1vs9y6qmcl3qxil52mjw5bf7x896wjsij4kf0y5wd2fhra61"
+  }
+ },
+ {
+  "ename": "leaf-tree",
+  "commit": "2e51160b1e5d277e66b9cff493b1f6b3c6f9ee28",
+  "sha256": "1xnqxwa978wbvx181v48zd37vckrj6p6wa7gas3fj648mwdjnii3",
+  "fetcher": "github",
+  "repo": "conao3/leaf-tree.el",
+  "unstable": {
+   "version": [
+    20200412,
+    2355
+   ],
+   "deps": [
+    "imenu-list"
+   ],
+   "commit": "22f6c116cf1465c28d4a35d8a4587a8b614be175",
+   "sha256": "1bgjhrpq6a239v8vfi6i9qcbyrg76mpy4yykkb5da8hlp23idwy7"
+  },
+  "stable": {
+   "version": [
+    1,
+    0,
+    0
+   ],
+   "deps": [
+    "imenu-list"
+   ],
+   "commit": "22f6c116cf1465c28d4a35d8a4587a8b614be175",
+   "sha256": "1bgjhrpq6a239v8vfi6i9qcbyrg76mpy4yykkb5da8hlp23idwy7"
+  }
+ },
+ {
   "ename": "lean-mode",
   "commit": "42f4d6438c8aeb94ebc1782f2f5e2abd17f0ffde",
   "sha256": "0rdraxsirkrzbinjwg4qam15iy3qiixqgwsckngzw8d9a4s9l6sj",
@@ -55333,8 +56630,8 @@
   "repo": "leanprover/lean-mode",
   "unstable": {
    "version": [
-    20200211,
-    2010
+    20200319,
+    838
    ],
    "deps": [
     "dash",
@@ -55343,8 +56640,8 @@
     "flycheck",
     "s"
    ],
-   "commit": "c9dffcda2951c22c483d1d22411d13bc132ce609",
-   "sha256": "1lj6j21hzya41fmlnw7faqmhvsdcgcidwibyvicgsb0gm6qqipjf"
+   "commit": "65b55b1711fb61129312044d5ac7e6a2c2ee245c",
+   "sha256": "1zmw8950qhry2ixk2ng0pg4j0vwx11nvjlrpab9jg6x47ys9j65n"
   }
  },
  {
@@ -55410,14 +56707,14 @@
   "repo": "DamienCassou/ledger-import",
   "unstable": {
    "version": [
-    20191126,
-    2035
+    20200302,
+    943
    ],
    "deps": [
     "ledger-mode"
    ],
-   "commit": "e32c4dd5952e3e5daa65eda5a22d508e97683409",
-   "sha256": "1p6n5vgpjmm1z6xq8f4yxf9w0r8wczlf0pa8qdfv7jmc50l58a2y"
+   "commit": "955e915fef9d46c968ef9101f7770870e2d2d80f",
+   "sha256": "018f7k4j8q1ka36winv2higjp8vmm90vss7vwyck9hg4w708m85p"
   },
   "stable": {
    "version": [
@@ -55440,11 +56737,11 @@
   "repo": "ledger/ledger-mode",
   "unstable": {
    "version": [
-    20200229,
-    1453
+    20200425,
+    1517
    ],
-   "commit": "6286366e6074e048d2a997d971d4d1c350f6bc63",
-   "sha256": "1bkfmvq7a6bq3b94495cfzzlxdxdiwyjar5rn5z2hsw1dljc7380"
+   "commit": "021eff5f88bf6392d7b3e511593e07471eb7833d",
+   "sha256": "0g4fgy39jp072b4ib0yxaxd3ndzxd1gx8inqqn9z9d7lxgc12l1g"
   },
   "stable": {
    "version": [
@@ -55678,11 +56975,11 @@
   "repo": "fniessen/emacs-leuven-theme",
   "unstable": {
    "version": [
-    20200122,
-    1934
+    20200425,
+    756
    ],
-   "commit": "dccd751682a0954165c7f2c08414bea0168a9a9f",
-   "sha256": "12njc6pmbadwn71h811alr4rpsmw1b48b3jjmxpy3s51ja44vcc4"
+   "commit": "444d36526382466e6bcf11c58066bcef759e4c1f",
+   "sha256": "1768r5gb8cpz8a03rgswf5mny539w96hjw1rpvfqvj4zbv7bvd7n"
   }
  },
  {
@@ -55931,8 +57228,8 @@
     20180219,
     1024
    ],
-   "commit": "8eacaf88ee7ef9445c767a032177a90711cb3ff7",
-   "sha256": "1334d09qsc5clcmkh1qi6mlph158ggf1p5kpsyl48vl1knj4ia9s"
+   "commit": "d083a9f0c74830bd77b794babb09fe0f0fdb3854",
+   "sha256": "1fgd2kfwh7gl4yxrmvv8yrv6wvvwy6y0nwibqqsy55698a1qb2fm"
   },
   "stable": {
    "version": [
@@ -56036,15 +57333,15 @@
   "repo": "noctuid/link-hint.el",
   "unstable": {
    "version": [
-    20200205,
-    2244
+    20200405,
+    1607
    ],
    "deps": [
     "avy",
     "cl-lib"
    ],
-   "commit": "0d9cabcdb783ddc834ede6dcb1bed627c3acd303",
-   "sha256": "1ybzxc421wyy34w71lgbdfx7vgy9j6va9jjv1mkxa0zxqpdar974"
+   "commit": "7440704cacb5c0fab35fff8ec59d30fbea17f44a",
+   "sha256": "0j609j69lxyfvr2g89gdkjrk1vy0c1qq6m0p0ay468bh7l6crs7v"
   }
  },
  {
@@ -56178,6 +57475,35 @@
   }
  },
  {
+  "ename": "lisp-local",
+  "commit": "2ec3f57a05e1b2e28ce33700d8ea98758b0bb69d",
+  "sha256": "1kzg2v0x0xf99mwd88bblbjfm9js4f40pibq6297xc9i5wrp3bv4",
+  "fetcher": "github",
+  "repo": "lispunion/emacs-lisp-local",
+  "unstable": {
+   "version": [
+    20200409,
+    1330
+   ],
+   "deps": [
+    "cl-lib"
+   ],
+   "commit": "ff745a937f79df51cac0209b3cc3c35ce1d1fc61",
+   "sha256": "0ffwjv5fpzia772iavn9ily5m7l73pxf0amgqizzmbx12rx3kkhg"
+  },
+  "stable": {
+   "version": [
+    0,
+    1
+   ],
+   "deps": [
+    "cl-lib"
+   ],
+   "commit": "ff745a937f79df51cac0209b3cc3c35ce1d1fc61",
+   "sha256": "0ffwjv5fpzia772iavn9ily5m7l73pxf0amgqizzmbx12rx3kkhg"
+  }
+ },
+ {
   "ename": "lispxmp",
   "commit": "ad10a684b4b2f01bc65883374f36fef156ff55d2",
   "sha256": "1a641v5cx4wy2v8a2swxzn1y9cz4g2bp4mn9q290n3ifpn5356dl",
@@ -56200,8 +57526,8 @@
   "repo": "abo-abo/lispy",
   "unstable": {
    "version": [
-    20200227,
-    1354
+    20200425,
+    1041
    ],
    "deps": [
     "ace-window",
@@ -56210,8 +57536,8 @@
     "iedit",
     "zoutline"
    ],
-   "commit": "c1286a2b41fa1f21c4f2ecdd5ba191805e04e268",
-   "sha256": "05vq28ziqamc0sysaa4zrljac4r0nq7j6a23m2vsf7nf8ymzff1c"
+   "commit": "3c3f092824113278c57e93be1a2565f987ca0a4a",
+   "sha256": "1g0gmdq1n8l33ls4x06594hl8ayw8365ixgxp096d7qv7n5mxzn6"
   },
   "stable": {
    "version": [
@@ -56495,10 +57821,10 @@
  },
  {
   "ename": "literate-coffee-mode",
-  "commit": "855ea20024b606314f8590129259747cac0bcc97",
-  "sha256": "18fdgay7xfgza75z3xma666f414m9dn7d50w94wzzmv7ja74sp64",
+  "commit": "2a2670edb1155f02d1cbe2600db84a82c8f3398b",
+  "sha256": "00zd5i6wpn95sslz0gd7m1h1fw7w07swszfqwaphkbqfwckgll6m",
   "fetcher": "github",
-  "repo": "syohex/emacs-literate-coffee-mode",
+  "repo": "emacsorphanage/literate-coffee-mode",
   "unstable": {
    "version": [
     20170211,
@@ -56530,14 +57856,14 @@
   "repo": "jingtaozf/literate-elisp",
   "unstable": {
    "version": [
-    20191012,
-    606
+    20200327,
+    620
    ],
    "deps": [
     "cl-lib"
    ],
-   "commit": "3bd795288db8dcd3edf5b33ca8fc213fe16c62d5",
-   "sha256": "0in5cryj1abcg6850lxx8qqhxvdij54jmm4ip9ra2kwz55smq4ky"
+   "commit": "732d649136051a4b6d43c2fabeb5233c3e5f16d7",
+   "sha256": "1d4p6s9dj5368ywfpp46pysxvcqwsiacih3n1hia9c4y7p0xx4cz"
   },
   "stable": {
    "version": [
@@ -56606,11 +57932,20 @@
   "repo": "lassik/emacs-live-preview",
   "unstable": {
    "version": [
-    20190415,
-    2214
+    20200419,
+    2143
+   ],
+   "commit": "7af1c74e0479c5b91d6368a4a3ff1342b83ef477",
+   "sha256": "0ifk0k6lfjzb0x0mgzh69jx0m166ljdg3ad69p51jw3m85c0wc6b"
+  },
+  "stable": {
+   "version": [
+    0,
+    1,
+    1
    ],
-   "commit": "bc3f79b58c4e428485b2cf800278004220f7433d",
-   "sha256": "1xlaq07wsgwzh3c0x50wgpj9i13nyk5ig45w1fx4156kmc69vjk8"
+   "commit": "448d6d2b0912a46acd7d9a9b186b53425b1a7626",
+   "sha256": "1by62z8pch148ar47453bybg7q9drja73rq3pwcn9jb0yb6gn1xl"
   }
  },
  {
@@ -56621,20 +57956,20 @@
   "repo": "donkirkby/live-py-plugin",
   "unstable": {
    "version": [
-    20200221,
-    611
+    20200401,
+    420
    ],
-   "commit": "0048b6c4b4f948f08786f3fb06935aa3ce227368",
-   "sha256": "0mfqxjn0hhrm0w8wf7hf85g1i8b9ihnavkw870rmyfj8y8nnp8qb"
+   "commit": "ab15012313217114d3f3940a6578df31ad223010",
+   "sha256": "1layngy8whcxgrpwhjdy41g194lkzq9z1wgv5rc4cg9smsbd6abi"
   },
   "stable": {
    "version": [
     4,
-    0,
-    1
+    1,
+    0
    ],
-   "commit": "0cc8f0a31ef815e26eb7da314a516e908ba25838",
-   "sha256": "13wbsapnq5p75c27smzsgmmgzjbx7x2vbj7b7707bm6cakqjwdzv"
+   "commit": "0a0d881d8ff30a6007b998e9bb9dddb999cca16e",
+   "sha256": "1mdnbbd0kr5y4vr2xbay80v4n07gg5jkkn0k3ywypsin7fz5ihhl"
   }
  },
  {
@@ -56875,20 +58210,20 @@
   "repo": "aki2o/log4e",
   "unstable": {
    "version": [
-    20170401,
-    1304
+    20200420,
+    745
    ],
-   "commit": "c69424e407be0d9d0e54b427d8b18b1ac5a607e2",
-   "sha256": "1ng2cgqb83dhxm1hvsfdgzhfl80q9qkf07cr9hp7sxldy36hvxw8"
+   "commit": "7df0c1ff4656f8f993b87064b1567618eadb5546",
+   "sha256": "0dbnks76v05allzkhx9zmyqpn6sk5376n8k2rbpnaw6gmz1ib2fv"
   },
   "stable": {
    "version": [
     0,
     3,
-    0
+    3
    ],
-   "commit": "6592682ab7de0e3d1915aa4d3c53e083be79fbeb",
-   "sha256": "1l28n7a0v2zkknc70i1wn6qb5i21dkhfizzk8wcj28v44cgzk022"
+   "commit": "7df0c1ff4656f8f993b87064b1567618eadb5546",
+   "sha256": "0dbnks76v05allzkhx9zmyqpn6sk5376n8k2rbpnaw6gmz1ib2fv"
   }
  },
  {
@@ -57017,27 +58352,43 @@
   "repo": "doublep/logview",
   "unstable": {
    "version": [
-    20200125,
-    1808
+    20200331,
+    2111
    ],
    "deps": [
     "datetime",
     "extmap"
    ],
-   "commit": "638dbd4833c6387be3849d0097b5b1a14c619afb",
-   "sha256": "1arzz27vf6r62m7qhfq049n5zw1x2zbbrvmlnvbd9yaanlgrf0hc"
+   "commit": "c67298a215136617de60c9041904ee6a455dcd4f",
+   "sha256": "0bjgzh4z4bz4nr97cn9wd92brg7wik37c0vd3kfisdalxq2wrgn5"
   },
   "stable": {
    "version": [
     0,
-    13
+    13,
+    1
    ],
    "deps": [
     "datetime",
     "extmap"
    ],
-   "commit": "638dbd4833c6387be3849d0097b5b1a14c619afb",
-   "sha256": "1arzz27vf6r62m7qhfq049n5zw1x2zbbrvmlnvbd9yaanlgrf0hc"
+   "commit": "c67298a215136617de60c9041904ee6a455dcd4f",
+   "sha256": "0bjgzh4z4bz4nr97cn9wd92brg7wik37c0vd3kfisdalxq2wrgn5"
+  }
+ },
+ {
+  "ename": "lol-data-dragon",
+  "commit": "c54747f74db0d3c270682c8994e3babdac9d36c4",
+  "sha256": "18aydjkv331gkbsyxgvrrlw37v2m2g65alz82287nwjswgns4pia",
+  "fetcher": "github",
+  "repo": "xuchunyang/lol-data-dragon.el",
+  "unstable": {
+   "version": [
+    20200321,
+    2142
+   ],
+   "commit": "6f53bb3971daad60bd0529d1e3889d5f9fedf235",
+   "sha256": "0xblv8l6krp3581m0xava95pm6wcsjm3rsl47dsvzpgns1kyz8lx"
   }
  },
  {
@@ -57171,6 +58522,69 @@
   }
  },
  {
+  "ename": "lsp-dart",
+  "commit": "acbba6bc6f1bb6e1153f1f75ca1dc025bb5a8993",
+  "sha256": "0q2x3i5yydnrplfgk8fcngdsxf1g1vz1jzkbwhiqf46wrv5vxwl3",
+  "fetcher": "github",
+  "repo": "emacs-lsp/lsp-dart",
+  "unstable": {
+   "version": [
+    20200423,
+    2120
+   ],
+   "deps": [
+    "dap-mode",
+    "dart-mode",
+    "dash",
+    "f",
+    "ht",
+    "lsp-mode",
+    "lsp-treemacs",
+    "pkg-info"
+   ],
+   "commit": "a27d12209570fe10c60e55e0718123fc2e7f7e8f",
+   "sha256": "192nmx00s4hxylp4lqfycbi2g8aq7bbzmy70c1qxh7k5m24yigxj"
+  },
+  "stable": {
+   "version": [
+    1,
+    6,
+    10
+   ],
+   "deps": [
+    "dap-mode",
+    "dart-mode",
+    "dash",
+    "f",
+    "ht",
+    "lsp-mode",
+    "lsp-treemacs",
+    "pkg-info"
+   ],
+   "commit": "a27d12209570fe10c60e55e0718123fc2e7f7e8f",
+   "sha256": "192nmx00s4hxylp4lqfycbi2g8aq7bbzmy70c1qxh7k5m24yigxj"
+  }
+ },
+ {
+  "ename": "lsp-docker",
+  "commit": "f592ec9b1d6a05e1e115d4b313be108c8e47ee67",
+  "sha256": "1xmkwhgkcsf52hngb811n2q7q4rav75wwjz7zin6x17vfv8hqifx",
+  "fetcher": "github",
+  "repo": "emacs-lsp/lsp-docker",
+  "unstable": {
+   "version": [
+    20200222,
+    505
+   ],
+   "deps": [
+    "dash",
+    "lsp-mode"
+   ],
+   "commit": "f46e56e554c9207d5ab5b9aebf994df8b41955f3",
+   "sha256": "1281qrskwwjz3x3mi99a6sp9694wbd08myhy0nlba6493ip8wbhz"
+  }
+ },
+ {
   "ename": "lsp-elixir",
   "commit": "c875a05e68d09ecf37f7e13149f2624c70164ea3",
   "sha256": "0mimb67swcq2yis0s6w2bkk7sgqv7lyvz1hrh48h2q6qr3ywmq0n",
@@ -57196,15 +58610,15 @@
   "repo": "emacs-lsp/lsp-haskell",
   "unstable": {
    "version": [
-    20191230,
-    1847
+    20200407,
+    2216
    ],
    "deps": [
     "haskell-mode",
     "lsp-mode"
    ],
-   "commit": "6d481f97e62b0fd2455e8f7a36429981277445b1",
-   "sha256": "0ljflzdjzsafgqqq9fdajrcm0rk4xaki2h5gbsbkgn8z65a2xh6h"
+   "commit": "f7d1f190ebacc96ddbc722e76730ca2db3c4ce38",
+   "sha256": "0wadna7y1ydx7d88rj15ylvy7gy2y30pr8wds6z10ds321qihs47"
   }
  },
  {
@@ -57233,16 +58647,16 @@
   "repo": "emacs-lsp/lsp-ivy",
   "unstable": {
    "version": [
-    20191028,
-    902
+    20200418,
+    1500
    ],
    "deps": [
     "dash",
     "ivy",
     "lsp-mode"
    ],
-   "commit": "78c1429c62c19006058b89d462657e1448d1e595",
-   "sha256": "1bry1vsv6p2h4qrzx8aq7bsqfw12w3v5gz548dwkdk2cwmhsmi3d"
+   "commit": "81e81ced99829358674c5a6bbe2c3e15cecd4ed8",
+   "sha256": "011126hz98qzb8zn1628z77j2s5w1hgvmb5saj2fr9wncgv1nax9"
   }
  },
  {
@@ -57253,8 +58667,8 @@
   "repo": "emacs-lsp/lsp-java",
   "unstable": {
    "version": [
-    20200114,
-    2313
+    20200425,
+    1842
    ],
    "deps": [
     "dash",
@@ -57266,8 +58680,8 @@
     "request",
     "treemacs"
    ],
-   "commit": "dbeeee9c74db25db217059011935b882f7ec1257",
-   "sha256": "1ra16rm61xwhp583ib1ran6bv0z353qs4aag75l809kyvq9szlyg"
+   "commit": "4f66649c2f02978145bd2e51ff8e6444b8631964",
+   "sha256": "08y81krxrfy9jm0qwmrszp1cainj37339503fqcnddaxgihvgnx1"
   },
   "stable": {
    "version": [
@@ -57314,28 +58728,58 @@
   "repo": "non-Jedi/lsp-julia",
   "unstable": {
    "version": [
-    20191011,
-    1005
+    20200408,
+    1412
    ],
    "deps": [
     "julia-mode",
     "lsp-mode"
    ],
-   "commit": "da66e78eb601b1652c3a9096e0ceea6b852aa6a0",
-   "sha256": "1xn7470lm322lqkkbg95qmzaadk85z3f2f3cx34iq00cmkkppcng"
+   "commit": "9f158a290168149fd301a1c1c2016600106ad5be",
+   "sha256": "077mrvxf8df4dppl3xqa7p3ksm3wcms64l306y7i5x878vyjgibv"
   },
   "stable": {
    "version": [
     0,
-    1,
-    1
+    2,
+    0
    ],
    "deps": [
     "julia-mode",
     "lsp-mode"
    ],
-   "commit": "6b0d1a3f32c5e6c5b4c0993f30303569a9e9e9bd",
-   "sha256": "11jisy6161j4mpqyi06slfr3l7cmmnp7xc6701hszmvl935znn3l"
+   "commit": "9f158a290168149fd301a1c1c2016600106ad5be",
+   "sha256": "077mrvxf8df4dppl3xqa7p3ksm3wcms64l306y7i5x878vyjgibv"
+  }
+ },
+ {
+  "ename": "lsp-latex",
+  "commit": "5e3c176af536155c8110006fd4bc63eeb2b2d12c",
+  "sha256": "01kn9faak6y1zfd1143yj453hl6rp1xykrg5rp196zf6brywj5a1",
+  "fetcher": "github",
+  "repo": "ROCKTAKEY/lsp-latex",
+  "unstable": {
+   "version": [
+    20200425,
+    920
+   ],
+   "deps": [
+    "lsp-mode"
+   ],
+   "commit": "6c5b0d926857b16c7cf6eae3111709393845f523",
+   "sha256": "1qgryycjbvdk2i11qsdzrrlmhsvrpwfn3kw4g73zri4vfwz9cr44"
+  },
+  "stable": {
+   "version": [
+    1,
+    0,
+    0
+   ],
+   "deps": [
+    "lsp-mode"
+   ],
+   "commit": "d016440fe364a016935bd90ae07e22d9012bcf8f",
+   "sha256": "0a6nryx7vshh4k0amlw3w3fn4yr8zlqxq5py8vj3pz4zkcndhxks"
   }
  },
  {
@@ -57346,8 +58790,8 @@
   "repo": "emacs-lsp/lsp-mode",
   "unstable": {
    "version": [
-    20200229,
-    1850
+    20200426,
+    440
    ],
    "deps": [
     "dash",
@@ -57358,8 +58802,8 @@
     "markdown-mode",
     "spinner"
    ],
-   "commit": "db3f7f022b6d8c509b5f5d84ff437840dc0fdaa1",
-   "sha256": "0p0fkby3i87zjjilv7pzbi1bkvr1gnrqpc4rrly2nn9pcrg5l16w"
+   "commit": "9c1ab8adf1a7674e15b643a4dd3781c4bed6537f",
+   "sha256": "127b2j0gfrkzb4g5p7hfv505afllhspni4w91kwgccf4b1a9di99"
   },
   "stable": {
    "version": [
@@ -57451,6 +58895,24 @@
   }
  },
  {
+  "ename": "lsp-pascal",
+  "commit": "41e4088e4b0cd99aafac40c83188112a680a65f7",
+  "sha256": "08zvh9r1plnirdp8qb0p8xfq0y7qx7awq98gn8340f5zbwh9006q",
+  "fetcher": "github",
+  "repo": "arjanadriaanse/lsp-pascal",
+  "unstable": {
+   "version": [
+    20200422,
+    1610
+   ],
+   "deps": [
+    "lsp-mode"
+   ],
+   "commit": "b132bdf66748e4abe0d4140f6d061b1ccd56082a",
+   "sha256": "09v79p6wsp775ky1wy5fr0hwh5j33jvdvcarjs20zbdwnrs53am8"
+  }
+ },
+ {
   "ename": "lsp-pyre",
   "commit": "5b243c6ab0a441531e02dc8fdd88c023ba505d25",
   "sha256": "1v8yx062cv5wmpg3lalah5cy8hvhslvyrd4f3185gmc0ynz71fpi",
@@ -57476,15 +58938,15 @@
   "repo": "emacs-lsp/lsp-python-ms",
   "unstable": {
    "version": [
-    20200223,
-    2136
+    20200425,
+    555
    ],
    "deps": [
     "cl-lib",
     "lsp-mode"
    ],
-   "commit": "5d0c799099aa5810858174f390e28fff3894bc06",
-   "sha256": "002h0i93blsv092pnfmzsfx0pj98r9glki0ki9n7gxg1z3nb0ybp"
+   "commit": "19feb4aaaa03382e5d9841f237dd1685d8fe2994",
+   "sha256": "040qahn9h30n44ik0yrcdysx9lhvdnjxh1wj5nzylmzblxz9s2ga"
   },
   "stable": {
    "version": [
@@ -57545,8 +59007,8 @@
   "repo": "emacs-lsp/lsp-treemacs",
   "unstable": {
    "version": [
-    20200220,
-    534
+    20200414,
+    407
    ],
    "deps": [
     "dash",
@@ -57556,8 +59018,8 @@
     "lsp-mode",
     "treemacs"
    ],
-   "commit": "2e3606eebfa8bd909b45b88e59d8eecc6afea4a2",
-   "sha256": "08xpf677jj1cnfkbpb148h3wld8lvlarp2yq89539nfcmajx53ch"
+   "commit": "9d1a42b7d7abb112035f05f50ffde9834da034ae",
+   "sha256": "1kbr2ndbg0lqjcnsyvmpv513kzj3gy0kd0wa18ixh96i92a2znar"
   }
  },
  {
@@ -57568,8 +59030,8 @@
   "repo": "emacs-lsp/lsp-ui",
   "unstable": {
    "version": [
-    20200224,
-    743
+    20200402,
+    839
    ],
    "deps": [
     "dash",
@@ -57577,8 +59039,8 @@
     "lsp-mode",
     "markdown-mode"
    ],
-   "commit": "bf3966e87c91c5d825c483ce0883f30dd2272b62",
-   "sha256": "0wapq3472cjdr1m47isv0lg61byanpb67k7cn9iyrlqp11y2xcjp"
+   "commit": "242dfe859c3497c456eaacfd84942e12419529fe",
+   "sha256": "1sx4nn6mkqhxp67jvh8pp0i4g26rzyvlq2b59r7ipmxh91c2a4fh"
   },
   "stable": {
    "version": [
@@ -57603,11 +59065,11 @@
   "repo": "immerrr/lua-mode",
   "unstable": {
    "version": [
-    20191204,
-    1434
+    20200405,
+    1305
    ],
-   "commit": "1f596a93b3f1caadd7bba01030f8c179b029600b",
-   "sha256": "0fdnkv37m7nf8yjjf01c856g2wrzyzqicv67fnbrnx7abrrfb1nd"
+   "commit": "658bf8f6c2bdcfe41cd14f5fb651563b41d0fbaa",
+   "sha256": "1qaqp2s5fnb2zz3bzc1yx79ilqxrf04lmd5gkk56nka4flyslp80"
   },
   "stable": {
    "version": [
@@ -57658,14 +59120,14 @@
   "repo": "sjbach/lusty-emacs",
   "unstable": {
    "version": [
-    20200115,
-    1413
+    20200415,
+    1456
    ],
    "deps": [
     "s"
    ],
-   "commit": "3f4be19e0c466399c680a355c402b09792123e4d",
-   "sha256": "1915w43dwvqkklxdh1scy4yxzmalyyrx76iy9wl024svwjq3i0np"
+   "commit": "1b7053b41083666c6805bcaeb55ece6dcc0d77cb",
+   "sha256": "1y3nzp6rpg7anv5xscbp4lzmfdvzffcxha9vx3mrclhjg6giz510"
   },
   "stable": {
    "version": [
@@ -57688,8 +59150,8 @@
     20200227,
     1301
    ],
-   "commit": "d2b921d067d7c7ea2f087b4d8edfdc37bcdf4af8",
-   "sha256": "1zsm7qhqj17wnx611rz6f917lvvj4ifz4vg4x144y8a5740pkihi"
+   "commit": "16fa8d109ec5799931a793b2e866ea9d593bee84",
+   "sha256": "1l6pi5ldmdcgv5qyg3kk1x8sxb639brzbfj0iddy5752hmg08g3h"
   },
   "stable": {
    "version": [
@@ -57724,26 +59186,26 @@
   "repo": "montag451/lxc-tramp",
   "unstable": {
    "version": [
-    20180523,
-    2024
+    20200414,
+    1445
    ],
    "deps": [
     "cl-lib"
    ],
-   "commit": "1aab85fef50df2067902bff13e1bac5e6366908b",
-   "sha256": "066qwyk38r42xriifg1ik2f0am0m57wlfrk5278sycr8vbag6fc9"
+   "commit": "1585e55a5deb89e2f4e30a0ad9e0f121d1e0ebcb",
+   "sha256": "1zs4wcbxqx8275j2q1118ipqw7532cd6cdy2whw22ck4z5w47vfg"
   },
   "stable": {
    "version": [
-    0,
     1,
+    0,
     0
    ],
    "deps": [
     "cl-lib"
    ],
-   "commit": "17fc5962e7c27ac4f0bcc4ed7312dd5709063341",
-   "sha256": "03h6aw98mbwwqj08bzpg147hanx97r8fr8jv790zw7iqqjp46hsm"
+   "commit": "1585e55a5deb89e2f4e30a0ad9e0f121d1e0ebcb",
+   "sha256": "1zs4wcbxqx8275j2q1118ipqw7532cd6cdy2whw22ck4z5w47vfg"
   }
  },
  {
@@ -58000,11 +59462,11 @@
   "repo": "roadrunner1776/magik",
   "unstable": {
    "version": [
-    20200217,
-    1213
+    20200304,
+    1323
    ],
-   "commit": "c42d7c084c1b928815cd665d1e42ea29b280853e",
-   "sha256": "0kgpynkqny8rj9ly6q72fgpv07sry92dda2v6wqhwd9nr84p1nkk"
+   "commit": "e54f934952cde3f96d6a131968295d993b3cf624",
+   "sha256": "1yivbgbcy5qvs55dn5lx08mbkmsd4mriymas9jgh7rn6hl14x8hj"
   },
   "stable": {
    "version": [
@@ -58024,8 +59486,8 @@
   "repo": "magit/magit",
   "unstable": {
    "version": [
-    20200228,
-    1207
+    20200425,
+    2117
    ],
    "deps": [
     "async",
@@ -58034,8 +59496,8 @@
     "transient",
     "with-editor"
    ],
-   "commit": "c8cd22e28d20b0d7ae74102df4e35d7c0c61ebe6",
-   "sha256": "134n9m2zrf60ljm867bv92qjgk61cmgns1a3cqpvj4wflpaahnbv"
+   "commit": "8de6ecf5c5c840f8a964c3e5bd4d7a1aedf04e10",
+   "sha256": "0fwaasr7g4qj9l8dxcy1228p2rpb2xy16w2g27gqdzyd6a5sc2jw"
   },
   "stable": {
    "version": [
@@ -58070,8 +59532,8 @@
     "cl-lib",
     "magit"
    ],
-   "commit": "9ffebd50a18adba70a9cfc2710012dfd650c5376",
-   "sha256": "0sihrmk9snazdj1dana7q89a5qd7xjclhmfqh15gvxchs4a8jwqg"
+   "commit": "0bc96737634e78ac7c7f8a3f73190531c0890914",
+   "sha256": "1lm8412n2046fz8n7rfbadyww2074lsxq0w4gm1x1alraz5im5h4"
   },
   "stable": {
    "version": [
@@ -58362,8 +59824,8 @@
     "libgit",
     "magit"
    ],
-   "commit": "c8cd22e28d20b0d7ae74102df4e35d7c0c61ebe6",
-   "sha256": "134n9m2zrf60ljm867bv92qjgk61cmgns1a3cqpvj4wflpaahnbv"
+   "commit": "8de6ecf5c5c840f8a964c3e5bd4d7a1aedf04e10",
+   "sha256": "0fwaasr7g4qj9l8dxcy1228p2rpb2xy16w2g27gqdzyd6a5sc2jw"
   }
  },
  {
@@ -58443,14 +59905,14 @@
   "repo": "magit/magit-popup",
   "unstable": {
    "version": [
-    20200102,
-    1811
+    20200306,
+    223
    ],
    "deps": [
     "dash"
    ],
-   "commit": "df9abf1a1bce3fadb5e0657eb8f4c7026efa3c69",
-   "sha256": "1ifhph1mj7wjar62d65fjx45qsjwsyslbj7liih3v0r4by5gyxmw"
+   "commit": "f316a085b9f66804692554df46c0f4f536a45b78",
+   "sha256": "1d650wny0201vh4hmkmx290rq0b2fnlwlb8ivys7mai9d380vlwi"
   },
   "stable": {
    "version": [
@@ -58511,14 +59973,14 @@
   "repo": "magit/magit",
   "unstable": {
    "version": [
-    20200226,
-    1251
+    20200425,
+    2044
    ],
    "deps": [
     "dash"
    ],
-   "commit": "c8cd22e28d20b0d7ae74102df4e35d7c0c61ebe6",
-   "sha256": "134n9m2zrf60ljm867bv92qjgk61cmgns1a3cqpvj4wflpaahnbv"
+   "commit": "8de6ecf5c5c840f8a964c3e5bd4d7a1aedf04e10",
+   "sha256": "0fwaasr7g4qj9l8dxcy1228p2rpb2xy16w2g27gqdzyd6a5sc2jw"
   },
   "stable": {
    "version": [
@@ -58622,8 +60084,8 @@
   "repo": "alphapapa/magit-todos",
   "unstable": {
    "version": [
-    20200204,
-    823
+    20200310,
+    28
    ],
    "deps": [
     "async",
@@ -58634,14 +60096,14 @@
     "pcre2el",
     "s"
    ],
-   "commit": "ad5663aa26fad147f1afbd878cbe21a064ba5745",
-   "sha256": "1naqyl9qy15nkjz41l8pzqy79bkm7cp5ih63ji8ycq416400pia1"
+   "commit": "a0e5d1f3c7dfcb4f18c1b0d57f1746a4872df5c6",
+   "sha256": "0v11ngxwndaylmzqm5rrvch7hsfcm15xhih13ckm6kn2skqdzh40"
   },
   "stable": {
    "version": [
     1,
     5,
-    1
+    2
    ],
    "deps": [
     "async",
@@ -58652,8 +60114,8 @@
     "pcre2el",
     "s"
    ],
-   "commit": "ad5663aa26fad147f1afbd878cbe21a064ba5745",
-   "sha256": "1naqyl9qy15nkjz41l8pzqy79bkm7cp5ih63ji8ycq416400pia1"
+   "commit": "65db450bdb766f12e5aa31ae1cecbc0716e07218",
+   "sha256": "0a4ghad93nmk4i0aq25c3g5lwxi7z327v0z10zi8yyja5daipsdp"
   }
  },
  {
@@ -58758,22 +60220,22 @@
  },
  {
   "ename": "magma-mode",
-  "commit": "59764a0aab7c3f32b5a872a3d10a7e144f273a7e",
-  "sha256": "1gq6yi51h1h7ivrm1xr6nfrpabx8ylbk0waaw04gnw3bb54dmmvc",
+  "commit": "0a82892371eb390d8a802919458c6c2baacd1597",
+  "sha256": "134zm9mg7p0qcqr0m7wsxnwqxr64s9z1njxmvjhsbxi3rhaivcsl",
   "fetcher": "github",
   "repo": "ThibautVerron/magma-mode",
   "unstable": {
    "version": [
-    20181205,
-    1708
+    20200312,
+    1306
    ],
    "deps": [
     "cl-lib",
     "dash",
     "f"
    ],
-   "commit": "9b734abbdf15fddecb58dc9eed1cbc39b78be2e1",
-   "sha256": "0nmakba9gszi251z962jlggw9mbsk8jxyynangsd1yj4bdfs6sgg"
+   "commit": "0d810239be625b3f8a82f4e27ffd311fc2e1841e",
+   "sha256": "0ibr94vlpa6hnycgssbm5fip0zvrw8rx24mvmq36a4qgd6qi7g4j"
   }
  },
  {
@@ -58818,15 +60280,15 @@
   "repo": "jerrypnz/major-mode-hydra.el",
   "unstable": {
    "version": [
-    20191014,
-    337
+    20191030,
+    2354
    ],
    "deps": [
     "dash",
     "pretty-hydra"
    ],
-   "commit": "fd362d2be7ed80889715ed8a30a61780a18ce6ea",
-   "sha256": "0vnmvpsm46izxlh0l0p89rhy6ifzzfpzk7j3kkf2608s6dy8hgcy"
+   "commit": "20362323f66883c1336ffe70be24f91509addf54",
+   "sha256": "16krmj2lnk7j5ygdjw4hl020qqxg11bnc8sz15yr4fpy1p7hq5cz"
   },
   "stable": {
    "version": [
@@ -59095,6 +60557,36 @@
   }
  },
  {
+  "ename": "manage-minor-mode-table",
+  "commit": "5171175442458748f355bf2eba51dde77a6cd480",
+  "sha256": "1mbjsd8av94r9qkb6xwpvyhkgm35cpbqm7j1mi1msc3mz3mzx7mz",
+  "fetcher": "github",
+  "repo": "jcs-elpa/manage-minor-mode-table",
+  "unstable": {
+   "version": [
+    20200302,
+    1517
+   ],
+   "deps": [
+    "manage-minor-mode"
+   ],
+   "commit": "cd126cbeb2e99c8d00b48310938a85448ebc2e1a",
+   "sha256": "1lk2rmv0qhzfyg57h461qdxgqciwqjggipl9i146m9bpjp7bjjvx"
+  },
+  "stable": {
+   "version": [
+    0,
+    1,
+    1
+   ],
+   "deps": [
+    "manage-minor-mode"
+   ],
+   "commit": "0636f376d9bc169bd1bd20c5847eb9f029b9467c",
+   "sha256": "1n4a9msfzspk0dfkr1i515ibrwg5yk3hyap2kym05yqpn4wq5xwp"
+  }
+ },
+ {
   "ename": "mandm-theme",
   "commit": "855ea20024b606314f8590129259747cac0bcc97",
   "sha256": "0mvzn29ljd3az6axyqq88vkkf1vpcvslc1svlnbyrpdfinphd0mx",
@@ -59343,14 +60835,11 @@
   "repo": "jrblevin/markdown-mode",
   "unstable": {
    "version": [
-    20191230,
-    1055
-   ],
-   "deps": [
-    "cl-lib"
+    20200421,
+    2222
    ],
-   "commit": "e9dff50d572caa96b68a7466c18c97a8d6ed651c",
-   "sha256": "0v7a56fqwaqzqkpip7lpbsf9jnnwfjwd3jf61xnziv6j9sa46p1d"
+   "commit": "365697302345f8b9dc10bc975477452a282f7ae0",
+   "sha256": "1afjp0j5498zzbl8ycrz37cqdssfjlxcx5g4addzv0xaicfghgk6"
   },
   "stable": {
    "version": [
@@ -59656,6 +61145,21 @@
   }
  },
  {
+  "ename": "masm-mode",
+  "commit": "3f1961f11a811045095db15d650eae7469d8670c",
+  "sha256": "0zlc8gc0xdqgzs1ywix236wh5nfnsmab9s9x1hpfpzkg6sjzv8wr",
+  "fetcher": "github",
+  "repo": "YiGeeker/masm-mode",
+  "unstable": {
+   "version": [
+    20200308,
+    1450
+   ],
+   "commit": "626b9255c2bb967a53d1d50be0b98a1bcae3250c",
+   "sha256": "1k6wcksddy0k02hrqfaifr61c09pg6kpcqpmfm9zkb444pdqjn17"
+  }
+ },
+ {
   "ename": "mastodon",
   "commit": "809d963b69b154325faaf61e54ca87b94c1c9a90",
   "sha256": "1bsyf4j6zs9gin0k7p22yv5gaqd6m3vdc2fiagfbs7gxsmhb6p4i",
@@ -59916,6 +61420,24 @@
   }
  },
  {
+  "ename": "mc-calc",
+  "commit": "a8cded39a6c14d34f618aba136d48e162a70c433",
+  "sha256": "1lphlavndz0m3pw2kcrbqkavvcgmzn2p3av0h60ghndz00psqbys",
+  "fetcher": "github",
+  "repo": "hatheroldev/mc-calc",
+  "unstable": {
+   "version": [
+    20200420,
+    1836
+   ],
+   "deps": [
+    "multiple-cursors"
+   ],
+   "commit": "74a046a5728919a4d1135ca62738326b0dde278c",
+   "sha256": "0498088pgbpywqdla8mzhpq4izzbdbqwq9cjzg0050y598pinpqq"
+  }
+ },
+ {
   "ename": "mc-extras",
   "commit": "12747bb8603ebc09ce0873f3317a99e34d818313",
   "sha256": "0b110x6ygc95v5pb9lk1i731x5s6dagl5afzv37l1qchys36xrym",
@@ -60066,11 +61588,11 @@
   "repo": "techquila/melancholy-theme",
   "unstable": {
    "version": [
-    20190620,
-    1001
+    20200305,
+    133
    ],
-   "commit": "3140860d0b310b6ff51b0df11de992cd65135692",
-   "sha256": "1hp2ndbiqlb1p86m437r34rvrzsy8ag0bzvkiz4zf5rgvm8y48sk"
+   "commit": "ffed56cb756f8acba93ce7edc664c950d75927d9",
+   "sha256": "1wcvd68dm453rvhjm89vv2faljgyszwyc4g95q7ydvhk3h1gck2p"
   }
  },
  {
@@ -60215,6 +61737,25 @@
   }
  },
  {
+  "ename": "meow",
+  "commit": "b5515ad6f1b8e8296fba5bd91d7adf5e1fc229b4",
+  "sha256": "1s9wqmxg1g8crhsvwn4fh3hkn7pyfj5x71fal9yl0fk6gx59n1p0",
+  "fetcher": "github",
+  "repo": "DogLooksGood/meow",
+  "unstable": {
+   "version": [
+    20200425,
+    1327
+   ],
+   "deps": [
+    "cl-lib",
+    "dash"
+   ],
+   "commit": "f9e4296ed96ca31c8197ba8a5576fc94ee433755",
+   "sha256": "0dgdf6xlylnnsm7954xa8vf50x4mfcr8gvajrcii2shbcb23b8c8"
+  }
+ },
+ {
   "ename": "merlin",
   "commit": "9338298a79b7f2d654df90b0f553aeed1428de13",
   "sha256": "0r4wc5ann6239bagj364yyzw4y3lcpkl5nnn0vmx4hgkwdg509fn",
@@ -60225,17 +61766,17 @@
     20191025,
     851
    ],
-   "commit": "077385b3f9f3050678963d47c56e18aecc9f8b28",
-   "sha256": "1p926jsajhn10679gbsj0lgmfvz8q5mxx0w326qni7y9mmrxvsni"
+   "commit": "21f4ba18acd9ca3dc5c8263acfc46042a6aa557e",
+   "sha256": "1sp1g70wy8qp34641hlpk5xaf7vv359xgwc7z8cw7yvj39mn98va"
   },
   "stable": {
    "version": [
     3,
     3,
-    3
+    4
    ],
-   "commit": "73e9771bcc1c8f8575b505a62c58ad40004cf5f7",
-   "sha256": "12mh5p87rjwvkf6dqmxka4jbvhcd729972b726im6v0a27ncqh77"
+   "commit": "21f4ba18acd9ca3dc5c8263acfc46042a6aa557e",
+   "sha256": "1sp1g70wy8qp34641hlpk5xaf7vv359xgwc7z8cw7yvj39mn98va"
   }
  },
  {
@@ -60275,14 +61816,14 @@
   "repo": "abrochard/mermaid-mode",
   "unstable": {
    "version": [
-    20200221,
-    1938
+    20200420,
+    2258
    ],
    "deps": [
     "f"
    ],
-   "commit": "833abce1fb232b7dbeac0ee568afe8c468077029",
-   "sha256": "0znc9sv5xv0bqq4szcaz6nlxypijqm5lmi0igkcpibry6bwfipgj"
+   "commit": "b8673381ff8bbfbdf3f165ae928e7c775a3117e9",
+   "sha256": "14w2mwqiksmng8pzm4l0c458q0i2m3p4wcfvvmagyqk6mfl05m4l"
   }
  },
  {
@@ -60403,17 +61944,17 @@
     20191018,
     242
    ],
-   "commit": "4fa095ff8416d1759ffd9cbd01d667cff386bbb5",
-   "sha256": "171fsvzk0msvz1052034g60prf40w6qdkglg560v73iika8x2k4s"
+   "commit": "60eae1c8a7f82fbcc2660d785b33601daaa29f4b",
+   "sha256": "06ia4ba6c1yph259wr4y5sdkl1ry6pzbwhx807ia675rp0clp9hz"
   },
   "stable": {
    "version": [
     1,
     1,
-    5
+    8
    ],
-   "commit": "2e28cf362b7e4a8b6a5bbaf60983a72e19798c8b",
-   "sha256": "0lal6d4a4pbni1xl3g1gb3rnmyz2kym9r1mhb2n14awqqxxg7l3q"
+   "commit": "0177fc4e7edd705db59b82c83a24db51dc405890",
+   "sha256": "1whl7kz4im2jmdz99336wfn152q0l3qwii4w7sn45rlsm2sijiw1"
   }
  },
  {
@@ -60424,14 +61965,29 @@
   "repo": "ianxm/emacs-tracker",
   "unstable": {
    "version": [
-    20200126,
-    1851
+    20200419,
+    1758
    ],
    "deps": [
     "seq"
    ],
-   "commit": "4da64b60091c3d7b23c7c5fd3dba981122b0e1f7",
-   "sha256": "1jy07b1am1g4hwiwywmi9iyidv3yp933j2y4f9nmfhpb4yjs193y"
+   "commit": "287ced1bd51080897b2d6084f72f4a697e9b7e94",
+   "sha256": "190jpvd1li2185d1m9k2md5x0fz156a7lwwl57n4ir54j4h0s8ri"
+  }
+ },
+ {
+  "ename": "metronome",
+  "commit": "2f77239fecb41487a6aa03e6fc219cba96dee18d",
+  "sha256": "1kkm7s6hiyk3h1bnf9pfnsikmfpp998041wg0bwqnpzhzzlq6fy4",
+  "fetcher": "gitlab",
+  "repo": "jagrg/metronome",
+  "unstable": {
+   "version": [
+    20200309,
+    1918
+   ],
+   "commit": "ab9478da0da3aadba26c65beba938c3928c823c3",
+   "sha256": "0qrjyn2qc5k5a6gz1m1izx315sy7dd0cdzgiyrwp8za39gkhgbl7"
   }
  },
  {
@@ -60442,11 +61998,11 @@
   "repo": "kazu-yamamoto/Mew",
   "unstable": {
    "version": [
-    20200130,
-    145
+    20200316,
+    221
    ],
-   "commit": "bdafb13aadeae6af73dadd9f6b383ea6903da32f",
-   "sha256": "09k9bkwf6hz8jnklsm30w79v3vkwsf5nd97cxfmi44j7wlb6kkr1"
+   "commit": "5145145f87bfbe80fd91e82ded33033cf78ef54f",
+   "sha256": "0wdbgh3bady6xad0gnlg3irds5vdffl8d39raqayzgn17yb98pcf"
   },
   "stable": {
    "version": [
@@ -60473,6 +62029,36 @@
   }
  },
  {
+  "ename": "meyvn",
+  "commit": "b7ff8ac12f51e775228a7c916126830802038cf0",
+  "sha256": "1yq90c7s8kb0w25w49wjia84sjhbgjdvjxsl98cdhcf9h6adls6p",
+  "fetcher": "github",
+  "repo": "danielsz/meyvn-el",
+  "unstable": {
+   "version": [
+    20200311,
+    2209
+   ],
+   "deps": [
+    "cider",
+    "dash",
+    "parseedn",
+    "projectile",
+    "s"
+   ],
+   "commit": "5eb0423d4b7083cb330a73ef1cfd3e0dd8538567",
+   "sha256": "0vk2d59jvzhdm47w4kcn58njps444i0350lp5z7dnzhaag10dwc0"
+  },
+  "stable": {
+   "version": [
+    1,
+    0
+   ],
+   "commit": "3119214ff45db630789f9371f956d5ac06229b1d",
+   "sha256": "0mnvc3f56x4icrqmc4kx6bzc9vac40f020npimdgiylbmyxj97vn"
+  }
+ },
+ {
   "ename": "mgmtconfig-mode",
   "commit": "4cf3dd70ae73c2b049e201a3547bbeb9bb117983",
   "sha256": "0bdjaqfk68av4lfc4cpacrl2mxvimplfkbadi9l6wb65vlqz6sil",
@@ -60483,8 +62069,8 @@
     20200104,
     108
    ],
-   "commit": "3bce96bbd509ad5ffb35ead52128dec5c1a67abf",
-   "sha256": "01wx7cvk3bvdvkpldhbj7wvqyrra7ajqjkgnj4knjg8m2wrhilhj"
+   "commit": "e9af8a2595e336542c9dfc656fe808ddc6937a59",
+   "sha256": "1s72qvg1jwqk27axiqb2wn7y1q3x0rf2mb20yc9kqva553fk5vzd"
   },
   "stable": {
    "version": [
@@ -60510,8 +62096,8 @@
    "deps": [
     "calfw"
    ],
-   "commit": "86d3682ff9491893da671237be3cde0b0010ca85",
-   "sha256": "0md61pfjvx8xakahpig39ldfzvwdjgr19qxr78c7bzl98hbjpgq4"
+   "commit": "f9f048de9fe85a90d376d828ce3dad2a96c62c40",
+   "sha256": "1m6w12y9dcz85xm7lc7dhc7vjhw0bhdm0b4rcp1fr2sn9wv7c4wz"
   },
   "stable": {
    "version": [
@@ -60633,17 +62219,17 @@
  },
  {
   "ename": "minesweeper",
-  "commit": "5b7972602399f9df9139cff177e38653bb0f43ed",
-  "sha256": "1n6r3a3rl09pv4jvb7ald1gaipqylfchggza973qv9rgh5g90nag",
-  "fetcher": "bitbucket",
-  "repo": "zck/minesweeper.el",
+  "commit": "d3828ad7599d13728b5571b882344c3ada434b85",
+  "sha256": "061l7xh7vjg5krz5lskj2jvrnsv2qq4bwg0qkkysmy4zp9f3m5iq",
+  "fetcher": "hg",
+  "url": "https://hg.sr.ht/~zck/minesweeper",
   "unstable": {
    "version": [
-    20150414,
-    522
+    20200416,
+    2342
    ],
-   "commit": "d29af12fc6115399c11bdf7461a74cb810c97336",
-   "sha256": "1b2kn4c90hl07lzdg10wamd4lq8f24wmaj4zvr728pwyga99b2av"
+   "commit": "d4248e3c9b3e9e7277cb9e6d081330611898f334",
+   "sha256": "0b648nsnwn461r2alg9v220v0c4djyvwn7xgwh8c8sb9pjwbmw90"
   }
  },
  {
@@ -60665,6 +62251,21 @@
   }
  },
  {
+  "ename": "mini-frame",
+  "commit": "2a10ea61ac4a3c8fa800f4107f256fa3ac5907f2",
+  "sha256": "06zv8qmbvzqzinmb5zcd40a43kmmq7mby6dgacpq81cg5azyfkr7",
+  "fetcher": "github",
+  "repo": "muffinmad/emacs-mini-frame",
+  "unstable": {
+   "version": [
+    20200424,
+    852
+   ],
+   "commit": "3aa8de59d170d7bdc16e5f829d952d82abd7739c",
+   "sha256": "02j2w4c4wvqr1csmr94rzhbrwhqfb5wmjngxa9wl58z1plwy4d8m"
+  }
+ },
+ {
   "ename": "mini-header-line",
   "commit": "122db5436ff9061713c0d3d8f44c47494067843e",
   "sha256": "1yg8i7gsmiv8zwl1wqvgrh2xl2hm5nn3q11rz4hpyxw26355i817",
@@ -60687,25 +62288,25 @@
   "repo": "kiennq/emacs-mini-modeline",
   "unstable": {
    "version": [
-    20200131,
-    312
+    20200424,
+    647
    ],
    "deps": [
     "dash"
    ],
-   "commit": "8762d2ec5de2994f05a2a11f505d0963eb28e59e",
-   "sha256": "0dc9frairj081g326b64mddr3knpxhwvmn19w7m1ckmxbv7lg0in"
+   "commit": "4f1dce78916cccd2e7066345ae2be3394a675c46",
+   "sha256": "0qbd6jdaqfs43i9cgs4n4d8vkv3nbcxcmwkd9xrj1d03rdmyzxh0"
   },
   "stable": {
    "version": [
-    20200131,
-    312
+    20200408,
+    729
    ],
    "deps": [
     "dash"
    ],
-   "commit": "8762d2ec5de2994f05a2a11f505d0963eb28e59e",
-   "sha256": "0dc9frairj081g326b64mddr3knpxhwvmn19w7m1ckmxbv7lg0in"
+   "commit": "b761e41479a2564e801ac6c427956203de3d62ca",
+   "sha256": "1ngggz4n35bklgya6ymc98w7y2annxcpdkikd5afd5jn8w7x2vxg"
   }
  },
  {
@@ -60925,17 +62526,17 @@
  },
  {
   "ename": "minsk-theme",
-  "commit": "36546342769ce5b6487a9b9ca3ec48bc81b6c880",
-  "sha256": "0cxwrc8nw7kkpc3z2pa7qmkyamsbsnfs93ybflv3z1wzp6z9q1b8",
+  "commit": "2f78d25a094cfa5d5a6dad2f0c6d051138b8744b",
+  "sha256": "1sf93ycd6a1p4xf1bhgjbqd4y38v1b4qgf0mh6pag2xz93jr7lw5",
   "fetcher": "github",
   "repo": "jlpaca/minsk-theme",
   "unstable": {
    "version": [
-    20200102,
-    1829
+    20200306,
+    1220
    ],
-   "commit": "2ad8e88530fb0b66b5798ff8d692144691c93891",
-   "sha256": "16fyqw79vfdklzibqc0j78d6ws77naxz7yj1iahp3wcwqlwln545"
+   "commit": "d1e04ca03aadb942dc4bee82f44848c3ce52b25c",
+   "sha256": "1yrjmyh8a0xqijyg16v20iqh13s7j4pf410f0214a4m9lp07pxpx"
   }
  },
  {
@@ -60978,6 +62579,21 @@
   }
  },
  {
+  "ename": "mix",
+  "commit": "aaa1958ac6a0e59613e1b71e0eddbe4989d93e67",
+  "sha256": "1wflzfr7jgvd01il9zz96wasdyjxxi5nrzva9hlrkgqhp0h877sk",
+  "fetcher": "github",
+  "repo": "ayrat555/mix.el",
+  "unstable": {
+   "version": [
+    20200419,
+    820
+   ],
+   "commit": "37916fa5f7dfe448585fb83ea6253eb0f84df15f",
+   "sha256": "09pk4bakqz01ci06c79ywwb8ijdfgw3rxrz0wlaz4zmlbirkzma6"
+  }
+ },
+ {
   "ename": "mixed-pitch",
   "commit": "7d3c7af03e0bca3f834c32827cbcca29e29ef4db",
   "sha256": "1gda4jl946qlbf8rqm0mk493kwy8yqldr21cr583l6b6gl1nb4qf",
@@ -60985,20 +62601,20 @@
   "repo": "jabranham/mixed-pitch",
   "unstable": {
    "version": [
-    20191023,
-    1025
+    20200321,
+    1331
    ],
-   "commit": "fbc566ace3ed7508dab6bec90ba185f21c829aab",
-   "sha256": "0175w364alym0qvvqlsgmy0j100pzdx5j1ck07hif3k5bs69q22i"
+   "commit": "734fbdf2d2c17beee151faf39bd10174a87eea5d",
+   "sha256": "1i0yd7akkyqhkd8g2g793n6syiy0mbnlq9apg7p1s4xycmwxx684"
   },
   "stable": {
    "version": [
     1,
-    0,
-    1
+    1,
+    0
    ],
-   "commit": "15bb9ec6d8be0812a46917205be6c3a1c78f68ff",
-   "sha256": "1458sy5b6bis1i0k23jdqk6hfqg0ghk637r3ajql2g19ym48rf58"
+   "commit": "734fbdf2d2c17beee151faf39bd10174a87eea5d",
+   "sha256": "1i0yd7akkyqhkd8g2g793n6syiy0mbnlq9apg7p1s4xycmwxx684"
   }
  },
  {
@@ -61020,6 +62636,21 @@
   }
  },
  {
+  "ename": "mlso-theme",
+  "commit": "2e026e2511ead77022cf8ed9d45d0d5a5aa104b9",
+  "sha256": "1abv6zhz28x5yk0rjn19wjxwvdq0ps3j2sx45n0dlbqfrqgw86d1",
+  "fetcher": "github",
+  "repo": "Mulling/mlso-theme",
+  "unstable": {
+   "version": [
+    20200329,
+    1516
+   ],
+   "commit": "a4bb7b55ce81d8dcc0ad8d92acbde309c7cc1ea0",
+   "sha256": "15fmzsf5rpgx5f1fr45j24hgzmz95zxkj1jihdb64p049ak2h5a9"
+  }
+ },
+ {
   "ename": "mmm-jinja2",
   "commit": "721b9a6f16fb8efd4d339ac7953cc07d7a234b53",
   "sha256": "0zg4psrgikb8644x3vmsns0id71ni9fcpm591zn16b4j64llvgsi",
@@ -61159,8 +62790,8 @@
     "f",
     "js2-mode"
    ],
-   "commit": "33e1b521a8a8d0225df353b51f1e8a4588ee32d0",
-   "sha256": "1ln6wz452sfxy7ii211ha9p0n3pygxyzyk0raczfla3ln8dh989q"
+   "commit": "cfd5b1a8a32162575f1c30b82e17b74efb67cf1c",
+   "sha256": "015pinqd2bxac372dvmcxnc7z9qayq4xpa254sp31bdzn4r5xns4"
   },
   "stable": {
    "version": [
@@ -61362,6 +62993,29 @@
   }
  },
  {
+  "ename": "modern-fringes",
+  "commit": "c765214f003426ac7a0e98c5764b14dd61ccce52",
+  "sha256": "0acp18v97k2iahbd5kp240g46wqdmrk4ddrsgvckzm0chsmjmm8q",
+  "fetcher": "github",
+  "repo": "specialbomb/emacs-modern-fringes",
+  "unstable": {
+   "version": [
+    20200321,
+    1817
+   ],
+   "commit": "108daba8407dc8acf140157e7f49137c397a0af7",
+   "sha256": "15370yw3147fzx8ly1svk7xvm0l9fg2gbzd8sx9ls93nyml7c5k7"
+  },
+  "stable": {
+   "version": [
+    4,
+    4
+   ],
+   "commit": "6884dd16e4d76dedd792f0c5fed48ca8a2f11222",
+   "sha256": "10h5557sppi41pgbbjsffc9n67h8ja28skhdlklc0n6zap71m87s"
+  }
+ },
+ {
   "ename": "modtime-skip-mode",
   "commit": "486a675ca4898f99133bc18202e123fb58af54c0",
   "sha256": "1drafwf4kqp83jp47j2ddl2n4a92zf1589fnp6c72hmjqcxv3l28",
@@ -61384,20 +63038,20 @@
   "repo": "protesilaos/modus-themes",
   "unstable": {
    "version": [
-    20200228,
-    1019
+    20200425,
+    1503
    ],
-   "commit": "e1b2d0a6235c26ce9e8ca7085393eeff20408378",
-   "sha256": "0cjbvqnw2xhvrzihzywbb5x568vrmxwmrq2rzdm1bw2596ycrnd3"
+   "commit": "0344a1b534468bdf072040d467ac853215d4fa63",
+   "sha256": "1bpryv6i8vm3g7avhns7nr65d82zq5kahh9kap7zg4w2a4gx1hl7"
   },
   "stable": {
    "version": [
     0,
-    4,
+    7,
     0
    ],
-   "commit": "ed89fbe217fc1a754d9de5f3e6b22b43fca284af",
-   "sha256": "0c4y3y9mjf6x2b9087fk6nkxvgvm9f5l1p2vdwqny80vp4krsb8r"
+   "commit": "cedb331001d0623eb003591b2f650b8e5e4069ed",
+   "sha256": "0nw3jlx2h9127y9b8mmyrps9jyvr33yz2dr9q33j9fll1b8wapn0"
   }
  },
  {
@@ -61408,20 +63062,20 @@
   "repo": "protesilaos/modus-themes",
   "unstable": {
    "version": [
-    20200228,
-    1019
+    20200425,
+    1503
    ],
-   "commit": "e1b2d0a6235c26ce9e8ca7085393eeff20408378",
-   "sha256": "0cjbvqnw2xhvrzihzywbb5x568vrmxwmrq2rzdm1bw2596ycrnd3"
+   "commit": "0344a1b534468bdf072040d467ac853215d4fa63",
+   "sha256": "1bpryv6i8vm3g7avhns7nr65d82zq5kahh9kap7zg4w2a4gx1hl7"
   },
   "stable": {
    "version": [
     0,
-    4,
+    7,
     0
    ],
-   "commit": "ed89fbe217fc1a754d9de5f3e6b22b43fca284af",
-   "sha256": "0c4y3y9mjf6x2b9087fk6nkxvgvm9f5l1p2vdwqny80vp4krsb8r"
+   "commit": "cedb331001d0623eb003591b2f650b8e5e4069ed",
+   "sha256": "0nw3jlx2h9127y9b8mmyrps9jyvr33yz2dr9q33j9fll1b8wapn0"
   }
  },
  {
@@ -61584,11 +63238,11 @@
   "repo": "belak/emacs-monokai-pro-theme",
   "unstable": {
    "version": [
-    20191115,
-    714
+    20200318,
+    830
    ],
-   "commit": "622e3a7203907978ce0d2409e3df2d65c63ce938",
-   "sha256": "08gl9wcr4xi1v8750j2bqvn0szv2iifi3y8ay9c9lscqax9knx83"
+   "commit": "90f34d48baad78a86f60eb3fae902c545bb82505",
+   "sha256": "0sjxyvv16jm2xss6kxiankn9n92z52l20p2mkv95p2bd47mxn5iw"
   }
  },
  {
@@ -61599,11 +63253,11 @@
   "repo": "oneKelvinSmith/monokai-emacs",
   "unstable": {
    "version": [
-    20190801,
-    1701
+    20200416,
+    2001
    ],
-   "commit": "e407f51d34b0c30cfe9d815f80a0c3539b998b08",
-   "sha256": "0psz6z59v0fdl846vaydqrhmy4swxcvz6swa523rcpjxlp3w2vyq"
+   "commit": "4281fc13dadef98942c8d43024de024f2392fec5",
+   "sha256": "0049ny3m1mgn0b97m0clcmmh2xzn66flbsd8k45dn0qxm5wlaj3n"
   },
   "stable": {
    "version": [
@@ -61918,11 +63572,11 @@
   "repo": "wyuenho/move-dup",
   "unstable": {
    "version": [
-    20190408,
-    1246
+    20200311,
+    1424
    ],
-   "commit": "19f1c075d939084279b190c38412b4cfda96840d",
-   "sha256": "0rb9x00dygf0v5xk6gljdn0lvkgzyl129b5i4jpxz0ylccckd0xn"
+   "commit": "7a384e0e0889e07a9a81d007d8ccc654c7c89bd2",
+   "sha256": "040xg9bbficz300zqrnvk68b76ljnif9sdiag03hp61xqpzxmacm"
   },
   "stable": {
    "version": [
@@ -62223,16 +63877,16 @@
   "repo": "kljohann/mpv.el",
   "unstable": {
    "version": [
-    20180602,
-    1014
+    20200315,
+    2158
    ],
    "deps": [
     "cl-lib",
     "json",
     "org"
    ],
-   "commit": "9dedf3b7c1bfd778284df7f394207ce0447ea7aa",
-   "sha256": "15z62wi47pwvkbh4qgvz06yk4cyy570pjz1276sd9frdwgd4kc19"
+   "commit": "2d40c4550558eb1bf35a69446777c4e9cae7a623",
+   "sha256": "0f9iq83dfj73gbx7zndvh32b102582lzv4xb8gvqjs26k5bywdxj"
   },
   "stable": {
    "version": [
@@ -62296,6 +63950,21 @@
   }
  },
  {
+  "ename": "msgpack",
+  "commit": "773cb12f9aef4ad45179cb7dd07275d886907836",
+  "sha256": "1vcbngsr0xpqy00g837p2awkin82s145ksh223c1msszwwwgdx5m",
+  "fetcher": "github",
+  "repo": "xuchunyang/msgpack.el",
+  "unstable": {
+   "version": [
+    20200323,
+    515
+   ],
+   "commit": "90e3086f259549b1667a3c5b9aa2d70aaeaa4d3d",
+   "sha256": "0g9a59x7xjf1p2swbi3v8bawdwkqliw3kcg70bca5dgg2jxgd4z6"
+  }
+ },
+ {
   "ename": "msvc",
   "commit": "69939b85353a23f374cab996ede879ab315a323b",
   "sha256": "04gq2klana557qvsi3bv6416l0319jsqb6bdfs7y6729qd94hlq3",
@@ -62378,11 +64047,11 @@
   "repo": "cdominik/mu2tex",
   "unstable": {
    "version": [
-    20190520,
-    503
+    20200329,
+    758
    ],
-   "commit": "9467076ee4115d7fc19abaeadecc603e9115bf8d",
-   "sha256": "1acyynjrr5pxn15g59hd3cq1yvx989ks1b79g1kmhb1cqfpz58b8"
+   "commit": "536a7a0db4ddbdb30a16fdd56c79b78c9b50d865",
+   "sha256": "18s4mks7yxbxlhdkn9s2bgxyl14rv7ds7n6c7g3pzjd94j404b64"
   }
  },
  {
@@ -62459,14 +64128,14 @@
   "repo": "agpchil/mu4e-maildirs-extension",
   "unstable": {
    "version": [
-    20180606,
-    812
+    20200410,
+    820
    ],
    "deps": [
     "dash"
    ],
-   "commit": "3ef4c48516be66e73d24fe764aadbcfc126b7964",
-   "sha256": "04nf947sxkir3gni67jc5djhywkmay1l8cqkicayimrh3vd5cy05"
+   "commit": "36b1f3a561af173eccc7bebf10ee060af44ed6e7",
+   "sha256": "1k8xar4yal5nc4ixx78gvs4fvlxpa2c4fzkq3xzh6jwfbrc7g013"
   },
   "stable": {
    "version": [
@@ -62676,6 +64345,25 @@
   }
  },
  {
+  "ename": "multi-vterm",
+  "commit": "c87a280364597340baee7711aa33302c0a349fa7",
+  "sha256": "1dn1m30qmhv4sl84gki8l46rrkabn3ka7nb075q25h1b8lhhijci",
+  "fetcher": "github",
+  "repo": "suonlight/multi-vterm",
+  "unstable": {
+   "version": [
+    20200329,
+    940
+   ],
+   "deps": [
+    "projectile",
+    "vterm"
+   ],
+   "commit": "11f1b0cc97a24aba66fb561a0a94e9a66375b30f",
+   "sha256": "0pzcwn13yj21qcga2agcv8as0jyrmw055fr8nbzvkp1jml4l3vwj"
+  }
+ },
+ {
   "ename": "multi-web-mode",
   "commit": "cae2ac3513e371a256be0f1a7468e38e686c2487",
   "sha256": "0vi4yvahr10aqpcz4127c8pcqpr5srwc1yhgipnbnm86qnh34ql5",
@@ -63466,6 +65154,21 @@
   }
  },
  {
+  "ename": "native-complete",
+  "commit": "abc5469b4400ed05192dcfd6c00504768f05292e",
+  "sha256": "0y1zqmd34jswfw5fi3j6n0d9dhpvl14x3h5nfl6wmxj2g8vv4gns",
+  "fetcher": "github",
+  "repo": "CeleritasCelery/emacs-native-shell-complete",
+  "unstable": {
+   "version": [
+    20200424,
+    1635
+   ],
+   "commit": "ccb5b52940a9374fbfe92947f0101e7254ba445d",
+   "sha256": "0p3qrl59qhczwysydsak66j7ixpykr3397xdvjj3hkmmcrsachic"
+  }
+ },
+ {
   "ename": "nav",
   "commit": "0fda2b54a0ff0b6fc3bd6d20cfcbbf63cae5380f",
   "sha256": "0ly1fk4ak1p8gkz3qmmxyslcjgicnfm8bpqqgndvwcznp8pvpjml",
@@ -63618,11 +65321,11 @@
   "repo": "nickav/naysayer-theme.el",
   "unstable": {
    "version": [
-    20191207,
-    1936
+    20200405,
+    123
    ],
-   "commit": "22ac2901c7dfbc73f802f6280621fa4e2f92ff78",
-   "sha256": "1n6c43l0c8csagsajc7ibg4395qmigfvhsprba0xgqm95pl7whd9"
+   "commit": "9d0bef898f31368cd30e063d53d443dee29683b0",
+   "sha256": "1jbp8p58bjc0wxs548niv02q9889blnwwfs64h5sm96nzhyzrkn0"
   }
  },
  {
@@ -63690,8 +65393,8 @@
     20161029,
     2023
    ],
-   "commit": "7c63573fe66897b089963e9831546e5de7787c5a",
-   "sha256": "15cwfma9cq8i9x8cpaanzjgszddgvxbkn9q5aci0nnvl6nggqzpn"
+   "commit": "ae60dc55822ea1715b203775179080c5d62700d8",
+   "sha256": "0q46r9r2vc50vn3bh321l317lgbbmmbylhgbxllbjpyaidfqzvb9"
   },
   "stable": {
    "version": [
@@ -63734,14 +65437,14 @@
   "repo": "jaypei/emacs-neotree",
   "unstable": {
    "version": [
-    20181121,
-    2026
+    20200324,
+    1946
    ],
    "deps": [
     "cl-lib"
    ],
-   "commit": "c2420a4b344a9337760981c451783f0ff9df8bbf",
-   "sha256": "1wfx37kvsfwrql8zs2739nx7wb51m26vwlcz1jygbrb62n6wq14k"
+   "commit": "98fe21334affaffe2334bf7c987edaf1980d2d0b",
+   "sha256": "1m4d5l48k1frbkspk6wlzhbjn133bj7spp5chlgv8p4p9rpnc2zr"
   },
   "stable": {
    "version": [
@@ -63848,6 +65551,26 @@
   }
  },
  {
+  "ename": "neuron-mode",
+  "commit": "6e4b79bc01b9ff2b00a4d0c80614f738a9e76dd6",
+  "sha256": "15ddpc64432013vn43amx0shnhr32cx1vkvn95chmddlkhx7ln16",
+  "fetcher": "github",
+  "repo": "felko/neuron-mode",
+  "unstable": {
+   "version": [
+    20200426,
+    1310
+   ],
+   "deps": [
+    "counsel",
+    "f",
+    "markdown-mode"
+   ],
+   "commit": "aa97a6fbb5c3b33ad73a1ba31c7e50c8842091a1",
+   "sha256": "18nr1ayw9j3zfwj79qsqvf5nw36fqpyr2bq3cl93kck1adv949d8"
+  }
+ },
+ {
   "ename": "never-comment",
   "commit": "ef3f8e712c10d63fea009951d7916fe376267cbe",
   "sha256": "0sn8y57895bfpgiynnj4m9b3x3dbb9v5fwkcwmf9jr39dbf98v6s",
@@ -64093,8 +65816,8 @@
     20181024,
     1439
    ],
-   "commit": "2ca4c711f77d9cb95e3698de70d07823f4baa256",
-   "sha256": "1g53dfs7dycihh98lsril6b57v5mfkqhicy74d3jpkyny7zpshaz"
+   "commit": "112217185e0351f9ad7fa17542862ac3c0922653",
+   "sha256": "0shby25dqy9hkb3chgshr2c3hqq6k35261sv3lw7zj5lxv9jrrkp"
   },
   "stable": {
    "version": [
@@ -64270,6 +65993,35 @@
   }
  },
  {
+  "ename": "nixpkgs-fmt",
+  "commit": "36f9451ad54c787f9e94bfda0e71de99da94be34",
+  "sha256": "1j9k4r25iylmrg0hbjb8jamrci3jxyrpx2baawmcyhqgxiz3lcz8",
+  "fetcher": "github",
+  "repo": "purcell/emacs-nixpkgs-fmt",
+  "unstable": {
+   "version": [
+    20200327,
+    2302
+   ],
+   "deps": [
+    "reformatter"
+   ],
+   "commit": "cc8ee143d4ef45a8c540901852326ccdf6ff8482",
+   "sha256": "0a1ih8w8xk8rdd96k7236v6xh2xr1r6gaiv2b6js95k04igdqxnh"
+  },
+  "stable": {
+   "version": [
+    0,
+    1
+   ],
+   "deps": [
+    "reformatter"
+   ],
+   "commit": "83e03d6f20bdf79c1c448c15734367b1a7cc6b02",
+   "sha256": "0hw0m4a637w1fm47snywn0mxz09qa5diy4hqngbqf7gxfj6hmfnz"
+  }
+ },
+ {
   "ename": "nlinum-hl",
   "commit": "b13a886535a5c33fe389a6b616988b7377249625",
   "sha256": "17lcp1ira7yhch9npg9sf3npwg06yh9zyhg0lnb22xg09lbndj0x",
@@ -64340,6 +66092,28 @@
   }
  },
  {
+  "ename": "nndiscourse",
+  "commit": "1d6a236cd3ff51f2d4cfca114b2791c8ac7411e8",
+  "sha256": "03kfb8c7knnd1n5sxxpldmscbwi5lrnsyh6w2ji4pvaq5xhmrlxb",
+  "fetcher": "github",
+  "repo": "dickmao/nndiscourse",
+  "unstable": {
+   "version": [
+    20200418,
+    2355
+   ],
+   "deps": [
+    "anaphora",
+    "dash",
+    "dash-functional",
+    "json-rpc",
+    "rbenv"
+   ],
+   "commit": "103eb5c13ad2d154c9386b2aa9dbea532435ee7a",
+   "sha256": "04nympxjg1dhahk7m71769c5lzsxxsnd9c62lqrkn22gvfzm0wm5"
+  }
+ },
+ {
   "ename": "nnhackernews",
   "commit": "40fec106c676f8207ec9c4553c3ec16c626b098c",
   "sha256": "0nqbfzyb61a80900hg2sqimjvr765a3f94v07by55d1smifzwnff",
@@ -64347,8 +66121,8 @@
   "repo": "dickmao/nnhackernews",
   "unstable": {
    "version": [
-    20200225,
-    1605
+    20200407,
+    1525
    ],
    "deps": [
     "anaphora",
@@ -64356,8 +66130,8 @@
     "dash-functional",
     "request"
    ],
-   "commit": "2fbe9052d93fa7b8fca107aa0dfaebbdf734c95c",
-   "sha256": "0c09hdr79i701gjalav6vj9k7qp8w5ln4s3ji2hk6z03fqpf7g91"
+   "commit": "d5e58b373ab6c5f13174e76f5ae62539dc5cfc95",
+   "sha256": "0gqqdjmasjs1p6nal9s2yhas1xr2nm99rd3rns2b8cd5j04ccvaz"
   }
  },
  {
@@ -64383,8 +66157,8 @@
   "repo": "dickmao/nnreddit",
   "unstable": {
    "version": [
-    20200225,
-    1558
+    20200417,
+    1757
    ],
    "deps": [
     "anaphora",
@@ -64393,8 +66167,8 @@
     "request",
     "virtualenvwrapper"
    ],
-   "commit": "13c6bc1db743f047a952d023be6c2b982a0e95bf",
-   "sha256": "13qzgvpngja3cd9fkarx7scsvna97fz79snai3ap4qfy5d9gqyqh"
+   "commit": "7f6e3bdbfa872af8e92ed339671772b46bc7f7f0",
+   "sha256": "1dbb4pm2dvyvgw6lxjhhdqplb1b1jbvnywy8d3abr5dpzfqzij8s"
   }
  },
  {
@@ -64420,14 +66194,14 @@
   "repo": "emacscollective/no-littering",
   "unstable": {
    "version": [
-    20200123,
-    1753
+    20200413,
+    2118
    ],
    "deps": [
     "cl-lib"
    ],
-   "commit": "14ed8ed2a2d8ae700ce1889d76bc4588d22549b1",
-   "sha256": "0gdnvvlrakyi1xpvlxr55k0rjnb6fprrc7pwjzpl79j87srrj9k0"
+   "commit": "ea8d8654365eeeea366a3ee0f51689987f2803a8",
+   "sha256": "02mgcz04xz9wkid3gkykbpjw3vriai7anyq3b61iv3pk9kcdp6x3"
   },
   "stable": {
    "version": [
@@ -64473,8 +66247,8 @@
     "dash",
     "request"
    ],
-   "commit": "532eb14328027ee29e124768feec23a8ef7ee798",
-   "sha256": "1qc9im01fw7k9907a9d2a87hndyyn3sk1kw31cylsvrzsb7ss9f9"
+   "commit": "ebc6a4a1cc56c01d2bb882e4a40934a6a1f4e9ca",
+   "sha256": "04zhhz8v6bx627g1vhvd0s8bl5g3d6a1mfgf7pb13627npsvbrdx"
   }
  },
  {
@@ -64556,11 +66330,11 @@
   "repo": "abicky/nodejs-repl.el",
   "unstable": {
    "version": [
-    20200223,
-    1449
+    20200320,
+    1645
    ],
-   "commit": "ed2052522d1770cc951863000f96165e0c42ec7b",
-   "sha256": "0a5mmg3cmdi73giblp07ksl06xzl9nb2m3f96ny4r3rv0ar3v1bx"
+   "commit": "6fad7d764fa0d818ba497450bd722ae10cb8efed",
+   "sha256": "0saky39n0p8w7lmalg3j4da0crrx40yz0rz1zdjzwpd2bd9v2izg"
   },
   "stable": {
    "version": [
@@ -64688,8 +66462,8 @@
    "deps": [
     "colorless-themes"
    ],
-   "commit": "a7b7c0a32b174988f40378996cd8997f73524f19",
-   "sha256": "0khsf4xz0wjn774hy08pxafm79j55ns28q25pfzyj9s07hi4r0vz"
+   "commit": "2b4c341640c8191a39e4bc28d6cd04c7d6dcbb37",
+   "sha256": "0ni9cnrv464fk840i1ll241kzkiy1zc6nfrbdv3ciixxdxbshxbn"
   },
   "stable": {
    "version": [
@@ -64741,11 +66515,11 @@
   "url": "https://git.notmuchmail.org/git/notmuch",
   "unstable": {
    "version": [
-    20200109,
-    114
+    20200416,
+    1058
    ],
-   "commit": "018ad3703ba46ea603854f51f8ff5ae86183cca0",
-   "sha256": "0vr17rhc74cf8k1n1snnfb82rzpsfc9xxcb8y2ydi0pbwd2h87r6"
+   "commit": "7b756d1e3885b70e81647a85432e0f2d043167c9",
+   "sha256": "0n0f6wsm6j980vxli6j6slixws45vgdbmw2xvwrs1j1h91vd0pc6"
   },
   "stable": {
    "version": [
@@ -64765,15 +66539,15 @@
   "repo": "publicimageltd/notmuch-bookmarks",
   "unstable": {
    "version": [
-    20200105,
-    1041
+    20200322,
+    1925
    ],
    "deps": [
     "notmuch",
     "seq"
    ],
-   "commit": "28a8e58521b50bfe0944f74eb2945521e03daad3",
-   "sha256": "0ma8rmxcq0xh1gskzyc8ay5681nidc340ghjryic3g30njidbiwd"
+   "commit": "ec8edfdbd1ac475530591d73a570ded5c18ed86a",
+   "sha256": "01bhxvjsmgxvh08r80lzlyj0wk1izx5bq22w6zsdzvxiclgrzk16"
   },
   "stable": {
    "version": [
@@ -64888,6 +66662,24 @@
   }
  },
  {
+  "ename": "npm",
+  "commit": "012ca672c63711197c98eded098b1d1a9a24fd51",
+  "sha256": "0zi4c5a8cn03i6jdranak586s580bw772vazslxa3zs1y3xripir",
+  "fetcher": "github",
+  "repo": "shaneikennedy/npm.el",
+  "unstable": {
+   "version": [
+    20200406,
+    1429
+   ],
+   "deps": [
+    "transient"
+   ],
+   "commit": "187ddd2732deb49df1e87fbaace153afb8a3e7e1",
+   "sha256": "0kh8y0izab3rra5vb1229h77ykz704wh28m7vv0bsfn5lg02ridx"
+  }
+ },
+ {
   "ename": "npm-mode",
   "commit": "22dd6b2f8a94f56a61f4b70bd7e44b1bcf96eb18",
   "sha256": "1aym4jfr6im6hdc5d7995q6myhgig286fk9hpaxdf418h1s17rqr",
@@ -65015,11 +66807,19 @@
   "repo": "joostkremers/nswbuff",
   "unstable": {
    "version": [
-    20191210,
-    815
+    20200312,
+    2050
    ],
-   "commit": "484ef531f67df358923dd5fef015233095928f8a",
-   "sha256": "10imnf6fq8bxbkzpnz47b55wjpf4mcr24ibnjrpy0z8rkf4i8gq3"
+   "commit": "a601855cc96e303e38051d0d1af3402721dbb969",
+   "sha256": "0xbh5max7wbsw3iaa5ai9l5brky3mykyzn77a4w5r1m1f4a67y97"
+  },
+  "stable": {
+   "version": [
+    1,
+    1
+   ],
+   "commit": "a601855cc96e303e38051d0d1af3402721dbb969",
+   "sha256": "0xbh5max7wbsw3iaa5ai9l5brky3mykyzn77a4w5r1m1f4a67y97"
   }
  },
  {
@@ -65363,8 +67163,8 @@
    "deps": [
     "axiom-environment"
    ],
-   "commit": "2c5384b994266008a20558db4ffe0525e66c0f5f",
-   "sha256": "17f40w9r4whz0v007pp13w060jq87ag42p21hcj93c14py5s4g67"
+   "commit": "25932da0dc40c6877463cbf019b14ab05a6b0164",
+   "sha256": "1xbps0k4x982gh1a0pscpx4kayjjyykvm5pyj516wwkya7bac4a6"
   }
  },
  {
@@ -65810,11 +67610,11 @@
   "repo": "arnm/ob-mermaid",
   "unstable": {
    "version": [
-    20191208,
-    2346
+    20200320,
+    1504
    ],
-   "commit": "8dcbfab869829b586ce9992897a2ebe2bb52b770",
-   "sha256": "0h0aig17hsjisa2dyz6y7x748fwmb6908dc4sr043hq2hlv60bj7"
+   "commit": "cca09b64eff689d8bb15a77de9d4c7fe9845a1f9",
+   "sha256": "1wwmf14df2rnxlfs8bwb9p4q1a1plschbq2g9vqflphj6kv213m4"
   }
  },
  {
@@ -65909,14 +67709,14 @@
   "repo": "alf/ob-restclient.el",
   "unstable": {
    "version": [
-    20200109,
-    730
+    20200316,
+    759
    ],
    "deps": [
     "restclient"
    ],
-   "commit": "c5c22e603531dca48575d0a425fddff16dc0f391",
-   "sha256": "19fs6ms6rj75w4v7p7z0k2004gnb246nksv20mb8cqjnzkj0495s"
+   "commit": "f7449b2068498fe9d8ab9589e0a638148861533f",
+   "sha256": "0s3931w9ab3yfml2pmq71rw21yf6hpg7m3vihxyy3vs6zli1cvmq"
   }
  },
  {
@@ -66224,14 +68024,14 @@
   "repo": "clemera/objed",
   "unstable": {
    "version": [
-    20200107,
-    1319
+    20200403,
+    1500
    ],
    "deps": [
     "cl-lib"
    ],
-   "commit": "8dc17701d1dc65b5d2113e7ca406136bf612bc9e",
-   "sha256": "1ly7lkv27n7dp8q25w5yk8a69vqzmxp72ln329j7ik13rjyhj1dc"
+   "commit": "e89d8dae3b2d4331a4455d2a7b203500537d184d",
+   "sha256": "1xjcbfqxpda73l8imw1pj9my71qqacri269cv7wnzsfrphqh526x"
   },
   "stable": {
    "version": [
@@ -66377,10 +68177,10 @@
  },
  {
   "ename": "octicons",
-  "commit": "c62867eae1a254eb5fe820d4387dd4e8a0ff9be2",
-  "sha256": "02f37bvnc5qvkvfbyx5wp54nz71bqm747mq1p5361sx091lllkxk",
+  "commit": "2a2670edb1155f02d1cbe2600db84a82c8f3398b",
+  "sha256": "0p66i8i2ksqld3bd0iq7f7ssskj1hp42s170q74crh3ilapjnkpq",
   "fetcher": "github",
-  "repo": "syohex/emacs-octicons",
+  "repo": "emacsorphanage/octicons",
   "unstable": {
    "version": [
     20151101,
@@ -66442,26 +68242,26 @@
   "repo": "oer/oer-reveal",
   "unstable": {
    "version": [
-    20200124,
-    1310
+    20200413,
+    1503
    ],
    "deps": [
     "org-re-reveal"
    ],
-   "commit": "64235b073c47baf7f1d7909706875c42a7f6da3d",
-   "sha256": "124f98q8bcd832wsdkmzm3rjmmhpqyf8z5ddx841j6p68ds8066r"
+   "commit": "6db38600d651f4aea77e0d411466be7fb6314f39",
+   "sha256": "11akmygscph5pq1zc889pmlp8ab91qk29lwrrp3gxmgy2s5x9mgf"
   },
   "stable": {
    "version": [
     2,
-    2,
+    9,
     0
    ],
    "deps": [
     "org-re-reveal"
    ],
-   "commit": "64235b073c47baf7f1d7909706875c42a7f6da3d",
-   "sha256": "124f98q8bcd832wsdkmzm3rjmmhpqyf8z5ddx841j6p68ds8066r"
+   "commit": "eec26a088d19cd202417f662bb487b550230d11f",
+   "sha256": "1vj99sj71qf622gc9fy6kafp4ki7arqljj1dwkl4k2fnf4hv3af7"
   }
  },
  {
@@ -66524,20 +68324,20 @@
   "repo": "rnkn/olivetti",
   "unstable": {
    "version": [
-    20200212,
-    1439
+    20200417,
+    607
    ],
-   "commit": "4b113151308c1214e8e70a7846558dad9c918859",
-   "sha256": "0cb06dy22897nx0wakar24frdhg5865icj25a2wb198br8r094ik"
+   "commit": "fa9757fbaa392be622ddf66c2535dfe4b5cca898",
+   "sha256": "196g4n2cr1w77k2a6582rc3c8fnnfps83f1kh76k8k3lvkjg8pjb"
   },
   "stable": {
    "version": [
     1,
     9,
-    2
+    4
    ],
-   "commit": "4b113151308c1214e8e70a7846558dad9c918859",
-   "sha256": "0cb06dy22897nx0wakar24frdhg5865icj25a2wb198br8r094ik"
+   "commit": "9005661e18d9eaaf1105018d084916e4927cc66b",
+   "sha256": "0ca80z6drsw9jkwijn6f05y1n7rmcypvh0yvsb77wnqrzd7y4p68"
   }
  },
  {
@@ -66587,30 +68387,30 @@
   "repo": "AdrieanKhisbe/omni-log.el",
   "unstable": {
    "version": [
-    20170930,
-    1235
+    20200304,
+    2229
    ],
    "deps": [
     "dash",
     "ht",
     "s"
    ],
-   "commit": "11e959473c1bd9415d0cda785940c36ba6ad44ab",
-   "sha256": "081vq3wzl8w9yz1356np6h27d7yi5j8i3va9sc2flfwylmw1y9gr"
+   "commit": "0a240660ccdd0b6588b4e3c322743b5ab1161338",
+   "sha256": "0xbrwj7zsqx91p28l3dknlhr3y5cj6lah6h5x1s9l9kmfz850dcp"
   },
   "stable": {
    "version": [
     0,
-    3,
-    6
+    4,
+    0
    ],
    "deps": [
     "dash",
     "ht",
     "s"
    ],
-   "commit": "20021eb788cbeec0371145468430b259686f519d",
-   "sha256": "1sf2zbhjaz5b9xmz6632338cga7d326ibgw8b8c6c6b4vk16yhqc"
+   "commit": "0a240660ccdd0b6588b4e3c322743b5ab1161338",
+   "sha256": "0xbrwj7zsqx91p28l3dknlhr3y5cj6lah6h5x1s9l9kmfz850dcp"
   }
  },
  {
@@ -66621,8 +68421,8 @@
   "repo": "AdrieanKhisbe/omni-quotes.el",
   "unstable": {
    "version": [
-    20170425,
-    1832
+    20200304,
+    2341
    ],
    "deps": [
     "dash",
@@ -66631,14 +68431,14 @@
     "omni-log",
     "s"
    ],
-   "commit": "454116c1dd6581baaeefd6b9310b1b6b7a5c36d0",
-   "sha256": "1h8lrpi5wizi5vncdz83cxlx7c71xw3sw89sfg462zfbz2sq8afl"
+   "commit": "cfc7b7f01628a5d57384820d1096de4541e67cdf",
+   "sha256": "1bv45gdyzycapi9q69h3339308qxwgjzj5rgr3f927vl4xm18kfb"
   },
   "stable": {
    "version": [
     0,
     5,
-    0
+    1
    ],
    "deps": [
     "dash",
@@ -66647,8 +68447,8 @@
     "omni-log",
     "s"
    ],
-   "commit": "454116c1dd6581baaeefd6b9310b1b6b7a5c36d0",
-   "sha256": "1h8lrpi5wizi5vncdz83cxlx7c71xw3sw89sfg462zfbz2sq8afl"
+   "commit": "cfc7b7f01628a5d57384820d1096de4541e67cdf",
+   "sha256": "1bv45gdyzycapi9q69h3339308qxwgjzj5rgr3f927vl4xm18kfb"
   }
  },
  {
@@ -66993,8 +68793,8 @@
     "request",
     "s"
    ],
-   "commit": "6819b6271960dcdc7c32981dadd48968a3640cef",
-   "sha256": "12frm9w6xh5rkfyvvvpwhdd55nlgsv8w4f52pch0sl437vidcsqg"
+   "commit": "4c15049079878fcd386cca5dba20b99296a1de84",
+   "sha256": "1avci3avwhrw040wwjgcv1hayk893y8iwln10vsjyb5rd78y9gsi"
   },
   "stable": {
    "version": [
@@ -67029,16 +68829,16 @@
  },
  {
   "ename": "openwith",
-  "commit": "855ea20024b606314f8590129259747cac0bcc97",
-  "sha256": "0l3grbnn349cv26ap2phlmp2h94s68gqznh5zdqwc2cp7lf699sx",
-  "fetcher": "bitbucket",
+  "commit": "caca0b2bc2aaac563074cbb4ea4296fce749e203",
+  "sha256": "0swza74ndw0vkr7q513wp12c2yasla7aaqv0z98mzr0ssx12jld8",
+  "fetcher": "github",
   "repo": "jpkotta/openwith",
   "unstable": {
    "version": [
     20120531,
     2136
    ],
-   "commit": "aeb78782ec87680ea9f082a3f20a3675b3770cf9",
+   "commit": "1dc89670822966fab6e656f6519fdd7f01e8301a",
    "sha256": "1wl6gnxsyhaad4cl9bxjc0qbc5jzvlwbwjbajs0n1s6qr07d6r01"
   }
  },
@@ -67082,6 +68882,21 @@
   }
  },
  {
+  "ename": "orderless",
+  "commit": "3f1f2c378e63c5ce8a8d37735f914ce0663a76d3",
+  "sha256": "102jfzq2zskaa8jcb4mmmndcdc8221qp0hqlgvwirnzkxms9ij4a",
+  "fetcher": "github",
+  "repo": "oantolin/orderless",
+  "unstable": {
+   "version": [
+    20200425,
+    855
+   ],
+   "commit": "b69b52289fdb0023a3123b1ddec5b490125345a3",
+   "sha256": "0vxpaqsad3x1lqga1ky7sipm8lk8ps66wpcvz52jdqasxmxzvrjm"
+  }
+ },
+ {
   "ename": "ordinal",
   "commit": "ea3dd6fe4cacc229dd1371cb66dd1cfd07321bf4",
   "sha256": "19s27mv7kqcg9qxa844al7q1hk0qbiqh93g1n54r3b6s980dlgcv",
@@ -67379,30 +69194,29 @@
   "repo": "Kungsgeten/org-brain",
   "unstable": {
    "version": [
-    20200229,
-    2229
+    20200426,
+    1410
    ],
    "deps": [
-    "org",
-    "org-ql"
+    "org"
    ],
-   "commit": "6b7fced8015387efd03f28e53be47c3ca8907d7f",
-   "sha256": "01s8cjgxfl5pplswy80qgxisiv7p1kmbq28g3xx1qn2w7pfiyfwa"
+   "commit": "ae7fe0f628bd093526786ece6917f7a4310e5e4d",
+   "sha256": "0szav8idqq2gmckaxqnjgcah978as2nhv43nl9vvvfkc9dc2l5x4"
   }
  },
  {
   "ename": "org-bullets",
-  "commit": "fe60fc3c60d87b5fd7aa24e858c79753d5f7d2f6",
-  "sha256": "0yrfgd6r71rng3qipp3y9i5mpm6510k4xsfgyidcn25v27fysk3v",
+  "commit": "aa0e1ebac172a73bfed7d55cb4d9eb52178dcbdc",
+  "sha256": "0jcqgp23wgzdmw7il8phwiqdndwyjc7lcc27mk8rfip4ngp3wiyn",
   "fetcher": "github",
-  "repo": "emacsorphanage/org-bullets",
+  "repo": "integral-dw/org-bullets",
   "unstable": {
    "version": [
-    20190802,
-    927
+    20200317,
+    1740
    ],
-   "commit": "c19b13be00df8d8dc596e4f1aef4a094b08ac801",
-   "sha256": "1rvhinwnz660mfz4wkr2wa51ss5cm4gzpwfvwc0s0srk14s2h66h"
+   "commit": "767f55feb58b840a5a04eabfc3fbbf0d257c4792",
+   "sha256": "01ll5b39wpx9qpqybndy58wkq97n512rg7j87482l1ry1s5b02d5"
   },
   "stable": {
    "version": [
@@ -67455,13 +69269,13 @@
   "repo": "IvanMalison/org-projectile",
   "unstable": {
    "version": [
-    20180601,
-    242
+    20200329,
+    313
    ],
    "deps": [
     "org"
    ],
-   "commit": "de37d0094791ab1146276904f3a37eba699e0b60",
+   "commit": "96a57a43555e24e5e0d81e79f0fbb47001c41bac",
    "sha256": "05h9scvnd9ggfwbbl1m124k6sdn5kp9mv2695cril2m4dkr1kyqz"
   },
   "stable": {
@@ -67485,14 +69299,14 @@
   "repo": "Chobbes/org-chef",
   "unstable": {
    "version": [
-    20200220,
-    2016
+    20200408,
+    1328
    ],
    "deps": [
     "org"
    ],
-   "commit": "61686fd87892e60268fc43348282abbfd879e5c9",
-   "sha256": "0n493p9dqx9bb6jcrb34s1rk8afwpz1fdgwrm64g7a0y2mbfga74"
+   "commit": "67f50aa2a2839ffdb1c1a5e2f135e69f868e4b26",
+   "sha256": "041z6f5fyzc46grwqllz81hixkdqdic3a6zird7i0yy7cr2hqhcf"
   }
  },
  {
@@ -67568,11 +69382,11 @@
   "repo": "justintaft/org-clock-split",
   "unstable": {
    "version": [
-    20191219,
-    457
+    20200331,
+    526
    ],
-   "commit": "361a7a96af2a7d09ccaf561423b80caca7a108cb",
-   "sha256": "00k7av97l609rf31zqndy92ypbdyvwnr0bdpxfisw33icw7706nb"
+   "commit": "39e1d2912a7a7223e2356a5fc4dff03507ae084d",
+   "sha256": "0yvpmv0v56rsn43ffmwfhw8jjvfklw703qpmkx6d6paljjgy9k8l"
   }
  },
  {
@@ -67630,11 +69444,11 @@
   "repo": "thisirs/org-context",
   "unstable": {
    "version": [
-    20200217,
-    1006
+    20200418,
+    1540
    ],
-   "commit": "f354108ecd3d33cadee05a4aec95d2df4bc61ae9",
-   "sha256": "1zlqciqadhwkhmzlag7w0i83pn9gg0gikfcrv2qlr9nsn5rzzvj4"
+   "commit": "bbef096dc20b206b792b0ef310f2eed7c70ca3a0",
+   "sha256": "05s73wn2q3a0mfc14qlgcb1bas9addby0m43id2v8ljvxyigicr8"
   }
  },
  {
@@ -67660,16 +69474,16 @@
   "url": "https://git.spwhitton.name/org-d20",
   "unstable": {
    "version": [
-    20190628,
-    1356
+    20200416,
+    2010
    ],
    "deps": [
     "dash",
     "s",
     "seq"
    ],
-   "commit": "0ca1b0a8d9ab0a7d687a9f2edb6eae2e57851129",
-   "sha256": "0wg95wirq964klpihhgv2flnkyjwwpdqiafn2b2l1785906csrcg"
+   "commit": "7ede5726d640c4f81146585f6eb907f51a0f6a19",
+   "sha256": "1p4irzcsq2sxmvpyrkrqs9ylp153mzwr31hvsnfh1f2nlghpicfk"
   },
   "stable": {
    "version": [
@@ -67753,14 +69567,14 @@
   "repo": "abo-abo/org-download",
   "unstable": {
    "version": [
-    20200211,
-    1541
+    20200410,
+    1444
    ],
    "deps": [
     "async"
    ],
-   "commit": "3c4810279334d487c76fb5e23e6e6cd098ccd6ac",
-   "sha256": "1xc98xbkrj56gp3njmbqnkvkigbgqjqfyiacrnqf9fkznwvjhrrp"
+   "commit": "46417e2bd30c9bcd1e8a1f4c554ad44543e869e6",
+   "sha256": "1jzmyr6v33x7012ljbc45w2ww3lb96i4nh1ydxzdjwnbvpj2j17s"
   },
   "stable": {
    "version": [
@@ -67811,16 +69625,16 @@
   "repo": "phillord/org-drill",
   "unstable": {
    "version": [
-    20200216,
-    1336
+    20200412,
+    1812
    ],
    "deps": [
     "org",
     "persist",
     "seq"
    ],
-   "commit": "4c114489e682e514e79701045d541ab6f3dc3fb4",
-   "sha256": "13y302lyscdqrba1sfx60yf5ji2xi7fbsvjsjbw7hiz63kg6rccy"
+   "commit": "35c1ce349949cc213f3076799211210f49431850",
+   "sha256": "06hc98z4sml7jrwm5zvbsw5x6q5jpa335almzkh6h85g1p8syfsn"
   },
   "stable": {
    "version": [
@@ -68064,16 +69878,17 @@
   "repo": "kidd/org-gcal.el",
   "unstable": {
    "version": [
-    20191018,
-    921
+    20200424,
+    1929
    ],
    "deps": [
     "alert",
+    "persist",
     "request",
     "request-deferred"
    ],
-   "commit": "6821e349673e9ba8d7ae7b84789f931889273dc0",
-   "sha256": "12alwnk50gsiz5b9mw8qvn317f7phb5vh2x7yvi9m72zdrdaf8pz"
+   "commit": "1667aba7c0a33e3c23c3a47fc04e89670684eddc",
+   "sha256": "1zzibnvsdq3iv874x6g6zrjb17mb036dln68mn4a1xlcwvv1king"
   },
   "stable": {
    "version": [
@@ -68173,20 +69988,20 @@
   "repo": "marcIhm/org-index",
   "unstable": {
    "version": [
-    20190920,
-    356
+    20200413,
+    1609
    ],
-   "commit": "aba9b1ea49e83c541c544e4030fcc2e0a55c908b",
-   "sha256": "1rpbas9svwni6nz5jywvxxvan0lgrqi100aby1aivi3prsmh6jhy"
+   "commit": "f95dbec874f39aac3c8391a6e0b9796b981386f3",
+   "sha256": "1dylivz459a4d66rak9sipynyby01plhgjj2vvp9fqvia65yb2a4"
   },
   "stable": {
    "version": [
-    5,
-    12,
-    0
+    6,
+    1,
+    3
    ],
-   "commit": "fc9635edd4bf394059e53a1fa16cdd8ab5b7b468",
-   "sha256": "0qzqlfnrc2x4mm40wrsmpbh61129ww2a2sk4s1px49fi8552vqyq"
+   "commit": "f95dbec874f39aac3c8391a6e0b9796b981386f3",
+   "sha256": "1dylivz459a4d66rak9sipynyby01plhgjj2vvp9fqvia65yb2a4"
   }
  },
  {
@@ -68252,11 +70067,14 @@
   "repo": "bastibe/org-journal",
   "unstable": {
    "version": [
-    20200227,
-    1830
+    20200424,
+    1917
    ],
-   "commit": "271b99f5ec4fa45fdf546713a9c3f55543e9cbb9",
-   "sha256": "1ayqxcfbs3mcygwjyx93lclpp1dhqaq35v7bl8739d59i0drsyhq"
+   "deps": [
+    "org"
+   ],
+   "commit": "8bf06b28d6f14f52d4968123e2b4b91930c8f947",
+   "sha256": "0k70k07c4lq20rqljmfkx1pfp8gq4qr0y46n8mh1smzxdznk9nlb"
   },
   "stable": {
    "version": [
@@ -68291,16 +70109,16 @@
   "repo": "gizmomogwai/org-kanban",
   "unstable": {
    "version": [
-    20200126,
-    1158
+    20200329,
+    543
    ],
    "deps": [
     "dash",
     "org",
     "s"
    ],
-   "commit": "4e352ca1a0b712fc92f656b4fe436a04c7033a20",
-   "sha256": "0smjn7jmg5w9nwjp0qadl0sx6r78ycaqm8y3a2wm6slmdad2p1jb"
+   "commit": "544aac80f1c7113cfe42cf1a2b89f5ca6bd9ead6",
+   "sha256": "0sx4mvr5g2ipj1s1jg82vr1q90jkq9lm0pg5cdab8lrx464lqf2c"
   },
   "stable": {
    "version": [
@@ -68411,29 +70229,29 @@
   "repo": "alphapapa/org-make-toc",
   "unstable": {
    "version": [
-    20200110,
-    1804
+    20200409,
+    1436
    ],
    "deps": [
     "dash",
     "org",
     "s"
    ],
-   "commit": "be86a4e026befd9d10af42a22b2483c7969ccee1",
-   "sha256": "0348iq3bc3rxs5bqdvskyly4agqxiapamqkfm0323620kxl70agw"
+   "commit": "26fbd6a7e1e7f8e473fe3a5f74faec715c3a05aa",
+   "sha256": "08gkzl0cbgkyg31sxafqmq6v1hjgr2q62vnvncrdnhs3ly54inf8"
   },
   "stable": {
    "version": [
     0,
-    4
+    5
    ],
    "deps": [
     "dash",
     "org",
     "s"
    ],
-   "commit": "be86a4e026befd9d10af42a22b2483c7969ccee1",
-   "sha256": "0348iq3bc3rxs5bqdvskyly4agqxiapamqkfm0323620kxl70agw"
+   "commit": "43d4a2490a048b01ca5a6f44c5b4f24a458dfc95",
+   "sha256": "180ji6nnj6qj0rs1rdp1zlcrfsqf7ikb44ym8icbp5d6al2s4hnr"
   }
  },
  {
@@ -68444,26 +70262,26 @@
   "repo": "org-mime/org-mime",
   "unstable": {
    "version": [
-    20191226,
-    2309
+    20200416,
+    1048
    ],
    "deps": [
     "cl-lib"
    ],
-   "commit": "b1899762170eaa656555ce62c58e613ca3509ec4",
-   "sha256": "1p3ffxanjpb83xvk4c42lafhfbckh4rkmi32wjdp86fkqx30nvrg"
+   "commit": "9f8444603806e6baa94b2b67a23aab0ea52fef97",
+   "sha256": "143qj0llargjm375q39lchxz1ws4vsh50f3ar66cclrjvxrfaqdg"
   },
   "stable": {
    "version": [
     0,
     1,
-    6
+    7
    ],
    "deps": [
     "cl-lib"
    ],
-   "commit": "f8eac8ccdec2ebf1dec87d4f5f01b4b53f86c67c",
-   "sha256": "0gjdhhri2fm93phvv3fnw6iz5agpafryacj521j80jf1dmj2bj5h"
+   "commit": "9f8444603806e6baa94b2b67a23aab0ea52fef97",
+   "sha256": "143qj0llargjm375q39lchxz1ws4vsh50f3ar66cclrjvxrfaqdg"
   }
  },
  {
@@ -68535,14 +70353,50 @@
   "repo": "jeremy-compostella/org-msg",
   "unstable": {
    "version": [
-    20200221,
-    25
+    20200422,
+    1615
    ],
    "deps": [
     "htmlize"
    ],
-   "commit": "4278cf11735a2890e22acf6d34c632dd64a2e5a4",
-   "sha256": "1fyr5z441bncgnazwgbpfk5bd4k5p9nh525sfdxzw6w8s26i8pnw"
+   "commit": "d41426854e6804d752b25346cf6ae79b0612784c",
+   "sha256": "0f3lvcgx60j2m97mxgzbxaw9ki37g3yxr6arv54b87572a7wdj8m"
+  }
+ },
+ {
+  "ename": "org-multi-wiki",
+  "commit": "8138002578ef14e30561cac159e9a66406a4201a",
+  "sha256": "0wbybr9vf4hcwyi9rab8sm1xwxqmy7mbjv1jmm78j51kjh0cpgkj",
+  "fetcher": "github",
+  "repo": "akirak/org-multi-wiki",
+  "unstable": {
+   "version": [
+    20200419,
+    1833
+   ],
+   "deps": [
+    "dash",
+    "org",
+    "org-ql",
+    "s"
+   ],
+   "commit": "aef5975ac18d7cb101c0fb688333cc241782a8a0",
+   "sha256": "1m3p839wkrvf7n2467czj03rljv43bk32p7vlzdp5zby22bn7nag"
+  },
+  "stable": {
+   "version": [
+    0,
+    4,
+    0
+   ],
+   "deps": [
+    "dash",
+    "org",
+    "org-ql",
+    "s"
+   ],
+   "commit": "80791ea872939df0578dc3a2992a2f7fd5618971",
+   "sha256": "0avg5xwnb3c9ylj9dqdcqmh8kykl98jsr6cl3rrivkj7l47i1rl0"
   }
  },
  {
@@ -68628,6 +70482,27 @@
   }
  },
  {
+  "ename": "org-noter-pdftools",
+  "commit": "caa6bf82ea660f8e1d68e45cc99c6f6427cf1327",
+  "sha256": "0k11njy2l8pxwpmxspy6qwvp1041p99xp9ha6pjxp3m3f7rik32h",
+  "fetcher": "github",
+  "repo": "fuxialexander/org-pdftools",
+  "unstable": {
+   "version": [
+    20200418,
+    929
+   ],
+   "deps": [
+    "org",
+    "org-noter",
+    "org-pdftools",
+    "pdf-tools"
+   ],
+   "commit": "8cc15bb8014ed1f047eecc0abd8bf447f86c0505",
+   "sha256": "173118fplpz575dcbncrjjpid2ni0acsi9130r210vl6hal7yz08"
+  }
+ },
+ {
   "ename": "org-octopress",
   "commit": "fba6c3c645ba903f636814b5a2bb1baca0b5283b",
   "sha256": "0r6ms9j4xxsrik4206g7gz4wz41wr4ylpal6yfqs4hhz88yhxrhw",
@@ -68751,21 +70626,21 @@
  },
  {
   "ename": "org-parser",
-  "commit": "28d55005cbce276cda21021a8d9368568cb4bcc6",
-  "sha256": "06yb78mf486b986dhvqg3avflfyi271vykyars465qpk0v8ahq8h",
-  "fetcher": "bitbucket",
-  "repo": "zck/org-parser.el",
+  "commit": "d3828ad7599d13728b5571b882344c3ada434b85",
+  "sha256": "1galc2w2n2qnwxknym4wid1ldinf8fyf8vvh4ihnckcbh081nrhb",
+  "fetcher": "hg",
+  "url": "https://hg.sr.ht/~zck/org-parser",
   "unstable": {
    "version": [
-    20190207,
-    521
+    20200417,
+    301
    ],
    "deps": [
     "dash",
     "ht"
    ],
-   "commit": "8610aef8dc878fc001975780bcbcbab30dc929b7",
-   "sha256": "0vqh37y2b0dc8p9c04ici1h9n9ghd1jizcr1c2zvp75cyqsz09wv"
+   "commit": "fd4cb7035ff649378cc968b1ec2c386b5c565706",
+   "sha256": "1hnd4zhhwrd6gr1skvc64a3z9k3nmhwgcyy1cp2jfyhk0iwsrqfm"
   }
  },
  {
@@ -68802,6 +70677,26 @@
   }
  },
  {
+  "ename": "org-pdftools",
+  "commit": "62cf59d93b7b6700c4f7711e5fd22ece04896e6a",
+  "sha256": "0fqkq8hpcxzpj3irczkad78m3chadqk2895bdbj7xpdlr0803n32",
+  "fetcher": "github",
+  "repo": "fuxialexander/org-pdftools",
+  "unstable": {
+   "version": [
+    20200422,
+    1350
+   ],
+   "deps": [
+    "org",
+    "org-noter",
+    "pdf-tools"
+   ],
+   "commit": "8cc15bb8014ed1f047eecc0abd8bf447f86c0505",
+   "sha256": "173118fplpz575dcbncrjjpid2ni0acsi9130r210vl6hal7yz08"
+  }
+ },
+ {
   "ename": "org-pdfview",
   "commit": "855ea20024b606314f8590129259747cac0bcc97",
   "sha256": "1qhlmzf2ffcrjnx4yghv7n6rsry8bcwnkw489spgraq9vxvqklah",
@@ -68945,11 +70840,11 @@
   "repo": "marcowahl/org-pretty-tags",
   "unstable": {
    "version": [
-    20200124,
-    2002
+    20200303,
+    2201
    ],
-   "commit": "f52744ab69a9077450c84b80475147d7c435f4bb",
-   "sha256": "1nycdawb065c8cakmlfpcqpkyij0kv1c940mi49ps2k58nz4554x"
+   "commit": "40fd72f3e701e31813f383fb429d30bb88cee769",
+   "sha256": "0d80cbkdq1d8cqc5nv732gzw4k6m2dpjjix3ycfyf27m4wkbwhmc"
   },
   "stable": {
    "version": [
@@ -68996,7 +70891,7 @@
     "projectile",
     "s"
    ],
-   "commit": "de37d0094791ab1146276904f3a37eba699e0b60",
+   "commit": "96a57a43555e24e5e0d81e79f0fbb47001c41bac",
    "sha256": "05h9scvnd9ggfwbbl1m124k6sdn5kp9mv2695cril2m4dkr1kyqz"
   },
   "stable": {
@@ -69030,7 +70925,7 @@
     "helm",
     "org-projectile"
    ],
-   "commit": "de37d0094791ab1146276904f3a37eba699e0b60",
+   "commit": "96a57a43555e24e5e0d81e79f0fbb47001c41bac",
    "sha256": "05h9scvnd9ggfwbbl1m124k6sdn5kp9mv2695cril2m4dkr1kyqz"
   },
   "stable": {
@@ -69081,8 +70976,8 @@
   "repo": "alphapapa/org-ql",
   "unstable": {
    "version": [
-    20200228,
-    203
+    20200407,
+    1706
    ],
    "deps": [
     "dash",
@@ -69097,14 +70992,14 @@
     "transient",
     "ts"
    ],
-   "commit": "fc91bdd4836a026ae5b5df18ed133f85cf3ff138",
-   "sha256": "1li9x44zd63s4xvhhimvnq6nd995hyhdrzybcxhvyr1qbqgnga5i"
+   "commit": "f4d7399e677904cdc7e220440610704e4bd668bc",
+   "sha256": "0vfnxmk6k9f4zqbcg4gsg2ga4xr2gqx81sq2hcimx49wvyxh2bwn"
   },
   "stable": {
    "version": [
     0,
     4,
-    1
+    4
    ],
    "deps": [
     "dash",
@@ -69117,8 +71012,8 @@
     "s",
     "ts"
    ],
-   "commit": "32c68d7f249e1780a7e1a0b1155db3f36d535e1c",
-   "sha256": "0bw4568vx3swxc3khnnz28288h70z473pvw2m38ygjq7kyqnrq9b"
+   "commit": "4fef5b089f8f77b0dc25dac5f096406156e90858",
+   "sha256": "065wkxd269v19r5s8g2haapwhwr3s6c5amwzshfl2hq5z0bldvqi"
   }
  },
  {
@@ -69197,15 +71092,15 @@
   "repo": "oer/org-re-reveal",
   "unstable": {
    "version": [
-    20200206,
-    712
+    20200413,
+    856
    ],
    "deps": [
     "htmlize",
     "org"
    ],
-   "commit": "14df7542f2a675f65501962e344e03d798cf0d39",
-   "sha256": "1mc01v257884pdsw37dghgddyyy6v6rd9cmnnpq45xvd5ibz1vaf"
+   "commit": "61549f4c00284a30e34caa3d76001b233ea5d2ad",
+   "sha256": "00r324nnci2l0jwx4jhzcrbyai5wmj5cjrav4253c23aqdn5ny96"
   },
   "stable": {
    "version": [
@@ -69238,6 +71133,19 @@
    ],
    "commit": "1f56a1fc9a52f3815bb2115ebeca3c355688d722",
    "sha256": "1xrswpkr7hgsb9pj991z4m0820f1nksfad184x0j7kir2xcx0myg"
+  },
+  "stable": {
+   "version": [
+    1,
+    0,
+    0
+   ],
+   "deps": [
+    "org-re-reveal",
+    "org-ref"
+   ],
+   "commit": "abcd622e4edaa5e4480bcd1e7e4953f67c90e036",
+   "sha256": "08ia6gn0x0yydl28dhghifyxz0mrn0asllqg4s449gaz729cxqkd"
   }
  },
  {
@@ -69316,8 +71224,8 @@
   "repo": "jkitchin/org-ref",
   "unstable": {
    "version": [
-    20200225,
-    246
+    20200421,
+    1354
    ],
    "deps": [
     "dash",
@@ -69331,8 +71239,8 @@
     "pdf-tools",
     "s"
    ],
-   "commit": "caca18f8eeae213c2719e628949df70910f7d3c7",
-   "sha256": "0w31xjyyn2122c7n3s3rs64wgmhb82q49hqsy48m7ynkm9x9a0jq"
+   "commit": "1eb4ddda003b04b49a9a00828347a46f2863ac9e",
+   "sha256": "19vvcipfhir39qd3qwirrrr6221k8kjviifva0qm6aqxv7hlfaqm"
   },
   "stable": {
    "version": [
@@ -69387,26 +71295,26 @@
   "repo": "akirak/org-reverse-datetree",
   "unstable": {
    "version": [
-    20200224,
-    548
+    20200325,
+    1003
    ],
    "deps": [
     "dash"
    ],
-   "commit": "800e1094892be1b62087317bd7dbd6c2cdca07f2",
-   "sha256": "1rb9gc99jb1sbzc7hlc6yndaci1dfravjvnlix9wk9bix27g3vca"
+   "commit": "afac070eb64cc24917c0ab0e14686258da4916f6",
+   "sha256": "1737r8c5kpb68yb2sixp88fm7fcmr7rvpkpywyxzwgqk30xpsjgq"
   },
   "stable": {
    "version": [
     0,
     3,
-    1
+    2
    ],
    "deps": [
     "dash"
    ],
-   "commit": "6fad8d248acfd32c7b2347223c9326351f8cefd4",
-   "sha256": "08kwbc630ijmz7nzypzm6bcr3yzij47rhb3ih1hgq6z5pm5cla6v"
+   "commit": "cfb14dc77768ea901fe5a49662ae10ae3ccc7bde",
+   "sha256": "05qjj4zfm84s7lmlnq2nndmh76cpnhh62rybdiz2fjsj1ns0zjln"
   }
  },
  {
@@ -69449,6 +71357,84 @@
   }
  },
  {
+  "ename": "org-roam",
+  "commit": "278f993cf094b39b5d049f05e0cbba61e52a6f0c",
+  "sha256": "1m4nw1r8kdxigdvws5arqglamrx4g62v4p482flikk7w52gcs7is",
+  "fetcher": "github",
+  "repo": "jethrokuan/org-roam",
+  "unstable": {
+   "version": [
+    20200426,
+    1107
+   ],
+   "deps": [
+    "dash",
+    "emacsql",
+    "emacsql-sqlite",
+    "f",
+    "org",
+    "s"
+   ],
+   "commit": "41423005010f2f78c3e9301b97f1b0db83fd29b5",
+   "sha256": "1w8xv4wiskibwla7ga5bcjqpvzgmcxm52zazqpjp210vp22v545z"
+  },
+  "stable": {
+   "version": [
+    1,
+    1,
+    0
+   ],
+   "deps": [
+    "dash",
+    "emacsql",
+    "emacsql-sqlite",
+    "f",
+    "org",
+    "s"
+   ],
+   "commit": "27a63b59b176f9d2048de69eb0f525f3c7be8f5f",
+   "sha256": "18ljww204kf1pbgrrnx7bn6177lw1bs3npywbx2k1b5j35c3j8xv"
+  }
+ },
+ {
+  "ename": "org-roam-bibtex",
+  "commit": "cc4e4ea60d2363eb691cb87ca3105bd25fc405ed",
+  "sha256": "1q9l49q478zlmcz0wi239qsz2pvmqxyb9qac2k42p19zqnfgkmsg",
+  "fetcher": "github",
+  "repo": "zaeph/org-roam-bibtex",
+  "unstable": {
+   "version": [
+    20200425,
+    1114
+   ],
+   "deps": [
+    "bibtex-completion",
+    "f",
+    "org",
+    "org-roam",
+    "s"
+   ],
+   "commit": "6bbdebb39d7edf9b369c16311afa18cf00cecffc",
+   "sha256": "0fp9cmgn9g4hnqsj9bn5885him0wxbs3qwvnw9anrwyybg6sv2i6"
+  },
+  "stable": {
+   "version": [
+    0,
+    1,
+    0
+   ],
+   "deps": [
+    "bibtex-completion",
+    "f",
+    "org",
+    "org-roam",
+    "s"
+   ],
+   "commit": "9c224890ef9b8fb38b48d48d6f029be00f1c2166",
+   "sha256": "14f3d1yiidglwbygb5swk44fvky7cla3r11i4zx56hrf8lxjzhp6"
+  }
+ },
+ {
   "ename": "org-rtm",
   "commit": "855ea20024b606314f8590129259747cac0bcc97",
   "sha256": "1hdcwmiv2qivdr2g78xz9fl38wn45vj0bn55dbsdj3qx7k7wgfx6",
@@ -69467,6 +71453,46 @@
   }
  },
  {
+  "ename": "org-runbook",
+  "commit": "1ddf4d4e4bd22cc85150c8cbf635ace1f54d64fc",
+  "sha256": "0dih8kv6fhqbfmw2x8ndl6gygssl3g0jr5qkbgbf4wkl5xjls3cg",
+  "fetcher": "github",
+  "repo": "tyler-dodge/org-runbook",
+  "unstable": {
+   "version": [
+    20200412,
+    403
+   ],
+   "deps": [
+    "dash",
+    "f",
+    "ht",
+    "mustache",
+    "s",
+    "seq"
+   ],
+   "commit": "8bec754c3007238d4e1c7296454815bf7000b31d",
+   "sha256": "10bfc8pr576ia16w5mwkksg9yn0jhcsbrkzw9yrjkvq2yzqsgpc0"
+  },
+  "stable": {
+   "version": [
+    1,
+    0,
+    6
+   ],
+   "deps": [
+    "dash",
+    "f",
+    "ht",
+    "mustache",
+    "s",
+    "seq"
+   ],
+   "commit": "53e8876a1587190ec4d103f9e94380f34797ce49",
+   "sha256": "1cyb956s3vshh2i4gd37m1cjxwq5s0xj55pwysgganwgxxw22c8n"
+  }
+ },
+ {
   "ename": "org-scrum",
   "commit": "8315b6834d76180fd050b0d5cc2239d604fe2f3b",
   "sha256": "1bvxcj5675kh7zf839qb0hdy6jlllpqm7ngb5ixx1klax7l8n7pr",
@@ -69527,8 +71553,8 @@
   "repo": "alphapapa/org-sidebar",
   "unstable": {
    "version": [
-    20191012,
-    514
+    20200313,
+    1551
    ],
    "deps": [
     "dash",
@@ -69538,13 +71564,13 @@
     "org-super-agenda",
     "s"
    ],
-   "commit": "b5eff7195718e6a70a42d36e48800632080aab0c",
-   "sha256": "138hbcmkxmmdcagdv438946cr4qkwklqqwf2b1khi8gimnnivsxm"
+   "commit": "d6ddec21fd6f356dc7b77c0a61a633606965a0bf",
+   "sha256": "137a462cl66jldsw877jgn0jph4zsv036mhvd9rpp6pw6jsw50sy"
   },
   "stable": {
    "version": [
     0,
-    2
+    3
    ],
    "deps": [
     "dash",
@@ -69554,8 +71580,8 @@
     "org-super-agenda",
     "s"
    ],
-   "commit": "9634320a6f9ab919119e08a14853c31387f38ce3",
-   "sha256": "106h06vjfbqfj761vbxwymd6612ds8c6fk053yzgbrqzm3hn2c03"
+   "commit": "41b914c7bdc5a12c9289b134822bdfea0889ac9e",
+   "sha256": "1mggpxbzprmmbkiv3xklw1saafsi153n4spr4l0m59lgm4gpymgj"
   }
  },
  {
@@ -69672,20 +71698,20 @@
   "repo": "bastibe/org-static-blog",
   "unstable": {
    "version": [
-    20200117,
-    800
+    20200415,
+    623
    ],
-   "commit": "5c19300d7634e94ae813b1b66abc716fbb1e5fc9",
-   "sha256": "1m7vmibjc6yk2npfrnnqd3g2099300r0q8mr8cvyivmk5ailbfrh"
+   "commit": "ce92384b364de6421ab67e6399ae56b8ea51df49",
+   "sha256": "09i23m9knhr8px1f71wx4csddmrzgy9k4s9a2mq4la1wmj1jy627"
   },
   "stable": {
    "version": [
     1,
-    2,
-    1
+    3,
+    0
    ],
-   "commit": "f69d2fd6671fb250fbd87df5efa898a7bf5b9bda",
-   "sha256": "1h9c96rbxxk1jypib5f9pfi5zkimkvhxi61j0sps6r39435dd3w7"
+   "commit": "afe250fc43cd1beffd7946b54692d712d9263ff2",
+   "sha256": "15iy3z8rglaqbx1fz14inh18ksgjsmq30b8hyv3lgjvcc9ssaiw0"
   }
  },
  {
@@ -69726,8 +71752,8 @@
   "repo": "alphapapa/org-super-agenda",
   "unstable": {
    "version": [
-    20200129,
-    16
+    20200310,
+    1337
    ],
    "deps": [
     "dash",
@@ -69736,8 +71762,8 @@
     "s",
     "ts"
    ],
-   "commit": "ab9c335f9738853c52aae9b946f50e8b6c46a1e0",
-   "sha256": "1l1k7jbn1n1qp5q5h174sdwpqhh8l5zbg9flk1pwaxzq88103gy5"
+   "commit": "dd0d104c269fab9ebe5af7009bc1dd2a3a8f3c12",
+   "sha256": "0kx9sikk7c3j0zp3a31kj8zv2kjxqjhhl25n7c7nslf2fp5w2d8b"
   },
   "stable": {
    "version": [
@@ -69756,6 +71782,36 @@
   }
  },
  {
+  "ename": "org-superstar",
+  "commit": "1e49a3cc1006f271ce53f03717b0484a4fd89957",
+  "sha256": "0rbmrdc7ghcwk5y4jkgf7axwknck85l4xl03kwbkmnac0w98zzlj",
+  "fetcher": "github",
+  "repo": "integral-dw/org-superstar-mode",
+  "unstable": {
+   "version": [
+    20200416,
+    2354
+   ],
+   "deps": [
+    "org"
+   ],
+   "commit": "09ddc28383d363a4b353348a433e24535b4af0e3",
+   "sha256": "14w06v76xi4f6hpq6xzicrjjv0b802g5zc9as4mpimfy5gx2xpm0"
+  },
+  "stable": {
+   "version": [
+    1,
+    2,
+    1
+   ],
+   "deps": [
+    "org"
+   ],
+   "commit": "09ddc28383d363a4b353348a433e24535b4af0e3",
+   "sha256": "14w06v76xi4f6hpq6xzicrjjv0b802g5zc9as4mpimfy5gx2xpm0"
+  }
+ },
+ {
   "ename": "org-sync",
   "commit": "923ddbaf1a158caac5e666a396a8dc66969d204a",
   "sha256": "0n8fz2d1vg9r8dszgasbnb6pgaxr2i8mqrp953prf1nhmfpjpxad",
@@ -69952,8 +72008,8 @@
     "alert",
     "cl-lib"
    ],
-   "commit": "baa1ce6333157fed3b3799a80e6cf8c73c9e2c18",
-   "sha256": "04adkz950vvwyzy3da468nnqsknpr5kw5369w2yqhnph16cwwfxb"
+   "commit": "1e81ea29af1ccc7b4ddb42fe4e3fbfc0adf891b0",
+   "sha256": "0cqk9q26qby2y1l6x39jfrdrw9x9419mlx2zhndmlb6gv3lv35f9"
   },
   "stable": {
    "version": [
@@ -70065,15 +72121,15 @@
   "repo": "jplindstrom/emacs-org-transform-tree-table",
   "unstable": {
    "version": [
-    20150110,
-    1433
+    20200413,
+    1959
    ],
    "deps": [
     "dash",
     "s"
    ],
-   "commit": "0a9bf07f01bc5fc3b349aff64e83999a8de83b52",
-   "sha256": "1h15fr16kgbyrxambmk4hsmha6hx4c4yqkccb82g3wlvzmnqj5x3"
+   "commit": "d84e7fb87bf2d5fc2be252500de0cddf20facf4f",
+   "sha256": "16zi7rg3hdfspifr46gbvpnr1rr144a777whr1w3gp6m46xmgzhs"
   },
   "stable": {
    "version": [
@@ -70114,6 +72170,45 @@
   }
  },
  {
+  "ename": "org-treescope",
+  "commit": "f824498a74dcf0b8130baf474841b240adfa07a7",
+  "sha256": "13j7xz9i11kga1s0yvdv3k54076llna8vnnp0v8ri5pgbdrmc20w",
+  "fetcher": "github",
+  "repo": "mtekman/org-treescope.el",
+  "unstable": {
+   "version": [
+    20200324,
+    1959
+   ],
+   "deps": [
+    "dash",
+    "org",
+    "org-ql"
+   ],
+   "commit": "cad2aa82e5ca73bd7afc31b7a5e764da5ab716c3",
+   "sha256": "1jsc39xmli54mcqcdddzyaphmhlamwq167vfr2g133c3p0wx8swh"
+  }
+ },
+ {
+  "ename": "org-treeusage",
+  "commit": "8868893e4109db9b348a62bc012c89648384994e",
+  "sha256": "1vxal0a4k348sqpivvahjlchk7w5a02dkqvxpqgjs1rlbs7vfv90",
+  "fetcher": "github",
+  "repo": "mtekman/org-treeusage.el",
+  "unstable": {
+   "version": [
+    20200418,
+    1904
+   ],
+   "deps": [
+    "dash",
+    "org"
+   ],
+   "commit": "fe4323bc500e2d949848c75e8f59340971b35562",
+   "sha256": "0v9zd2lnzvdxz3wqvw0j3bzd7228x6k8dyr7pzmimkl4l26cybqm"
+  }
+ },
+ {
   "ename": "org-trello",
   "commit": "188ed8dc1ce2704838f7a2883c41243598150a46",
   "sha256": "14lq8nn1x6qb3jx518zaaz5582m4npd593w056igqhahkfm0qp8i",
@@ -70131,8 +72226,8 @@
     "request-deferred",
     "s"
    ],
-   "commit": "e8e88239b5130307368f554b96fbf05ff4c207b5",
-   "sha256": "0kzvyv8rs0fsfbqsvgdjxlfa0qyi7wsdnfjw7c0hbwi25al39zm7"
+   "commit": "cd7bf366d40bb4af4a1a9801446dc98f713eac8a",
+   "sha256": "08pgn3llbk0sz5v50jqa7mvdv6dw507kgkrkk0ciii1jalg4786a"
   },
   "stable": {
    "version": [
@@ -70251,8 +72346,8 @@
   "repo": "akhramov/org-wild-notifier.el",
   "unstable": {
    "version": [
-    20191114,
-    1632
+    20200328,
+    1153
    ],
    "deps": [
     "alert",
@@ -70260,14 +72355,14 @@
     "dash",
     "dash-functional"
    ],
-   "commit": "713c5205869dde4d42127fd9365f5831ec222503",
-   "sha256": "0585v39lxrqnv4p2k2pcswmx14gvm6l17j05q30cssn5zqy8cv8a"
+   "commit": "4011d7f557da3ae5eee73c56ae514b963fb4d1c1",
+   "sha256": "0mr5qmrnz0mr6w7ib8bcdlqwhzwnxfbnd47zyg9i6lmh20p8qrns"
   },
   "stable": {
    "version": [
     0,
-    3,
-    2
+    4,
+    0
    ],
    "deps": [
     "alert",
@@ -70275,8 +72370,8 @@
     "dash",
     "dash-functional"
    ],
-   "commit": "f2ea8a719cf61742def57475400222a498256bb6",
-   "sha256": "0wrr52bryvv1aj2fk5ik71iifh15bzmvrw1ixzs1afcdp2fn0bcm"
+   "commit": "4011d7f557da3ae5eee73c56ae514b963fb4d1c1",
+   "sha256": "0mr5qmrnz0mr6w7ib8bcdlqwhzwnxfbnd47zyg9i6lmh20p8qrns"
   }
  },
  {
@@ -70287,19 +72382,20 @@
   "repo": "marcIhm/org-working-set",
   "unstable": {
    "version": [
-    20200207,
-    2036
+    20200416,
+    813
    ],
-   "commit": "813c2e7af2ec1dacf037b1f971f070a4f784d2a5",
-   "sha256": "12dagcvcba3j74grijgibpskr3qc373m25xkp2p86ap81bg58zn8"
+   "commit": "344d92ee5c117077317616e33d5945703059ac00",
+   "sha256": "1hzvv23bx4mscl3sw6nr8gggch8rdlyg33fhdv89xpgr700dx1nx"
   },
   "stable": {
    "version": [
     2,
-    0
+    1,
+    6
    ],
-   "commit": "813c2e7af2ec1dacf037b1f971f070a4f784d2a5",
-   "sha256": "12dagcvcba3j74grijgibpskr3qc373m25xkp2p86ap81bg58zn8"
+   "commit": "d6fff111930befa52a5cce128c986b0162ddf8c4",
+   "sha256": "1s9rqjn6c52kvz4v1ma6icdykvkvrvbyllpy5i1mg0pb4acbbwym"
   }
  },
  {
@@ -70332,8 +72428,8 @@
   "repo": "org2blog/org2blog",
   "unstable": {
    "version": [
-    20200301,
-    501
+    20200317,
+    2136
    ],
    "deps": [
     "htmlize",
@@ -70341,14 +72437,14 @@
     "metaweblog",
     "xml-rpc"
    ],
-   "commit": "4fa095ff8416d1759ffd9cbd01d667cff386bbb5",
-   "sha256": "171fsvzk0msvz1052034g60prf40w6qdkglg560v73iika8x2k4s"
+   "commit": "60eae1c8a7f82fbcc2660d785b33601daaa29f4b",
+   "sha256": "06ia4ba6c1yph259wr4y5sdkl1ry6pzbwhx807ia675rp0clp9hz"
   },
   "stable": {
    "version": [
     1,
     1,
-    5
+    8
    ],
    "deps": [
     "htmlize",
@@ -70356,8 +72452,8 @@
     "metaweblog",
     "xml-rpc"
    ],
-   "commit": "2e28cf362b7e4a8b6a5bbaf60983a72e19798c8b",
-   "sha256": "0lal6d4a4pbni1xl3g1gb3rnmyz2kym9r1mhb2n14awqqxxg7l3q"
+   "commit": "0177fc4e7edd705db59b82c83a24db51dc405890",
+   "sha256": "1whl7kz4im2jmdz99336wfn152q0l3qwii4w7sn45rlsm2sijiw1"
   }
  },
  {
@@ -70368,11 +72464,11 @@
   "repo": "tumashu/org2ctex",
   "unstable": {
    "version": [
-    20191024,
-    610
+    20200331,
+    550
    ],
-   "commit": "d4af170f5190dad3aa31ab1cf4c6f087d56ab111",
-   "sha256": "0m28mxsq1d5ggr8phfn94pb38lj8x3sxykh7hfqbwhphaza3by5q"
+   "commit": "2e40aa5e78b0562516f46f689e7b74cdf451cc2a",
+   "sha256": "06ip9663xvygpr484r09v7c55nn0pxmr30455iqpmxi32dwx974g"
   }
  },
  {
@@ -70501,11 +72597,11 @@
   "repo": "kostafey/organic-green-theme",
   "unstable": {
    "version": [
-    20191125,
-    1630
+    20200418,
+    2058
    ],
-   "commit": "15746df5f3af5ee308cd4f546ef229eef2d825ac",
-   "sha256": "100axl6ajddfw23lr98k8b05zrd4hajcq68mi90vddqbn06mk577"
+   "commit": "5218473fb500e58ccad3f73cfc4245f161869f89",
+   "sha256": "07l10mjgz0il5z7qpn2bw7621m5frgcmsb2pl9pyhfrjykvf8mih"
   }
  },
  {
@@ -70582,16 +72678,15 @@
   "repo": "magit/orgit",
   "unstable": {
    "version": [
-    20191205,
-    2300
+    20200417,
+    1720
    ],
    "deps": [
-    "dash",
     "magit",
     "org"
    ],
-   "commit": "e7cddf39e301c87c36c7de13e429dee74874d5c8",
-   "sha256": "00s3a8i221didw8phlbvdvihj9pxkq9k9j9vh1g1mzd7cz58dm07"
+   "commit": "e147f055772cc934fe1f1d8619059badeb647c93",
+   "sha256": "1q3v22drqbjzzr6d0zdwczz1rq37iyh78k2nk1wirbs5z4ixfyx8"
   },
   "stable": {
    "version": [
@@ -70616,15 +72711,15 @@
   "repo": "tarsius/orglink",
   "unstable": {
    "version": [
-    20190919,
-    1859
+    20200413,
+    2124
    ],
    "deps": [
     "dash",
     "org"
    ],
-   "commit": "988ad54db45708b0fe835829d512eb6d5f6cf161",
-   "sha256": "1mswfbwz7fm9lriab365g7hq8hn85gxcsg8y41by9j0n8hb3hj5q"
+   "commit": "a5f5da06174d22dc21bbac167a8c2361fa84bf2b",
+   "sha256": "0sxali4vnqzk6mj0m7d82yr2ixvxxj5lzmxffyznpa7j6yndi2mm"
   },
   "stable": {
    "version": [
@@ -70648,15 +72743,15 @@
   "repo": "yoshinari-nomura/orglue",
   "unstable": {
    "version": [
-    20171220,
-    1226
+    20200411,
+    311
    ],
    "deps": [
     "epic",
     "org"
    ],
-   "commit": "ae2a45c19b52e45db7891093a3ff17ba2e51c507",
-   "sha256": "0h3b37wz4hlk022c0sq7c9p5z3v4n6cljhy8g1qjhnxac8y7mkr0"
+   "commit": "9d5a8e24be9acb8c55bb4d6aa8b98e30e2677401",
+   "sha256": "1n2l9acc54sbpbv5d1h2ib9cn7nbidmkvhhlwihqzpvvh7bhjfj7"
   }
  },
  {
@@ -70687,11 +72782,11 @@
   "repo": "tbanel/orgaggregate",
   "unstable": {
    "version": [
-    20190812,
-    604
+    20200423,
+    2123
    ],
-   "commit": "1a13f7f70357f369e16bfa3038a9fb760cbffb46",
-   "sha256": "11qygmgvjqc53gy5f3pz0hh5zsam1li8vbyr42wflfkv6cwxypdb"
+   "commit": "b4d8ee2b8e0062eaa15eac6805374c02b776bb88",
+   "sha256": "1p187hfll4jz44g7xxdhnnm0qjcf4gdxbrywdqxpdqvqs74pa18l"
   }
  },
  {
@@ -70702,11 +72797,11 @@
   "repo": "tbanel/orgtblasciiplot",
   "unstable": {
    "version": [
-    20151215,
-    2151
+    20200411,
+    711
    ],
-   "commit": "cd91f6ae26a7402e192a1f4fd6248f5797edf19e",
-   "sha256": "1vbnp37xz0nrpyi0hah345928zsb1xw915mdb0wybq1fzn93mp1z"
+   "commit": "59618630205fc8c0fcc74fb34c4581d9712a5181",
+   "sha256": "1qx6la70cdxr556d2kna4ra76kdliaqkwm97jahd20nhs2izvpl1"
   }
  },
  {
@@ -70717,14 +72812,14 @@
   "repo": "tbanel/orgtbljoin",
   "unstable": {
    "version": [
-    20150121,
-    2246
+    20200423,
+    2129
    ],
    "deps": [
     "cl-lib"
    ],
-   "commit": "ccf5e0d96e053dc289da39a048715fcf36835ff2",
-   "sha256": "06nc82wiha11i79izqil53dkd95fl55nb5m739gyyzvx3sksb0dg"
+   "commit": "9a197de6c3036fbdb6309cbfd35ec31a69b3ebe7",
+   "sha256": "0fhq36g5k4nib5ykb92j12l3fnqj09xh2jai92l8c5nslgm00slr"
   }
  },
  {
@@ -70759,16 +72854,16 @@
   "repo": "gregsexton/origami.el",
   "unstable": {
    "version": [
-    20180101,
-    1553
+    20200331,
+    1019
    ],
    "deps": [
     "cl-lib",
     "dash",
     "s"
    ],
-   "commit": "1f38085c8f9af7842765ed63f7d6dfe4dab59366",
-   "sha256": "0ha1qsz2p36pqa0sa2sp83lspbgx5lr7930qxnwd585liajzdd9x"
+   "commit": "e558710a975e8511b9386edc81cd6bdd0a5bda74",
+   "sha256": "0ycjbsn03cjzx6adabcvi1j7f92yhx3xjzj3xc68m1hw9r2f2gzf"
   }
  },
  {
@@ -70779,14 +72874,14 @@
   "repo": "vyorkin/ormolu.el",
   "unstable": {
    "version": [
-    20200207,
-    2111
+    20200313,
+    1631
    ],
    "deps": [
     "reformatter"
    ],
-   "commit": "f6f2ea12ae158a400525857a82eb05bf2b7e88f3",
-   "sha256": "0v3ci5wyydpj14r2lvw7fn9yp7ra8nhz8z2c68521dydhblbry7b"
+   "commit": "5d991188b511e9d650c84fc578f2f49c9f995693",
+   "sha256": "1x5nx064cgcjj99xwp7drcvhfmmav1f72jnwwlxllhas2is458m0"
   }
  },
  {
@@ -70896,11 +72991,11 @@
   "repo": "purcell/osx-location",
   "unstable": {
    "version": [
-    20150613,
-    917
+    20200304,
+    2209
    ],
-   "commit": "8bb3a94cc9f04b922d2d730fe08596cc6ee12bf2",
-   "sha256": "09hjcpmh0fxhsx63vcaz05w94xcc8q35vgffggjqaybs7hyzlx69"
+   "commit": "18fcc306caa575c5afdeaf091aa1a9b003daa52a",
+   "sha256": "0n59mf0qx78d4qb071qgbvd50vzkn3xffwgxjwjv90193h99qdnj"
   },
   "stable": {
    "version": [
@@ -71052,11 +73147,11 @@
   "repo": "tarsius/outline-minor-faces",
   "unstable": {
    "version": [
-    20200103,
-    1239
+    20200416,
+    2211
    ],
-   "commit": "d6247aaec44f60a9bd161c1d56960f80ab314a49",
-   "sha256": "0mscnbbv6cap818zhzz3ig6ychrw0zw84zyl2g1rksir0qj4hznf"
+   "commit": "d431b13e3d47cf2564a04a096d2162ca38593050",
+   "sha256": "05szncxfm7595ah63k1z3zmivk2z1lv28jcwb1fylx0s93f51z0c"
   },
   "stable": {
    "version": [
@@ -71076,11 +73171,11 @@
   "repo": "abingham/outline-toc.el",
   "unstable": {
    "version": [
-    20170730,
-    1130
+    20200401,
+    1208
    ],
-   "commit": "31f04bea19cfcfb01a94d1fd2b72391cb02b7463",
-   "sha256": "1pqz2ynw51n3f7d9hknz80d42017lccsggkg13zqmn51wkjpc48j"
+   "commit": "81d373633b40628cc3a6b6fb534fd7730076bcdb",
+   "sha256": "1ad6bxa5x95n6i1197p13qy5fgzn1pslwbzqsf4rfy9bvr49g6q3"
   }
  },
  {
@@ -71199,11 +73294,11 @@
   "repo": "emacsorphanage/ov",
   "unstable": {
    "version": [
-    20200124,
-    1842
+    20200326,
+    1042
    ],
-   "commit": "3b246691d5b728ef1f0164f0cefffe00c9554e64",
-   "sha256": "10synkwxz6kqldx97pc52falr7h7khq97gck5fqidijwzmvs7jb2"
+   "commit": "c5b9aa4e1b00d702eb2caedd61c69a22a5fa1fab",
+   "sha256": "1g3r4jsgvf713jazw0j5mcsbrw9shix9qrc683jm7dccwwrv5pcy"
   },
   "stable": {
    "version": [
@@ -71223,11 +73318,11 @@
   "repo": "myTerminal/overcast-theme",
   "unstable": {
    "version": [
-    20190326,
-    1646
+    20200425,
+    1601
    ],
-   "commit": "afb8098ad2234a65ec614f4028f7cf2555134f46",
-   "sha256": "1fp8awdhpr92fygp6pbx9bdnkc1amngbwsr6c2haj7xb8717zckj"
+   "commit": "e02b835a08919ead079d7221d513348ac02ba92e",
+   "sha256": "0fy8739fbhmixgjxgd1j5v2rjkwhsqac5kczx3mdjlfd2w55k3h7"
   },
   "stable": {
    "version": [
@@ -71291,6 +73386,21 @@
   }
  },
  {
+  "ename": "owcmd",
+  "commit": "13e6df2397380eba31ecbf4a7c1214dedaf9cfad",
+  "sha256": "0lg6mk5bmfkiifzxz4ijr10nibr5zcbfxzy9cvg6bnzxns6nhgq5",
+  "fetcher": "github",
+  "repo": "fishyfriend/owcmd",
+  "unstable": {
+   "version": [
+    20200424,
+    2314
+   ],
+   "commit": "af0f79c16f573f4dbaafe77a430d7621857e706b",
+   "sha256": "0mjg5563bka3cc6rysw7fhhh51w4fpysa9ni9v5iv89d8i7mz0yd"
+  }
+ },
+ {
   "ename": "owdriver",
   "commit": "f3f9c1bb19345c6027a945e7f265632da1a391cb",
   "sha256": "0j8z7ynan0zj581x50gsi9lljkbi6bwmzpfyha3i6q8ch5qkdxfd",
@@ -71298,30 +73408,30 @@
   "repo": "aki2o/owdriver",
   "unstable": {
    "version": [
-    20170401,
-    1312
+    20200410,
+    1901
    ],
    "deps": [
     "log4e",
     "smartrep",
     "yaxception"
    ],
-   "commit": "d934f182bafe29aa16c173440eff3fef08b0ec10",
-   "sha256": "0yy5sah7vcjxcik3sp2cxp9gvcryyzw799h8zf4wbvjxv74kd17c"
+   "commit": "3c52a7b11c8275fdb2e4cf98f68f2a48ad09a3ae",
+   "sha256": "1lxvcbpzpzs3vkgg4pif3k89ddmj5mamk2q18wc3gx0czs6v301d"
   },
   "stable": {
    "version": [
     0,
-    0,
-    6
+    2,
+    0
    ],
    "deps": [
     "log4e",
     "smartrep",
     "yaxception"
    ],
-   "commit": "0479389d9df9e70ff9ce69dff06252d3aa40fc86",
-   "sha256": "0f2psx4lq98l3q3fnibsfqxp2hvvwk7b30zjvjlry3bffg3l7pfk"
+   "commit": "3c52a7b11c8275fdb2e4cf98f68f2a48ad09a3ae",
+   "sha256": "1lxvcbpzpzs3vkgg4pif3k89ddmj5mamk2q18wc3gx0czs6v301d"
   }
  },
  {
@@ -71483,14 +73593,14 @@
   "repo": "kaushalmodi/ox-hugo",
   "unstable": {
    "version": [
-    20200122,
-    2049
+    20200420,
+    324
    ],
    "deps": [
     "org"
    ],
-   "commit": "16f1b0c9a9e01bdc3582284f570be5fd70004e03",
-   "sha256": "0z6cz93kcr7h3yag36m58mmncp6klyalqprj4ifpk9wj3802yyyi"
+   "commit": "5106b430a139bb9e37beda177a082dfe36b407f5",
+   "sha256": "1x5hmvxy9dl88ix4ir1jshjavc99l8884if8c0v9gkjqb31ka9n7"
   },
   "stable": {
    "version": [
@@ -71629,11 +73739,14 @@
   "repo": "linktohack/ox-latex-subfigure",
   "unstable": {
    "version": [
-    20200113,
-    1029
+    20200326,
+    919
+   ],
+   "deps": [
+    "org"
    ],
-   "commit": "18bcee0c89c19da847f38660946a5b9343607cfb",
-   "sha256": "1hpwsx3cba6kk2n954h144pb1ba5yy46gcni8ikvsbqm8j17ragm"
+   "commit": "be0a0dde62fde8cdf8d72b6968344906aa8c6f54",
+   "sha256": "1afikv50ii4xk9pkg4m6dx246bjnwka37lccif8i5r48hfy5w4bq"
   },
   "stable": {
    "version": [
@@ -71794,14 +73907,14 @@
   "repo": "yjwen/org-reveal",
   "unstable": {
    "version": [
-    20200216,
-    1516
+    20200327,
+    1636
    ],
    "deps": [
     "org"
    ],
-   "commit": "aafedfd8052d1ac4b0ddf946b3258a3b5ae5bbbe",
-   "sha256": "1hiidlagr7y3l22xwk4nd7m6c83j2vlhyijb0hmw89casfsdixbj"
+   "commit": "ea8b5021702d8f12aa5285fb2a8561ceaeb1332e",
+   "sha256": "1fppdz2r8zig6r1v1n82bxmxyn2f6i1rjv9qll4n866gahkknlkr"
   }
  },
  {
@@ -71867,14 +73980,14 @@
   "repo": "balddotcat/ox-slimhtml",
   "unstable": {
    "version": [
-    20181219,
-    850
+    20200302,
+    728
    ],
    "deps": [
     "cl-lib"
    ],
-   "commit": "a5070cb2c67425aa33da8503c83361e8814a86ec",
-   "sha256": "13adpcgsd4153yd0097iady2dy6pa9w02rp97whkl4hjmhdik71i"
+   "commit": "6f774398d189430593c93e503bf0f3cd0e8bcc25",
+   "sha256": "12axvwqadv0qlvnzrvbi85p94c10r5w6f3gixck0cbz7p8qz678r"
   },
   "stable": {
    "version": [
@@ -72099,14 +74212,14 @@
   "repo": "UndeadKernel/pacfiles-mode",
   "unstable": {
    "version": [
-    20181028,
-    1744
+    20200418,
+    1806
    ],
    "deps": [
     "cl-lib"
    ],
-   "commit": "ff58f387e0f85ca20c4c9f119bf13303bf8b5a76",
-   "sha256": "1my9qhnla61wgrhf0izjx0kyjrxwyz3cfh3xp80mmnxhxrrf21kl"
+   "commit": "222ae3f540cddee306067c83451cfece1112c09e",
+   "sha256": "1ps6blv2jhm4i2gr1fbsr1lii9cpr99prhwnxvhxxxy08c9b6mrx"
   },
   "stable": {
    "version": [
@@ -72182,14 +74295,14 @@
   "repo": "melpa/package-build",
   "unstable": {
    "version": [
-    20200125,
-    1707
+    20200313,
+    2359
    ],
    "deps": [
     "cl-lib"
    ],
-   "commit": "f0ded6bf6532f475fdf62a62ef432604d6dddbe3",
-   "sha256": "0wg5xsj6x101ng0fxdzqbkf307igxr9vcja4gnhgcbrvkzsn7ydc"
+   "commit": "90e514432661f750f2a0c9fe17f09cdcc8e4e82b",
+   "sha256": "0p2vzsad8biczhj80y5bif5p0agcg8id4qngvi0lmxvx8i8wvky0"
   },
   "stable": {
    "version": [
@@ -72226,15 +74339,15 @@
   "repo": "purcell/package-lint",
   "unstable": {
    "version": [
-    20200226,
-    2001
+    20200419,
+    406
    ],
    "deps": [
     "cl-lib",
     "let-alist"
    ],
-   "commit": "78d0cdbe63d142801cbd046871353ae0455dad33",
-   "sha256": "0ghq8sg3jgidr1srdrl1cighsdvk314an3l2w56ak0ss99h6q28a"
+   "commit": "fb4662a755572c5add43869cdb6dcc577ca83a7f",
+   "sha256": "1flapr3aq38212m7w9ib56vqmaixz7ggmqd6hjhzphf6q1r5cv3l"
   },
   "stable": {
    "version": [
@@ -72263,8 +74376,8 @@
    "deps": [
     "package-lint"
    ],
-   "commit": "78d0cdbe63d142801cbd046871353ae0455dad33",
-   "sha256": "0ghq8sg3jgidr1srdrl1cighsdvk314an3l2w56ak0ss99h6q28a"
+   "commit": "fb4662a755572c5add43869cdb6dcc577ca83a7f",
+   "sha256": "1flapr3aq38212m7w9ib56vqmaixz7ggmqd6hjhzphf6q1r5cv3l"
   },
   "stable": {
    "version": [
@@ -72430,11 +74543,11 @@
   "repo": "purcell/page-break-lines",
   "unstable": {
    "version": [
-    20200121,
-    837
+    20200305,
+    244
    ],
-   "commit": "6fb993a42059b58d1a0219006f2d61ebd3b2c9e6",
-   "sha256": "09crppxqc0d2bdr1pb7k24mhbax5ibdcgd1mw7ybvifakgvfwbkf"
+   "commit": "314b397910b3d16bb7cbcc25098696348e678080",
+   "sha256": "106w2n01i9d6z2r43lwwrm7hlppi9bkf8g8nsqd91f0f06921plw"
   },
   "stable": {
    "version": [
@@ -72537,16 +74650,16 @@
   "repo": "abo-abo/pamparam",
   "unstable": {
    "version": [
-    20200228,
-    1902
+    20200410,
+    1155
    ],
    "deps": [
     "hydra",
     "lispy",
     "worf"
    ],
-   "commit": "21ceadbf95cc49202e2704ba9704a5784230efd8",
-   "sha256": "0n7ia4fpp3lgdmf7m0q1lqqnkbpw24bdk1apjvacwjlpy4gsqy2z"
+   "commit": "f9d83bbf5eb883bce6873dd6fd97484b6805215c",
+   "sha256": "0av69k6psrpmyadm2r0frwdbqyvpa4flzkrmi88w0vx3g0cxiv2k"
   }
  },
  {
@@ -72557,11 +74670,11 @@
   "repo": "sebasmonia/panda",
   "unstable": {
    "version": [
-    20190907,
-    314
+    20200424,
+    2206
    ],
-   "commit": "5a3da498a8ab8a60cef3a3a5e8f3e14dea9992dd",
-   "sha256": "04fa2895vr0z6y1w1mkpxhzx2q323vl7r3hayxr0vldd8mz8m0lw"
+   "commit": "bdd9f80283d8ae4a69f8789e5f18b1560b94fe43",
+   "sha256": "1ld4igmmjk7p7dxm0mnfks3k0cqpqjxrvlmjdi0m7w11ba8dsah9"
   }
  },
  {
@@ -72619,15 +74732,15 @@
   "repo": "joostkremers/pandoc-mode",
   "unstable": {
    "version": [
-    20200219,
-    2243
+    20200303,
+    2322
    ],
    "deps": [
     "dash",
     "hydra"
    ],
-   "commit": "7e417a670cff080650f2c1153dd9c50fc4ac8a48",
-   "sha256": "0jd2avxzidfac5nz9xk405jpb3rba9bq2cw6acdz7wj37lnxxnh7"
+   "commit": "befd7be704d6dbe3dba69da761fc62e0609c9366",
+   "sha256": "0c621viqjss1ynzgcb81afck9rl1lwadzq68vas4gb2zjb5dd06h"
   },
   "stable": {
    "version": [
@@ -72745,14 +74858,14 @@
   "repo": "ajgrf/parchment",
   "unstable": {
    "version": [
-    20200221,
-    1702
+    20200424,
+    1524
    ],
    "deps": [
     "autothemer"
    ],
-   "commit": "206dfc8e459971b0d5795ef5da4f1f737020eeab",
-   "sha256": "097vs3792054jczsk8jy6dhwqqlfvfgfshg3bhlzyiwzcd5x98dw"
+   "commit": "766efdbd444cbefd9d01e7c6f55956d4c9a8db6c",
+   "sha256": "1jz9vf8wfjnnbbsnxzcpfvj19556w1z9887xvvwn6rsiqqlxgray"
   },
   "stable": {
    "version": [
@@ -73006,11 +75119,11 @@
   "repo": "joostkremers/parsebib",
   "unstable": {
    "version": [
-    20190126,
-    901
+    20200303,
+    2324
    ],
-   "commit": "1357cb0e5916dfe63477d92f16c863a4c5e67b0e",
-   "sha256": "09b24j074dwawfm3b379m948f9pv859qsnrmz8k9qx97ls4jjmbw"
+   "commit": "6537b4d2a8cf34455b769b95dfd65de6a4a0e1d3",
+   "sha256": "1gy5rqnfnyhfa44vxy7qqqh7xada1d1gg34msczcalhhy6lm59if"
   },
   "stable": {
    "version": [
@@ -73090,15 +75203,15 @@
   "repo": "clojure-emacs/parseedn",
   "unstable": {
    "version": [
-    20191113,
-    831
+    20200419,
+    1124
    ],
    "deps": [
     "a",
     "parseclj"
    ],
-   "commit": "f42ff988338484815ccd925c8f83a32c5d52319b",
-   "sha256": "0cx1zf82mjwlnj6znas8b94ws1f3n2h0imyybi9qirvsp90qd4sl"
+   "commit": "92bf875962e62f8c6370b56991d546f122536c6b",
+   "sha256": "0xli6cf0fzydnd683v3hk5kfsbxwh83s916fd64j8ak0wzjnlsfr"
   },
   "stable": {
    "version": [
@@ -73193,35 +75306,6 @@
   }
  },
  {
-  "ename": "passthword",
-  "commit": "a52b516b7b10bdada2f64499c8f43f85a236f254",
-  "sha256": "19zv80kidb6a3985n3zij507hvffcxhcvlfxd01gwx64wvfc0c3c",
-  "fetcher": "gitlab",
-  "repo": "pidu/passthword",
-  "unstable": {
-   "version": [
-    20141201,
-    923
-   ],
-   "deps": [
-    "cl-lib"
-   ],
-   "commit": "30bace842eaaa6b48cb2251fb84868ebca0467d6",
-   "sha256": "0yckh61v9a798gpyk8x2z9990h3b61lwsw0kish571pygfyqhjkq"
-  },
-  "stable": {
-   "version": [
-    1,
-    4
-   ],
-   "deps": [
-    "cl-lib"
-   ],
-   "commit": "58a91defdbeec9014b4e46f909a7411b3a627285",
-   "sha256": "1g0mvg9i8f2qccb4b0m4d74zkjx9gjfv47x57by6cdaf9yywqryi"
-  }
- },
- {
   "ename": "password-generator",
   "commit": "855ea20024b606314f8590129259747cac0bcc97",
   "sha256": "1ziiz4x4slfadlm7fjpmwvq4a9fi3ird74b6v5na499ylqnzrl59",
@@ -73259,17 +75343,16 @@
   "repo": "zx2c4/password-store",
   "unstable": {
    "version": [
-    20190929,
-    1627
+    20200328,
+    1214
    ],
    "deps": [
     "auth-source-pass",
-    "f",
     "s",
     "with-editor"
    ],
-   "commit": "88936b11aff49e48f79842e4628c55620e0ad736",
-   "sha256": "0hjb0zh94mda4xq20srba40mh3iww3gg45w3vaqyvplxiw08hqrq"
+   "commit": "07b169ec32ad6961ed8625a0b932a663abcb01d2",
+   "sha256": "1dl3bck16zwhpspjrms11dknqgadnmpjqhcplkvv3v4f7vbnij6v"
   },
   "stable": {
    "version": [
@@ -73762,6 +75845,21 @@
   }
  },
  {
+  "ename": "pdb-capf",
+  "commit": "f0b7e12b9f49dc4ed1cc5a6893accc882896f334",
+  "sha256": "0656a2s8r8dg11in8r5xx984lcxd5g5l3x6vnha50s0c4nx93x3y",
+  "fetcher": "github",
+  "repo": "muffinmad/emacs-pdb-capf",
+  "unstable": {
+   "version": [
+    20200419,
+    1237
+   ],
+   "commit": "2f4099aa1330f87df4e9cd526de057ee9b71de6c",
+   "sha256": "0fdzhsz3784lf50mdabz9h2b6992cab2nnn4xv7rx2a8hsyyq1mq"
+  }
+ },
+ {
   "ename": "pdb-mode",
   "commit": "6aee132aa24322fe1ac88ae17ee6e77ae1ec8d11",
   "sha256": "1ihkxd15kx5m5xb9yxwz8wqbmyk9iaskry9szzdz1j4gjlczb6hy",
@@ -73833,11 +75931,11 @@
   "repo": "jeremy-compostella/pdfgrep",
   "unstable": {
    "version": [
-    20200124,
-    2236
+    20200306,
+    209
    ],
-   "commit": "e250376d97fc5240e07d81108bbca9b5a9ab50f4",
-   "sha256": "17yqvvgkgxmcl8nc0mb9yaz884zcdnz7dwvfi4mxjzp1l05fvwjk"
+   "commit": "1576fc98754d3bdaa40573a037a80f1973110756",
+   "sha256": "1c3p3vdhy6wibxwpc76bvvm0583zmjmxs9pa453z3msbq33kc7j8"
   }
  },
  {
@@ -73988,24 +76086,6 @@
   }
  },
  {
-  "ename": "perl6-mode",
-  "commit": "4e912dccdee12f745272d26ea10d5f106a27cabc",
-  "sha256": "0r5q2nggb9kbjcdfv81d7sm41jqz040j9z52fnck4b9mlz2dy6d0",
-  "fetcher": "github",
-  "repo": "perl6/perl6-mode",
-  "unstable": {
-   "version": [
-    20180619,
-    1159
-   ],
-   "deps": [
-    "pkg-info"
-   ],
-   "commit": "88de065795d6863b23b6042576b9e90f8cbf8798",
-   "sha256": "0m8kc8j1rwy30439k4l5f351jkfjjp38mjm891ax8ghp9zk5pr7h"
-  }
- },
- {
   "ename": "perlbrew",
   "commit": "24bd9c2cd848f5003a244a7127e8fc5ef46bdca4",
   "sha256": "1qadwkcic2qckqy8hgrnj08ajhxayknhpyxkc6ir15vfqjk5crr8",
@@ -74209,25 +76289,25 @@
   "repo": "nex3/perspective-el",
   "unstable": {
    "version": [
-    20200224,
-    2013
+    20200418,
+    1815
    ],
    "deps": [
     "cl-lib"
    ],
-   "commit": "d415c154fa59f1a85c4f2812d21ba29bb39677b8",
-   "sha256": "07ncr5jmn5lrmxdc0c6dw92cqkasc8yivjn9q4ri0wy08zfh298i"
+   "commit": "c3075b52db1f973202303fa306c56a24d9d47fc9",
+   "sha256": "0mcsrkga5y8sl05mv3n4lmjpgn9mcpy01w0qz55a6jv301rda3p0"
   },
   "stable": {
    "version": [
     2,
-    3
+    7
    ],
    "deps": [
     "cl-lib"
    ],
-   "commit": "1ba7e2ddc37df4f453e7d8cffccc13981af658b1",
-   "sha256": "0v13dljkspx01w88q7nb7dcjni1blp5682wpvlvpx3phnfyjqs5g"
+   "commit": "c3075b52db1f973202303fa306c56a24d9d47fc9",
+   "sha256": "0mcsrkga5y8sl05mv3n4lmjpgn9mcpy01w0qz55a6jv301rda3p0"
   }
  },
  {
@@ -74257,6 +76337,21 @@
   }
  },
  {
+  "ename": "pest-mode",
+  "commit": "d3145c38d53aa94c6ae33f2bc0cb804e246a8558",
+  "sha256": "0d89s1lqif6mdbm1fh6h1m4414sxa382rjyw3qqsm5iz2b5vf14p",
+  "fetcher": "github",
+  "repo": "ksqsf/pest-mode",
+  "unstable": {
+   "version": [
+    20200321,
+    504
+   ],
+   "commit": "4ae88a9c81d499bbe99978ff0216b645fed70023",
+   "sha256": "1zc7dmgp3s9q33wkvw6i7zzlcaa65ixx3hxb78m62lk2a7fzb3ih"
+  }
+ },
+ {
   "ename": "pfuture",
   "commit": "5fb70c9f56a58b5c7a2e8b69b191aa2fc7c9bcc8",
   "sha256": "15fr9wkpv8v1p22wz7hsyihq7f807ck105c2crfs8y7capfvs53s",
@@ -74264,19 +76359,19 @@
   "repo": "Alexander-Miller/pfuture",
   "unstable": {
    "version": [
-    20200113,
-    620
+    20200425,
+    1357
    ],
-   "commit": "fbecd1562b34fcd15563b7cc00d98e5af0d7e43d",
-   "sha256": "1imqavzc0isba3yh128jzsy27x2983sjiqkf6q2xw43mbjknl8dy"
+   "commit": "d7926de3ba0105a36cfd00811fd6278aea903eef",
+   "sha256": "1chpin5277vbl2xvsl04pzzk7a9dbcvclibm2496gz6yvd19pwsf"
   },
   "stable": {
    "version": [
     1,
-    8
+    9
    ],
-   "commit": "fbecd1562b34fcd15563b7cc00d98e5af0d7e43d",
-   "sha256": "1imqavzc0isba3yh128jzsy27x2983sjiqkf6q2xw43mbjknl8dy"
+   "commit": "d7926de3ba0105a36cfd00811fd6278aea903eef",
+   "sha256": "1chpin5277vbl2xvsl04pzzk7a9dbcvclibm2496gz6yvd19pwsf"
   }
  },
  {
@@ -74632,27 +76727,25 @@
   "repo": "OVYA/php-cs-fixer",
   "unstable": {
    "version": [
-    20190207,
-    1126
+    20200312,
+    1309
    ],
    "deps": [
     "cl-lib"
    ],
-   "commit": "6540006710daf2b2d47576968ea826a83a40a6bf",
-   "sha256": "089x26akvkfm772v8n3x3l5wpkhvlgad2byrcbh0a1vyhnjb2fvd"
+   "commit": "95eace9bc0ace128d5166e303c76df2b778c4ddb",
+   "sha256": "1pl6zw1m8n3ir48h58gaq2f474w9j20a6gk4r0cq5vgvzxx25f0h"
   },
   "stable": {
    "version": [
     1,
-    0,
-    -2,
-    4
+    0
    ],
    "deps": [
     "cl-lib"
    ],
-   "commit": "ca2c075a22ad156c336d2aa093fb6394c9f6c112",
-   "sha256": "1axjfsfasg7xyq5ax2bx7rh2mgf8caw5bh858hhp1gk9xvi21qhx"
+   "commit": "95eace9bc0ace128d5166e303c76df2b778c4ddb",
+   "sha256": "1pl6zw1m8n3ir48h58gaq2f474w9j20a6gk4r0cq5vgvzxx25f0h"
   }
  },
  {
@@ -74678,11 +76771,11 @@
   "repo": "emacs-php/php-mode",
   "unstable": {
    "version": [
-    20200301,
-    1404
+    20200415,
+    1405
    ],
-   "commit": "547a31d71991e7bb1d9e5d1ce45b6be6e5740058",
-   "sha256": "1iwbh8cc3a5ayq1r6lv8jkx5hfa4yfz1rgzmvb2s08si9q3y5wna"
+   "commit": "4d0b4a04401a2b9f9ff834f6ed58bc7cc5b878c0",
+   "sha256": "0lgw1lghib0vv4byrhjimldxyqyav4qypprk9ppvwjbad1j0hfkn"
   },
   "stable": {
    "version": [
@@ -74770,8 +76863,8 @@
   "repo": "emacs-php/phpactor.el",
   "unstable": {
    "version": [
-    20200121,
-    1218
+    20200405,
+    1544
    ],
    "deps": [
     "async",
@@ -74780,8 +76873,8 @@
     "f",
     "php-runtime"
    ],
-   "commit": "5ccf65d59e6bbc9cd958dd5988e8fd2143b0d57f",
-   "sha256": "0k4dzn4a5y4kq7yz3ifvzziv90rp5si380c5ypgxr5iwb1b8a0l3"
+   "commit": "860d7e8784b261ee71deba354d01c3038cd777ab",
+   "sha256": "1d3fijh11g70xhx3a47l75mrp64bvkk7hh9lg83nl30qhn2vrbn3"
   },
   "stable": {
    "version": [
@@ -74835,20 +76928,26 @@
   "repo": "emacs-php/phpstan.el",
   "unstable": {
    "version": [
-    20200122,
-    1256
+    20200411,
+    531
    ],
-   "commit": "6744215d82ce9e82416d83e5b27fb9bac9e8d461",
-   "sha256": "0hbm881w84nm4g67085xzikz422vkb08y98hfk2n3kqmznvp8i51"
+   "deps": [
+    "php-mode"
+   ],
+   "commit": "2f715a186c5fe6576de83d4c0b64a37e2bfce101",
+   "sha256": "03ix2s068pzmybj0fcb08dlfgdqw0pmqhbdf4id2077f67bfad0w"
   },
   "stable": {
    "version": [
     0,
-    3,
-    3
+    5,
+    0
+   ],
+   "deps": [
+    "php-mode"
    ],
-   "commit": "535e172e1c561bc7b8c706b4e03bbf71689bd83a",
-   "sha256": "1hn1rdgymv81rm8nkibnc5jazgjrx3sz4w1lin85rgypzbfaf6wk"
+   "commit": "bf9e82a63f2ccb12af02c9e79a83e7989eeb7cb1",
+   "sha256": "15kv5xv6lcfgf048wr2zsnpvrplbxypy3wq56zvrzbq18hwprqg1"
   }
  },
  {
@@ -75050,25 +77149,25 @@
   "repo": "davep/pinboard.el",
   "unstable": {
    "version": [
-    20191203,
-    1015
+    20200402,
+    919
    ],
    "deps": [
     "cl-lib"
    ],
-   "commit": "9351a2320f1e75896f56032959c7bcbf9d9aa560",
-   "sha256": "080fzpr7is05cb8fj0rzhfc8pmb1rwfmkqnydj36d56da1ndrfmw"
+   "commit": "7c57f20667ead2bb27ab1d0a03307c28ea728bd9",
+   "sha256": "0d9z1hr2082sbg4dlmarksh598xd92w7c09xmdjyn1yqm39gsljw"
   },
   "stable": {
    "version": [
     1,
-    2
+    3
    ],
    "deps": [
     "cl-lib"
    ],
-   "commit": "e14dd43cf74f254a898ae1c698a97d58734fc1a8",
-   "sha256": "0ljxvp9yppnmy1lnnipqqbk09bmay523haa8h0gnfnrl02jwgs91"
+   "commit": "7c57f20667ead2bb27ab1d0a03307c28ea728bd9",
+   "sha256": "0d9z1hr2082sbg4dlmarksh598xd92w7c09xmdjyn1yqm39gsljw"
   }
  },
  {
@@ -75372,11 +77471,11 @@
   "repo": "juergenhoetzel/pkgbuild-mode",
   "unstable": {
    "version": [
-    20181216,
-    1331
+    20200425,
+    616
    ],
-   "commit": "e30e37730b5f30bc0dd5b9328fbf4cb3e6f46fdd",
-   "sha256": "1ijx067hlbr4yz9b9h58pwlqd4rgjgm27f5s1f9f3rwb249s36s1"
+   "commit": "bc22301198b3f581d89352510e847454fb1cb9ff",
+   "sha256": "11il65myybgfj30psicfgqpjwwpa6hwapf55d497x8kbixx2kpg1"
   },
   "stable": {
    "version": [
@@ -75618,6 +77717,25 @@
   }
  },
  {
+  "ename": "playonline",
+  "commit": "27d8ea9dac3637eed39a68308194b30c1672a8ca",
+  "sha256": "10shq955cz664r0j0yjfrnnbvzjpcyq638lm6hwkiia5xbvsdz88",
+  "fetcher": "github",
+  "repo": "twlz0ne/playonline.el",
+  "unstable": {
+   "version": [
+    20200317,
+    642
+   ],
+   "deps": [
+    "dash",
+    "request"
+   ],
+   "commit": "c75da1fdc1dfbd5d9aa274dc4e90ff631ea08e70",
+   "sha256": "0vkgzqdcxp4mlkz9z8p4307lbvjz51wpqhzpmyw4gwl079xc6gkq"
+  }
+ },
+ {
   "ename": "plenv",
   "commit": "a0819979b9567ac5fab9ed6821eba8fe7ee6a299",
   "sha256": "0dw9fy5wd9wm76ag6yyw3f9jnlj7rcdcxgdjm30h514qfi9hxbw4",
@@ -75663,11 +77781,11 @@
   "repo": "flexibeast/plisp-mode",
   "unstable": {
    "version": [
-    20190914,
-    513
+    20200403,
+    613
    ],
-   "commit": "02738af25707e39d8a608b09a24173bb05f5be9f",
-   "sha256": "133wm5fd91z9k3zpflb455nglpgy1dqyz3mz2s694xyppw4rvkia"
+   "commit": "03dcd523295a0dec76356d23043428d850b03b70",
+   "sha256": "0g9bwd137z543pbdq4j74j0ql8j2657yxh4kb809jps9kxq8dc0k"
   }
  },
  {
@@ -75990,15 +78108,15 @@
   "repo": "galaunay/poetry.el",
   "unstable": {
    "version": [
-    20200112,
-    2309
+    20200326,
+    1328
    ],
    "deps": [
     "pyvenv",
     "transient"
    ],
-   "commit": "01da45f478c8ace3dea5088746873ac2d7c23dbb",
-   "sha256": "08x1q54pnb3hh4a2wbmghffl5cnq99sf280qdbgc65vqhdkj8r1z"
+   "commit": "6dcc9d22cac6642a861770b5518398d8ee4fcc9a",
+   "sha256": "1za8s1k5ni11yqz64rz777lps400jnga151cca2f3l3xx2lcc2c7"
   },
   "stable": {
    "version": [
@@ -76094,20 +78212,21 @@
   "repo": "polymode/poly-R",
   "unstable": {
    "version": [
-    20190605,
-    2103
+    20200316,
+    1315
    ],
    "deps": [
     "poly-markdown",
     "poly-noweb",
     "polymode"
    ],
-   "commit": "0443c89b4d2bc2ed235a0c017109c2dbd342aa02",
-   "sha256": "1v5djxwgqksf84pxfpgbm7qaz3yq5ha7cac0792p62pj1ydzvghi"
+   "commit": "51ffeb6ec45dd44eafa4d22ad2d6150cc4b248fc",
+   "sha256": "0a4wx73jkngw5nbq1fa4jfhba6bsmyn6vnsf887x3xhb5v3ykhsg"
   },
   "stable": {
    "version": [
     0,
+    2,
     2
    ],
    "deps": [
@@ -76115,8 +78234,8 @@
     "poly-noweb",
     "polymode"
    ],
-   "commit": "0443c89b4d2bc2ed235a0c017109c2dbd342aa02",
-   "sha256": "1v5djxwgqksf84pxfpgbm7qaz3yq5ha7cac0792p62pj1ydzvghi"
+   "commit": "51ffeb6ec45dd44eafa4d22ad2d6150cc4b248fc",
+   "sha256": "0a4wx73jkngw5nbq1fa4jfhba6bsmyn6vnsf887x3xhb5v3ykhsg"
   }
  },
  {
@@ -76164,25 +78283,26 @@
   "repo": "polymode/poly-erb",
   "unstable": {
    "version": [
-    20190605,
-    2102
+    20200316,
+    1314
    ],
    "deps": [
     "polymode"
    ],
-   "commit": "304204f415b9e46ee36b64531b7d170540828335",
-   "sha256": "0v13ssv9fjardg5as832hkhlx7yhjcdkm3bdcdj0qy31cmvk6dzb"
+   "commit": "56c744b8d87d8cbe0aba2696d4e8525afc4aa0e8",
+   "sha256": "118x9qrays54n6ksnln51ps5c298zs8ih7k49mn6aq6lpvwy5wjr"
   },
   "stable": {
    "version": [
     0,
+    2,
     2
    ],
    "deps": [
     "polymode"
    ],
-   "commit": "304204f415b9e46ee36b64531b7d170540828335",
-   "sha256": "0v13ssv9fjardg5as832hkhlx7yhjcdkm3bdcdj0qy31cmvk6dzb"
+   "commit": "56c744b8d87d8cbe0aba2696d4e8525afc4aa0e8",
+   "sha256": "118x9qrays54n6ksnln51ps5c298zs8ih7k49mn6aq6lpvwy5wjr"
   }
  },
  {
@@ -76193,27 +78313,28 @@
   "repo": "polymode/poly-markdown",
   "unstable": {
    "version": [
-    20190916,
-    702
+    20200316,
+    1315
    ],
    "deps": [
     "markdown-mode",
     "polymode"
    ],
-   "commit": "a867e5e5689f1e1a5bab5db57c7d39bac2448bcb",
-   "sha256": "1mrmrwmrv6xsafhn7ys3y8nbdqgzhkrb2mm0gir63g03kd6bn793"
+   "commit": "1536cf0c32f71d5cd05c90f7905905e38006e95d",
+   "sha256": "1q4qq0ql08hxkdrd2aal03560k612my7bvnfpfij3g432hn0p7v6"
   },
   "stable": {
    "version": [
     0,
+    2,
     2
    ],
    "deps": [
     "markdown-mode",
     "polymode"
    ],
-   "commit": "b0de1a9f3e4d7191b1b23b65ebf03dd0ac007afc",
-   "sha256": "0b6wlmhrpcw9g8rbw7q7k5fr2lgcp1rpy7d9p9f0gzn52yvcr4dr"
+   "commit": "1536cf0c32f71d5cd05c90f7905905e38006e95d",
+   "sha256": "1q4qq0ql08hxkdrd2aal03560k612my7bvnfpfij3g432hn0p7v6"
   }
  },
  {
@@ -76224,25 +78345,26 @@
   "repo": "polymode/poly-noweb",
   "unstable": {
    "version": [
-    20190605,
-    2102
+    20200316,
+    1315
    ],
    "deps": [
     "polymode"
    ],
-   "commit": "4e65cb22d6bca901021205257f867f868989c665",
-   "sha256": "1pnjg615i5p9h5fppvn36vq2naz4r1mziwqjwwxka6kic5ng81h8"
+   "commit": "3b0cd36ca9a707e8a09337a3468fa85d81fc461c",
+   "sha256": "1jl5h4nf10xd2gdlsxi6h2n3z5zh26ffcixn68xfp5q4zl34zk8p"
   },
   "stable": {
    "version": [
     0,
+    2,
     2
    ],
    "deps": [
     "polymode"
    ],
-   "commit": "4e65cb22d6bca901021205257f867f868989c665",
-   "sha256": "1pnjg615i5p9h5fppvn36vq2naz4r1mziwqjwwxka6kic5ng81h8"
+   "commit": "3b0cd36ca9a707e8a09337a3468fa85d81fc461c",
+   "sha256": "1jl5h4nf10xd2gdlsxi6h2n3z5zh26ffcixn68xfp5q4zl34zk8p"
   }
  },
  {
@@ -76253,25 +78375,26 @@
   "repo": "polymode/poly-org",
   "unstable": {
    "version": [
-    20190605,
-    2103
+    20200316,
+    1315
    ],
    "deps": [
     "polymode"
    ],
-   "commit": "8b0de75b1f9b65c22f7e3fbc205c9408214c8a1f",
-   "sha256": "04x6apjad4kg30456z1j4ipp64yjgkcaim6hqr6bb0rmrianqhck"
+   "commit": "8f4d11489532be98a291258ca27405aa528fc126",
+   "sha256": "1srnwcsn2bh8gqzxixkhffk7gbnk66kd4dgvxbnps5nxqc6v0qhc"
   },
   "stable": {
    "version": [
     0,
+    2,
     2
    ],
    "deps": [
     "polymode"
    ],
-   "commit": "8b0de75b1f9b65c22f7e3fbc205c9408214c8a1f",
-   "sha256": "04x6apjad4kg30456z1j4ipp64yjgkcaim6hqr6bb0rmrianqhck"
+   "commit": "8f4d11489532be98a291258ca27405aa528fc126",
+   "sha256": "1srnwcsn2bh8gqzxixkhffk7gbnk66kd4dgvxbnps5nxqc6v0qhc"
   }
  },
  {
@@ -76282,25 +78405,26 @@
   "repo": "polymode/poly-rst",
   "unstable": {
    "version": [
-    20190605,
-    2103
+    20200316,
+    1315
    ],
    "deps": [
     "polymode"
    ],
-   "commit": "1a7d38e1c1d35cf64e4dad408db486a8e1931e61",
-   "sha256": "1xzbznm43hsvmg2ibqa6a1rymfy85nagjsxadn5mj9r04ivhf2fd"
+   "commit": "8530f56fbdce01bcf4004839ff54e4156282c2b5",
+   "sha256": "088wzagwxpf2j67wb1i6agqfa944sahh2fm8my2m50spbbd9ymhl"
   },
   "stable": {
    "version": [
     0,
+    2,
     2
    ],
    "deps": [
     "polymode"
    ],
-   "commit": "1a7d38e1c1d35cf64e4dad408db486a8e1931e61",
-   "sha256": "1xzbznm43hsvmg2ibqa6a1rymfy85nagjsxadn5mj9r04ivhf2fd"
+   "commit": "8530f56fbdce01bcf4004839ff54e4156282c2b5",
+   "sha256": "088wzagwxpf2j67wb1i6agqfa944sahh2fm8my2m50spbbd9ymhl"
   }
  },
  {
@@ -76341,27 +78465,28 @@
   "repo": "polymode/poly-slim",
   "unstable": {
    "version": [
-    20190605,
-    2103
+    20200316,
+    1316
    ],
    "deps": [
     "polymode",
     "slim-mode"
    ],
-   "commit": "a4fb8166d110b82eb3f1d0b4fc87045c3308bd7d",
-   "sha256": "06kwhmw5r5h4bsaqscr7dl3rfsa6wp642597zcmzdly94h26iwy9"
+   "commit": "9e9b5164c68955974fd5f5d220aec5af9b5ba3ae",
+   "sha256": "1742wlx07khra7xfbd6f8d3i030w87mncnyx6kf6im10khf8qwmb"
   },
   "stable": {
    "version": [
     0,
+    2,
     2
    ],
    "deps": [
     "polymode",
     "slim-mode"
    ],
-   "commit": "a4fb8166d110b82eb3f1d0b4fc87045c3308bd7d",
-   "sha256": "06kwhmw5r5h4bsaqscr7dl3rfsa6wp642597zcmzdly94h26iwy9"
+   "commit": "9e9b5164c68955974fd5f5d220aec5af9b5ba3ae",
+   "sha256": "1742wlx07khra7xfbd6f8d3i030w87mncnyx6kf6im10khf8qwmb"
   }
  },
  {
@@ -76391,19 +78516,20 @@
   "repo": "polymode/polymode",
   "unstable": {
    "version": [
-    20191208,
-    1239
+    20200411,
+    915
    ],
-   "commit": "9eb9dce9c9a1d8c92e837818f576463c5bcf8952",
-   "sha256": "1ygwcq435nb8ndw4flf220psgvz93gxypdqgvgbfd4s2ad9yx1vw"
+   "commit": "2a61fb6d3e805bc0e4ca7b6510510a955c6bfb6a",
+   "sha256": "0cphikjz9hwij1k41radyar6nh7md8v98qwn2j9lzcbyz69hrvaq"
   },
   "stable": {
    "version": [
     0,
+    2,
     2
    ],
-   "commit": "82a0c3d71cc02e32a347033b3f42afeac4e43f66",
-   "sha256": "04v0gnzfsjb50bgly6kvpryx8cyzwjaq2llw4qv9ijw1l6ixmq3b"
+   "commit": "44265e35161d77f6eaa09388ea2256b89bd5dcc8",
+   "sha256": "18ssl2h861dm2jkd3df6wkfr48p8zk337dbvpq5522kia7fq1lbn"
   }
  },
  {
@@ -76473,14 +78599,14 @@
   "repo": "ponylang/pony-snippets",
   "unstable": {
    "version": [
-    20160205,
-    411
+    20200418,
+    354
    ],
    "deps": [
     "yasnippet"
    ],
-   "commit": "b921bd943b528f04d4293625b28fd2d4a013a1bf",
-   "sha256": "183vml7090w1fx99rz9d8qjfbf089wqilyflk0512xz8al3gcd8q"
+   "commit": "115a0d5066f89554bee9cb1045bcda5a18ebd441",
+   "sha256": "1g11w52bf724zwwsvrcylk3ndjci2cnbzing77c91psz6d7zjkvw"
   },
   "stable": {
    "version": [
@@ -76533,29 +78659,28 @@
   "repo": "aki2o/emacs-pophint",
   "unstable": {
    "version": [
-    20170918,
-    248
+    20200420,
+    1429
    ],
    "deps": [
     "log4e",
     "yaxception"
    ],
-   "commit": "909025c5a871ca4b9ec7aed7f1a27c819a94dba1",
-   "sha256": "0qbb36qijkzbzxlmqsvvddm7x2gk9rkafnyjbkxsl76rz1ajy6nz"
+   "commit": "5e13da4578ae7ba00e6f7bae31eb546d713cc19d",
+   "sha256": "01bwfswzzrjxrjaqysaqnav7h3swwyigxw7nj0cgrm3w8cp1y2a8"
   },
   "stable": {
    "version": [
-    0,
-    9,
-    3
+    1,
+    3,
+    0
    ],
    "deps": [
     "log4e",
-    "popup",
     "yaxception"
    ],
-   "commit": "28dc6a76e726f371bcca3160c27ae2017324399c",
-   "sha256": "18i0kivn6prh5pwdr7b4pxfxqsc8l4mks1h6cfs7iwnfn15g5k19"
+   "commit": "5e13da4578ae7ba00e6f7bae31eb546d713cc19d",
+   "sha256": "01bwfswzzrjxrjaqysaqnav7h3swwyigxw7nj0cgrm3w8cp1y2a8"
   }
  },
  {
@@ -76605,10 +78730,10 @@
  },
  {
   "ename": "popup-complete",
-  "commit": "b43b85f90c476a3b88f94927a7db90bdc72cd171",
-  "sha256": "04bpm31zx87j390r2xi1yl4kyqgalmyqc48xarsm67zfww9fw9c1",
+  "commit": "2a2670edb1155f02d1cbe2600db84a82c8f3398b",
+  "sha256": "1mw892nr3dfhsjiqyyf3znd7vji4kxly295bbq74vszza2i0b87i",
   "fetcher": "github",
-  "repo": "syohex/emacs-popup-complete",
+  "repo": "emacsorphanage/popup-complete",
   "unstable": {
    "version": [
     20141109,
@@ -76769,30 +78894,30 @@
   "repo": "jcaw/porthole",
   "unstable": {
    "version": [
-    20190721,
-    1428
+    20200404,
+    1454
    ],
    "deps": [
-    "elnode",
     "f",
-    "json-rpc-server"
+    "json-rpc-server",
+    "web-server"
    ],
-   "commit": "0e73b8e527cfc9ecba2fa4f88382f588fb4a300d",
-   "sha256": "06nf12cvxk2dxqljrga59vp8wkvsif1mm3ahvy1nbjsq6s8zryq4"
+   "commit": "9e68b419acf9245208f8094e10041b7f04511473",
+   "sha256": "0kaf00924jg50l2zdhyf1lxsh44nfp4zbc23wxbir45xdx9rzl3z"
   },
   "stable": {
    "version": [
     0,
-    2,
-    5
+    3,
+    0
    ],
    "deps": [
-    "elnode",
     "f",
-    "json-rpc-server"
+    "json-rpc-server",
+    "web-server"
    ],
-   "commit": "481a3a247586417b7643d393113ff8faf95b327e",
-   "sha256": "1gdywyb1vq7i983d4bdhwdkk0vk0x09rms83xyk4j75qlqb05vp1"
+   "commit": "9e68b419acf9245208f8094e10041b7f04511473",
+   "sha256": "0kaf00924jg50l2zdhyf1lxsh44nfp4zbc23wxbir45xdx9rzl3z"
   }
  },
  {
@@ -76827,20 +78952,20 @@
   "repo": "tumashu/posframe",
   "unstable": {
    "version": [
-    20200226,
-    241
+    20200426,
+    819
    ],
-   "commit": "8a9af547e6fc63e9a1c4741349fabdf625f703c4",
-   "sha256": "03n5sbyh0acrmpwc69d834lrxxfybxgjn0lg7iphwfdv11xkf3g4"
+   "commit": "093b29a53cbeda6d637ccc9ef4dfc47123e79b9e",
+   "sha256": "0wca1w667h930dyi3hm1kqiqapggnwbgqjbxiwpgj7l773s7xdbw"
   },
   "stable": {
    "version": [
     0,
-    6,
+    7,
     0
    ],
-   "commit": "9638b9d9cf8b9727a13c86f70b5d33bf938497a5",
-   "sha256": "12r1as9lqqc6anckq455dqv8dbqahnbdzj437i11053wv33cv5vd"
+   "commit": "83b4d39fdda34355c01aecc22677f7376ae0f013",
+   "sha256": "0cjrl4xgs70hbw1a1mqkdmpcmrxaakw8csrz365c31vj14nii0ax"
   }
  },
  {
@@ -76856,6 +78981,14 @@
    ],
    "commit": "ebaacd7266ae7a66605317f57b9f42e9cfb2ce1e",
    "sha256": "0kdcpd59jd1gasqk5gx4ggbyp492b53dy6n3nkv9j2rj8618yzs6"
+  },
+  "stable": {
+   "version": [
+    0,
+    1
+   ],
+   "commit": "ebaacd7266ae7a66605317f57b9f42e9cfb2ce1e",
+   "sha256": "0kdcpd59jd1gasqk5gx4ggbyp492b53dy6n3nkv9j2rj8618yzs6"
   }
  },
  {
@@ -77037,11 +79170,14 @@
   "repo": "conao3/ppp.el",
   "unstable": {
    "version": [
-    20200224,
-    1320
+    20200418,
+    1551
    ],
-   "commit": "a4eaec44216b189108164b42381abf35d0031200",
-   "sha256": "1gvzgx9nq6gqdgb5m6pdp14w96fd6j7b9bgc0pric0aw04i2bzp6"
+   "deps": [
+    "leaf"
+   ],
+   "commit": "27683aa4a0df67b4539bcaa2e82d865023cf1fae",
+   "sha256": "0azqpmlz6r2amklzrgi0wgmy89fbkz0kkpikgf5gccfmks5pij6y"
   },
   "stable": {
    "version": [
@@ -77099,19 +79235,19 @@
   "repo": "raxod502/prescient.el",
   "unstable": {
    "version": [
-    20191224,
-    220
+    20200412,
+    1607
    ],
-   "commit": "7fd8c3b8028da4733434940c4aac1209281bef58",
-   "sha256": "1igsjdkxax2lavglc03h0dk3d7fpgqvlymnhyxx738sjyfzl09cr"
+   "commit": "0f4a89bdec61395138d968a38d375e63ccfbed63",
+   "sha256": "0nnf4y49pl9lcs90y5z6f02g1xwk1jjrl0qs7gcv6kpn0vn8kn0h"
   },
   "stable": {
    "version": [
     4,
-    0
+    1
    ],
-   "commit": "ad9fbe8a17fe74b27a39bcc034f3da1865663387",
-   "sha256": "008hxy1vasnyz36wwg44gikpi80ng75hj85nrswk60b7z7cznbmr"
+   "commit": "aa3110281a0622fa7b5da115cefb71a319b5b1a0",
+   "sha256": "1rf5cz262hjpck7vpxg15bccdrwrmlhiyxc20liwcjb2ig36nis3"
   }
  },
  {
@@ -77198,7 +79334,7 @@
   "unstable": {
    "version": [
     20190930,
-    2105
+    2106
    ],
    "deps": [
     "dash",
@@ -77206,8 +79342,8 @@
     "hydra",
     "s"
    ],
-   "commit": "fd362d2be7ed80889715ed8a30a61780a18ce6ea",
-   "sha256": "0vnmvpsm46izxlh0l0p89rhy6ifzzfpzk7j3kkf2608s6dy8hgcy"
+   "commit": "20362323f66883c1336ffe70be24f91509addf54",
+   "sha256": "16krmj2lnk7j5ygdjw4hl020qqxg11bnc8sz15yr4fpy1p7hq5cz"
   },
   "stable": {
    "version": [
@@ -77287,25 +79423,26 @@
   "repo": "alphapapa/prism.el",
   "unstable": {
    "version": [
-    20200301,
-    1139
+    20200407,
+    1148
    ],
    "deps": [
     "dash"
    ],
-   "commit": "5782653a7e58fa2ba26feb3c1ea34a81761da7b0",
-   "sha256": "0cdqgnrqmwk4wm8xc3kppm8zvccv2qalckfi4k1w847s91q60zv5"
+   "commit": "b618f2cea2dbf7c13d8b4fec1760c346eb9ab036",
+   "sha256": "1fn6514ii2z1xbjzmp0h1mhxl1yaqqk4n6zgswhxdywni34cb6hs"
   },
   "stable": {
    "version": [
     0,
-    1
+    2,
+    2
    ],
    "deps": [
     "dash"
    ],
-   "commit": "682034ff5f3fd62bd24eee1873a2c68498e8b7d3",
-   "sha256": "1bzqqvyraj5h4flzmhxbjgaw98wgqd21hmjq1jg4j3yxwg8cbrw9"
+   "commit": "b618f2cea2dbf7c13d8b4fec1760c346eb9ab036",
+   "sha256": "1fn6514ii2z1xbjzmp0h1mhxl1yaqqk4n6zgswhxdywni34cb6hs"
   }
  },
  {
@@ -77700,14 +79837,14 @@
   "repo": "bbatsov/projectile",
   "unstable": {
    "version": [
-    20200206,
-    1749
+    20200329,
+    1908
    ],
    "deps": [
     "pkg-info"
    ],
-   "commit": "341150c0e77c63075f53e346dae87a4c60ea3b5b",
-   "sha256": "1kywmyckgf8swjbnzc2vcbpsqhrdnxcqaxwwwxwdkapy640nnslv"
+   "commit": "2aa3a663fc9a9a75c3bf73699e40ecc0c3567268",
+   "sha256": "1cw4bgj9iglcs71zrbx8rjk19dfvnws795qbm52hm7zs95lfprxn"
   },
   "stable": {
    "version": [
@@ -77821,8 +79958,8 @@
   "repo": "asok/projectile-rails",
   "unstable": {
    "version": [
-    20200203,
-    1226
+    20200417,
+    1711
    ],
    "deps": [
     "f",
@@ -77831,8 +79968,8 @@
     "projectile",
     "rake"
    ],
-   "commit": "0398d940a201128946f619de842b0d1f9f0fffbd",
-   "sha256": "0cfrm56bxdwb96xqpdih6hqh61gvc1wal4yp7d7c414j8h0s7d02"
+   "commit": "11980b2bcb99208888856a9b8666ff329b6f0142",
+   "sha256": "0crb08byq1i9wcjmcl645wc03p1jadm4f9nd138rii69nzancwfl"
   },
   "stable": {
    "version": [
@@ -77898,8 +80035,8 @@
     "projectile",
     "sift"
    ],
-   "commit": "33b2c9ff964fe53bb55b37429faaa4e903bead7a",
-   "sha256": "0cb8rcxl0jwpbgz9kk136l2ranficv8lk85fhvly1lpslbjljds9"
+   "commit": "cdddba2d183146c340915003f1b5d09d13712c22",
+   "sha256": "0ln87nhq2vhsb0ywn7rp0b3hzms5z7l6cv6dng08yly12r2957if"
   },
   "stable": {
    "version": [
@@ -78072,11 +80209,11 @@
   "repo": "chuntaro/emacs-promise",
   "unstable": {
    "version": [
-    20200209,
-    616
+    20200425,
+    617
    ],
-   "commit": "c45b4e09d796385823cfb42ab15a4e67feb01b77",
-   "sha256": "1crhny97p6yz3z2lb1m43334vsprdiz3sb79jp7czyxskkwqn86r"
+   "commit": "2a8e71420e8c9d2d4ce951d4342762aeedaae654",
+   "sha256": "1drz8qbcw5qjh5v0vkvflni14g58nmkmyn11ksjd49ck296mfsp7"
   },
   "stable": {
    "version": [
@@ -78152,11 +80289,11 @@
   "repo": "ProofGeneral/PG",
   "unstable": {
    "version": [
-    20200206,
-    1448
+    20200416,
+    1351
    ],
-   "commit": "2a17093f6a7b168fedabc623602edec35aef8d8a",
-   "sha256": "0pm7hv3c88mpmbi3xsmlqqffxvphnh2cslm2rpqbgffk5kp98ach"
+   "commit": "e901c0bb73e0e66c95879bbb3738ac79e91ffeaa",
+   "sha256": "1j6dwcpplh98wf3mncidc8gn96pv58g71igim28gkqx21g8p2i40"
   },
   "stable": {
    "version": [
@@ -78223,11 +80360,11 @@
   "repo": "ksjogo/proportional",
   "unstable": {
    "version": [
-    20200206,
-    1211
+    20200309,
+    1556
    ],
-   "commit": "4c20c876b93b9b5d82931dabb42396d5ff471f50",
-   "sha256": "1sck0kjzlr5rcbclj9whrwz7lxik7is9av7ai720hzrlv0yvqgmq"
+   "commit": "0e4537af7ba2bc9dbb449c38350bce012b382f51",
+   "sha256": "0k4kwmyja5nb6rmbbq71vzxw7nnxr0w8f9vzws14an28niwr4s8p"
   }
  },
  {
@@ -78259,8 +80396,8 @@
     20170526,
     1650
    ],
-   "commit": "4ff0fb841cfb8c6850613094d55bf51448dfd16b",
-   "sha256": "15wlrzz93wfpk7fkpl3n1vqvrlj8swxg9zjflja4dgn7sgy9f5bv"
+   "commit": "dddeed298bf84505f4d123a068f911025b351661",
+   "sha256": "10a70drfyanrjpx157aip402vd56ynm85ryzripd3w0symn9k1c3"
   },
   "stable": {
    "version": [
@@ -78324,8 +80461,8 @@
   "repo": "purescript-emacs/psc-ide-emacs",
   "unstable": {
    "version": [
-    20191217,
-    1144
+    20200317,
+    1013
    ],
    "deps": [
     "company",
@@ -78336,8 +80473,8 @@
     "s",
     "seq"
    ],
-   "commit": "2a9394422da317b54aa1da021aea6cded19004c1",
-   "sha256": "18pfi04grvdbgz8v5yb06y5mv0q6mkwm4rj43h35nw75l2gwaapv"
+   "commit": "7fc2b841be25f5bc5e1eb7d0634436181c38b3fe",
+   "sha256": "0r0fymyai30jimm34z1cmav4wgij8ci6s1d9y7qigygfbbfrdsmj"
   }
  },
  {
@@ -78471,8 +80608,8 @@
   "repo": "fvdbeek/emacs-pubmed",
   "unstable": {
    "version": [
-    20200221,
-    1013
+    20200426,
+    1239
    ],
    "deps": [
     "deferred",
@@ -78480,13 +80617,13 @@
     "s",
     "unidecode"
    ],
-   "commit": "de005c16750dfd925cd528b265fea133bb1cf342",
-   "sha256": "00fbks0f8kcmsazncrpkmi7w0ygd9ph1js6z1dwbdkjzwb161xv7"
+   "commit": "e619042f3c0383c7d4e1762fb46ff680e90906d6",
+   "sha256": "1igvmwxfpa19aws7h066hk9axwgl3swp8lmn218c1hmq2j2jkwgz"
   },
   "stable": {
    "version": [
     0,
-    3,
+    4,
     3
    ],
    "deps": [
@@ -78495,8 +80632,8 @@
     "s",
     "unidecode"
    ],
-   "commit": "de005c16750dfd925cd528b265fea133bb1cf342",
-   "sha256": "00fbks0f8kcmsazncrpkmi7w0ygd9ph1js6z1dwbdkjzwb161xv7"
+   "commit": "e619042f3c0383c7d4e1762fb46ff680e90906d6",
+   "sha256": "1igvmwxfpa19aws7h066hk9axwgl3swp8lmn218c1hmq2j2jkwgz"
   }
  },
  {
@@ -78537,11 +80674,11 @@
   "repo": "flexibeast/pulseaudio-control",
   "unstable": {
    "version": [
-    20190828,
-    1136
+    20200406,
+    752
    ],
-   "commit": "1b844a9b21d549bfe767990b4c611de3bc4e2241",
-   "sha256": "0fz2ynxxgq3j7hvfmqq24gvbfpc08apz6zw9cjav08r5z04n1xr3"
+   "commit": "a931533140547510decdc368f39b2d2b97ca725f",
+   "sha256": "1jvjn9jszjjapi167an49jxcvr88cvgjwykglhp4b8lwhbjfqw76"
   }
  },
  {
@@ -78621,26 +80758,25 @@
   "repo": "voxpupuli/puppet-mode",
   "unstable": {
    "version": [
-    20180813,
-    1947
+    20200419,
+    1236
    ],
    "deps": [
     "pkg-info"
    ],
-   "commit": "7dee1b5a5debac6e56f9107492a413b6c0edb94d",
-   "sha256": "01isn90h50p5c6cgzwhb1jq8yacj0fxw9ppfqrnynckg6ydpvg74"
+   "commit": "0197b405c79a5d0718979f31df760bb3bfca38de",
+   "sha256": "0k1r0r1cvk6z3lj5shgd8ly78sfl8bbkmld6x5cvw481ynyb7rgy"
   },
   "stable": {
    "version": [
     0,
-    3
+    4
    ],
    "deps": [
-    "cl-lib",
     "pkg-info"
    ],
-   "commit": "d943149691abd7b66c85d58aee9657bfcf822c02",
-   "sha256": "0xr3s56p6fbm6wgw17galsl3kqvv8c7l1l1qvbhbay39yzs4ff14"
+   "commit": "73ea35bc7a3ad663c5b73f65cb6377eb0ae11d6f",
+   "sha256": "0c5q8qmbligzjsn05di4wh6ggpd3944j4yqb78vzd441b8ssq70i"
   }
  },
  {
@@ -79083,8 +81219,8 @@
   "repo": "tumashu/pyim",
   "unstable": {
    "version": [
-    20200228,
-    645
+    20200426,
+    505
    ],
    "deps": [
     "async",
@@ -79092,21 +81228,22 @@
     "pyim-basedict",
     "xr"
    ],
-   "commit": "99e04546a5cc05b17866f83a7dd26163e3d7ee59",
-   "sha256": "0hx7qph91jxzip9n0xqfx2zc2f9mwmgkgp8jrj943dindcrbrfy0"
+   "commit": "b934273bb33d6be6aea6e20e68930bc5aaf4a48a",
+   "sha256": "01ykgpzkv06gxiaqj4z1qwf00pwdfm0zxzbsy4xr8ciyhhxbc9pj"
   },
   "stable": {
    "version": [
     1,
-    8
+    9
    ],
    "deps": [
     "async",
     "popup",
-    "pyim-basedict"
+    "pyim-basedict",
+    "xr"
    ],
-   "commit": "8648d467d79b3bf1c3a99623f9329939cacc40da",
-   "sha256": "16rma4cv7xgky0g3x4an27v30jdi6i1sqw43cl99zhkqvp43l3f9"
+   "commit": "8fe9897f57e410a7637692d98c40876cb3bd6c2d",
+   "sha256": "1n9syy39rnma0giz2g1dhdfjj4nn5bls2qzswy48snfl5z5mfm5j"
   }
  },
  {
@@ -79159,14 +81296,14 @@
   "repo": "tumashu/pyim-wbdict",
   "unstable": {
    "version": [
-    20190201,
-    2300
+    20200331,
+    542
    ],
    "deps": [
     "pyim"
    ],
-   "commit": "9799b689643052078f53d69342a82315251490f4",
-   "sha256": "1rqlckmlmwmnqvk8bbcyvwr54p6x9b1fph5f17anzlvwffdjsw5c"
+   "commit": "daa223e2603a5ef3e6c8e33575d8f4e4604a8d3c",
+   "sha256": "0inl29fa2l5grn6z2wszj43bv17yf7n9x8l77zk2xp8q3gkswd86"
   },
   "stable": {
    "version": [
@@ -79238,8 +81375,8 @@
     20170402,
     1255
    ],
-   "commit": "fb38afb55a6f27f17c113589c406b527dfa5c332",
-   "sha256": "04n9qyi1gnr6wfk6k2q8q6f0zz02lg9v9bbwrvr6jj976vaz4mfa"
+   "commit": "be5a61b13e48a129613e0c659bfd28bf9824f53c",
+   "sha256": "124pf14z2yc56bvn0vvg0irzl39q3bbng4zp75qjzgb7d387n4hb"
   }
  },
  {
@@ -79316,14 +81453,14 @@
   "repo": "ionrock/pytest-el",
   "unstable": {
    "version": [
-    20181005,
-    1524
+    20200330,
+    41
    ],
    "deps": [
     "s"
    ],
-   "commit": "1bfa7549001e61ecd59cd6eae7c6656a924d1ba4",
-   "sha256": "1ry0czn0qjjiw75v47jamxbfzh70jxai6lvf3pp5v87wp1xhnznh"
+   "commit": "6934047242db79b1c53e9fe3e0734cc9719ed1c4",
+   "sha256": "1gh5sqmhw7hl67m7nqgd4wwns7a10j0sfmabm97k1cmmbwdj0vca"
   }
  },
  {
@@ -79334,20 +81471,20 @@
   "repo": "poppyschmo/pytest-pdb-break",
   "unstable": {
    "version": [
-    20191218,
-    530
+    20200316,
+    301
    ],
-   "commit": "8b097f5fc8b42a9eddb5b020fd2d531c2b1fcddd",
-   "sha256": "0r1j9jjm013gah0cx10wrmv0blqqk6fwgs3wfgq7hsdrkm4pjil9"
+   "commit": "007427af712df9fa2c54869388d74e97f91b2bd7",
+   "sha256": "14l14605lgq498j37916p4gjwkqjb8z4ky85wlk3pgyx6bp20ckz"
   },
   "stable": {
    "version": [
     0,
     0,
-    7
+    8
    ],
-   "commit": "8b097f5fc8b42a9eddb5b020fd2d531c2b1fcddd",
-   "sha256": "0r1j9jjm013gah0cx10wrmv0blqqk6fwgs3wfgq7hsdrkm4pjil9"
+   "commit": "007427af712df9fa2c54869388d74e97f91b2bd7",
+   "sha256": "14l14605lgq498j37916p4gjwkqjb8z4ky85wlk3pgyx6bp20ckz"
   }
  },
  {
@@ -79358,15 +81495,15 @@
   "repo": "wbolster/emacs-python-black",
   "unstable": {
    "version": [
-    20190817,
-    1754
+    20200324,
+    930
    ],
    "deps": [
     "dash",
     "reformatter"
    ],
-   "commit": "706d317f0874d7c5b5a3d844698bcfb8b1fe253e",
-   "sha256": "0fjnd85nlkck156dj6cahk8chhgkbgl2kwywqzi8bl4yj700m4dk"
+   "commit": "a11ca73f6dfcdc125d27ff184496d66bdbd71326",
+   "sha256": "1jv2fwlf7q8l5npqcpr05xzqmfqlx6xmjn0zphh9rx6dd2dpdma9"
   },
   "stable": {
    "version": [
@@ -79390,11 +81527,11 @@
   "repo": "thisch/python-cell.el",
   "unstable": {
    "version": [
-    20190217,
-    1823
+    20200314,
+    1147
    ],
-   "commit": "665725446b194dbaaff9645dd880524368dd710a",
-   "sha256": "1rjh16jacp98i0l78ij5lfp5f0b42qhfzms2x8zwr9j2aj1csy2h"
+   "commit": "4f0778b05bfb936861449bcb998ed620cd9b31ad",
+   "sha256": "0fjqy8wkxm8m94xfvvj12fpx8ybaln8x4ss9b0iaz9y9jvfwzg21"
   }
  },
  {
@@ -79423,8 +81560,8 @@
     20190716,
     921
    ],
-   "commit": "0d2f783f5a868ded8a37aa5881f8952aa36b053f",
-   "sha256": "1cqcxdg4bv8ybw5ds5av4id39fyk711bfadc779ilj5dn0mcd4h7"
+   "commit": "ec253711f2bdcb3848046bb68f6405a7bf9eb0fb",
+   "sha256": "0m27h2ycjz212r012wh4wsahidclmb74gk9g3v6ym9a2120bk0dh"
   }
  },
  {
@@ -79480,11 +81617,11 @@
   "repo": "python-mode-devs/python-mode",
   "unstable": {
    "version": [
-    20200224,
-    1148
+    20200417,
+    648
    ],
-   "commit": "5bf2c0dafb086684124c3997a618d40ac8db0fb0",
-   "sha256": "1hz9j8k4bybvi3kgq51rqi0rwy3d7c5wqvx2kkljh6734m9x8xp2"
+   "commit": "9c336295c830f684dbf043fbbde432c54a2b4678",
+   "sha256": "0h02d02wv5hkz3lnjr9zxr8dwd4b1v2r6wf808g0x6xqnm01wspm"
   },
   "stable": {
    "version": [
@@ -79604,15 +81741,15 @@
   "repo": "pythonic-emacs/pythonic",
   "unstable": {
    "version": [
-    20191021,
-    811
+    20200304,
+    1901
    ],
    "deps": [
     "f",
     "s"
    ],
-   "commit": "ba9af8ce302579a2b2097b867a35a9fc0bc4bceb",
-   "sha256": "1q43ngd0nj5j9aca71qi0ss137kp46klr6xdlm8ghy55ppym2g5i"
+   "commit": "f577f155fb0c6e57b3ff82447ac25dcb3ca0080f",
+   "sha256": "10faqkfbr7n1zlbrs9c9slm2f7wr2liav8r367s00bw3vb2vm8nb"
   },
   "stable": {
    "version": [
@@ -79804,11 +81941,11 @@
   "repo": "lbolla/emacs-quasi-monochrome",
   "unstable": {
    "version": [
-    20181213,
-    827
+    20200415,
+    705
    ],
-   "commit": "68060dbbc0bbfe4924387392874186c5a29bb434",
-   "sha256": "0zp2xr0bjfqrpb0bqczzick1vvbjmipjavrdi70kw6a9caynvq22"
+   "commit": "b38d71860fdea945e10e8a766ac9dfa1410ade67",
+   "sha256": "0jcwfmamvpd22r5sbicbf9442b22lvldfrqldysm4l9yyxs11jy3"
   },
   "stable": {
    "version": [
@@ -79827,11 +81964,11 @@
   "repo": "quelpa/quelpa",
   "unstable": {
    "version": [
-    20200129,
-    743
+    20200329,
+    719
    ],
-   "commit": "e7283c5e79197288ff4b875315816d49df6404e5",
-   "sha256": "0g1r03iaw0i803wlh3adicxb7p8lkl1hv1x7afp5fv7chmp0fp4i"
+   "commit": "a3c4490a3bb08ee7819b330a93a284b2fd4cd70c",
+   "sha256": "1rm27y9zni9nscrvsmvi653nwkrlr4gd4cy5pyrynh3q32yhkqik"
   }
  },
  {
@@ -79842,15 +81979,15 @@
   "repo": "quelpa/quelpa-use-package",
   "unstable": {
    "version": [
-    20190210,
-    1838
+    20200307,
+    805
    ],
    "deps": [
     "quelpa",
     "use-package"
    ],
-   "commit": "207c285966382a1f33681f6ac2d7778d4b21cb21",
-   "sha256": "01hzxfy8l1aqlfyj01p0b6pdzlm2vbc5r00skamx6id3s6qg1d9i"
+   "commit": "00ce667293c7cd5dc79d4b6077785fcc57455775",
+   "sha256": "1xxvfd0ijcz01nsd143xgzsp815x3qpsrk6dmw6j1w3gbr2iqh9z"
   }
  },
  {
@@ -79934,17 +82071,17 @@
  },
  {
   "ename": "quickrun",
-  "commit": "81f0f525680fea98e804f39dbde1dada887e8821",
-  "sha256": "0f989d6niw6ghf9mq454kqyp0gy7gj34vx5l6krwc52agckyfacy",
+  "commit": "2a2670edb1155f02d1cbe2600db84a82c8f3398b",
+  "sha256": "02wxja6l1xq7gini17ana8qy4kvpfzri0gn2dypjnj2nfh1vvk9i",
   "fetcher": "github",
-  "repo": "syohex/emacs-quickrun",
+  "repo": "emacsorphanage/quickrun",
   "unstable": {
    "version": [
-    20170223,
-    115
+    20200315,
+    1029
    ],
-   "commit": "55bbe5d54b80206ea5a60bf2f58eb6368b2c8201",
-   "sha256": "1skbd5q99d9rwfi954r9p7b7nhwcfijq30z0fpdhbi1iiabf7vqz"
+   "commit": "50e07e769848b1e1780054fab2e221adc474777b",
+   "sha256": "15jj9w0z3yfxaikxi8qaxhr8ipi1jc85zckbri2gdbbdy928ypiq"
   },
   "stable": {
    "version": [
@@ -80102,14 +82239,15 @@
   "repo": "greghendershott/racket-mode",
   "unstable": {
    "version": [
-    20200218,
-    1623
+    20200420,
+    1412
    ],
    "deps": [
-    "faceup"
+    "faceup",
+    "pos-tip"
    ],
-   "commit": "7a1414f83981aa174feba28f3d83e95574c7f075",
-   "sha256": "1bszd21fwaqfqkksqpqiq5058hm7wr500qj75zx1xa2j6r67w7sa"
+   "commit": "2827e95c5a2605cc25a549b260763922ecd68983",
+   "sha256": "0f6k9nlg8kz739pla0hkyp010cgdw9jd0qcii1d6dd1w3a84xk3v"
   }
  },
  {
@@ -80273,6 +82411,24 @@
   }
  },
  {
+  "ename": "raku-mode",
+  "commit": "e9831cc66d9a9e6b6441e6a75d54ce57146571fd",
+  "sha256": "08c9mgvmcnhn2q1ldqsaabj623b9kxd7blgfjabbwrl7bqkqpwzp",
+  "fetcher": "github",
+  "repo": "Raku/raku-mode",
+  "unstable": {
+   "version": [
+    20200426,
+    1156
+   ],
+   "deps": [
+    "pkg-info"
+   ],
+   "commit": "e4d8b0230a503f315087443e24708a78ad8665d9",
+   "sha256": "1864kwd5ixghsr219jlqmgg5gpv802q8xfsk8i8yi5dcy1jn1ckr"
+  }
+ },
+ {
   "ename": "rally-mode",
   "commit": "0914825c6d5ad26d2a8035fc33ad98df42df3c53",
   "sha256": "1vzsh5855bzln3p3235yccl2azpndpc4rh95zrx6p1k62h2kv0y1",
@@ -80709,11 +82865,11 @@
   "repo": "ChillarAnand/real-auto-save",
   "unstable": {
    "version": [
-    20190224,
-    1446
+    20200418,
+    405
    ],
-   "commit": "824ad04121493723b08838c8b96559947dca7ed9",
-   "sha256": "1szpjv04rp9x9ph44a5s56a2y96z5x474bccsjnmn6yhingh5qik"
+   "commit": "d55c63106f6000c065f9c256fc4491ea07b2745e",
+   "sha256": "0b4drlzc384rp43m5454g86d866hx1lj4qdi3mlaz835nl8m86ki"
   },
   "stable": {
    "version": [
@@ -80732,16 +82888,16 @@
   "repo": "realgud/realgud",
   "unstable": {
    "version": [
-    20191123,
-    1341
+    20200418,
+    1721
    ],
    "deps": [
     "load-relative",
     "loc-changes",
     "test-simple"
    ],
-   "commit": "2cca776d28c4d6ebef033758ef01f2af2e9b3b96",
-   "sha256": "0jinap8v2491za6bxsdq0i68jifbnrwzrn8rcl3v861zdkax0sa7"
+   "commit": "e03446f54c7ee0b4ed3ec7300597046cf1de2bb8",
+   "sha256": "160pv9jx66ygl3z1g8yrw7f786403lbb182nz972yl4nyjchbdw7"
   },
   "stable": {
    "version": [
@@ -80989,11 +83145,11 @@
   "repo": "xendk/reaper",
   "unstable": {
    "version": [
-    20200120,
-    2006
+    20200420,
+    1703
    ],
-   "commit": "6602e74d6190d2e8dd61358bebb513c3ae8b89fb",
-   "sha256": "1pywz6xm3wjkbcj5zr7w5xh5wfggvivnw94mmsm6lybnv2zgjg1d"
+   "commit": "c594d2fb9a027f360e98539a1debf5db639846b7",
+   "sha256": "0md3aqzy8rgvpafh6f8f2dwwrc43q317bk7p1whghfvji52aindv"
   },
   "stable": {
    "version": [
@@ -81016,8 +83172,8 @@
     20190710,
     1037
    ],
-   "commit": "5e6205cfede8c10c6821dfd9f9757a9d8035ec04",
-   "sha256": "0w25z5v551w7fcjwk73dwxhp4lydjrn4rc99swd1ffxyzp5cap56"
+   "commit": "7cf6fbf4e8e86ebb76d118b2703e20b968e030d4",
+   "sha256": "0b8p7lh0ifrw9rqvv15q3ib206d1wfv3xafpqwc70zzwaxswvk06"
   },
   "stable": {
    "version": [
@@ -81117,7 +83273,7 @@
     20180205,
     556
    ],
-   "commit": "6cb762efbd0aa323f96c687b6bebc9bf00a3ceb3",
+   "commit": "84bbac534cb114d8d11b86790435b65d36e99e68",
    "sha256": "0lnnh28qax4qk9n9sng7sgb0w0mnjc8abnch3bd0ba9g5x28z8bx"
   }
  },
@@ -81433,19 +83589,19 @@
   "repo": "purcell/reformatter.el",
   "unstable": {
    "version": [
-    20191103,
-    357
+    20200426,
+    818
    ],
-   "commit": "6c5e7f64c5ac1178dff5ca28d9809c08398fb3e6",
-   "sha256": "01qsd8fdwmxn2513jhhdg5jwh7wy0nchwnnz0k3srhjlk41qady1"
+   "commit": "dc6278a6b1e3565604346ac41a6ffc3cbab04031",
+   "sha256": "147qrqs3ndc4xfbb9wiymjsskccp54qpj8bn3i19n9zwm4kmgdzr"
   },
   "stable": {
    "version": [
     0,
-    4
+    5
    ],
-   "commit": "b2963f51009948d5e4885237a148695008d4ccbc",
-   "sha256": "0hhy6x1bkwlhdlarsgm06g3am4yh02yqv8qs34szpzgy53x84qah"
+   "commit": "e8f70b20caf6672353a2b0ee3161d4791c412696",
+   "sha256": "19mji7frfvj925nx2m2cdvsx0lf69dzdl5wbdppyra9717rsspbq"
   }
  },
  {
@@ -81571,6 +83727,48 @@
   }
  },
  {
+  "ename": "register-quicknav",
+  "commit": "fed1473b565f42f7849c7676d0c9739a39562c95",
+  "sha256": "1487mkyz2h5929580racxr4nbc343klns9bcm7m5jn4hsx5aiq6m",
+  "fetcher": "git",
+  "url": "https://schlomp.space/tastytea/register-quicknav.git",
+  "unstable": {
+   "version": [
+    20200325,
+    1612
+   ],
+   "commit": "06afa1efc490a6cbc1d814fc6f1e7a80a601ecc7",
+   "sha256": "055bffsa81chjpv39p2fn10dwikpzb034k19k0mc1026d8a423kg"
+  },
+  "stable": {
+   "version": [
+    0,
+    4,
+    3
+   ],
+   "commit": "e30883a7085ad1f4e1113dc84f5f2222ac4bcd37",
+   "sha256": "18mskl1w5n2cksjds27d1gcrwb065vp9n6hnw9402j3n6z0w8srv"
+  }
+ },
+ {
+  "ename": "rego-mode",
+  "commit": "fbc0b93675f6baab6ab023b596e65658c9e2a534",
+  "sha256": "0qdmn6kh4bh514qh0ii881c03p3hcdp1qlmdwpp5nlzxlkxbgp07",
+  "fetcher": "github",
+  "repo": "psibi/rego-mode",
+  "unstable": {
+   "version": [
+    20200413,
+    450
+   ],
+   "deps": [
+    "reformatter"
+   ],
+   "commit": "41c99057d0406c7fb3895a03da777af3961a648d",
+   "sha256": "1dw6f60ysyvxgm5gpir37ay8z9csykxj0r7v9h6z38cswicg27sj"
+  }
+ },
+ {
   "ename": "related",
   "commit": "555932a7b9cf11b50a61c2a9dd2636fd6844fac8",
   "sha256": "08cfr5qbm1h5j4v3vf3kjjwb9nxsrk74lx9gi1icdhqw631h3yxf",
@@ -81679,16 +83877,16 @@
   "repo": "mtekman/remind-bindings.el",
   "unstable": {
    "version": [
-    20200224,
-    1037
+    20200301,
+    2213
    ],
    "deps": [
     "map",
     "omni-quotes",
     "popwin"
    ],
-   "commit": "be4c34a52711d9f942994ec3fc0ee27e4aaa7c3f",
-   "sha256": "03gz7ca4486j58mrjr16akwwy9d9190fl3cv82hx849h48rabavf"
+   "commit": "730b6d7b30e397f8f11a6d3d5c269df21a33c450",
+   "sha256": "16fk0xnp5awsq45i0wpdkzy6hwccayvwwiag9kar8kmb6nqs2y17"
   }
  },
  {
@@ -82205,19 +84403,19 @@
   "repo": "a13/reverse-im.el",
   "unstable": {
    "version": [
-    20200219,
-    1137
+    20200324,
+    1113
    ],
-   "commit": "45a55810ce3e07d4e42d9fb666100d7242004b4e",
-   "sha256": "1669fksymr24fz2lhxv419fm7csm94bkpycz20l2qy55ppn03his"
+   "commit": "a2a75a929fc022e752759ed2a38accc639128dbe",
+   "sha256": "0s6jmxq9sqi6pm2kdrdik30nyz136kk2gqzdibb0wcvpfylhwawn"
   }
  },
  {
   "ename": "reverse-theme",
-  "commit": "81f0f525680fea98e804f39dbde1dada887e8821",
-  "sha256": "163kk5qnz9bk3l2fam79n264s764jfxbwqbiwgid8kw9cmk0v776",
+  "commit": "2a2670edb1155f02d1cbe2600db84a82c8f3398b",
+  "sha256": "133wl2k0niy9ih0bjn7qx51fykqjj392ibkp1bvmy5dbl09x4gic",
   "fetcher": "github",
-  "repo": "syohex/emacs-reverse-theme",
+  "repo": "emacsorphanage/reverse-theme",
   "unstable": {
    "version": [
     20141205,
@@ -82303,17 +84501,16 @@
   "repo": "dajva/rg.el",
   "unstable": {
    "version": [
-    20191230,
-    943
+    20200307,
+    1623
    ],
    "deps": [
-    "cl-lib",
     "s",
     "transient",
     "wgrep"
    ],
-   "commit": "ed638db439e5010d1968a6ce904b7c21383506e8",
-   "sha256": "1qm26d6ra5d30rk62rik56gsndi35xi01pmjdkm2afbs1n1707ix"
+   "commit": "e19c06f4c556bda6457da3d50c14b12cb97679d9",
+   "sha256": "0k9rz6as3867b23979lrmb0sn26rbl08n6n71pxqxr8s85nljlml"
   },
   "stable": {
    "version": [
@@ -82456,6 +84653,27 @@
   }
  },
  {
+  "ename": "rime",
+  "commit": "0144879cf0dfe4f0447c5da7cd061f7aac91d4fe",
+  "sha256": "1m9jp307czp4mx4xpfnj9bhq7w5xg656dx9l9ih603cbz24salq4",
+  "fetcher": "github",
+  "repo": "DogLooksGood/emacs-rime",
+  "unstable": {
+   "version": [
+    20200415,
+    1454
+   ],
+   "deps": [
+    "cl-lib",
+    "dash",
+    "popup",
+    "posframe"
+   ],
+   "commit": "9afeb4aa45771ef20c83d1208744d954273cbaf3",
+   "sha256": "00lnsxi2j1kvd28vq10ixj16qfkn22bw2m02zrs022d9jwcsza5r"
+  }
+ },
+ {
   "ename": "rimero-theme",
   "commit": "c6d07b0c021001195e6e0951c890566a5a784ce1",
   "sha256": "0jbknrp9hc8s956cy2gqffxnx0fgnhmjqp2i4vyp0ywh45wrls5r",
@@ -82648,8 +84866,8 @@
    "deps": [
     "inf-ruby"
    ],
-   "commit": "8190cb7c7beb8385dd3abf6ea357f33d8981ae8a",
-   "sha256": "1lqckmfxm2csh0as22bwf4rvbn5rwqry18xx9m5nfhfl57360q75"
+   "commit": "68503b32bb3a005787ecb7a7fdeb3bb4a2317e2b",
+   "sha256": "1v4nbfr3rhdm1733gb88cv0f018iy53cw5hdcwpshrmjj36a2lpn"
   },
   "stable": {
    "version": [
@@ -82885,8 +85103,8 @@
     20200221,
     36
    ],
-   "commit": "3d025d9c97359442f7190ec42a63ff7e5fd85a9a",
-   "sha256": "1c8llhbhvrv5kwmci7rlsjqv3gr4gxi45g6c21fqrblyhas95s3n"
+   "commit": "a42298e80dffae9a6b2e9816506174542f3cbbb7",
+   "sha256": "1674752bbyb7890na5p846dxcvh83zn0a6z19wras1x5c59s24i3"
   },
   "stable": {
    "version": [
@@ -82905,14 +85123,14 @@
   "repo": "Andersbakken/rtags",
   "unstable": {
    "version": [
-    20200130,
-    1624
+    20200310,
+    1909
    ],
    "deps": [
     "rtags"
    ],
-   "commit": "3d025d9c97359442f7190ec42a63ff7e5fd85a9a",
-   "sha256": "1c8llhbhvrv5kwmci7rlsjqv3gr4gxi45g6c21fqrblyhas95s3n"
+   "commit": "a42298e80dffae9a6b2e9816506174542f3cbbb7",
+   "sha256": "1674752bbyb7890na5p846dxcvh83zn0a6z19wras1x5c59s24i3"
   },
   "stable": {
    "version": [
@@ -83059,26 +85277,26 @@
  },
  {
   "ename": "ruby-electric",
-  "commit": "5fd5fa797a813e02a6433ecbe2bca1270a383753",
-  "sha256": "02xskivi917l8xyhrij084dmzwjq3knjcn65l2iwz34s767fbwl2",
+  "commit": "ccae5ba7c1088837f2dd6cb0992f49ea2dc5bcdf",
+  "sha256": "1fj5vb4n7jiq93z0yakr39vyfd0f5yhf4p4aw4bdm9cx5dmpr8g6",
   "fetcher": "github",
-  "repo": "knu/ruby-electric.el",
+  "repo": "ruby/elisp-ruby-electric",
   "unstable": {
    "version": [
-    20191217,
-    1214
+    20200328,
+    1528
    ],
-   "commit": "ea9571ce3af546fdb1234274c8b1a147109b4869",
-   "sha256": "16g1764igf9y717sg2rg4b2ysxxlnyjyzk2s6w9jx9dnr2lqih39"
+   "commit": "f2323cd9b5df3b34aa9810ba8109502824925d23",
+   "sha256": "1p0l0fsn0jcgb4raimyc4d1wpfksrfhn0rkwdazadvm6s8baydf7"
   },
   "stable": {
    "version": [
     2,
     3,
-    2
+    3
    ],
-   "commit": "0e6c1f1022ac84db6a03d60e7a0f9f1fd42ecc99",
-   "sha256": "1l3zz62d04m3kwj3swffsbkpvkayp9r651cpl07palghx9b34h3m"
+   "commit": "f2323cd9b5df3b34aa9810ba8109502824925d23",
+   "sha256": "1p0l0fsn0jcgb4raimyc4d1wpfksrfhn0rkwdazadvm6s8baydf7"
   }
  },
  {
@@ -83146,11 +85364,11 @@
   "repo": "purcell/ruby-hash-syntax",
   "unstable": {
    "version": [
-    20190109,
-    2227
+    20200304,
+    2214
    ],
-   "commit": "577ab383c142e3a0697ce73480158a8b489038da",
-   "sha256": "06hm4pl3mzlyx4d3v94rm2w33q9wnwpdl7qas3fnks691d9apg7x"
+   "commit": "d64036278dcfb4fa0603e6697142e02c2876f634",
+   "sha256": "02s494r9iy47jd74cd0z1dz1igh8rw2jbyybahy9pivmcn7fnqkr"
   },
   "stable": {
    "version": [
@@ -83383,11 +85601,11 @@
   "repo": "rust-lang/rust-mode",
   "unstable": {
    "version": [
-    20200229,
-    1547
+    20200414,
+    2105
    ],
-   "commit": "86650056717be0661feae32e294ff991c087ed4d",
-   "sha256": "0m7cribk9xfmgil103491mwi0z9ykg19pn3qifdg4i80bs0h8xhj"
+   "commit": "a364b24af412659cc1074f533752356d1858b893",
+   "sha256": "1yj3b5li2flgxc3frmb7zjc92nhdq526jj6105zrsnj7ndxqycp4"
   },
   "stable": {
    "version": [
@@ -83430,8 +85648,8 @@
   "repo": "brotzeit/rustic",
   "unstable": {
    "version": [
-    20200226,
-    1915
+    20200304,
+    2028
    ],
    "deps": [
     "dash",
@@ -83445,8 +85663,8 @@
     "spinner",
     "xterm-color"
    ],
-   "commit": "99396915c78556f4ad0da8caf9cb2a269582c39f",
-   "sha256": "0azr2kv77amr60ms64c2366sn9ak7959krz4whjl4wsdsd5rhqy4"
+   "commit": "61032eacf0b3b7579f627ce78bca2eddbfa31a10",
+   "sha256": "0mxrmgdhgjlixff1fm7fyn87yn3cakhyjk8vdhdr37k0qh339k0c"
   }
  },
  {
@@ -83499,8 +85717,8 @@
     20180406,
     808
    ],
-   "commit": "03410e6a7a2b11e47e1fea3b7d9899c7df26435e",
-   "sha256": "074ny8y68fhnknkjxvrijrk534xzdiwip8wkifxfbwv3va315x83"
+   "commit": "43ba8b563bee3426cead0e6d4ddc09398e1a349d",
+   "sha256": "0bqdlcg5pah9a50dww8n5n0lzc8bzmpc230fdkinw8zrxph13p12"
   },
   "stable": {
    "version": [
@@ -83890,8 +86108,8 @@
     20190413,
     1246
    ],
-   "commit": "5696d0703583d3d53b34683bbc59d3b1cb284a78",
-   "sha256": "1kkcqdnphvmiwvcvr2balqpszcf87bjy9la682w9b846g53pgmin"
+   "commit": "f13d03efece7c1f31e9c3fe2e99b71a33cc43e1c",
+   "sha256": "04b63yww5yz4jn18mzpv53yzs6g6kmxs61m2ycnf59cb6ax2ajbd"
   }
  },
  {
@@ -84085,14 +86303,14 @@
   "repo": "technomancy/scpaste",
   "unstable": {
    "version": [
-    20190228,
-    2151
+    20200415,
+    40
    ],
    "deps": [
     "htmlize"
    ],
-   "commit": "568faaa70fa0413e2d165ad232cd4c6ec2815197",
-   "sha256": "160m4w0i9cj4zxmmsknmnvycscj9y8da39y1362kv7dpmwnxsxcp"
+   "commit": "ca95a8dd088e848bd1cab6be207c6a98343ee176",
+   "sha256": "01v199xkadcbdr627skhisixdqj0hbbyv912xgyypm1rxdjfhhx9"
   },
   "stable": {
    "version": [
@@ -84253,11 +86471,11 @@
   "repo": "ideasman42/emacs-scroll-on-drag",
   "unstable": {
    "version": [
-    20200106,
-    442
+    20200411,
+    1050
    ],
-   "commit": "2fbd643ea9632d0e15d32e70b6f3c641476e3071",
-   "sha256": "1gjwsyvjwj4xsp83nws4bcmzsyxv4zp95a9fx0md86cc9gxw3h6n"
+   "commit": "42d96a60a207cd73e7a58111358deb05f084c59e",
+   "sha256": "00l2n5kx5p18qdlfh2y355w34yp2fy401canrglz6dq1f7615lnz"
   }
  },
  {
@@ -84601,6 +86819,60 @@
   }
  },
  {
+  "ename": "selectrum",
+  "commit": "4273a6e55cf797d1fab1825618aab7e9b6c01886",
+  "sha256": "012jmgr7w6x0gy8ygpzyyk23adyzmr7cknz2w51zjapcilkf6ghv",
+  "fetcher": "github",
+  "repo": "raxod502/selectrum",
+  "unstable": {
+   "version": [
+    20200425,
+    1449
+   ],
+   "commit": "dc1c8e8704f5eb73c540f2b4ca3eed213d2c3246",
+   "sha256": "0acifs68m6y5zfwadvvvlg7s4zhgazmrg6al7piy1nycq7dmng6b"
+  },
+  "stable": {
+   "version": [
+    1,
+    0
+   ],
+   "commit": "5995a4ba07a7b1b5f661ff050d93ad702f9014a4",
+   "sha256": "105zl102dwbzvk50xh6b824nq6p24kxhky18ghdnk5yi5sv620lm"
+  }
+ },
+ {
+  "ename": "selectrum-prescient",
+  "commit": "5724ebca5ab5a1c3087cc13ae0693548666ed62b",
+  "sha256": "1zr83pq39i56v5bx78cp5cg2lrwz01975ng4h1ziv6nrh9p7vvr0",
+  "fetcher": "github",
+  "repo": "raxod502/prescient.el",
+  "unstable": {
+   "version": [
+    20200404,
+    1550
+   ],
+   "deps": [
+    "prescient",
+    "selectrum"
+   ],
+   "commit": "0f4a89bdec61395138d968a38d375e63ccfbed63",
+   "sha256": "0nnf4y49pl9lcs90y5z6f02g1xwk1jjrl0qs7gcv6kpn0vn8kn0h"
+  },
+  "stable": {
+   "version": [
+    4,
+    1
+   ],
+   "deps": [
+    "prescient",
+    "selectrum"
+   ],
+   "commit": "aa3110281a0622fa7b5da115cefb71a319b5b1a0",
+   "sha256": "1rf5cz262hjpck7vpxg15bccdrwrmlhiyxc20liwcjb2ig36nis3"
+  }
+ },
+ {
   "ename": "semaphore",
   "commit": "1cffd8c7720e5a262b8635a5fd1ca36766f4c824",
   "sha256": "0g49ld0j962k66a96z6r6hw1p13r5bxs0wddpr9iciqgjra1jcl7",
@@ -84642,14 +86914,14 @@
   "repo": "wanderlust/semi",
   "unstable": {
    "version": [
-    20190708,
-    1302
+    20200413,
+    839
    ],
    "deps": [
     "flim"
    ],
-   "commit": "16228dc2d147d6ba8762c10fb25c54a3757ee9b0",
-   "sha256": "1hccmz9g1rl3qz77214ybnai143zay48kai214gk43dw05bcfavc"
+   "commit": "1d6e21e9ee42c2c5bf1a4422d2fe7af20aa7ff1e",
+   "sha256": "0pkqh95i6pj7iwghapa8hld78h1q5n50f1lah2l1k2hz4lm6r8zz"
   }
  },
  {
@@ -84660,16 +86932,16 @@
   "repo": "conao3/seml-mode.el",
   "unstable": {
    "version": [
-    20200203,
-    1858
+    20200419,
+    1022
    ],
    "deps": [
     "htmlize",
-    "simple-httpd",
+    "impatient-mode",
     "web-mode"
    ],
-   "commit": "6e09efaa613f411b9cc8cd30f46ddab44154a1e2",
-   "sha256": "0f6x2w94y1clqzl65f3qgw9hm9d97p91jaak4k8k92qnd9s3471r"
+   "commit": "4ca9d275948898602640a46573cb95d7eef913e5",
+   "sha256": "1wl5qsph19i0ll2ppn9va4563m4bfz1zpv99d7xd7w65x6cp29ci"
   },
   "stable": {
    "version": [
@@ -84753,6 +87025,25 @@
   }
  },
  {
+  "ename": "separedit",
+  "commit": "297ba98f4bc011948c34aad30ae28b7adc611938",
+  "sha256": "00p4crbzr5fkcj8lhpfd9w44ynpmhd9fay9yrwgz0yh87lll6nqx",
+  "fetcher": "github",
+  "repo": "twlz0ne/separedit.el",
+  "unstable": {
+   "version": [
+    20200407,
+    728
+   ],
+   "deps": [
+    "dash",
+    "edit-indirect"
+   ],
+   "commit": "e9a7b4402859d73f052330106d29ad14c3d9b6f3",
+   "sha256": "0d9w8n497j6q879rd9mqrmzvk3ssm95ayqbyfb5x0r3pnywdjp1b"
+  }
+ },
+ {
   "ename": "sequences",
   "commit": "4cf716df68fb2d6a41fe75fac0b41e356bddcf30",
   "sha256": "12wnkywkmxfk2sx40h90k53d5qmc8hiky5vhlyf0ws3n39zvhplh",
@@ -84955,6 +87246,21 @@
   }
  },
  {
+  "ename": "sexp-diff",
+  "commit": "d29e4d21bf808a74bef27ee00d500ec1f816be74",
+  "sha256": "0cr35b7k6a5japm14bjgnw93g1kqggzwlqwwr0mhg73klnn6qyn8",
+  "fetcher": "github",
+  "repo": "xuchunyang/sexp-diff.el",
+  "unstable": {
+   "version": [
+    20200314,
+    2018
+   ],
+   "commit": "7e8c988bea2af209e17b70fa51316ade55529acb",
+   "sha256": "1daz6jss2346a2p30fhc66m230sj7vyxm7jw6zqz5n8h9lqxpjyk"
+  }
+ },
+ {
   "ename": "sexp-move",
   "commit": "855ea20024b606314f8590129259747cac0bcc97",
   "sha256": "0sdm3kr4594fy9hk8yljj2iwa40bgs8nqpwwl2a60r060spz54z9",
@@ -85009,11 +87315,11 @@
   "repo": "sfztools/emacs-sfz-mode",
   "unstable": {
    "version": [
-    20200105,
-    316
+    20200312,
+    1153
    ],
-   "commit": "614506bac2795c531ab118840ba010ee378e96d4",
-   "sha256": "042ci8kbhlmhwyx3kiwf8gnr9f1f85faviinv0g7yn80g3shxyp1"
+   "commit": "4d8ccde889b112896c7299cad9f1e9305bde8cb3",
+   "sha256": "1ccqb05xmnxpwxl9vdvkb3f8211kbj5rsb73xv1ghyx3i40qjmzm"
   }
  },
  {
@@ -85140,6 +87446,21 @@
   }
  },
  {
+  "ename": "share2computer",
+  "commit": "47647167cc7b9d7ad0a2fc4785849f69dc07d6cb",
+  "sha256": "067xc1awknx9iqwd4lfj1gkni6aszzfr1179avzzfn1ggp7yzkmq",
+  "fetcher": "github",
+  "repo": "tumashu/share2computer",
+  "unstable": {
+   "version": [
+    20200316,
+    31
+   ],
+   "commit": "15da47625a800e3310b8dc714bd4e41e32966d6a",
+   "sha256": "04h8vhg0fxabjlqgfqsvxkgsmkcp5qmcinxg46xib386r7rzrx4g"
+  }
+ },
+ {
   "ename": "shell-command",
   "commit": "ae489be43b1aee93614e40f492ebdf0b98a3fbc1",
   "sha256": "01nviashfr64wm78zi3vrqrqdqgsamp76d9kasxv0b7fqmfx7yjk",
@@ -85207,14 +87528,14 @@
   "repo": "kyagi/shell-pop-el",
   "unstable": {
    "version": [
-    20170304,
-    1416
+    20200315,
+    1139
    ],
    "deps": [
     "cl-lib"
    ],
-   "commit": "4a3a9d093ad1add792bba764c601aa28de302b34",
-   "sha256": "1ybvg048jvijcg9jjfrbllf59pswmp0fd5zwq5x6nwg5wmggplzd"
+   "commit": "4b4394037940a890a313d715d203d9ead2d156a6",
+   "sha256": "0s77n6b9iw1x3dv91ybkpgy3zvqd12si7zw3lg0m2b6j1akrawsg"
   },
   "stable": {
    "version": [
@@ -85378,6 +87699,35 @@
   }
  },
  {
+  "ename": "shfmt",
+  "commit": "a20dde08de1a7cd70739a791e1ae321e8f152685",
+  "sha256": "1k4rr658473vd6xad2z40dl7f26sb1zv9nc1938cg61pqi10bjan",
+  "fetcher": "github",
+  "repo": "purcell/emacs-shfmt",
+  "unstable": {
+   "version": [
+    20200421,
+    103
+   ],
+   "deps": [
+    "reformatter"
+   ],
+   "commit": "342c55fab27f1e62472eebbb53cfc73b0d422a34",
+   "sha256": "0hmxa856hlai9ydarfsn5s9i8cnfrydgpa7mkh4a36klhdj21gfh"
+  },
+  "stable": {
+   "version": [
+    0,
+    1
+   ],
+   "deps": [
+    "reformatter"
+   ],
+   "commit": "cd94266badc71c1e981e904e10f28c6a80237a2f",
+   "sha256": "09w50l938phcpxvbg4ahyxl43k995ywavwac364nmcnvmip021qy"
+  }
+ },
+ {
   "ename": "shift-number",
   "commit": "b06be6b25078ddfabc1ef1145c817552f679c41c",
   "sha256": "1sbzkmd336d0dcdpk29pzk2b5bhlahrn083x62l6m150n2xzxn4p",
@@ -85427,11 +87777,11 @@
   "repo": "emacs-w3m/emacs-w3m",
   "unstable": {
    "version": [
-    20190930,
-    730
+    20200406,
+    2209
    ],
-   "commit": "6eda3828bb8530ecd69a3823bd5569a5f779c239",
-   "sha256": "0ij85i0zy9wi1cgm0j8cvqpv9802kfy7g4ffx381l7k28m35lqh2"
+   "commit": "e522a44b151d69d4a176e8809225598ab540fc4d",
+   "sha256": "1alishzz4j1hbfyfi09rkhffx6gv16yxln7q8jx25shb9rssivyz"
   }
  },
  {
@@ -85727,20 +88077,20 @@
   "repo": "riscy/shx-for-emacs",
   "unstable": {
    "version": [
-    20200203,
-    41
+    20200410,
+    639
    ],
-   "commit": "e90dccf40320ee0df306cab3f94fdb79504698b5",
-   "sha256": "0g4w5w53pknphxr7i7kwksq1789qi8rk8yk9gp4s788iq1f0i6vr"
+   "commit": "e5b4bae0a1a9bb8a762da40397a04efdd0b2b397",
+   "sha256": "0p9b621rgy34r1hl9xfzxh4xpx9gpsr3n330ypfxhlr0s5754j73"
   },
   "stable": {
    "version": [
     1,
-    3,
-    1
+    4,
+    0
    ],
-   "commit": "e90dccf40320ee0df306cab3f94fdb79504698b5",
-   "sha256": "0g4w5w53pknphxr7i7kwksq1789qi8rk8yk9gp4s788iq1f0i6vr"
+   "commit": "e5b4bae0a1a9bb8a762da40397a04efdd0b2b397",
+   "sha256": "0p9b621rgy34r1hl9xfzxh4xpx9gpsr3n330ypfxhlr0s5754j73"
   }
  },
  {
@@ -85766,11 +88116,11 @@
   "repo": "webframp/sicp-info",
   "unstable": {
    "version": [
-    20180823,
-    1222
+    20200421,
+    242
    ],
-   "commit": "26bc593aeae01da34ad92363b5bbd6aedab66da2",
-   "sha256": "0qvgdrzdp92mskqfh0x5garq0zcr8r7n834jlx5ky8q00xvb1a06"
+   "commit": "3efcd37eb7888845c5f3292beeb18219f9993e92",
+   "sha256": "1qlgg7r9v62mcw07svdkzrf5ccm6n9vg64h4p704rfzkxys1cwfs"
   }
  },
  {
@@ -85781,20 +88131,20 @@
   "repo": "rnkn/side-notes",
   "unstable": {
    "version": [
-    20191217,
-    919
+    20200311,
+    547
    ],
-   "commit": "6f01a16919f3efadfe628cfd9405426b539bebad",
-   "sha256": "1m280zp44bxly1r1y217i9rx4j3hzgy7zqzy0p7afiyy26n6jl46"
+   "commit": "f78d7ba1173cf6056a95935add30cd30b7a7d347",
+   "sha256": "0fv1l3vrm50qbxs0dc1qyy1m3i08w46lh3z6nz8p32va5yjwfjmj"
   },
   "stable": {
    "version": [
     0,
-    2,
+    3,
     1
    ],
-   "commit": "96c4677ba4dc91c8100c93d3af6f165c21db3e05",
-   "sha256": "1gway2ljpi1ac0ssy9r11pvy50j6c5y10wfs4bizlqhzdpjfinh2"
+   "commit": "f78d7ba1173cf6056a95935add30cd30b7a7d347",
+   "sha256": "0fv1l3vrm50qbxs0dc1qyy1m3i08w46lh3z6nz8p32va5yjwfjmj"
   }
  },
  {
@@ -85805,11 +88155,11 @@
   "repo": "nlamirault/sift.el",
   "unstable": {
    "version": [
-    20190521,
-    823
+    20200421,
+    1423
    ],
-   "commit": "33b2c9ff964fe53bb55b37429faaa4e903bead7a",
-   "sha256": "0cb8rcxl0jwpbgz9kk136l2ranficv8lk85fhvly1lpslbjljds9"
+   "commit": "cdddba2d183146c340915003f1b5d09d13712c22",
+   "sha256": "0ln87nhq2vhsb0ywn7rp0b3hzms5z7l6cv6dng08yly12r2957if"
   },
   "stable": {
    "version": [
@@ -85840,21 +88190,6 @@
   }
  },
  {
-  "ename": "signature",
-  "commit": "a52b516b7b10bdada2f64499c8f43f85a236f254",
-  "sha256": "0y5xspcsjap662n1gp882kjripiz90wwbhsq27c0qwl1zcx5rrkj",
-  "fetcher": "gitlab",
-  "repo": "pidu/signature",
-  "unstable": {
-   "version": [
-    20140730,
-    1949
-   ],
-   "commit": "c47df2e1189a84505f9224aa78e87b6c65d13d37",
-   "sha256": "1g4rr7hpy9r3y4vdpv48xpmy8kqvs4j64kvnhnj2rw2wv1grw78j"
-  }
- },
- {
   "ename": "silkworm-theme",
   "commit": "9451d247693c3e991f79315868c73808c0a664d4",
   "sha256": "1zbrjqmhf80qs3i910sixirrv42rxkqdrg2z03gnz1g885gpcn13",
@@ -85970,6 +88305,29 @@
   }
  },
  {
+  "ename": "simple-modeline",
+  "commit": "054a7c164fae0c76ad2b3c6891d37a03f3e08823",
+  "sha256": "0c2wvwxwaa62r4vrw9g1lcgr8cv57mlfpsszynkn00cb7fhlhdmk",
+  "fetcher": "github",
+  "repo": "gexplorer/simple-modeline",
+  "unstable": {
+   "version": [
+    20200419,
+    900
+   ],
+   "commit": "e7e39660dadcef88e7e877ad1f24625873e90e51",
+   "sha256": "0s8979jd3x6yarq4ifn5wgn08s8z2kblzaagh4zywkhaj1i7mb4m"
+  },
+  "stable": {
+   "version": [
+    1,
+    1
+   ],
+   "commit": "e7e39660dadcef88e7e877ad1f24625873e90e51",
+   "sha256": "0s8979jd3x6yarq4ifn5wgn08s8z2kblzaagh4zywkhaj1i7mb4m"
+  }
+ },
+ {
   "ename": "simple-mpc",
   "commit": "62d762308c1ec0c1d8f7b4755b7deb285cbac018",
   "sha256": "05x2xyys5mf6k7ndh0l6ykyiygaznb4f8bx3npbhvihrsz9ilf8r",
@@ -86213,15 +88571,15 @@
   "repo": "skeeto/skewer-mode",
   "unstable": {
    "version": [
-    20200103,
-    2247
+    20200304,
+    1142
    ],
    "deps": [
     "js2-mode",
     "simple-httpd"
    ],
-   "commit": "123215dd9bfa67ce5cc49cd52dd54c0ba7c7e02c",
-   "sha256": "0in27qfkshy84m0iyy2vfvvlapawxhxxpi2jzpqq6sps40kax4xh"
+   "commit": "e5bed351939c92a1f788f78398583c2f83f1bb3c",
+   "sha256": "07fv33arh77kdfglg6yv28gvryh0z7ddxylhdyr5plvvglpbwi88"
   },
   "stable": {
    "version": [
@@ -86307,8 +88665,8 @@
   "repo": "yuya373/emacs-slack",
   "unstable": {
    "version": [
-    20200221,
-    417
+    20200402,
+    1656
    ],
    "deps": [
     "alert",
@@ -86318,8 +88676,8 @@
     "request",
     "websocket"
    ],
-   "commit": "b7b9eada0bf62d40dfe764b00f55913a2d3d742e",
-   "sha256": "0cqr7jnfxzb0z2wy79pdwpv9cvmawjif1kin3zbp8q7zhwrq09v0"
+   "commit": "d53a57a18fb7034182c3d02503f937761e6a2a64",
+   "sha256": "1xcfgyw9cky6msai2ap9fgcdasvmvn3k73rjmvnwcj4axh6vjvyx"
   }
  },
  {
@@ -86380,15 +88738,15 @@
   "repo": "slime/slime",
   "unstable": {
    "version": [
-    20200228,
-    1656
+    20200414,
+    1444
    ],
    "deps": [
     "cl-lib",
     "macrostep"
    ],
-   "commit": "cd8cc3c95c3391b1f1cffa9e100336250a4509a7",
-   "sha256": "11b9747y43cia8s8dlgxsx3l326pjgsr20qmv5rs9ziby38502mq"
+   "commit": "221518f0d3d224403743e6690f6bb66c42d9dec9",
+   "sha256": "0wbxv461lq7760gsqjw5djhjkzmwxz563l97csn2637gb1wkn461"
   },
   "stable": {
    "version": [
@@ -86411,27 +88769,27 @@
   "repo": "anwyn/slime-company",
   "unstable": {
    "version": [
-    20190117,
-    1538
+    20200424,
+    1045
    ],
    "deps": [
     "company",
     "slime"
    ],
-   "commit": "7290cbad711a62f76c28e5638d1a4d77197a358c",
-   "sha256": "0kslq8kq8dc192bpiaalyqisv3841h3dxy1wxk8hw3nyyww08mgx"
+   "commit": "cec203c45ebd678b05341d1cdbe420ad07a1b8e0",
+   "sha256": "0dwj6kv8laivhisd9jrzdn1lxynqqxmimvyz3z0zz6qf0ijsl0wm"
   },
   "stable": {
    "version": [
     1,
-    1
+    3
    ],
    "deps": [
     "company",
     "slime"
    ],
-   "commit": "6c244690c80387a32b0cb984843e00c8b75ad6bb",
-   "sha256": "1hl1hqkc1pxga9k2k8k15d7dip7sfsmwf4wm4sh346m6nj606q8g"
+   "commit": "cec203c45ebd678b05341d1cdbe420ad07a1b8e0",
+   "sha256": "0dwj6kv8laivhisd9jrzdn1lxynqqxmimvyz3z0zz6qf0ijsl0wm"
   }
  },
  {
@@ -86605,11 +88963,11 @@
   "repo": "joaotavora/sly",
   "unstable": {
    "version": [
-    20200228,
-    1350
+    20200314,
+    55
    ],
-   "commit": "86a63df73360be51529806c7ed9b775b3f02284d",
-   "sha256": "0sx6fdckcfcld41db0695svvlvllnfaazwx513686gnykwfd209n"
+   "commit": "1382bda945ecfb4b177c7d05a36da8fd41e0384c",
+   "sha256": "1hmdx3nakhpsmg6zr52090pimmy0kpjz2adyi0m1wzh9zdg5cx4x"
   },
   "stable": {
    "version": [
@@ -86628,15 +88986,15 @@
   "repo": "mmgeorge/sly-asdf",
   "unstable": {
    "version": [
-    20200217,
-    2332
+    20200306,
+    433
    ],
    "deps": [
     "popup",
     "sly"
    ],
-   "commit": "feb25636fb729a08c92e8ba801fae5382f2668e3",
-   "sha256": "1j73s7xhlys97mwcnm4dpgfhdg7pf5nv2xqiz67fdbpdxwd4s6wj"
+   "commit": "32ce14994e8faee9321605cec36d156b02996c46",
+   "sha256": "09x8l37wwqw74xc2frwzbfdb1if8rb3szg5akdk3v2qhik4sm3dd"
   },
   "stable": {
    "version": [
@@ -86781,11 +89139,11 @@
   "repo": "zenitani/elisp",
   "unstable": {
    "version": [
-    20190522,
-    1125
+    20200322,
+    24
    ],
-   "commit": "366a4cdab1ad20105910bc24c4f3e4f8734e4eae",
-   "sha256": "1kk7ya14p4vpw31rzcgwq0pmay0wm3pg2j70fv5mms9ala1jyhsy"
+   "commit": "e2a390b9b8518ad62283046400a0fb3e81eb5b79",
+   "sha256": "1s23r0dr10wjnk0j5gicy1dxvbhvnz3zmbssk431vccbba1jm8yg"
   }
  },
  {
@@ -86867,6 +89225,24 @@
   }
  },
  {
+  "ename": "smart-input-source",
+  "commit": "82ef5414e63fe94905f042534d8bde88fb5461c6",
+  "sha256": "1dx3cvbm9hrdfrj4ggf0hbmfag2hybdlrqgpzy48fc07dscv0acd",
+  "fetcher": "github",
+  "repo": "laishulu/emacs-smart-input-source",
+  "unstable": {
+   "version": [
+    20200423,
+    1529
+   ],
+   "deps": [
+    "names"
+   ],
+   "commit": "048a6c729f5336fe800e97f995a387e11d386980",
+   "sha256": "19s8q8fb2kmmfllg50622hzp3jb19h9z9ik45k4v7aapdc7iw5yg"
+  }
+ },
+ {
   "ename": "smart-jump",
   "commit": "52f29e14e61b28cd1637ca5d6bd878d91a71251f",
   "sha256": "14c7p6xqasd0fgn70zj1jlpwjxldzqx44bcdqdk6nmjihw0rk632",
@@ -87053,17 +89429,17 @@
  },
  {
   "ename": "smart-tab",
-  "commit": "091dcc3775ec2137cb61d66df4e72aca4900897a",
-  "sha256": "0qi8jph2c9fdsv2mqgxd7wb3q4dax3g5x2hc53kbgkjxylagjvp5",
-  "fetcher": "github",
-  "repo": "genehack/smart-tab",
+  "commit": "ef37935f5f8ed12323374179a0673b5a4af57cdb",
+  "sha256": "1dm67sc1vylpf73m723hfjfqmm2yxrdckrgp6a3nq2586hkkid4l",
+  "fetcher": "git",
+  "url": "https://git.genehack.net/genehack/smart-tab.git",
   "unstable": {
    "version": [
-    20190916,
-    137
+    20200416,
+    2228
    ],
-   "commit": "0f6963ce4de403fa43f3db68b31ce059f6251c3a",
-   "sha256": "16rh9wwjnqjk7hf7npfvwf28wmhd7bwnsnfgh592gv70xkcwywaa"
+   "commit": "67bf4f93f8afca61a3dc4f6c7a34b0b8ca9ede21",
+   "sha256": "1ws49lbafch1rb6g0j9k5h30c9shk3vvqhbjkf4qvhaqii94lgml"
   }
  },
  {
@@ -87115,15 +89491,15 @@
   "repo": "Fuco1/smartparens",
   "unstable": {
    "version": [
-    20200229,
-    1752
+    20200324,
+    2147
    ],
    "deps": [
     "cl-lib",
     "dash"
    ],
-   "commit": "1f8857c5febe8b82654ba44ae43e6d2f435f4832",
-   "sha256": "02b05rh474kyk3vmkgh54366k7fqshdf2x5zgrd5q4a8jcffb5nf"
+   "commit": "555626a43f9bb1985aa9a0eb675f2b88b29702c8",
+   "sha256": "0hfywwhzv2dphi7gacp1sdyk47cmajzx5sqrcwxkn7mlwx876nsx"
   },
   "stable": {
    "version": [
@@ -87233,26 +89609,26 @@
   "repo": "aaptel/smblog-mode",
   "unstable": {
    "version": [
-    20190920,
-    1823
+    20200424,
+    938
    ],
-   "commit": "fe866afbe19f804f80c37e077192576e4b0aad1a",
-   "sha256": "19zynq5izaafkj97a1f7dz8fljdr0mxsal8xcfa938clxihydaaz"
+   "commit": "fc949cff7051b31f0dbc7169774144533a27b92f",
+   "sha256": "07ks6d3gs264wv15lxa88pfi6i851h1wd9cacxs81wc7ijqc5sia"
   }
  },
  {
   "ename": "smeargle",
-  "commit": "c5b985b24a23499454dc61bf071073df325de571",
-  "sha256": "1dy87ah1w21csvrkq5icnx7g7g7nxqkcyggxyazqwwxvh2silibd",
+  "commit": "2a2670edb1155f02d1cbe2600db84a82c8f3398b",
+  "sha256": "04z1prwdd1h91jyf9fnggqp657830657kvbch7m2f2pgmn3czvvs",
   "fetcher": "github",
-  "repo": "syohex/emacs-smeargle",
+  "repo": "emacsorphanage/smeargle",
   "unstable": {
    "version": [
-    20161212,
-    2358
+    20200323,
+    533
    ],
-   "commit": "0665b1ff5109731898bc4a0ca6d939933b804777",
-   "sha256": "0p0kxmjdr02l9injlyyrnnzqdbb7mirz1xx79c3lw1rgpalf0jnf"
+   "commit": "a0e9bc2ea694aa2940102e1f4cfd8db8be437931",
+   "sha256": "05n6vgxw91cxk5ri4mmsxc62jcad0yhjjnn16gk1qhjxjqvrlcis"
   },
   "stable": {
    "version": [
@@ -87458,15 +89834,15 @@
   "repo": "kyleam/snakemake-mode",
   "unstable": {
    "version": [
-    20200222,
-    1710
+    20200417,
+    2230
    ],
    "deps": [
     "cl-lib",
     "magit-popup"
    ],
-   "commit": "701f970bfb48d2f7abb241b9f69127ff5b667c76",
-   "sha256": "0di8wqwj0l2vx29kkpy2h1yxrxgcq51y2lss5lmqp6kmw3avkvi2"
+   "commit": "03562dcd82964d53eff7314b844c2897d1d9af55",
+   "sha256": "1cj8628l196da5j54wl8wq7znvha44z1f6w9qqg37yw0pjynbvxz"
   },
   "stable": {
    "version": [
@@ -87706,14 +90082,14 @@
   "repo": "hlissner/emacs-solaire-mode",
   "unstable": {
    "version": [
-    20200120,
-    455
+    20200423,
+    742
    ],
    "deps": [
     "cl-lib"
    ],
-   "commit": "4ac324ccb0b751be80ce64449553462eafab4f32",
-   "sha256": "1klyzqrlsgx8q89zx1kn5z6wnpv1dmvbglldpv1y74hxhzi6ryps"
+   "commit": "adc8c0c60d914f6395eba0bee78feedda128b30b",
+   "sha256": "0kj6lhx57gl3809q4bmgv7cac8wk61g1sdyr4c2a0y9jkzf21x67"
   },
   "stable": {
    "version": [
@@ -87736,14 +90112,14 @@
   "repo": "bbatsov/solarized-emacs",
   "unstable": {
    "version": [
-    20200113,
-    37
+    20200411,
+    1026
    ],
    "deps": [
     "dash"
    ],
-   "commit": "b51d4f43fa5b814fd2de1f9348888c733af89b1c",
-   "sha256": "1jh6x447br0zdglazy58a6j1gbngi3x7750v6cwzzrrfiz9cb4h6"
+   "commit": "c8f09494330900081ed5a4f020c972a37fd7b02e",
+   "sha256": "0z5srqz4g81bsyw74q04fwz30qvi4i08s7fszmwnwyr5xrf5dx42"
   },
   "stable": {
    "version": [
@@ -87774,8 +90150,8 @@
     "flycheck",
     "solidity-mode"
    ],
-   "commit": "b190993dcb8376e80fb1d9b71f3ed6170bd2a341",
-   "sha256": "0s5xk38k3mc1d40dszlcgfpn5rvb7nsnnpmgr3c0bwqa4xh6yqrg"
+   "commit": "022b3159832384a7dcdc2168809e698600826047",
+   "sha256": "144w84abffbrbb4wflgipndaasx82axf36xm373ybdih4131mi69"
   },
   "stable": {
    "version": [
@@ -87799,11 +90175,11 @@
   "repo": "ethereum/emacs-solidity",
   "unstable": {
    "version": [
-    20200124,
-    827
+    20200418,
+    921
    ],
-   "commit": "b190993dcb8376e80fb1d9b71f3ed6170bd2a341",
-   "sha256": "0s5xk38k3mc1d40dszlcgfpn5rvb7nsnnpmgr3c0bwqa4xh6yqrg"
+   "commit": "022b3159832384a7dcdc2168809e698600826047",
+   "sha256": "144w84abffbrbb4wflgipndaasx82axf36xm373ybdih4131mi69"
   },
   "stable": {
    "version": [
@@ -87816,6 +90192,26 @@
   }
  },
  {
+  "ename": "somafm",
+  "commit": "6003d09cefb7da19baa39b6c4a96d265844abbce",
+  "sha256": "1p3ngn8rfbwvgfnpx4x6g5wspicxh9mmvlsrbax6a7whx0y1bg4f",
+  "fetcher": "github",
+  "repo": "artenator/somafm.el",
+  "unstable": {
+   "version": [
+    20200224,
+    48
+   ],
+   "deps": [
+    "cl-lib",
+    "dash",
+    "request"
+   ],
+   "commit": "9fdb75e150e78170b3ca7863a8a0638c6ecc0fc0",
+   "sha256": "0qvr4cga8k4bn0jbfp626cjkxgvqkac902v7hxakj7l47arxcd5z"
+  }
+ },
+ {
   "ename": "sonic-pi",
   "commit": "855ea20024b606314f8590129259747cac0bcc97",
   "sha256": "0j6n1qgdrma6vvi6f7xiy66qwsl8710pca4ga9i7srhxv0r47x68",
@@ -87852,6 +90248,48 @@
   }
  },
  {
+  "ename": "sorcery-theme",
+  "commit": "cdb6f1cfbf3bbeb1eeb6440fb216e8e3b523bb0f",
+  "sha256": "1qsavwbqidva4m0mdw393qbwlibhkkywnxj9mshfmkwaq050ivb2",
+  "fetcher": "github",
+  "repo": "vxid/emacs-theme-sorcery",
+  "unstable": {
+   "version": [
+    20200413,
+    2242
+   ],
+   "deps": [
+    "autothemer"
+   ],
+   "commit": "fb041d0d8d4ae2840ddcfb1bd56fefe687da8c52",
+   "sha256": "1j54m18xsn44m5xshmk2pfxn795svjn0zv77qwfxn1d2p5j0r6ni"
+  }
+ },
+ {
+  "ename": "soria-theme",
+  "commit": "9196110908f0d2130f7963499a94853b5192ac8c",
+  "sha256": "1fmys72s4n334m60ywpmbxjbvjwp7qn14pasmnlkv3l1bw6jygsm",
+  "fetcher": "github",
+  "repo": "mssola/soria",
+  "unstable": {
+   "version": [
+    20200424,
+    1530
+   ],
+   "commit": "fcc14cc99f0d26abf91af682b5fdedf5a8a37003",
+   "sha256": "0mrh147q9zzs9nkc714iyly5aydx3svma0ix8sgrk7rqacfd56hv"
+  },
+  "stable": {
+   "version": [
+    0,
+    3,
+    2
+   ],
+   "commit": "5edb9379cd21411fb182239ed9ac19be4a278f32",
+   "sha256": "103837zizm5iqv3sskxgkhjij2icjx9sjvjhq2l9zi66rlh9gca7"
+  }
+ },
+ {
   "ename": "sort-words",
   "commit": "0a4bd566392d7cebe8a891d787439512e8d34cf9",
   "sha256": "1hvbq09byjdbqzbyashw3y1h65wins44jnqcdic7vqzd1p1mzwka",
@@ -87955,21 +90393,21 @@
  },
  {
   "ename": "sound-wav",
-  "commit": "8333470e3d84d5433be489a23e065c876bed2ab2",
-  "sha256": "1vrwzk6zqma7r0w5ivbx16shys6hsifj52fwlf5rxs6jg1gqdb4f",
+  "commit": "2a2670edb1155f02d1cbe2600db84a82c8f3398b",
+  "sha256": "1sb3345x6rbbxr71x12fj6bzzvj6nin712777rxk59riam4nknd6",
   "fetcher": "github",
-  "repo": "syohex/emacs-sound-wav",
+  "repo": "emacsorphanage/sound-wav",
   "unstable": {
    "version": [
-    20181126,
-    1726
+    20200323,
+    728
    ],
    "deps": [
     "cl-lib",
     "deferred"
    ],
-   "commit": "49a9f10334b914cf6429e49b5449e0711a3aa251",
-   "sha256": "1zg32gn0r06qcp6i5fxwns8xv5nqpc6hfzqajwj0hfvhkqdndv4j"
+   "commit": "8a18f8a62f4fdde80dfa069986aa959091a42472",
+   "sha256": "18iahla8m9b6bdn63x2yrvr3rzyw5ybipf44q9avyy6s1pqsby2a"
   },
   "stable": {
    "version": [
@@ -88066,17 +90504,17 @@
  },
  {
   "ename": "sourcemap",
-  "commit": "557d18259543263932fccdbaf44c4e7986bd277b",
-  "sha256": "0cjg90y6a0l59a9v7d7p12pgmr21gwd7x5msil3h6xkm15f0qcc5",
+  "commit": "2a2670edb1155f02d1cbe2600db84a82c8f3398b",
+  "sha256": "1yxjvv3vg14in492hzb3czjfwrg2qp60h4mpxxpx18cjgx8mkybr",
   "fetcher": "github",
-  "repo": "syohex/emacs-sourcemap",
+  "repo": "emacsorphanage/sourcemap",
   "unstable": {
    "version": [
-    20161216,
-    540
+    20200315,
+    1037
    ],
-   "commit": "64c89d296186f48d9135fb8aad501de19f64bceb",
-   "sha256": "115g2mfpbfywp8xnag4gsb50klfvplqfh928a5mabb5s8v4a3582"
+   "commit": "bb2a56b2feb62b0c77d7f03ef2acd94f91be6b3f",
+   "sha256": "1qr5syl2wm7z1gkgafdhch6n7fg3qc09k8dhv983kq4vg5kp36ml"
   },
   "stable": {
    "version": [
@@ -88118,6 +90556,21 @@
   }
  },
  {
+  "ename": "space-theming",
+  "commit": "5529fcf16b877b01ee0aff710ebfb0ad5da8dba1",
+  "sha256": "0khjdmqv1q2pdas0xjfqs68xjg2nqms6g21bplg54ynsqcp7asv9",
+  "fetcher": "github",
+  "repo": "p3r7/space-theming",
+  "unstable": {
+   "version": [
+    20200415,
+    810
+   ],
+   "commit": "0a41a892180451d51095516e8ee2c9042be009c1",
+   "sha256": "02d07fs72fqg12lm7wxlmds1xyqf92ay0h9ghpkavwn6mphslpvc"
+  }
+ },
+ {
   "ename": "spacebar",
   "commit": "e4d1808eabdb9081441e01526efe81782ae0122f",
   "sha256": "0kpmgirg3s57qkzrlbicz2jwgwlyg9jlxy6kxkqxixf1h0z5wy7n",
@@ -88228,11 +90681,11 @@
   "repo": "nashamri/spacemacs-theme",
   "unstable": {
    "version": [
-    20200127,
-    1656
+    20200324,
+    1107
    ],
-   "commit": "e088bff4f190495615c29de93079aaa823e2300c",
-   "sha256": "09p5pzy3ibrl8dxmg10v8j16wxdn1fkdqpbi8l9pgfib2azmnvnc"
+   "commit": "f79c40fb241e204539fde97200abae91e828e585",
+   "sha256": "1l2kkiyrskkpx8f901v0wrzaah1wjg15zdyv88spj3mh3hwd3b6n"
   }
  },
  {
@@ -88430,6 +90883,21 @@
   }
  },
  {
+  "ename": "spell-fu",
+  "commit": "abaa6522f18ca1f47788ebb3281fbfcdade2b7c7",
+  "sha256": "0c2yi5lz2ww7mm9ih3m374w65n73z4knhnbrvdyzd7ja3xb3l17n",
+  "fetcher": "gitlab",
+  "repo": "ideasman42/emacs-spell-fu",
+  "unstable": {
+   "version": [
+    20200426,
+    600
+   ],
+   "commit": "e62cfc4f08fc4743d6961fe3402adbf2260d7e70",
+   "sha256": "1w6jsn3p6956vk5pzwlbc211sswqai8ary8ad3fbhbjwxl5z3gsc"
+  }
+ },
+ {
   "ename": "sphinx-doc",
   "commit": "a3b80d346ad4fb415970beddb5f02ae795fbf1b4",
   "sha256": "00h3wx2p5hzbw6sggggdrzv4jrn1wc051iqql5y2m1hsh772ic5z",
@@ -88544,10 +91012,10 @@
  },
  {
   "ename": "splitjoin",
-  "commit": "51e172f46045fbb71b6a13b3521b502339a4a02b",
-  "sha256": "0l1x98fvvia8qx8g125h4d76slv0xnb3h1zxiq9xb5qh7a1h069l",
+  "commit": "2a2670edb1155f02d1cbe2600db84a82c8f3398b",
+  "sha256": "0g2i1q1npwrczgzp5321lpljff2ykmq932lzj6pdwnn6cyqixzzb",
   "fetcher": "github",
-  "repo": "syohex/emacs-splitjoin",
+  "repo": "emacsorphanage/splitjoin",
   "unstable": {
    "version": [
     20150505,
@@ -88849,14 +91317,14 @@
   "repo": "purcell/sqlformat",
   "unstable": {
    "version": [
-    20190420,
-    2256
+    20200327,
+    2329
    ],
    "deps": [
     "reformatter"
    ],
-   "commit": "f7f46be6f06b83642c312151f3b5276f8830d9d7",
-   "sha256": "00z60y08likwqfd27ibvzhy62qs29i4d4y4vq3p3slx43rfdgvxs"
+   "commit": "2f10382034cd5cd2356cc69b4a1e9116d77a0d86",
+   "sha256": "18z9hljifw63zy4jrsyg4x2lqzgx29sfibx3maj0dm90yzj6zmcg"
   },
   "stable": {
    "version": [
@@ -88937,11 +91405,11 @@
   "repo": "srcery-colors/srcery-emacs",
   "unstable": {
    "version": [
-    20200205,
-    1729
+    20200422,
+    1941
    ],
-   "commit": "5ce86917ad50d64c460eea6b6fa16bdcf88cc8f5",
-   "sha256": "16317yy64qcx7mi194xp9kbxpisjfz976yf637s6zabmk6xmmpcl"
+   "commit": "9630e465cc5166f723b7c5378e326561cf2a1738",
+   "sha256": "0ppaicggrrd3wrbjddw75mnsfli9a8db6bg21m1k7bafjkgraxfn"
   },
   "stable": {
    "version": [
@@ -88977,6 +91445,35 @@
   }
  },
  {
+  "ename": "srfi",
+  "commit": "ff844713373e376a637625494321c8e8f197b48e",
+  "sha256": "1ik6gbcv79l1za7vr2llph1kb2ll8snq11szdxd0r8lnls7l33xf",
+  "fetcher": "github",
+  "repo": "srfi-explorations/emacs-srfi",
+  "unstable": {
+   "version": [
+    20200422,
+    1730
+   ],
+   "deps": [
+    "cl-lib"
+   ],
+   "commit": "d55b4047fcfd3528fa9487d206773f45c7c2d038",
+   "sha256": "0c83wachsrrz0mnsb2lci6mr62ma40w05lxz7y8vrfyqppkcfa6a"
+  },
+  "stable": {
+   "version": [
+    0,
+    1
+   ],
+   "deps": [
+    "cl-lib"
+   ],
+   "commit": "c0a1ae75bfb3fdc81bb722dff5f5e2fae3f07024",
+   "sha256": "1zymgidk09yyjdd23cz7rx2hql8vpmpqn21i07hwcr7032v0kl7k"
+  }
+ },
+ {
   "ename": "srv",
   "commit": "6b0b7f22631e7749da484ced9192d8ae5e1be941",
   "sha256": "0xrgbi63vg0msxkcmcnvijkxa9y0s7613liqac7fs9514yvkbwin",
@@ -89045,25 +91542,26 @@
   "repo": "magit/ssh-agency",
   "unstable": {
    "version": [
-    20191009,
-    156
+    20200329,
+    1558
    ],
    "deps": [
     "dash"
    ],
-   "commit": "89ea87dbfa0aa2fe644f7215aa3628c3008852c5",
-   "sha256": "0mkrn3jildlqyrkbdp31zf24vkzx4ycy49kxqs3vspbbcpanpj7j"
+   "commit": "a5377e4317365a3d5442e06d5c255d4a7c7618db",
+   "sha256": "1i3zmsn0w2k7p2hlzssibckm32kf05l56mkhg96x4sf06g3pwq1d"
   },
   "stable": {
    "version": [
     0,
-    4
+    4,
+    1
    ],
    "deps": [
     "dash"
    ],
-   "commit": "d9dbedd773ad3a831e02e162c47936d6814a850a",
-   "sha256": "0895n7bss4wdydic1gflr03f2cwdyqywl16gvb599lpn288jhwvz"
+   "commit": "a5377e4317365a3d5442e06d5c255d4a7c7618db",
+   "sha256": "1i3zmsn0w2k7p2hlzssibckm32kf05l56mkhg96x4sf06g3pwq1d"
   }
  },
  {
@@ -89089,11 +91587,11 @@
   "repo": "cjohansson/emacs-ssh-deploy",
   "unstable": {
    "version": [
-    20190917,
-    530
+    20200306,
+    1012
    ],
-   "commit": "93a0e189a06d49b03627c65fe77652bee9f129d4",
-   "sha256": "1ijmnn3f6ymm04fbp6xmsvc1nrxgcj0k90462ffyl6adbzv4f82a"
+   "commit": "1bb2f821d4a78d483c147759348a29531486cdc4",
+   "sha256": "1d79lgl7082fkawl08qlykc7x75whdikk899fv5shbbrwp7hq3l3"
   },
   "stable": {
    "version": [
@@ -89353,16 +91851,16 @@
     20171130,
     1559
    ],
-   "commit": "b505a5f524c9c92cf9f055a7038d19bb168bdfa8",
-   "sha256": "161mxajfl8rqik3cpapblngwwh7hwl8b6rym3rydcbya8i38015a"
+   "commit": "209d2233843778ebee12d103c41b226fa27ff266",
+   "sha256": "19rm3zznj0j8q5gsqpk6hy5l3gii4pmp5s2npl1zsiy6bb7p59c4"
   },
   "stable": {
    "version": [
     0,
-    21
+    22
    ],
-   "commit": "ce4e2a7493ce77f86d94afb1fbe9539baa337c02",
-   "sha256": "16gwdad18rc9bivyzrjccp83iccmqr45fp2zawycmrfp2ancffc7"
+   "commit": "9acc95666619699d4cdf0526305155407081d8de",
+   "sha256": "0rhdgakd4vc0549m6zjwcmsnvh2i3mbv5laks25wnfmsxr8dwqns"
   }
  },
  {
@@ -89580,6 +92078,31 @@
   }
  },
  {
+  "ename": "stripes",
+  "commit": "f4c7beb05435a70293806b729b6f35c2fc2e8ca4",
+  "sha256": "0pwkqqyhg6gkpj8qh84ylsvq6wjykkkmmil4igw7mn80gy15zd09",
+  "fetcher": "gitlab",
+  "repo": "stepnem/stripes-el",
+  "unstable": {
+   "version": [
+    20200330,
+    2022
+   ],
+   "commit": "7b1d501f44b697a0514ef6759fd126d65867f18d",
+   "sha256": "0mx7l751jiijrjnbn3y6awasjy2c7k4ndgjq5c455vzxrlcbwr25"
+  },
+  "stable": {
+   "version": [
+    0,
+    3,
+    1,
+    1
+   ],
+   "commit": "7b1d501f44b697a0514ef6759fd126d65867f18d",
+   "sha256": "0mx7l751jiijrjnbn3y6awasjy2c7k4ndgjq5c455vzxrlcbwr25"
+  }
+ },
+ {
   "ename": "stumpwm-mode",
   "commit": "caaa21f235c4864f6008fb454d0a970a2fd22a86",
   "sha256": "11yk7xmmccgv7hin5qd1ibcsm1za01xfwsxa25q7vqwk6svnb0sf",
@@ -89942,14 +92465,14 @@
   "repo": "aaronbieber/sunshine.el",
   "unstable": {
    "version": [
-    20190905,
-    1832
+    20200306,
+    1711
    ],
    "deps": [
     "cl-lib"
    ],
-   "commit": "5e57899b2201dd36ae7242aa13ca82efcded3b7c",
-   "sha256": "1l7mls11k9v524c2f4d2xk6b8gydl5mgrpjf7vnngwz63mdy263n"
+   "commit": "88256223539edcfe57017778a997a474c9c022f6",
+   "sha256": "01kgf0w9lqprkgi0ag5zmgd9s07yj51vdfj7jbz8sws60996x8xx"
   }
  },
  {
@@ -90046,6 +92569,21 @@
   }
  },
  {
+  "ename": "svelte-mode",
+  "commit": "fc6a992830520750d2e4a9596668ba3d0eefaa11",
+  "sha256": "0mc9bc8p3a6lkqag72f48xprlrnj077h9mnglq4znxrslm91jr0h",
+  "fetcher": "github",
+  "repo": "leafOfTree/svelte-mode",
+  "unstable": {
+   "version": [
+    20200327,
+    406
+   ],
+   "commit": "48a26af6a3395a8bf3f09747d0a205c6dbc79313",
+   "sha256": "12gg55jdb6b5jk0xizx2cqc795bgll2kap3jp08s1vr16zkdaryn"
+  }
+ },
+ {
   "ename": "svg-mode-line-themes",
   "commit": "2ca54d78b5e87c3bb582b178e4892af2bf447d1e",
   "sha256": "12lnszcb9bl32n9wir7vf8xiyyv7njw4xg21aj9x4dasmidyx506",
@@ -90198,16 +92736,16 @@
   "repo": "danielmartin/swift-helpful",
   "unstable": {
    "version": [
-    20191226,
-    103
+    20200321,
+    10
    ],
    "deps": [
     "dash",
     "lsp-mode",
     "swift-mode"
    ],
-   "commit": "04c2bf38c16d7cf03a43c065baabaed3a80e78d3",
-   "sha256": "0xi23ywj9kf5qsw933raqs66yl859hhg62na3zybm78l2kq6dnhg"
+   "commit": "e58f26b8ab9cf0522d52fe9890d39dc9e645577e",
+   "sha256": "1yx73wgvaf01wi26ahc9cblsk3sj98rgljb19dxc9ab7hjyncd46"
   },
   "stable": {
    "version": [
@@ -90231,26 +92769,26 @@
   "repo": "swift-emacs/swift-mode",
   "unstable": {
    "version": [
-    20191130,
-    544
+    20200418,
+    617
    ],
    "deps": [
     "seq"
    ],
-   "commit": "1268425311ab20f1618df4e52cb1b79e28b553df",
-   "sha256": "1ghm5spzxxdvwn1lk3xci62hiv12x4hzjk5xh9q522a833nl04i4"
+   "commit": "2ab9ea1784a12a482ed9e3fb284b7a7658f40fff",
+   "sha256": "0wml7f8k3gqlxm0yg744271mqh087prlsfmbiv7fvkrcs55q0592"
   },
   "stable": {
    "version": [
     8,
     0,
-    1
+    2
    ],
    "deps": [
     "seq"
    ],
-   "commit": "86f8f62294aa5a6d44fa872278d75a4a41f403d4",
-   "sha256": "0sszk2nwp6h9qk7vgh5n05pzh264br3x3r1hyj97gwf8jdqzkr74"
+   "commit": "2ab9ea1784a12a482ed9e3fb284b7a7658f40fff",
+   "sha256": "0wml7f8k3gqlxm0yg744271mqh087prlsfmbiv7fvkrcs55q0592"
   }
  },
  {
@@ -90315,14 +92853,14 @@
   "repo": "abo-abo/swiper",
   "unstable": {
    "version": [
-    20200227,
-    1405
+    20200319,
+    1334
    ],
    "deps": [
     "ivy"
    ],
-   "commit": "fcf5dcfd5796637d64164fd17956c5bc54e25612",
-   "sha256": "1hx00axmjfgc14ixj16pg7029zj7rsx2i80sw6f2bvp543l2aicq"
+   "commit": "47ec37b395cc1b304bbf91e804f138634544a9df",
+   "sha256": "05k2qjj4z8vljfppkphfhw67wvb5ij4nz4m158v89lx87y0phh74"
   },
   "stable": {
    "version": [
@@ -90425,16 +92963,29 @@
   "repo": "emacsorphanage/swoop",
   "unstable": {
    "version": [
-    20160120,
-    1715
+    20200321,
+    319
+   ],
+   "deps": [
+    "async",
+    "ht",
+    "pcre2el"
+   ],
+   "commit": "7f6f20d0f32b76b7ce5b1459afa44c1ab700f8bb",
+   "sha256": "1d134f3dyh8sa8q8dgmla01wiky61y4jmhqb5whqpb7c2p53niyc"
+  },
+  "stable": {
+   "version": [
+    1,
+    0
    ],
    "deps": [
     "async",
     "ht",
     "pcre2el"
    ],
-   "commit": "a5e475db7a9f5db02ba3d08cd3c1c3594e2e01d7",
-   "sha256": "10ka6f86n07xlf0z7w35db0mzp2zk4xhr6jd19kjdrn2j0ynlcw5"
+   "commit": "de2d29eb45edab802cf8b275aa1c25a24050122e",
+   "sha256": "1caq17f7s4pdy6jzyxfh5zwqmwkwkbfpgcnj5f09qgmwanjygjya"
   }
  },
  {
@@ -90497,6 +93048,36 @@
   }
  },
  {
+  "ename": "sxiv",
+  "commit": "1b3da730053c1f45e67fefb2e9bfce222cc38628",
+  "sha256": "0jj0bzw365227anvg9zqy78zdfczfvqlac47kjdyziqmj958yhh8",
+  "fetcher": "gitlab",
+  "repo": "contrapunctus/sxiv.el",
+  "unstable": {
+   "version": [
+    20200326,
+    1433
+   ],
+   "deps": [
+    "dash"
+   ],
+   "commit": "dae46e6f5890f3d97d45eaadf0194b7ff01f6baf",
+   "sha256": "094kvg0cznddzn5q1clgj9r26h3ygab96rpbr00qn2wnmdb79bhq"
+  },
+  "stable": {
+   "version": [
+    0,
+    3,
+    1
+   ],
+   "deps": [
+    "dash"
+   ],
+   "commit": "dae46e6f5890f3d97d45eaadf0194b7ff01f6baf",
+   "sha256": "094kvg0cznddzn5q1clgj9r26h3ygab96rpbr00qn2wnmdb79bhq"
+  }
+ },
+ {
   "ename": "symbol-overlay",
   "commit": "c2a468ebe1a3e5a35ef40c59a62befbf8960bd7b",
   "sha256": "1al60x2mnjsv99jd10v5sd56zz185wsddiq7128phf1l35bkibis",
@@ -90536,7 +93117,7 @@
    "deps": [
     "f"
    ],
-   "commit": "9bd33e73ecb2a0e3e3757c55c05f46b6937227e0",
+   "commit": "cd344b6c2cb6a8fcf061af2c85441644a4e7a006",
    "sha256": "193lq58mhkq0rrinkaxiyhkk60qf7q0gx03na2968zcrahrd8w75"
   },
   "stable": {
@@ -90556,8 +93137,8 @@
   "repo": "countvajhula/symex.el",
   "unstable": {
    "version": [
-    20200225,
-    1928
+    20200425,
+    1911
    ],
    "deps": [
     "cider",
@@ -90574,13 +93155,13 @@
     "slime",
     "smartparens"
    ],
-   "commit": "c8bdd672ec7fc50f72599081b87ef48bcec45c9c",
-   "sha256": "04s0nacv9qy5a95hsblz2an6ipzxmqi98pz71vyc0nghzp6j24zd"
+   "commit": "3dba2ae3f65bd1c40e3756e05a57ced039a15a7f",
+   "sha256": "1j2ycsi2ipbyaknscy0vgr1ybyvzl7j1q0gvazkl5rpihshz2shl"
   },
   "stable": {
    "version": [
     0,
-    5,
+    6,
     0
    ],
    "deps": [
@@ -90598,8 +93179,8 @@
     "slime",
     "smartparens"
    ],
-   "commit": "c8bdd672ec7fc50f72599081b87ef48bcec45c9c",
-   "sha256": "04s0nacv9qy5a95hsblz2an6ipzxmqi98pz71vyc0nghzp6j24zd"
+   "commit": "62bd31d8647b88ec179fb8ff89f583b55a0421cc",
+   "sha256": "1c2y65hcd0nydhkh7a903flq061x8hld272n00xn4dd0b8kvjp29"
   }
  },
  {
@@ -90659,35 +93240,6 @@
   }
  },
  {
-  "ename": "syndicate",
-  "commit": "626bda1691d9c7a97fcf549f7a3f0d41d832cfde",
-  "sha256": "06nmldcw5dy2shhpk6nyix7gs57gsr5s9ksj57xgg8y2j3j0da95",
-  "fetcher": "github",
-  "repo": "KNX32542/syndicate",
-  "unstable": {
-   "version": [
-    20160603,
-    1523
-   ],
-   "deps": [
-    "evil"
-   ],
-   "commit": "90cee202a06f5bab48268ebf9f62c43334b69f50",
-   "sha256": "1w0na1p9drdmbci7adj20amrabcpny9fb2v4bd967ils4f2wly75"
-  },
-  "stable": {
-   "version": [
-    1,
-    0
-   ],
-   "deps": [
-    "evil"
-   ],
-   "commit": "b839aaba0c8583a3254476b53976e3caac4f89a9",
-   "sha256": "01bymbsvbisnpb2wpqxhrvqx6cj57nh4xvpsbsr5rr1h4pm5jkzl"
-  }
- },
- {
   "ename": "synonymous",
   "commit": "ecf2c44c63e9f41f1733849bdef0d0c301485580",
   "sha256": "0vawa9qwvv6z1i7vzhkjdl1l9r1yham48yn5y8w8g1xyhxxp6rs5",
@@ -90762,14 +93314,14 @@
   "repo": "emacs-berlin/syntactic-close",
   "unstable": {
    "version": [
-    20191119,
-    1007
+    20200408,
+    1148
    ],
    "deps": [
     "cl-lib"
    ],
-   "commit": "5760319d8fdb3672dd0e95880c30e9c4d92ab239",
-   "sha256": "0rkqflaz0npclnjsy2r6apkjrzlw5zrpa6j87sbjpnnh0jgcsmsq"
+   "commit": "c21ffdf6a2f8c2a83d3efc729852cd2b09fe03a6",
+   "sha256": "1m6y7njkn5vibgnr3pnh6nci75j2ksr93ajp01jwpxxxc0wmipa8"
   }
  },
  {
@@ -90798,9 +93350,9 @@
  },
  {
   "ename": "syntax-subword",
-  "commit": "5b7972602399f9df9139cff177e38653bb0f43ed",
-  "sha256": "1as89ffqz2h69fdwybgs5wibnrvskm7hd58vagfjkla9pjlpffpm",
-  "fetcher": "bitbucket",
+  "commit": "caca0b2bc2aaac563074cbb4ea4296fce749e203",
+  "sha256": "1nfbpckxfy95m7bnj08bnpf8zyxc0dyap5hq1plxl3lxb3c4fvr4",
+  "fetcher": "github",
   "repo": "jpkotta/syntax-subword",
   "unstable": {
    "version": [
@@ -90809,6 +93361,14 @@
    ],
    "commit": "ad0db0fcb464652a1d3408f525dee9293ce2b70c",
    "sha256": "1wcgr6scvwwfmhhjbpq3riq0gmp4g08ffbl91fpgp72j8zrc1c6x"
+  },
+  "stable": {
+   "version": [
+    0,
+    2
+   ],
+   "commit": "01b27feac37eb60cf73ff80374004d9e847e637d",
+   "sha256": "12jk28jbkq1pcpgsbknk8xzzghjh2dhwb54kag2hynldn4qgfkrz"
   }
  },
  {
@@ -90865,11 +93425,11 @@
   "repo": "jabranham/system-packages",
   "unstable": {
    "version": [
-    20200227,
-    1741
+    20200310,
+    1510
    ],
-   "commit": "c6fa6650202300265fbeb82db7d2223ab98951bc",
-   "sha256": "1b8ksr15bfmmmcq4d1vhpwd6sljsh1hpal21140z4hvplll35n1y"
+   "commit": "449dcdf4fe22874c9d91ee8d929ebb8a41b1bac6",
+   "sha256": "105s1kr8xapp93za9z9kq7s0rqccqissavacjfg6cvfx6gqrr8gy"
   },
   "stable": {
    "version": [
@@ -91170,11 +93730,11 @@
   "repo": "tmalsburg/tango-plus-theme",
   "unstable": {
    "version": [
-    20170214,
-    1708
+    20200423,
+    804
    ],
-   "commit": "8ba8901397e3e9f1d53110487bfa0effc65015e7",
-   "sha256": "025dca4yqpai45s74nk41y075v8pv59fdna11c0qqz3ihyrdhbrq"
+   "commit": "1e9484bb392bb0aad2be159505c502320f8d0a5c",
+   "sha256": "1819s9c0nm4pkgcpxqnr20075krq30qn6hpg4zl54cnrxbfbiq9f"
   }
  },
  {
@@ -91200,11 +93760,11 @@
   "repo": "11111000000/tao-theme-emacs",
   "unstable": {
    "version": [
-    20191120,
-    327
+    20200325,
+    344
    ],
-   "commit": "d5b9693fcabf2281319acaf09e685e3eedf27e8f",
-   "sha256": "1spwnhff3mlhi5ffqfz7fyy8d5wq4qk7q57ba7p7wxq6i08mwbms"
+   "commit": "34917843cde086943816d8a48977658c663a784e",
+   "sha256": "1ks4pnwp5fg2vswr93hrli2shfd7rrf3nwqwr1qwmqxhq1600f3x"
   },
   "stable": {
    "version": [
@@ -91224,11 +93784,11 @@
   "repo": "saf-dmitry/taskpaper-mode",
   "unstable": {
    "version": [
-    20200225,
-    1349
+    20200416,
+    2114
    ],
-   "commit": "6ebb8b188a39decf22a5cd675aeaa9684e4ea4ef",
-   "sha256": "0j3cxakgf943wv7bf73bwa69gc3m0g2ksw78xanz5hc0r0bsxbac"
+   "commit": "eedf6a465b8ccc865c108a6f2715769300f5a499",
+   "sha256": "1p7wlv5i46f3d9kn3yiw6rga8mkln9m5xknzimzym2pyaclva41m"
   },
   "stable": {
    "version": [
@@ -91272,20 +93832,20 @@
    "deps": [
     "cider"
    ],
-   "commit": "6c2631e3fd68e70110aa0cc5b83b7511eab363e2",
-   "sha256": "1sgnzgy0b61hxkj2fzkgnlrrpgsc5v1prns9hv1za4mv60xs8f15"
+   "commit": "8dfb4f92db2d8598ba809636a82d210c378b4845",
+   "sha256": "1sdi1rr9xq7spps5hagzs8irfljxmbd5y3hh4jiyvn54cwicg3g8"
   },
   "stable": {
    "version": [
     2,
     0,
-    2
+    3
    ],
    "deps": [
     "cider"
    ],
-   "commit": "d4ce3b51e97fd7e9f5a650796dee9ba4079f9df0",
-   "sha256": "1vday9jnmzspnfy3ppladj0z5by4yysfwp1dnqv7n3ayyza5r8w0"
+   "commit": "ce85fd9bcd008031a605ea8913577f452b49e352",
+   "sha256": "06dm6gdh10jbmyjr0y96s06qi3k12phq522pviis68qm7v2ryr47"
   }
  },
  {
@@ -91424,14 +93984,14 @@
   "repo": "zevlg/telega.el",
   "unstable": {
    "version": [
-    20200226,
-    1557
+    20200423,
+    1038
    ],
    "deps": [
     "visual-fill-column"
    ],
-   "commit": "ee6f2a278b5f198cc6bf3d08b74e5ad2fffd6f05",
-   "sha256": "0q8x007p4888j1ljvh92wf012vdkiayawlqd43vhxmakl3zbgaq4"
+   "commit": "50ef9bf06cc162b39cf3553b89b02faf5bc87835",
+   "sha256": "1h5100vmgwy52zp7ryarj4xw3gb9paj1qpm39mc9h62s6n1zysw7"
   },
   "stable": {
    "version": [
@@ -91477,16 +94037,16 @@
   "repo": "dbordak/telephone-line",
   "unstable": {
    "version": [
-    20191120,
-    27
+    20200412,
+    1614
    ],
    "deps": [
     "cl-generic",
     "cl-lib",
     "seq"
    ],
-   "commit": "bfe7b189d708d9cbc69ef2eaf5542108edc4257d",
-   "sha256": "0dkscbjms2557fzd7gawgsic6gfzypyn973skiyhy0y8zimmr406"
+   "commit": "65198f72f3b1ae618507aa28094f05d6de4846a9",
+   "sha256": "177v612ii8nj9nsmfxlf17gr3wair4whzggi3pshch7ghbxdqv5q"
   },
   "stable": {
    "version": [
@@ -91976,10 +94536,10 @@
  },
  {
   "ename": "terraform-mode",
-  "commit": "93e06adf34bc613edf95feaca64c69a0a2a4b567",
-  "sha256": "1m3s390mn4pba7zk17xfk045dqr4rrpv5gw63jm18fyqipsi6scn",
+  "commit": "2a2670edb1155f02d1cbe2600db84a82c8f3398b",
+  "sha256": "14bhn86d7xv4nvqdr65pm0nwmzawbnxyxyig5i4k8ax20xh59d67",
   "fetcher": "github",
-  "repo": "syohex/emacs-terraform-mode",
+  "repo": "emacsorphanage/terraform-mode",
   "unstable": {
    "version": [
     20170112,
@@ -91988,8 +94548,8 @@
    "deps": [
     "hcl-mode"
    ],
-   "commit": "6973d1acaba2835dfdf174f5a5e27de6366002e1",
-   "sha256": "12ww36g7mz4p4nslajcsdcm8xk6blwjwqjwhyp0n10ym6ssbh820"
+   "commit": "2967e7bdc05d15617e121052f6e43c61439b9070",
+   "sha256": "0f8p3ns0xw1p64jm22q4pf0ajmb5vp2ppl4qvgxvyna6cvcmw4k5"
   },
   "stable": {
    "version": [
@@ -92120,14 +94680,14 @@
   "repo": "TobiasZawada/texfrag",
   "unstable": {
    "version": [
-    20200104,
-    41
+    20200424,
+    205
    ],
    "deps": [
     "auctex"
    ],
-   "commit": "2a5561b4534a3b78718e2c5fe30550c89341874e",
-   "sha256": "1i583i2h9f5bsg663yl9xriv1lc5gb5w4ql6b5r9dwv33lg7l6mx"
+   "commit": "48118c4e38836117efb4eede927ab85d9a0d2013",
+   "sha256": "1dpvf9limh9b0sg0x41gyw9w5nf5nvkd7zzlyysswhinm6jba4iz"
   },
   "stable": {
    "version": [
@@ -92291,26 +94851,26 @@
   "repo": "myTerminal/theme-looper",
   "unstable": {
    "version": [
-    20190501,
-    127
+    20200410,
+    1757
    ],
    "deps": [
     "cl-lib"
    ],
-   "commit": "67ca7e6ac4740a412a1ea29f86e46ceeb636535a",
-   "sha256": "07bfiikrbmk1jc9ir5d3iwvsi3hbfcsira8gsicphwzhaiahqc1c"
+   "commit": "0e314ad21193441a26ce1839737e7a054e6a1a1b",
+   "sha256": "1v4rv2w8jdjzikwfjxsxqrbfwh6nm88v9x74pdhc3mq36qwl487g"
   },
   "stable": {
    "version": [
     2,
-    4,
+    6,
     0
    ],
    "deps": [
     "cl-lib"
    ],
-   "commit": "388138a238fbab9b4bc5ada0300c9bc5ef63d3f1",
-   "sha256": "0gab7ph1d7z0bjflqrj1y1lb4nk4c32bkpi943px0m5s5cjm54jv"
+   "commit": "0e314ad21193441a26ce1839737e7a054e6a1a1b",
+   "sha256": "1v4rv2w8jdjzikwfjxsxqrbfwh6nm88v9x74pdhc3mq36qwl487g"
   }
  },
  {
@@ -92434,18 +94994,18 @@
     20200212,
     1903
    ],
-   "commit": "9a0b5eebf6a21a1941b56d4b27c0c90f37626c8a",
-   "sha256": "0daj7c6bz286dc1gdgjh0zhb0qvzjxm4qsjscig447m61hjjjbzj"
+   "commit": "598704d0259d992af190a4388140b8aec07f40ef",
+   "sha256": "168sl4jbcyqms1cvg8x91kclim27v9zbfrw3cn2fmwmd2g29c31j"
   },
   "stable": {
    "version": [
     2020,
-    2,
-    24,
+    4,
+    20,
     0
    ],
-   "commit": "e67ec8ea5cb8c5e6213b0c00b12a242ac31db8f9",
-   "sha256": "15if11riz19vq33jnsc497ya99fflpksshp2zrf5q24l8pq9lz3g"
+   "commit": "23496d2d53ecc70a2353c1a84699ac579e21e0a1",
+   "sha256": "0yvpnyzklsjppfhd9spgrf9gh3f36zvs3rz7fyc7bl3n68s3z7wq"
   }
  },
  {
@@ -92501,20 +95061,20 @@
    "deps": [
     "haskell-mode"
    ],
-   "commit": "b28951be9abee7dc234c318849169bb578db3c49",
-   "sha256": "0absv56yqrqf3mzgs064q88lh6k28a7knzqrgdmf4100gf32np4j"
+   "commit": "3735a13c9bbe4fbb788d9dbc363701081253bafa",
+   "sha256": "0nm02pzhvg6lb3j4m8g4jfgkirv8pb6881bk2r74hijxvjamma0b"
   },
   "stable": {
    "version": [
     1,
     4,
-    8
+    9
    ],
    "deps": [
     "haskell-mode"
    ],
-   "commit": "b28951be9abee7dc234c318849169bb578db3c49",
-   "sha256": "0absv56yqrqf3mzgs064q88lh6k28a7knzqrgdmf4100gf32np4j"
+   "commit": "252e3be53eb1bf6bfcd1b3c52af982506c84a89e",
+   "sha256": "19chvk24csg5w38q6yh1wky4nk4z8361p1q5q118427njqkl5ql3"
   }
  },
  {
@@ -92525,8 +95085,8 @@
   "repo": "ananthakumaran/tide",
   "unstable": {
    "version": [
-    20200111,
-    1236
+    20200327,
+    1218
    ],
    "deps": [
     "cl-lib",
@@ -92535,8 +95095,8 @@
     "s",
     "typescript-mode"
    ],
-   "commit": "fd79540360dc8cc96f4a9cfc92d1d51f96fd2b28",
-   "sha256": "0zjs30gi0sqgr6qlvmzq5xcwjd4prni8zn38bd2qxr79r62s1sw7"
+   "commit": "3b45610faaab33bc53ae2d44e1e573f19f35a74a",
+   "sha256": "1507xp8ndhyqvzd5j2qx3y4lpxq52j40srh5mp9784bf1hm9gg2s"
   },
   "stable": {
    "version": [
@@ -92783,11 +95343,11 @@
   "repo": "xuchunyang/tinypng.el",
   "unstable": {
    "version": [
-    20190620,
-    942
+    20200306,
+    911
    ],
-   "commit": "5910738ce129d93789c98f5722d33d1f40d15afc",
-   "sha256": "1mgq8hspkhq6iz84850s9rq0xkhla28dlvcjj0cip4s3npw5fdan"
+   "commit": "f7632e073ce13ef5ce30ae5584cb482a8bb9ffff",
+   "sha256": "1ywhj03j64pp2qmsp2g08xr7pq2qx3i0iwly2hl89hig87va0dpl"
   }
  },
  {
@@ -92831,14 +95391,14 @@
   "repo": "kuanyui/tldr.el",
   "unstable": {
    "version": [
-    20191006,
-    1059
+    20200330,
+    1025
    ],
    "deps": [
     "request"
    ],
-   "commit": "b7f3e3e2171eab5707a42641f4470b69777feaea",
-   "sha256": "0gy5vjffw0bqvhv0gsc654imvridmc7pg88b3nwlfxkrwzi48vxc"
+   "commit": "269bda7001613c0b70c0662d2a74d200765c1dcb",
+   "sha256": "0z8hkp15sdb0x0g67v6xa8ds28awz4i2vcbryj5zfpl15d0fiqc2"
   }
  },
  {
@@ -92864,15 +95424,15 @@
   "repo": "laishulu/emacs-tmux-pane",
   "unstable": {
    "version": [
-    20200227,
-    1230
+    20200419,
+    1331
    ],
    "deps": [
     "names",
     "s"
    ],
-   "commit": "be321093575c1b68946296edd57762c4323c253b",
-   "sha256": "14f1nvnp6qxgq64410kqwi59f29p2shr6v8qg1ck8g9fiarilx5w"
+   "commit": "6e8d0584b0bbd412c5d29c87add7364299b3d2a0",
+   "sha256": "054qncg530paiv1vs27hs94m2y2fzvr4iind1rr16m8v8qf7zia6"
   }
  },
  {
@@ -92886,8 +95446,8 @@
     20190902,
     1055
    ],
-   "commit": "379b457fcff091d2fa47223ade58f457fd6eed28",
-   "sha256": "1pbc4ni9sw99r6z9zm1khlyvf1sxy1813ilv73ai7q2619y6njja"
+   "commit": "5deaec41ed0e5c51715737d7f74c5ae1b3c00387",
+   "sha256": "041fpryiz9584m0sl31jz6bs86621mr7lk6pyhiml46n60iccfzp"
   },
   "stable": {
    "version": [
@@ -93094,6 +95654,24 @@
   }
  },
  {
+  "ename": "tongbu",
+  "commit": "e97578be9aa9bdadc6bdf6c7105242ca9d23bf80",
+  "sha256": "1gnjvb4w0mgr0swpqqk3hmscypv9bdg9q2ixkp2sv19d45gd4pvb",
+  "fetcher": "github",
+  "repo": "xuchunyang/tongbu.el",
+  "unstable": {
+   "version": [
+    20200414,
+    507
+   ],
+   "deps": [
+    "web-server"
+   ],
+   "commit": "6f6e5c5446f0c5735357ab520b249ab97295653e",
+   "sha256": "05pg1qddsl0m4r73smrxpcvyiwa18d9jl6i8nfanlydwmmjqblb9"
+  }
+ },
+ {
   "ename": "tornado-template-mode",
   "commit": "f329baae028fd17618824128f312a49aa0a0807e",
   "sha256": "1sdv9rlhnabydws2sppsjcgqr0lg6bjapv753ksq5aaq21qsps0h",
@@ -93125,10 +95703,13 @@
   "stable": {
    "version": [
     2,
-    0
+    2
+   ],
+   "deps": [
+    "duo"
    ],
-   "commit": "222d5b155dd544cb158b2f84be8ad304b0c69df1",
-   "sha256": "164mip0cibs3c8c4khnbzs8f2pmj57ng5q7hspzv7wk8nvc6d39i"
+   "commit": "2fa2c92bf2c66d87ddcd519277e469f67c6615a9",
+   "sha256": "1i5n2f6jdr9p5mdq0g5j0kf19b3kirj00n36qc6nww3kzldwc4c1"
   }
  },
  {
@@ -93397,8 +95978,8 @@
     20200226,
     1612
    ],
-   "commit": "a269614c69ad8b2703e6e5093d0017d6afad6cca",
-   "sha256": "0w50sh55c04gacx2pp19rvi0fwj9h19c9gzd8dpa82zjiidfxckr"
+   "commit": "afa0c2f98453b9ffd9d8160831debc7e36cdb87b",
+   "sha256": "0jkyrwxmfarbjqidvgxh0x4al9xh1wyd6r1rwvkbwxscz5111h3z"
   },
   "stable": {
    "version": [
@@ -93411,6 +95992,24 @@
   }
  },
  {
+  "ename": "transient-dwim",
+  "commit": "0ad7091aa6129c09e457c71274a42344acd6b823",
+  "sha256": "1q32if4i913vjbcpcdrfznjiih4c30ipnadn84zkr72wn5ndzlpq",
+  "fetcher": "github",
+  "repo": "conao3/transient-dwim.el",
+  "unstable": {
+   "version": [
+    20200411,
+    2015
+   ],
+   "deps": [
+    "transient"
+   ],
+   "commit": "00d111e41e433736422e388e593b5c0df7d21bf9",
+   "sha256": "1gx3v5axvwah1yb0wba2l60dy72lcw7jw86cfjlg3m9a8xd090v7"
+  }
+ },
+ {
   "ename": "transmission",
   "commit": "9ed7e414687c0bd82b140a1bd8044084d094d18f",
   "sha256": "0w0hlr4y4xpcrpvclqqqasggkgrwnzrdib51mhkh3f3mqyiw8gs9",
@@ -93418,14 +96017,14 @@
   "repo": "holomorph/transmission",
   "unstable": {
    "version": [
-    20200215,
-    1350
+    20200321,
+    216
    ],
    "deps": [
     "let-alist"
    ],
-   "commit": "49d3d764819afabf7a66f9d887a6b16c53566317",
-   "sha256": "00hk1rgqilxhlaabi7pgz25k0ykfizwhpp65yzgs453q6kvhccfv"
+   "commit": "05a80e7a90303cd80f67681df2ec8e1bac88c394",
+   "sha256": "02chl6k9r0mki7iy5rs9xwgd74ypf0c79q9d3p7fw1rc1wqxk9ji"
   },
   "stable": {
    "version": [
@@ -93448,11 +96047,20 @@
   "repo": "emacsorphanage/transpose-frame",
   "unstable": {
    "version": [
-    20151126,
-    1426
+    20200307,
+    2119
    ],
-   "commit": "011f420c3496b69fc22d789f64cb8091834feba7",
-   "sha256": "1nhbinwv1ld13c0b0lxlvfm9s6bvxcz2vgfccqg45ncg9rx70rsw"
+   "commit": "12e523d70ff78cc8868097b56120848befab5dbc",
+   "sha256": "01j4ci0c52r2c31hc9r4p7nsb6s8blmvg50g9n5v5h3afjl1c35v"
+  },
+  "stable": {
+   "version": [
+    0,
+    2,
+    0
+   ],
+   "commit": "12e523d70ff78cc8868097b56120848befab5dbc",
+   "sha256": "01j4ci0c52r2c31hc9r4p7nsb6s8blmvg50g9n5v5h3afjl1c35v"
   }
  },
  {
@@ -93589,8 +96197,8 @@
   "repo": "Alexander-Miller/treemacs",
   "unstable": {
    "version": [
-    20200301,
-    1232
+    20200426,
+    1031
    ],
    "deps": [
     "ace-window",
@@ -93602,13 +96210,13 @@
     "pfuture",
     "s"
    ],
-   "commit": "5f82d4414b8e89d45720fbd80acc18be073ff6d7",
-   "sha256": "1azk87gjclilk90fii9hjqr266015mwz58b7wm94zjp65dx1ig36"
+   "commit": "93b4357f7d9ff559c195be1fc4a7ec3554053d48",
+   "sha256": "1rh0bbm2mqy4zwkxrcsc88qpg2j6cbjsqcf8l682ibmmnslrfqh9"
   },
   "stable": {
    "version": [
     2,
-    6
+    8
    ],
    "deps": [
     "ace-window",
@@ -93620,8 +96228,8 @@
     "pfuture",
     "s"
    ],
-   "commit": "e01ad21ea3cc0eba8cd460737116b51be32ffb45",
-   "sha256": "13gs8g05xj7np3i2q3bbxg6zgdiazzn1spxii4x0cyd4pg83c0i1"
+   "commit": "16b0819c6f27f45fe0495a29eeff5f01bd765b04",
+   "sha256": "0m083g3pg0n4ymi1w0jx34awr7cqbm4r561adij9kklblxsz7sc2"
   }
  },
  {
@@ -93632,27 +96240,27 @@
   "repo": "Alexander-Miller/treemacs",
   "unstable": {
    "version": [
-    20200114,
-    1715
+    20200302,
+    558
    ],
    "deps": [
     "evil",
     "treemacs"
    ],
-   "commit": "5f82d4414b8e89d45720fbd80acc18be073ff6d7",
-   "sha256": "1azk87gjclilk90fii9hjqr266015mwz58b7wm94zjp65dx1ig36"
+   "commit": "93b4357f7d9ff559c195be1fc4a7ec3554053d48",
+   "sha256": "1rh0bbm2mqy4zwkxrcsc88qpg2j6cbjsqcf8l682ibmmnslrfqh9"
   },
   "stable": {
    "version": [
     2,
-    6
+    8
    ],
    "deps": [
     "evil",
     "treemacs"
    ],
-   "commit": "e01ad21ea3cc0eba8cd460737116b51be32ffb45",
-   "sha256": "13gs8g05xj7np3i2q3bbxg6zgdiazzn1spxii4x0cyd4pg83c0i1"
+   "commit": "16b0819c6f27f45fe0495a29eeff5f01bd765b04",
+   "sha256": "0m083g3pg0n4ymi1w0jx34awr7cqbm4r561adij9kklblxsz7sc2"
   }
  },
  {
@@ -93663,27 +96271,27 @@
   "repo": "Alexander-Miller/treemacs",
   "unstable": {
    "version": [
-    20200205,
-    548
+    20200421,
+    1426
    ],
    "deps": [
     "cl-lib",
     "treemacs"
    ],
-   "commit": "5f82d4414b8e89d45720fbd80acc18be073ff6d7",
-   "sha256": "1azk87gjclilk90fii9hjqr266015mwz58b7wm94zjp65dx1ig36"
+   "commit": "93b4357f7d9ff559c195be1fc4a7ec3554053d48",
+   "sha256": "1rh0bbm2mqy4zwkxrcsc88qpg2j6cbjsqcf8l682ibmmnslrfqh9"
   },
   "stable": {
    "version": [
     2,
-    6
+    8
    ],
    "deps": [
     "cl-lib",
     "treemacs"
    ],
-   "commit": "e01ad21ea3cc0eba8cd460737116b51be32ffb45",
-   "sha256": "13gs8g05xj7np3i2q3bbxg6zgdiazzn1spxii4x0cyd4pg83c0i1"
+   "commit": "16b0819c6f27f45fe0495a29eeff5f01bd765b04",
+   "sha256": "0m083g3pg0n4ymi1w0jx34awr7cqbm4r561adij9kklblxsz7sc2"
   }
  },
  {
@@ -93694,29 +96302,29 @@
   "repo": "Alexander-Miller/treemacs",
   "unstable": {
    "version": [
-    20200114,
-    1715
+    20200421,
+    1426
    ],
    "deps": [
     "magit",
     "pfuture",
     "treemacs"
    ],
-   "commit": "5f82d4414b8e89d45720fbd80acc18be073ff6d7",
-   "sha256": "1azk87gjclilk90fii9hjqr266015mwz58b7wm94zjp65dx1ig36"
+   "commit": "93b4357f7d9ff559c195be1fc4a7ec3554053d48",
+   "sha256": "1rh0bbm2mqy4zwkxrcsc88qpg2j6cbjsqcf8l682ibmmnslrfqh9"
   },
   "stable": {
    "version": [
     2,
-    6
+    8
    ],
    "deps": [
     "magit",
     "pfuture",
     "treemacs"
    ],
-   "commit": "e01ad21ea3cc0eba8cd460737116b51be32ffb45",
-   "sha256": "13gs8g05xj7np3i2q3bbxg6zgdiazzn1spxii4x0cyd4pg83c0i1"
+   "commit": "16b0819c6f27f45fe0495a29eeff5f01bd765b04",
+   "sha256": "0m083g3pg0n4ymi1w0jx34awr7cqbm4r561adij9kklblxsz7sc2"
   }
  },
  {
@@ -93727,16 +96335,29 @@
   "repo": "Alexander-Miller/treemacs",
   "unstable": {
    "version": [
-    20200301,
-    1156
+    20200421,
+    1426
    ],
    "deps": [
     "dash",
     "persp-mode",
     "treemacs"
    ],
-   "commit": "5f82d4414b8e89d45720fbd80acc18be073ff6d7",
-   "sha256": "1azk87gjclilk90fii9hjqr266015mwz58b7wm94zjp65dx1ig36"
+   "commit": "93b4357f7d9ff559c195be1fc4a7ec3554053d48",
+   "sha256": "1rh0bbm2mqy4zwkxrcsc88qpg2j6cbjsqcf8l682ibmmnslrfqh9"
+  },
+  "stable": {
+   "version": [
+    2,
+    8
+   ],
+   "deps": [
+    "dash",
+    "persp-mode",
+    "treemacs"
+   ],
+   "commit": "16b0819c6f27f45fe0495a29eeff5f01bd765b04",
+   "sha256": "0m083g3pg0n4ymi1w0jx34awr7cqbm4r561adij9kklblxsz7sc2"
   }
  },
  {
@@ -93754,20 +96375,20 @@
     "projectile",
     "treemacs"
    ],
-   "commit": "5f82d4414b8e89d45720fbd80acc18be073ff6d7",
-   "sha256": "1azk87gjclilk90fii9hjqr266015mwz58b7wm94zjp65dx1ig36"
+   "commit": "93b4357f7d9ff559c195be1fc4a7ec3554053d48",
+   "sha256": "1rh0bbm2mqy4zwkxrcsc88qpg2j6cbjsqcf8l682ibmmnslrfqh9"
   },
   "stable": {
    "version": [
     2,
-    6
+    8
    ],
    "deps": [
     "projectile",
     "treemacs"
    ],
-   "commit": "e01ad21ea3cc0eba8cd460737116b51be32ffb45",
-   "sha256": "13gs8g05xj7np3i2q3bbxg6zgdiazzn1spxii4x0cyd4pg83c0i1"
+   "commit": "16b0819c6f27f45fe0495a29eeff5f01bd765b04",
+   "sha256": "0m083g3pg0n4ymi1w0jx34awr7cqbm4r561adij9kklblxsz7sc2"
   }
  },
  {
@@ -94281,11 +96902,11 @@
   "repo": "emacs-typescript/typescript.el",
   "unstable": {
    "version": [
-    20200221,
-    2312
+    20200312,
+    2235
    ],
-   "commit": "a8b7e76e85c1f8b4e353498e3e2d52f1dbcfb6d9",
-   "sha256": "13s4jclbs5563vjxh44ynzxh5k5hq5h1l9icf33wxwwqwk8b93lj"
+   "commit": "102587e458d48ece6335cd708300647f22ec8b8d",
+   "sha256": "0i3zpg21l5id0sfpxyn496wy83mpr66afx71lrnipsy1fqwd2j5x"
   },
   "stable": {
    "version": [
@@ -94622,11 +97243,11 @@
   "repo": "ideasman42/emacs-undo-fu",
   "unstable": {
    "version": [
-    20200229,
-    2346
+    20200413,
+    159
    ],
-   "commit": "8b0b289bbd83fac489baee3f46be2225a868e0f4",
-   "sha256": "1d4chzmx248pyk8qaswxyw4gzyk8r844gzzxh08dnl48406zhcy2"
+   "commit": "0ce9ac36144e80316fff50bfe1bc5dd7e5e7ded6",
+   "sha256": "1mqm2z8bp5dx9f9xq6bpgvk8xmzmh71bgxbff6kcliv0jy3jlakb"
   }
  },
  {
@@ -94637,11 +97258,11 @@
   "repo": "ideasman42/emacs-undo-fu-session",
   "unstable": {
    "version": [
-    20200221,
-    1152
+    20200408,
+    11
    ],
-   "commit": "35d4cf3771d905d647a35df050abfd9015833aad",
-   "sha256": "0846whh01bzxhl98wlywd11ki6wk2iyzzxvc5gnlj85cdasjrz10"
+   "commit": "b808ef0cdcdd2eef221c67eda567eed7fcb3d4af",
+   "sha256": "107dgdw1jh8mipgwal1g86nfckrpz2l53a1sqcg90nb0n8fkvy2q"
   }
  },
  {
@@ -94697,11 +97318,11 @@
   "repo": "purcell/unfill",
   "unstable": {
    "version": [
-    20191227,
-    2026
+    20200304,
+    2218
    ],
-   "commit": "bb5755b2bb7a4d1fbfb525ab7bf9a36e4dede319",
-   "sha256": "0a9gyidkr2i2x9i7jxgdi82ygnb16nij7rrrqb4sslh4yv1hi0qy"
+   "commit": "02c36a04364bcb586477ab79d2b5e0d4e6ae6d47",
+   "sha256": "0pp9ywxkvvfay2pblbqcknf2c3q5izig552r5zksmxbac1rlsvcm"
   },
   "stable": {
    "version": [
@@ -95072,6 +97693,29 @@
   }
  },
  {
+  "ename": "unobtrusive-magit-theme",
+  "commit": "6dd57561738c2dc3ed6dc03f57d2487ce949f035",
+  "sha256": "05djixlq49dn1m64xs8b6w4kg650wrr8rs2pb72p1kfvp2a53g7w",
+  "fetcher": "github",
+  "repo": "tee3/unobtrusive-magit-theme",
+  "unstable": {
+   "version": [
+    20200411,
+    1349
+   ],
+   "commit": "aede357009655d19d4468320b2b61b0f26a47593",
+   "sha256": "1af8c7q3vxj23l2ah5waj9hn5pfp66834b4akm76jc5wqf0sr9j1"
+  },
+  "stable": {
+   "version": [
+    0,
+    4
+   ],
+   "commit": "aede357009655d19d4468320b2b61b0f26a47593",
+   "sha256": "1af8c7q3vxj23l2ah5waj9hn5pfp66834b4akm76jc5wqf0sr9j1"
+  }
+ },
+ {
   "ename": "untitled-new-buffer",
   "commit": "de62e48115e1e5f9506e6d47a3b23c0420c1205b",
   "sha256": "1hpv7k7jhpif9csdrd2gpz71s3fp4svsvrd1nh8hbx7avjl66pjf",
@@ -95213,14 +97857,14 @@
   "repo": "jwiegley/use-package",
   "unstable": {
    "version": [
-    20191126,
-    2034
+    20200322,
+    2110
    ],
    "deps": [
     "bind-key"
    ],
-   "commit": "42db6b3d90ee57d0f5947d3b0bf4b0010bdf7b40",
-   "sha256": "1an2whgy68l9c1l1qx8p8jz47g4hj2abf0kxvcmbc6wj8lp5zny8"
+   "commit": "c873d5529c9c80cb58222f22873a4f081c307cb2",
+   "sha256": "0jbq3w9ijsbl5gblhr24b0rh4gyp1xx696g20l438a7sbsk4b531"
   },
   "stable": {
    "version": [
@@ -95251,8 +97895,8 @@
     "key-chord",
     "use-package"
    ],
-   "commit": "42db6b3d90ee57d0f5947d3b0bf4b0010bdf7b40",
-   "sha256": "1an2whgy68l9c1l1qx8p8jz47g4hj2abf0kxvcmbc6wj8lp5zny8"
+   "commit": "c873d5529c9c80cb58222f22873a4f081c307cb2",
+   "sha256": "0jbq3w9ijsbl5gblhr24b0rh4gyp1xx696g20l438a7sbsk4b531"
   },
   "stable": {
    "version": [
@@ -95313,8 +97957,8 @@
     "system-packages",
     "use-package"
    ],
-   "commit": "42db6b3d90ee57d0f5947d3b0bf4b0010bdf7b40",
-   "sha256": "1an2whgy68l9c1l1qx8p8jz47g4hj2abf0kxvcmbc6wj8lp5zny8"
+   "commit": "c873d5529c9c80cb58222f22873a4f081c307cb2",
+   "sha256": "0jbq3w9ijsbl5gblhr24b0rh4gyp1xx696g20l438a7sbsk4b531"
   },
   "stable": {
    "version": [
@@ -95389,30 +98033,6 @@
   }
  },
  {
-  "ename": "usql",
-  "commit": "c8f6b968312a09d062fcc8f942d29c93df2a5a3c",
-  "sha256": "10ks164kcly5gkb2qmn700a51kph2sry4a64jwn60p5xl7w7af84",
-  "fetcher": "github",
-  "repo": "nickbarnwell/usql.el",
-  "unstable": {
-   "version": [
-    20180305,
-    2323
-   ],
-   "commit": "bfaf428b366a9a185eef84f0d645a98dc918fe3d",
-   "sha256": "00b1g30l86abg65wc9f4vcn4ccqa2zmn2mi33vdjrq3phw17d2ks"
-  },
-  "stable": {
-   "version": [
-    0,
-    0,
-    3
-   ],
-   "commit": "bfaf428b366a9a185eef84f0d645a98dc918fe3d",
-   "sha256": "00b1g30l86abg65wc9f4vcn4ccqa2zmn2mi33vdjrq3phw17d2ks"
-  }
- },
- {
   "ename": "utop",
   "commit": "30489fe52b4031184e54f994770aa3291257bc9d",
   "sha256": "0lv16kl29gc9hdcpn04l85pf7x93vkl41s4mgqp678cllzyr0cq7",
@@ -95423,17 +98043,17 @@
     20190715,
     1836
    ],
-   "commit": "c719401992c255f30ed42c4a942651ce7982ce9d",
-   "sha256": "1dafg3549mpkkl4c698byghai7nlr9nfzl2l7bgqxqwh5qrwp15k"
+   "commit": "471cb311159773bbb280d0f1a4b47c54456c67a9",
+   "sha256": "09hxi1v5wvb952rwfmj48n6ndxkqn8ciaqj1cd9xgkw62h54agq9"
   },
   "stable": {
    "version": [
     2,
-    4,
-    3
+    5,
+    0
    ],
-   "commit": "ba35712f1bd1c489a54088a4fd807f8484c1d98a",
-   "sha256": "1bl4943qpi3qy152dbdm5glhx19zsiylmn4rcxi8l66g58hikyjp"
+   "commit": "471cb311159773bbb280d0f1a4b47c54456c67a9",
+   "sha256": "09hxi1v5wvb952rwfmj48n6ndxkqn8ciaqj1cd9xgkw62h54agq9"
   }
  },
  {
@@ -96044,20 +98664,20 @@
   "repo": "federicotdn/verb",
   "unstable": {
    "version": [
-    20200225,
-    2133
+    20200404,
+    951
    ],
-   "commit": "01555842722ee5ee3abfca1bffc60a188dd5d5ac",
-   "sha256": "1wa9jvz3yph0cxpda4s8lvnlpnlj4vpmvbvg5kvz6pi8kv39ajws"
+   "commit": "82cf1bde07b0c96b25d1dd16268663d8931fbb60",
+   "sha256": "18pjsjxrf844y3aw0fvj451cz08kw2j3idmhh3l15aj3jdwzjfbq"
   },
   "stable": {
    "version": [
     2,
-    8,
+    9,
     0
    ],
-   "commit": "f9199768e55849cbe5a879a530b33bce88ac4c2c",
-   "sha256": "1zpsvjsr5mvi0l0mgfwirxg5bkhkp305h85fbv5g3hr4g0vnr448"
+   "commit": "2c4252b2b57f65ebd9fd2c7a7771b4d0354f1d4c",
+   "sha256": "0g0hi1bhrx8bj0wbxwaimfpvl491sd079551199hcyhq607pcpp2"
   }
  },
  {
@@ -96098,6 +98718,30 @@
   }
  },
  {
+  "ename": "versuri",
+  "commit": "056daa8d5563dd6ffb9c93630f9b357f73c1e58a",
+  "sha256": "0nidgn9gdrrvqzbfjwvhs9bycbj3l9jbcablnbs2yxf903zlgn9b",
+  "fetcher": "github",
+  "repo": "mihaiolteanu/versuri",
+  "unstable": {
+   "version": [
+    20200316,
+    852
+   ],
+   "deps": [
+    "anaphora",
+    "dash",
+    "esqlite",
+    "esxml",
+    "ivy",
+    "request",
+    "s"
+   ],
+   "commit": "41e20583d1080beeeda0e36d1b2e6d74b9c57920",
+   "sha256": "0fgc1rai9gp6lwl0rxr9400vi420py0c0b8nv9wzl12ph80yhwj7"
+  }
+ },
+ {
   "ename": "vertica",
   "commit": "f98a06b794ef0936db953f63679a63232295a849",
   "sha256": "1ljjk6zrbr2k0s0iaqd9iq3j45cavijcx0rqdidliswnfllav4ng",
@@ -96123,14 +98767,14 @@
   "repo": "baron42bba/vertica-snippets",
   "unstable": {
    "version": [
-    20191213,
-    1109
+    20200423,
+    1200
    ],
    "deps": [
     "yasnippet"
    ],
-   "commit": "2d1c45c63392ed869625bd062c19422600c9f555",
-   "sha256": "1gn57jfmma5h90m3b7l698rncmbygd2dbp48vvx1d1z9ks2rm8gg"
+   "commit": "6ced718d9120878878700592fab430a8542b748f",
+   "sha256": "1x04wrf3h6f4wsh4n2cl3n4byj9pxni918ri49hqxzm8h8hivigc"
   }
  },
  {
@@ -96179,22 +98823,22 @@
  },
  {
   "ename": "vhdl-tools",
-  "commit": "69fe2f8fb98ac1af1d3185f62ae1c89e646cfebf",
-  "sha256": "006d9xv60a90xalagczkziiimwsr1np9nn25zvnc4nlbf8j3fbbw",
-  "fetcher": "github",
-  "repo": "csantosb/vhdl-tools",
+  "commit": "b1a3336bff4d677b3bc7fbb8ef230ffc7b78e268",
+  "sha256": "0xdq9sicwpv3qzy833fqhvi4yllqmqgd4p9lbgq7dn1g8qz2gakn",
+  "fetcher": "gitlab",
+  "repo": "emacs-elisp/vhdl-tools",
   "unstable": {
    "version": [
-    20200128,
-    957
+    20200330,
+    1819
    ],
    "deps": [
     "ggtags",
     "helm-rg",
     "outshine"
    ],
-   "commit": "8584e73ab550841b3df7419dea32b874cdd64425",
-   "sha256": "0s0ljcn6lgcr6zqhw31llg4ri2drkxbz31kviir0xwgr8hn4p5dn"
+   "commit": "11645a398a11cdc4b84838294521ecfb229d7856",
+   "sha256": "00wqvszxsfyxx7pn9w5jn5brw2lx7d577zbc7sc4jz5nlk0csxd4"
   },
   "stable": {
    "version": [
@@ -96332,15 +98976,15 @@
   "repo": "mrkkrp/vimish-fold",
   "unstable": {
    "version": [
-    20200223,
-    1836
+    20200329,
+    1242
    ],
    "deps": [
     "cl-lib",
     "f"
    ],
-   "commit": "d3248a41a79092ea270b07ac60bf7420befa2146",
-   "sha256": "164jx09m7sgmffixlarjdyn8zdrqcmm4ngwddpjyv3phi65pnpj0"
+   "commit": "63685239655a151181b9152e45478dad587f86f2",
+   "sha256": "1l6zca08diq3ppmg1pllihbfj0pcaqvbnisryr92mvbblhk44wxs"
   },
   "stable": {
    "version": [
@@ -96386,8 +99030,8 @@
     "adaptive-wrap",
     "visual-fill-column"
    ],
-   "commit": "91fb699ead3f86663e56b48a10adeb5723ca7b84",
-   "sha256": "0rfrgjflgn0c9xj7f4fwdzyclp2p9fbfir19iwy77z7jnkjk78dv"
+   "commit": "291f6178a5423f01f2f69d6bc48603d4f605b61a",
+   "sha256": "15kg23xkcc060y8a5f9657gk3bvkax23myhajaa0b2i1qcd6p43i"
   }
  },
  {
@@ -96483,11 +99127,11 @@
   "repo": "joostkremers/visual-fill-column",
   "unstable": {
    "version": [
-    20190422,
-    2154
+    20200303,
+    2318
    ],
-   "commit": "9a3a2ef3c7c76666a0c9271a821256eec9daab2a",
-   "sha256": "1z535rddy8q4gxdmsf7p1z3hm2vav0zcjh9kpxnq3v49scq1nd5j"
+   "commit": "a19fbe8bcfab678516ffcaa84b516527a0ce45cf",
+   "sha256": "157f8d302vv7ds03y21j4rz5jvqbkm4639ak25zfhshd5lyacxyj"
   },
   "stable": {
    "version": [
@@ -96559,6 +99203,21 @@
   }
  },
  {
+  "ename": "vlc",
+  "commit": "bcb69969893a3f70fe9e7e3b2a836df3ba212fb8",
+  "sha256": "1pf3ry205pl4369hbpvcc1xlicf16ws4dc018mk6c1m4fi9qc3lk",
+  "fetcher": "github",
+  "repo": "xuchunyang/vlc.el",
+  "unstable": {
+   "version": [
+    20200328,
+    1143
+   ],
+   "commit": "932840f874e7510ee86e796bb5dc20d44514e31a",
+   "sha256": "0vqsdvaqi8ih98ic9hdwwwwcs4v0yjz3nrwwwkwh2a99l9a59j5g"
+  }
+ },
+ {
   "ename": "vlf",
   "commit": "9116b11eb513dd9e1dc9542d274dd60f183b24c4",
   "sha256": "1ipkv5kmda0l39xwbf7ns9p0mx3kb781mxsm9vmbkhr5x577s2j8",
@@ -96746,11 +99405,11 @@
   "repo": "akermu/emacs-libvterm",
   "unstable": {
    "version": [
-    20200224,
-    307
+    20200418,
+    1610
    ],
-   "commit": "b9bccf38dfeb495bfd93d55618b3791ebad24588",
-   "sha256": "053x5zpfsj0n0a8gdzra7awg3y3py2a2nxv14vn4g8r7hrhdwac0"
+   "commit": "0b04d31e2f0daf45452da2c5e214d2b42cd46a46",
+   "sha256": "1bdbr1hpzipxk41wx4qyvr2rkk4q4j8qnc09gd51wak7n4w3xz48"
   }
  },
  {
@@ -96761,14 +99420,14 @@
   "repo": "jixiuf/vterm-toggle",
   "unstable": {
    "version": [
-    20200228,
-    628
+    20200402,
+    1516
    ],
    "deps": [
     "vterm"
    ],
-   "commit": "24d68a0ab920875d0834598688128e692fe9a5b2",
-   "sha256": "0bzxd5xzpajvg7mv7ggplcba7plchhlrl1m14dnx3nrx6q0936cr"
+   "commit": "15901e1e1eebd957ef18d38c920f944558ebd4fb",
+   "sha256": "1dcr242i9r7r4mr43qfv5ij254dnhf04gfi71y507zfpdr17zdix"
   }
  },
  {
@@ -96830,6 +99489,43 @@
   }
  },
  {
+  "ename": "vuiet",
+  "commit": "4f63056cf2f637fcb3426851501eeff5e6f40bb3",
+  "sha256": "0hf99rgzhi66in3lr0pl3g8g56l00zcvz1qgclfsbw1yb9ig626y",
+  "fetcher": "github",
+  "repo": "mihaiolteanu/vuiet",
+  "unstable": {
+   "version": [
+    20200424,
+    1400
+   ],
+   "deps": [
+    "bind-key",
+    "lastfm",
+    "mpv",
+    "s",
+    "versuri"
+   ],
+   "commit": "5da06a8acebcaf84a3581610ff24aae1b46f786b",
+   "sha256": "16yfnqpdzi3bih16d7dzbqmd30m7w8rkjylnsg9m951vc0lysk3p"
+  },
+  "stable": {
+   "version": [
+    1,
+    0
+   ],
+   "deps": [
+    "bind-key",
+    "lastfm",
+    "mpv",
+    "s",
+    "versuri"
+   ],
+   "commit": "4e15dacd6445d490fefc47070f8e5b98db5e0dc6",
+   "sha256": "18qcw9mh57jrd6qrgcma82q28d1dab2dy6v8pi08kadcy4w95y10"
+  }
+ },
+ {
   "ename": "vyper-mode",
   "commit": "492d42d60bc188a567c5e438b838a275a124c699",
   "sha256": "0mf1w4mw0ijmd9zxip1df85cp15fbvv9j5dqjmb8lfm4m43wpd96",
@@ -96874,11 +99570,11 @@
   "repo": "emacs-w3m/emacs-w3m",
   "unstable": {
    "version": [
-    20200113,
-    2320
+    20200325,
+    2226
    ],
-   "commit": "6eda3828bb8530ecd69a3823bd5569a5f779c239",
-   "sha256": "0ij85i0zy9wi1cgm0j8cvqpv9802kfy7g4ffx381l7k28m35lqh2"
+   "commit": "e522a44b151d69d4a176e8809225598ab540fc4d",
+   "sha256": "1alishzz4j1hbfyfi09rkhffx6gv16yxln7q8jx25shb9rssivyz"
   }
  },
  {
@@ -96966,11 +99662,11 @@
   "repo": "darkstego/wakib-keys",
   "unstable": {
    "version": [
-    20190910,
-    1011
+    20200326,
+    2329
    ],
-   "commit": "23237fc2c255de798b8d3fc2cb68c7c22b53caa9",
-   "sha256": "1s5n2gcldwj5srjn44pigd788x0hv4c7lz75krqyz1hysriydv9p"
+   "commit": "7564b39aaa2b38ccca0a21bc72a797f065a0b171",
+   "sha256": "132jwf1d54ykbvw4f9f7i27ig5hpc6wsmm1ib44m5hx1kv1kxvh6"
   }
  },
  {
@@ -97000,15 +99696,30 @@
   "repo": "abrochard/walkman",
   "unstable": {
    "version": [
-    20200224,
-    1501
+    20200418,
+    1554
    ],
    "deps": [
     "org",
     "transient"
    ],
-   "commit": "bdc026b58dc023cf078ec5eafae3b334ac5c39ef",
-   "sha256": "13bhdmylg7k9r5y6wi158rv8rm4cndv8av35g65vc6qk0bgnnwpz"
+   "commit": "07a7710084c328dc238626f8b6e7d019380502de",
+   "sha256": "13g8wgcv3qydx6vhznx1iypmlrzl3cm02prrkqp70gjvgblk06nm"
+  }
+ },
+ {
+  "ename": "wallpaper",
+  "commit": "764c5b8438197d6f24113e7b3a696b8327a8d6d9",
+  "sha256": "18wpj5qzac0msp9mi8511kpw6157k7dj9zvzh1y6rhd7a5nd0clg",
+  "fetcher": "github",
+  "repo": "farlado/emacs-wallpaper",
+  "unstable": {
+   "version": [
+    20200408,
+    1353
+   ],
+   "commit": "9fb5be9c2f7279f7ef2860eefd416359b9026ba3",
+   "sha256": "18vm8g4iwf2a9l40bg7cvpdziv10mv24x61z86xwjmnqbr7sxd8q"
   }
  },
  {
@@ -97019,15 +99730,15 @@
   "repo": "cmpitg/wand",
   "unstable": {
    "version": [
-    20200211,
-    2238
+    20200302,
+    1536
    ],
    "deps": [
     "dash",
     "s"
    ],
-   "commit": "fe4bf7b35b61eda15437a212e96d08395d307f73",
-   "sha256": "1rfiyh2v28zpdv8sd6hjz5fgv3knyhgz1ymp9ycl9m4y93s78wbq"
+   "commit": "731b5ca33269fe563239bff16da6c41489432b80",
+   "sha256": "0r5mbslwf3x0mrndz65w4pp88xii019zg5p6x214zxpr87s75zdp"
   }
  },
  {
@@ -97070,14 +99781,14 @@
   "repo": "wanderlust/wanderlust",
   "unstable": {
    "version": [
-    20190919,
-    859
+    20200124,
+    858
    ],
    "deps": [
     "semi"
    ],
-   "commit": "7a919e422a48f5021576e68282703de430558879",
-   "sha256": "0k2jklkpqm33bimxy4vnssdc9xa7wfnvay3ng0av1bwxfgxfrmdr"
+   "commit": "7af0d582cd48a37469e0606ea35887740d78c8b5",
+   "sha256": "08gr4q5i4z1bs5qbfxmf9imjin1v1qvsk7x37qvr84p16kdr9vxn"
   }
  },
  {
@@ -97337,11 +100048,11 @@
   "repo": "fxbois/web-mode",
   "unstable": {
    "version": [
-    20200229,
-    1859
+    20200424,
+    1153
    ],
-   "commit": "f271e1b97989e7de8e33cb49a97a829ebec1911d",
-   "sha256": "192zkjlz3dm1p6lrivc0qqws7mfyv1nvbgcq71gfpm9x085rqyn4"
+   "commit": "6774c596a9b3988989d3bc96b6194e6f0df1d1b6",
+   "sha256": "1kv06qjcjxy5jw68za5bkmj4kwzc1snlxd7nahcy29rjkiczlh9c"
   },
   "stable": {
    "version": [
@@ -97430,11 +100141,11 @@
   "repo": "eschulte/emacs-web-server",
   "unstable": {
    "version": [
-    20200216,
-    1126
+    20200330,
+    1407
    ],
-   "commit": "33afdb46e1cd61251736816d965495525b36c9cd",
-   "sha256": "109gxdk7xznxm85fvlvccj01bznali98wzywypzy73l8zxs2yj74"
+   "commit": "9edf4b5e3c6cea1738acf08241919e00437ec530",
+   "sha256": "1cf2g67q064pnji0hbg0x5ziqmxwim127sd4q849cifxj7a4rqaw"
   }
  },
  {
@@ -97481,28 +100192,28 @@
   "repo": "etu/webpaste.el",
   "unstable": {
    "version": [
-    20200227,
-    912
+    20200416,
+    1007
    ],
    "deps": [
     "cl-lib",
     "request"
    ],
-   "commit": "ef33b0f298bf36cfb84b37af4870706fc376b0c3",
-   "sha256": "0v2yw3jbwlamkycgfmd5abxr764zyzcggyzn2ybzlkffxaxaz6dw"
+   "commit": "7a3060266459566e450c5cafc00bc90c6508eae5",
+   "sha256": "064lihjd6bddvlick8md1anhinkc88asvliw0z34c8bckxc3hqpr"
   },
   "stable": {
    "version": [
     3,
-    0,
-    2
+    1,
+    0
    ],
    "deps": [
     "cl-lib",
     "request"
    ],
-   "commit": "1a6c0e967f0340d825df33f4fab339eb904f5f5f",
-   "sha256": "15b97rszszgcivrsdx7368nxdb8lsag6wvmcvvm977splh9yjpwi"
+   "commit": "7a3060266459566e450c5cafc00bc90c6508eae5",
+   "sha256": "064lihjd6bddvlick8md1anhinkc88asvliw0z34c8bckxc3hqpr"
   }
  },
  {
@@ -97513,14 +100224,14 @@
   "repo": "ahyatt/emacs-websocket",
   "unstable": {
    "version": [
-    20200102,
-    637
+    20200419,
+    2124
    ],
    "deps": [
     "cl-lib"
    ],
-   "commit": "ee44af2cc55415591e7ccb1007193294c702affd",
-   "sha256": "01pc03kial647r1nad1vw6rcbd251hrvjjh87gqqlhh9ksrcwnl9"
+   "commit": "078f83902c0846c00ed8e3b6c5add7ff9b98d8f9",
+   "sha256": "11nacz0vvhaa8582r0ylx5w886y2qysbvrh9s064g979vjyfh9rg"
   },
   "stable": {
    "version": [
@@ -97911,11 +100622,11 @@
   "repo": "purcell/whitespace-cleanup-mode",
   "unstable": {
    "version": [
-    20190106,
-    2022
+    20200304,
+    2227
    ],
-   "commit": "121854747776df1b78d0ef89efb6d01c2c1e8c89",
-   "sha256": "1qli6vwdnm73jnv37lyf1xb5ykav322xjm1fqmgb1369k2fgkl44"
+   "commit": "5fac49636cd72a0043e2473c9a09a788cfd68d5f",
+   "sha256": "0myx8vayakmhb5hbrskk58rkb1f0jdw7kinvk8fvv73g050yk28d"
   },
   "stable": {
    "version": [
@@ -97958,11 +100669,11 @@
   "repo": "lassik/emacs-whois",
   "unstable": {
    "version": [
-    20190529,
-    1554
+    20200409,
+    1538
    ],
-   "commit": "c86c0ad9adc4787a422cca11b66229cc14a6d83a",
-   "sha256": "1abn5rzapbvk217h1s7lk166y48g7fvdvjmy2fsbz60rwq2zhpk6"
+   "commit": "907abd9538c4a1e088853b816af883e5040fc430",
+   "sha256": "1qfkppciijyyg76idqqzjy351rki8y4pffwicprnrhv1qixfhdvv"
   },
   "stable": {
    "version": [
@@ -97981,20 +100692,19 @@
   "repo": "purcell/whole-line-or-region",
   "unstable": {
    "version": [
-    20190411,
-    215
+    20200305,
+    221
    ],
-   "commit": "15f17488f98868f1628a3f9d91a812b1f89bc73a",
-   "sha256": "18qzmpw41bqw2ymynya3hgn9skj13r5s6d2b14r78hvmv4bc9h9r"
+   "commit": "71f84725e2643b2ee74f27c60c4fd8b79c9c3c97",
+   "sha256": "1rs446cwbp6i79wi7srzaxg9hdahagcjkjill34j70hdy1r4xjas"
   },
   "stable": {
    "version": [
     1,
-    3,
-    1
+    6
    ],
-   "commit": "a60e022b30c2f4d3118bcaef1adb77b90e0ca941",
-   "sha256": "0ip0vkqb4dm88xqzgwc9yaxzf4sc4x006m6z73a3lbfmrncy2c1d"
+   "commit": "0d11174ba5e1145167000aa8f65c273a3d0db6b3",
+   "sha256": "1zw4aabadhsn81i3bwdl4717fq6a0njypavw2riyzbz465axd60i"
   }
  },
  {
@@ -98053,8 +100763,8 @@
     "makey",
     "s"
    ],
-   "commit": "0379c80a0c2df77cd18e95741caf6fc8acd90a41",
-   "sha256": "1lkmr9024x8nv9chl21qp9dnl64qlp0lrfy592pzidpr3997xkjf"
+   "commit": "79098cd4cdfa144807cb710af4589c13a7033842",
+   "sha256": "04gfhjpn4q8d4y6177gdffwjbqq627083pff2ckw79pbvlj9f2mm"
   }
  },
  {
@@ -98065,15 +100775,15 @@
   "repo": "rolandwalker/button-lock",
   "unstable": {
    "version": [
-    20150223,
-    1354
+    20200309,
+    1323
    ],
    "deps": [
     "button-lock",
     "nav-flash"
    ],
-   "commit": "f9082feb329432fcf2ac49a95e64bed9fda24d58",
-   "sha256": "06qjvybf65ffrcnhhbqs333lg51fawaxnva3jvdg7zbrsv4m9acl"
+   "commit": "9afe0f4d05910b0cccc94cb6d4d880119f3b0528",
+   "sha256": "1d893isxvchrqxw6iaknbv8l31rgalfc4hmppf0l87gxp5y9hxa2"
   },
   "stable": {
    "version": [
@@ -98295,6 +101005,21 @@
   }
  },
  {
+  "ename": "winds",
+  "commit": "43a07dc1e9af8f832330131764147907826e06e5",
+  "sha256": "1a5kw44pyilgaydyp87his41b2hw0xijp6sggl7bd60jwgspa0wy",
+  "fetcher": "github",
+  "repo": "Javyre/winds.el",
+  "unstable": {
+   "version": [
+    20200425,
+    1643
+   ],
+   "commit": "a998e9397836f441d51f3c8d001dd407258a0ff5",
+   "sha256": "1qgkm1fl21r56gbsvwmld8mdf970zwjsj68qdpsa9m0j4kbw9m9c"
+  }
+ },
+ {
   "ename": "windsize",
   "commit": "855ea20024b606314f8590129259747cac0bcc97",
   "sha256": "1fzqf86d7pimnc87xdgvpv4hnv7j6ngmk1sjvazj6726xygswkyv",
@@ -98429,11 +101154,11 @@
   "repo": "ArneBab/wisp",
   "unstable": {
    "version": [
-    20190921,
-    2218
+    20191114,
+    2340
    ],
-   "commit": "0d2c025ac4cfd394706c07fbb60999eaf711020b",
-   "sha256": "1fs4dpc78aax4mzcp0vzcvzf2mxiwzbdwjfgpylwppxamqdycdwy"
+   "commit": "33b4fcdd8a17aa19d57971e4f6db5fcb7758843c",
+   "sha256": "09rrv89b17s4sklkqgci1pmzlnkjlrira22884dh10sbfij42vbp"
   }
  },
  {
@@ -98553,14 +101278,26 @@
   "repo": "p3r7/with-shell-interpreter",
   "unstable": {
    "version": [
-    20200217,
-    1112
+    20200419,
+    850
+   ],
+   "deps": [
+    "cl-lib"
+   ],
+   "commit": "ffd9c6a3a058fe072458f90e117590988042c662",
+   "sha256": "194k0j6mg8dh5z5ia204glicbmy2laxyny7snbvf7b6xd9ajmj3w"
+  },
+  "stable": {
+   "version": [
+    0,
+    1,
+    0
    ],
    "deps": [
     "cl-lib"
    ],
-   "commit": "62c3b0bd16c6fc4a0ee42f4d6a2dd7f66beab7cc",
-   "sha256": "1hp3i9njipzppdlwl7a3xhdrvvmc0ynmh85nmj0csxzpnahyp12d"
+   "commit": "92549f9f80067ce32248ad2c05649673d2084fcf",
+   "sha256": "1dip0d5llr6sjisww283051s21ir8d5nzjdh22k3fjnz68mqq63s"
   }
  },
  {
@@ -98985,14 +101722,14 @@
   "repo": "joostkremers/writeroom-mode",
   "unstable": {
    "version": [
-    20200225,
-    2011
+    20200409,
+    1927
    ],
    "deps": [
     "visual-fill-column"
    ],
-   "commit": "c806c41f7c2ecb3f945aef7f0c25e3e223ededc0",
-   "sha256": "0wi8l1nz4g8ygxvffpa525lm80l0jwj92argsa5i11sh7w6hjksv"
+   "commit": "9b6e55fe49ab7760a826179df4f1c3b6c9a759df",
+   "sha256": "0kf88big78lnc2gxn00sykwi1ky4hacr7al2ihgwpznq9vbrj3p1"
   },
   "stable": {
    "version": [
@@ -99091,20 +101828,20 @@
   "repo": "redguardtoo/wucuo",
   "unstable": {
    "version": [
-    20200116,
-    1447
+    20200421,
+    441
    ],
-   "commit": "92e562077cc21dbe285ad2fa7b171c8aae7b556f",
-   "sha256": "0wbmprg7nbwwpxffknkrg662v0dzdvlipz9f104bhaxvfcmy36ij"
+   "commit": "2b7632813fdbbfe5abddf7ce425dea607c9946cc",
+   "sha256": "1h3d7qqajwl9zm5j77y5s3s9sq0hpdakbapsd34xg2x87v0p1320"
   },
   "stable": {
    "version": [
     0,
-    0,
-    7
+    1,
+    0
    ],
-   "commit": "92e562077cc21dbe285ad2fa7b171c8aae7b556f",
-   "sha256": "0wbmprg7nbwwpxffknkrg662v0dzdvlipz9f104bhaxvfcmy36ij"
+   "commit": "2b7632813fdbbfe5abddf7ce425dea607c9946cc",
+   "sha256": "1h3d7qqajwl9zm5j77y5s3s9sq0hpdakbapsd34xg2x87v0p1320"
   }
  },
  {
@@ -99215,11 +101952,11 @@
   "repo": "xahlee/xah-css-mode",
   "unstable": {
    "version": [
-    20190705,
-    750
+    20200309,
+    1750
    ],
-   "commit": "ada8513eadca5c5797a384040acca2fceced3e26",
-   "sha256": "0x9zbck87s4cfk99i2kq1a0rf5lvy5bms58d75fd8gn7xz42cf9x"
+   "commit": "43dbab2b8c35bd6892fe80bf064b41bd731545ff",
+   "sha256": "0m6l2k22pfcp6s3dadm3w1mr7ar590xl64zjsr0dl9d8spc6gbz1"
   }
  },
  {
@@ -99260,11 +101997,11 @@
   "repo": "xahlee/xah-fly-keys",
   "unstable": {
    "version": [
-    20200215,
-    124
+    20200424,
+    2358
    ],
-   "commit": "064cb19b1d3d133ea0f123e570f0c6c3351af9c7",
-   "sha256": "0vsm7lbv0sw0zxiprgq756fcl1hz8aj5v1lczwzd7v7sxzkcslv6"
+   "commit": "b0d87ab312a51ab8484deb8994e4effb3112d516",
+   "sha256": "1ivlcxm423syd35njrpnswdra3f30fqsfr6qdffiy6vajy0ykda7"
   }
  },
  {
@@ -99290,11 +102027,11 @@
   "repo": "xahlee/lookup-word-on-internet",
   "unstable": {
    "version": [
-    20200225,
-    31
+    20200420,
+    1528
    ],
-   "commit": "5ddd01520ca49d459f67567901fc08c84aa553bd",
-   "sha256": "07fx4vypgim39rw022v5m7gfp68095s393j8s28k2j038jqgzdp5"
+   "commit": "c97a43dc0cebbfc519d0cce5b547dcc5e22b2085",
+   "sha256": "1qkazkisgw5c9xzxqm6xzm124r1v4d4dcyazvw66nz5j2zl1i5qd"
   }
  },
  {
@@ -99743,14 +102480,11 @@
   "repo": "atomontage/xterm-color",
   "unstable": {
    "version": [
-    20200103,
-    1327
-   ],
-   "deps": [
-    "cl-lib"
+    20200424,
+    2025
    ],
-   "commit": "4b21b619841c93c4700039a93eb1881beee9248c",
-   "sha256": "1v4i74xdp26k9r1nvbdz625l62acvfb2kkp1nvld05p6xkh0q68z"
+   "commit": "c389016e029c279c81fe4c0e1d757949b5ef36c0",
+   "sha256": "16lpjbb49f465h36x22ch84133d0ihbqpfhjh46sncpj22ddj8pl"
   },
   "stable": {
    "version": [
@@ -99829,6 +102563,57 @@
   }
  },
  {
+  "ename": "xwwp",
+  "commit": "83c34ae5023410cc31f93255275d6465b6152a10",
+  "sha256": "07r62haa1ks2xvfh4zkqadpsjdhk6kbafk1fmvcim3m13ma6gch1",
+  "fetcher": "github",
+  "repo": "canatella/xwwp",
+  "unstable": {
+   "version": [
+    20200413,
+    757
+   ],
+   "commit": "dcf6f9430dd9745e5f2705c0f42e013fab961c0e",
+   "sha256": "1aks12zbfcq4m4s1baxcdg2xjn2y9f4dw19576yp35hg2cb550v6"
+  }
+ },
+ {
+  "ename": "xwwp-follow-link-helm",
+  "commit": "83c34ae5023410cc31f93255275d6465b6152a10",
+  "sha256": "0dcbhc4zy4n03fi6pz3k9hlnpk7ys6xx1v6c4rwcjzy5ly80alwq",
+  "fetcher": "github",
+  "repo": "canatella/xwwp",
+  "unstable": {
+   "version": [
+    20200331,
+    800
+   ],
+   "deps": [
+    "xwwp"
+   ],
+   "commit": "dcf6f9430dd9745e5f2705c0f42e013fab961c0e",
+   "sha256": "1aks12zbfcq4m4s1baxcdg2xjn2y9f4dw19576yp35hg2cb550v6"
+  }
+ },
+ {
+  "ename": "xwwp-follow-link-ivy",
+  "commit": "83c34ae5023410cc31f93255275d6465b6152a10",
+  "sha256": "0i5wqj4170iqznghy02dc2g5l5cs76hjhk88dcwwpbss1mabj8ig",
+  "fetcher": "github",
+  "repo": "canatella/xwwp",
+  "unstable": {
+   "version": [
+    20200331,
+    800
+   ],
+   "deps": [
+    "xwwp"
+   ],
+   "commit": "dcf6f9430dd9745e5f2705c0f42e013fab961c0e",
+   "sha256": "1aks12zbfcq4m4s1baxcdg2xjn2y9f4dw19576yp35hg2cb550v6"
+  }
+ },
+ {
   "ename": "yabin",
   "commit": "cc44b28e32ff9b35f60744a175c2d1e3036db8bc",
   "sha256": "1kmpm2rbb43c9cgp44qwd24d90mj48k3gyiir3vb6zf6k3syrc17",
@@ -99908,8 +102693,8 @@
     20171022,
     1412
    ],
-   "commit": "db84dbb30ed39079d34d5eba01cc67af6f7d92de",
-   "sha256": "1syxgm3a51i3kybbjgjlwlrrgr6rscr4iqam3aa7r55z0hlx8k2r"
+   "commit": "e844b662819344eb726f67e525f377b9ee808b24",
+   "sha256": "0d8c70bip8wxpnjqhqf33kq4q2lb2qdk9w2a4bp2v707fpr4pv73"
   }
  },
  {
@@ -100046,11 +102831,11 @@
   "repo": "Kungsgeten/yankpad",
   "unstable": {
    "version": [
-    20200108,
-    1811
+    20200409,
+    1747
    ],
-   "commit": "dd97994a8bff58e4d98aa6cb90aa08c5ddde5c82",
-   "sha256": "114qnr8s5v2dr3v3jvy4aagyi1wbn3fw27mrb6zdg6faxvfpd8sk"
+   "commit": "acfccf3633d7fd3b91d717fda4ae98e8e3345a06",
+   "sha256": "0xprfvgfcjdl20j1hxjk3f4gy7m3v0x9p0vyl2ygxmjj7ibgi7kw"
   },
   "stable": {
    "version": [
@@ -100069,11 +102854,11 @@
   "repo": "JorisE/yapfify",
   "unstable": {
    "version": [
-    20200117,
-    1245
+    20200406,
+    830
    ],
-   "commit": "0b4f20af0b00a86353ddc286df26eade89381269",
-   "sha256": "1k91fav3dvdjkg632zhkmgbjvichbixwqdir4x8lc332ma3wwi0h"
+   "commit": "3df4e8ce65f55fd69479b3417525ce83a2b00b45",
+   "sha256": "13q84a4q5bv56r9dhi84jqbkx7dc1bvi42s01ahh8vmdvg4h39d3"
   },
   "stable": {
    "version": [
@@ -100199,14 +102984,14 @@
   "repo": "joaotavora/yasnippet",
   "unstable": {
    "version": [
-    20191222,
-    2206
+    20200413,
+    2221
    ],
    "deps": [
     "cl-lib"
    ],
-   "commit": "3bf9a3b1af37174a004798b7195826af0123fa6a",
-   "sha256": "0via9dzw8m5lzymg1h78xkwjssh39zr3g6ccyamlf1rjzjsyxknv"
+   "commit": "5b1217ab085fab4abeb1118dccb260691b446703",
+   "sha256": "0486kd8brxwmbmw9bjf0p9i99dyl17hbc5aa03z7psqqlsw713mx"
   },
   "stable": {
    "version": [
@@ -100247,25 +103032,25 @@
   "repo": "AndreaCrotti/yasnippet-snippets",
   "unstable": {
    "version": [
-    20200122,
-    1140
+    20200425,
+    1210
    ],
    "deps": [
     "yasnippet"
    ],
-   "commit": "612be838d2e50c3601c349d7842702d95e17682a",
-   "sha256": "1m7iyg7zw1jwv4sq788sv84269nydn7c6xbhvhip8hkddyn03pcl"
+   "commit": "937cb7bb1921db38ab2c0c62062e8e32a29eabed",
+   "sha256": "03v855gbr6ii21qw4h8whbzj88xi28sqpnz1yqd1a7ngrc149fgz"
   },
   "stable": {
    "version": [
     0,
-    20
+    22
    ],
    "deps": [
     "yasnippet"
    ],
-   "commit": "e813c1479a9fb2773d95ddba39c4aa0e7a1c33c5",
-   "sha256": "095w7cdmfwmmr6426mbq15n0a5izgbmv9408m9yh1pqz5x3v3vsx"
+   "commit": "e51a259527d685fe767b6ec951ad1940b1131a69",
+   "sha256": "1xcmx0frialb86z5adi07b6skqks326w3v1xn49c54gxim027i5d"
   }
  },
  {
@@ -100482,6 +103267,21 @@
   }
  },
  {
+  "ename": "yesterbox",
+  "commit": "21f684c47e5778c9d46c9f28dae1113197717b78",
+  "sha256": "1ah4l8zz565jgr52d9n29iv93z7qwmlz9pdjw3l51qhqf79lkf1w",
+  "fetcher": "github",
+  "repo": "sje30/yesterbox",
+  "unstable": {
+   "version": [
+    20200327,
+    52
+   ],
+   "commit": "10591342f1759e25756f5865371a53c132d8b0a0",
+   "sha256": "0cd77m4zyqs74iz56l4h0k7ccxnxhis0247j4f5mf94s51fn1x7p"
+  }
+ },
+ {
   "ename": "yoficator",
   "commit": "5156f01564978718dd99ab3a54f19b6512de5c3c",
   "sha256": "0b6lv6wk5ammhb9rws9kig02wkm84i5avm7a1vd4sb7wkgm9nj9r",
@@ -100504,11 +103304,11 @@
   "repo": "ryuslash/yoshi-theme",
   "unstable": {
    "version": [
-    20190505,
-    728
+    20200422,
+    208
    ],
-   "commit": "70365870ff823b954aa85972217d8f116c45d939",
-   "sha256": "1myrvw0brl6cn3gljbplgxj3mr3mzicfymg7sir8hrk4d5g498yn"
+   "commit": "caa83e4475885a2c9a126630f0feec1ce2eb0c4e",
+   "sha256": "0sga52lz54c2v08j6m9v3ddv7rlpdcgi9lkxn1cvajm5h60b20r8"
   },
   "stable": {
    "version": [
@@ -100655,11 +103455,11 @@
   "repo": "bbatsov/zenburn-emacs",
   "unstable": {
    "version": [
-    20200227,
-    751
+    20200305,
+    737
    ],
-   "commit": "f42847d617d4314d4b8e272f2b58007e479b964d",
-   "sha256": "1ydfkynfclx7djji1hjfvm1pf6ndfjy43y0piqk3v14n6mxz78al"
+   "commit": "7dd796840376342426f60018a6cf209228452f3e",
+   "sha256": "0zzg95sifg6ybh3ava67z688fycklqragkr3baxlhl2jfnwsps2l"
   },
   "stable": {
    "version": [
@@ -100717,30 +103517,34 @@
  },
  {
   "ename": "zephir-mode",
-  "commit": "5bd901c93ce7f64de6082e801327adbd18fd4517",
-  "sha256": "0nxm6w7z89q2vvf3bp1p6hb6f2axv9ha85jyiv4k02l46sjprf4j",
+  "commit": "fac9fb89cbe5c3eea987fadf23db20c214eab4d9",
+  "sha256": "133m47a54hdsczzmk3wg7f47q314qnw824lkh8zqx0nw68063i79",
   "fetcher": "github",
-  "repo": "sergeyklay/zephir-mode",
+  "repo": "zephir-lang/zephir-mode",
   "unstable": {
    "version": [
-    20170918,
-    425
+    20200417,
+    830
    ],
    "deps": [
     "cl-lib",
     "pkg-info"
    ],
-   "commit": "1db4071a014a796120b5c3d0a7f91eb77359eb10",
-   "sha256": "0kqnihir4rr8ckzz3wn5sz3qwgnvpa8bqw767khn887bpf7qsmiq"
+   "commit": "4e9618b77dff67c1c7b6fff78605a62311db88b8",
+   "sha256": "0chh35h479jm0zcjxqyd9v1gzs2adicvyihdls87g8minmwvl19r"
   },
   "stable": {
    "version": [
     0,
-    3,
-    3
+    6,
+    0
+   ],
+   "deps": [
+    "cl-lib",
+    "pkg-info"
    ],
-   "commit": "243f0fb7fd1dfebf0f0bdf94046b72d1bea4f66c",
-   "sha256": "0jydy2zcbksi7db7bvfhgdh08np8k4a1yd6q2wq6m3ll2y3zd0w2"
+   "commit": "9adc5cf07a9117d25eaab41867ddde914c6d2f5a",
+   "sha256": "0g2vfscikz8qa0danvcickcjnz99yjm9jgk3sci094gmgwka3j2y"
   }
  },
  {
@@ -100751,26 +103555,26 @@
   "url": "https://gitlab.emacsos.com/sylecn/zero-el",
   "unstable": {
    "version": [
-    20200220,
-    1619
+    20200405,
+    1220
    ],
    "deps": [
     "s"
    ],
-   "commit": "3e6e45482c223d3a9610fb366e9cc3aab98a7aab",
-   "sha256": "1qqk419f4y59vadpqf4my75pzgap9maylfbmaw7k2sqwajy2mxnl"
+   "commit": "729da9f4b99acb744ee6974ed7f3d4e252fd19da",
+   "sha256": "1bcka4gzcb5r2y5g7a06l05n6ixvs7lm37w4ghvvq12ci2ypzp04"
   },
   "stable": {
    "version": [
     2,
-    6,
+    8,
     0
    ],
    "deps": [
     "s"
    ],
-   "commit": "3e6e45482c223d3a9610fb366e9cc3aab98a7aab",
-   "sha256": "1qqk419f4y59vadpqf4my75pzgap9maylfbmaw7k2sqwajy2mxnl"
+   "commit": "729da9f4b99acb744ee6974ed7f3d4e252fd19da",
+   "sha256": "1bcka4gzcb5r2y5g7a06l05n6ixvs7lm37w4ghvvq12ci2ypzp04"
   }
  },
  {
@@ -100810,14 +103614,25 @@
   "repo": "efls/zetteldeft",
   "unstable": {
    "version": [
-    20200214,
-    2052
+    20200415,
+    1614
+   ],
+   "deps": [
+    "deft"
+   ],
+   "commit": "cba7554afe740f64adcdc615b5f4ab0e1e47c6a1",
+   "sha256": "1b1bqz02xh19syyv9w64q9msay84kpq3kkmpdqy8i7mvhsd4cdry"
+  },
+  "stable": {
+   "version": [
+    0,
+    3
    ],
    "deps": [
     "deft"
    ],
-   "commit": "301adcf54205a3780aed2988c58420da3feaeb43",
-   "sha256": "1mhxnmbmxj40774hvazp7n2yhwh9ikhmss4phk3y85gls30lqbyx"
+   "commit": "271ea573b0a4f265d16108db2ec7c928f3e9aa31",
+   "sha256": "0y709x03har1sm30vbja3k3vw4p1nfck5zii7cigl4vg0scpcri6"
   }
  },
  {
@@ -100828,11 +103643,11 @@
   "repo": "ziglang/zig-mode",
   "unstable": {
    "version": [
-    20191023,
-    1551
+    20200322,
+    131
    ],
-   "commit": "77202ac26ee6091d69d40990fddb1ce6cfcc6dc8",
-   "sha256": "0d2f6nz99dp3yxr7m8i78lc313qzssm7k4783w6kkvcsbpknazlw"
+   "commit": "fc7fde327f45533bb73be643e7bda1eda10394b6",
+   "sha256": "1ld34xs25bysxw9ialrlm6pnp5qbzx94zbb3594ghc2ggz5ph5d5"
   }
  },
  {
@@ -100843,8 +103658,8 @@
   "repo": "WillForan/zim-wiki-mode",
   "unstable": {
    "version": [
-    20191208,
-    2241
+    20200316,
+    1223
    ],
    "deps": [
     "dokuwiki-mode",
@@ -100853,8 +103668,8 @@
     "link-hint",
     "pretty-hydra"
    ],
-   "commit": "030fb78600a6782f8746fe547b979bcc9a24f0ed",
-   "sha256": "0b3rd83mbpyf782jnfv2yfhfq2ffps3wbn31iblyydmv790lpdvx"
+   "commit": "410fa67d5947b8801b03a58fcb2bd414cb5294f7",
+   "sha256": "14dmda7ahnflv0db9yzssz7bidz3zsdnxxwnby0y48vcjv94nnl5"
   }
  },
  {
@@ -100880,14 +103695,14 @@
   "repo": "dzop/emacs-zmq",
   "unstable": {
    "version": [
-    20190812,
-    1910
+    20200305,
+    2345
    ],
    "deps": [
     "cl-lib"
    ],
-   "commit": "0544b70bf99b6eb95f46e0fcd788d98da50cb892",
-   "sha256": "0r9aq933b2pk9m70phfz3ah3dk1c5axmjixcf8cf19sjsv1hcc9x"
+   "commit": "2aed40aee51d19cbca83d1f1edc23a5f1522dd8d",
+   "sha256": "1viz4sw4vmnjhhqw68wp8a4ks1751s2dk09gx2gyl8gy5vw2fcg6"
   },
   "stable": {
    "version": [
@@ -101071,25 +103886,25 @@
  },
  {
   "ename": "zoom-window",
-  "commit": "8a55cc66cc0deb1c24023f638b8e920c9d975859",
-  "sha256": "0l9683nk2bdm49likk9c55c23qfy6f1pn04drqwd1vhpanz4l4b3",
+  "commit": "2a2670edb1155f02d1cbe2600db84a82c8f3398b",
+  "sha256": "0h4rr6h79g6sh8caa0l0fxssbd02v2llapqmikz72vpsghqg7y57",
   "fetcher": "github",
-  "repo": "syohex/emacs-zoom-window",
+  "repo": "emacsorphanage/zoom-window",
   "unstable": {
    "version": [
-    20170302,
-    827
+    20200323,
+    720
    ],
-   "commit": "cd6ecc103fc30b171bda7daf1f44a550854d0dbf",
-   "sha256": "1rfhdzwyag32s15ysmf75976nvkx995581afaa4ychj45vwnaqfm"
+   "commit": "ab14a365f3e496b07f5efc20992f9094ec166f06",
+   "sha256": "0ah0gfzp0c90vrqmsfd6crl3i6bjqgb78hnpcvvg53gk5i19i4aw"
   },
   "stable": {
    "version": [
     0,
-    5
+    6
    ],
-   "commit": "eefe36d26e04a9f89aad27671d1f06e9d4736ac6",
-   "sha256": "08splg49ncgfsap3ivpc974wmg22ikshwv33l0i6advjjv9cskhm"
+   "commit": "ab14a365f3e496b07f5efc20992f9094ec166f06",
+   "sha256": "0ah0gfzp0c90vrqmsfd6crl3i6bjqgb78hnpcvvg53gk5i19i4aw"
   }
  },
  {
@@ -101238,22 +104053,22 @@
  },
  {
   "ename": "zpresent",
-  "commit": "3aae38ad54490fa650c832fb7d22e2c73b0fb060",
-  "sha256": "0316qyspmdbg94aw620133ilh8kfpr3db1p2cifgccgcacjv3v5j",
-  "fetcher": "bitbucket",
-  "repo": "zck/zpresent.el",
+  "commit": "d3828ad7599d13728b5571b882344c3ada434b85",
+  "sha256": "0i1qrb9qplmx9kx1286xypjyy48r9y3cvnlhi06r583adfr02wab",
+  "fetcher": "hg",
+  "url": "https://hg.sr.ht/~zck/zpresent",
   "unstable": {
    "version": [
-    20180605,
-    438
+    20200417,
+    309
    ],
    "deps": [
     "dash",
     "org-parser",
     "request"
    ],
-   "commit": "55fc14b66e2ea506247a4e7dd622a9dfe5545c4b",
-   "sha256": "17wkhl1a7jmg4ks011lf5h4f2vbhf8dl6vgzdzlmljk15f9hmw35"
+   "commit": "406967322b7692492a5942d901335d626cace4d0",
+   "sha256": "1nn6dvzcayh6nv6xn3siv09iixc5c3gy9c8y1fdwzq81yny9l2fr"
   }
  },
  {
diff --git a/pkgs/applications/editors/emacs-modes/rect-mark/default.nix b/pkgs/applications/editors/emacs-modes/rect-mark/default.nix
index 54e5a89dd9f6..4320a88457a4 100644
--- a/pkgs/applications/editors/emacs-modes/rect-mark/default.nix
+++ b/pkgs/applications/editors/emacs-modes/rect-mark/default.nix
@@ -24,7 +24,7 @@ stdenv.mkDerivation {
 
   meta = {
     description = "Mark a rectangle of text with highlighting";
-    homepage = http://emacswiki.org/emacs/RectangleMark;
+    homepage = "http://emacswiki.org/emacs/RectangleMark";
     license = stdenv.lib.licenses.gpl2Plus;
 
     platforms = stdenv.lib.platforms.all;
diff --git a/pkgs/applications/editors/emacs-modes/session-management-for-emacs/default.nix b/pkgs/applications/editors/emacs-modes/session-management-for-emacs/default.nix
index 165e0c13c8fe..e4b739af0517 100644
--- a/pkgs/applications/editors/emacs-modes/session-management-for-emacs/default.nix
+++ b/pkgs/applications/editors/emacs-modes/session-management-for-emacs/default.nix
@@ -21,7 +21,7 @@ stdenv.mkDerivation {
        (add-hook 'after-init-hook 'session-initialize)
     */
     description = "Small session management for emacs";
-    homepage = http://emacs-session.sourceforge.net/;
+    homepage = "http://emacs-session.sourceforge.net/";
     license = "GPL";
   };
 }
diff --git a/pkgs/applications/editors/emacs-modes/sunrise-commander/default.nix b/pkgs/applications/editors/emacs-modes/sunrise-commander/default.nix
index fcb37e7ebad3..7e611d68a0a4 100644
--- a/pkgs/applications/editors/emacs-modes/sunrise-commander/default.nix
+++ b/pkgs/applications/editors/emacs-modes/sunrise-commander/default.nix
@@ -4,7 +4,7 @@ stdenv.mkDerivation {
   name = "sunrise-commander-6r435";
 
   src = fetchgit {
-    url = https://github.com/escherdragon/sunrise-commander.git;
+    url = "https://github.com/escherdragon/sunrise-commander.git";
     rev = "7a44ca7abd9fe79f87934c78d00dc2a91419a4f1";
     sha256 = "2909beccc9daaa79e70876ac6547088c2459b624c364dda1886fe4d7adc7708b";
   };
@@ -22,7 +22,7 @@ stdenv.mkDerivation {
 
   meta = {
     description = "Two-pane file manager for Emacs based on Dired and inspired by MC";
-    homepage = http://www.emacswiki.org/emacs/Sunrise_Commander;
+    homepage = "http://www.emacswiki.org/emacs/Sunrise_Commander";
     license = stdenv.lib.licenses.gpl3Plus;
 
     platforms = stdenv.lib.platforms.all;
diff --git a/pkgs/applications/editors/emacs-modes/sv-kalender/default.nix b/pkgs/applications/editors/emacs-modes/sv-kalender/default.nix
index bcd947983a34..211be0a90897 100644
--- a/pkgs/applications/editors/emacs-modes/sv-kalender/default.nix
+++ b/pkgs/applications/editors/emacs-modes/sv-kalender/default.nix
@@ -17,6 +17,6 @@ trivialBuild {
     homepage = "http://bigwalter.net/daniel/elisp/sv-kalender.el";
     platforms = platforms.all;
     license = licenses.gpl3Plus;
-    maintainers = [ maintainer.rycee ];
+    maintainers = [ maintainers.rycee ];
   };
 }
diff --git a/pkgs/applications/editors/emacs-modes/thingatpt-plus/default.nix b/pkgs/applications/editors/emacs-modes/thingatpt-plus/default.nix
deleted file mode 100644
index 820919b5321f..000000000000
--- a/pkgs/applications/editors/emacs-modes/thingatpt-plus/default.nix
+++ /dev/null
@@ -1,23 +0,0 @@
-{ fetchurl, lib, melpaBuild }:
-
-melpaBuild {
-  pname = "thingatpt-plus";
-  version = "20170307.1539";
-
-  src = fetchurl {
-    url = "https://www.emacswiki.org/emacs/download/thingatpt+.el";
-    sha256 = "1k9y354315gvhbdk0m9xpjx24w1bwrnzlnfiils8xgdwnw4py99a";
-    name = "thingatpt+.el";
-  };
-
-  recipe = fetchurl {
-    url = "https://raw.githubusercontent.com/milkypostman/melpa/a5d15f875b0080b12ce45cf696c581f6bbf061ba/recipes/thingatpt+";
-    sha256 = "0w031lzjl5phvzsmbbxn2fpziwkmdyxsn08h6b9lxbss1prhx7aa";
-    name = "thingatpt-plus";
-  };
-
-  meta = {
-    homepage = "https://melpa.org/#/thingatpt+";
-    license = lib.licenses.gpl2Plus;
-  };
-}
diff --git a/pkgs/applications/editors/emacs-modes/tramp/default.nix b/pkgs/applications/editors/emacs-modes/tramp/default.nix
index 3b746c293d88..b87390d4609f 100644
--- a/pkgs/applications/editors/emacs-modes/tramp/default.nix
+++ b/pkgs/applications/editors/emacs-modes/tramp/default.nix
@@ -9,7 +9,7 @@ stdenv.mkDerivation rec {
   buildInputs = [ emacs texinfo ];
   meta = {
     description = "Transparently access remote files from Emacs. Newer versions than built-in.";
-    homepage = https://www.gnu.org/software/tramp;
+    homepage = "https://www.gnu.org/software/tramp";
     license = stdenv.lib.licenses.gpl3Plus;
     platforms = stdenv.lib.platforms.all;
   };
diff --git a/pkgs/applications/editors/emacs-modes/yaoddmuse/default.nix b/pkgs/applications/editors/emacs-modes/yaoddmuse/default.nix
deleted file mode 100644
index 209a99245ecd..000000000000
--- a/pkgs/applications/editors/emacs-modes/yaoddmuse/default.nix
+++ /dev/null
@@ -1,30 +0,0 @@
-{stdenv, fetchurl, emacs}:
-
-stdenv.mkDerivation {
-  name = "yaoddmuse-0.1.2";
-
-  src = fetchurl {
-    url = "http://emacswiki.org/emacs/download/yaoddmuse.el";
-    sha256 = "0vlllq3xmnlni0ws226pqxj68nshclbl5rgqv6y11i3yvzgiazr6";
-  };
-
-  phases = [ "buildPhase" "installPhase"];
-
-  buildInputs = [ emacs ];
-
-  buildPhase = ''
-    cp $src yaoddmuse.el
-    emacs --batch -f batch-byte-compile yaoddmuse.el
-  '';
-
-  installPhase = ''
-    install -d $out/share/emacs/site-lisp
-    install yaoddmuse.el $out/share/emacs/site-lisp
-  '';
-
-  meta = {
-    description = "Comprehensive Emacs integration with Oddmuse wikis";
-    homepage = http://emacswiki.org/emacs/Yaoddmuse;
-    platforms = stdenv.lib.platforms.all;
-  };
-}
diff --git a/pkgs/applications/editors/emacs-modes/zeitgeist/default.nix b/pkgs/applications/editors/emacs-modes/zeitgeist/default.nix
index 9403a51df532..c771f5423a95 100644
--- a/pkgs/applications/editors/emacs-modes/zeitgeist/default.nix
+++ b/pkgs/applications/editors/emacs-modes/zeitgeist/default.nix
@@ -19,7 +19,7 @@ stdenv.mkDerivation {
 
   meta = {
     description = "Integreate Emacs with Zeitgeist";
-    homepage = http://zeitgeist-project.com/;
+    homepage = "http://zeitgeist-project.com/";
     platforms = stdenv.lib.platforms.all;
   };
 }
diff --git a/pkgs/applications/editors/emacs/25.nix b/pkgs/applications/editors/emacs/25.nix
index e4643102f0ef..1ee2f5d4fe7c 100644
--- a/pkgs/applications/editors/emacs/25.nix
+++ b/pkgs/applications/editors/emacs/25.nix
@@ -121,7 +121,7 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "The extensible, customizable GNU text editor";
-    homepage    = https://www.gnu.org/software/emacs/;
+    homepage    = "https://www.gnu.org/software/emacs/";
     license     = licenses.gpl3Plus;
     maintainers = with maintainers; [ lovek323 peti the-kenny jwiegley ];
     platforms   = platforms.all;
diff --git a/pkgs/applications/editors/emacs/default.nix b/pkgs/applications/editors/emacs/default.nix
index 98653517b5e7..fc00384c03ae 100644
--- a/pkgs/applications/editors/emacs/default.nix
+++ b/pkgs/applications/editors/emacs/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, lib, fetchurl, ncurses, xlibsWrapper, libXaw, libXpm
+{ stdenv, lib, fetchurl, fetchpatch, ncurses, xlibsWrapper, libXaw, libXpm
 , Xaw3d, libXcursor,  pkgconfig, gettext, libXft, dbus, libpng, libjpeg, libungif
 , libtiff, librsvg, gconf, libxml2, imagemagick, gnutls, libselinux
 , alsaLib, cairo, acl, gpm, AppKit, GSS, ImageIO, m17n_lib, libotf
@@ -7,7 +7,7 @@
 , withNS ? stdenv.isDarwin
 , withGTK2 ? false, gtk2-x11 ? null
 , withGTK3 ? true, gtk3-x11 ? null, gsettings-desktop-schemas ? null
-, withXwidgets ? false, webkitgtk ? null, wrapGAppsHook ? null
+, withXwidgets ? false, webkitgtk ? null, wrapGAppsHook ? null, glib-networking ? null
 , withCsrc ? true
 , srcRepo ? false, autoconf ? null, automake ? null, texinfo ? null
 , siteStart ? ./site-start.el
@@ -44,6 +44,11 @@ stdenv.mkDerivation rec {
   patches = [
     ./clean-env.patch
     ./tramp-detect-wrapped-gvfsd.patch
+    # unbreak macOS unexec
+    (fetchpatch {
+      url = https://github.com/emacs-mirror/emacs/commit/888ffd960c06d56a409a7ff15b1d930d25c56089.patch;
+      sha256 = "08q3ygdigqwky70r47rcgzlkc5jy82xiq8am5kwwy891wlpl7frw";
+    })
   ];
 
   postPatch = lib.optionalString srcRepo ''
@@ -67,7 +72,7 @@ stdenv.mkDerivation rec {
     ++ lib.optional (withX && withGTK2) gtk2-x11
     ++ lib.optionals (withX && withGTK3) [ gtk3-x11 gsettings-desktop-schemas ]
     ++ lib.optional (stdenv.isDarwin && withX) cairo
-    ++ lib.optionals (withX && withXwidgets) [ webkitgtk ]
+    ++ lib.optionals (withX && withXwidgets) [ webkitgtk glib-networking ]
     ++ lib.optionals withNS [ AppKit GSS ImageIO ];
 
   hardeningDisable = [ "format" ];
@@ -132,9 +137,9 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "The extensible, customizable GNU text editor";
-    homepage    = https://www.gnu.org/software/emacs/;
+    homepage    = "https://www.gnu.org/software/emacs/";
     license     = licenses.gpl3Plus;
-    maintainers = with maintainers; [ lovek323 peti the-kenny jwiegley ];
+    maintainers = with maintainers; [ lovek323 peti the-kenny jwiegley adisbladis ];
     platforms   = platforms.all;
 
     longDescription = ''
diff --git a/pkgs/applications/editors/emacs/macport.nix b/pkgs/applications/editors/emacs/macport.nix
index e9307c7e80b9..1624e62026af 100644
--- a/pkgs/applications/editors/emacs/macport.nix
+++ b/pkgs/applications/editors/emacs/macport.nix
@@ -80,7 +80,7 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "The extensible, customizable text editor";
-    homepage    = https://www.gnu.org/software/emacs/;
+    homepage    = "https://www.gnu.org/software/emacs/";
     license     = licenses.gpl3Plus;
     maintainers = with maintainers; [ jwiegley matthewbauer ];
     platforms   = platforms.darwin;
diff --git a/pkgs/applications/editors/featherpad/default.nix b/pkgs/applications/editors/featherpad/default.nix
index e48fba1551e7..c6089fd5308c 100644
--- a/pkgs/applications/editors/featherpad/default.nix
+++ b/pkgs/applications/editors/featherpad/default.nix
@@ -15,7 +15,7 @@ stdenv.mkDerivation rec {
   buildInputs = [ qtbase qtsvg qtx11extras ];
   meta = with stdenv.lib; {
     description = "Lightweight Qt5 Plain-Text Editor for Linux";
-    homepage = https://github.com/tsujan/FeatherPad;
+    homepage = "https://github.com/tsujan/FeatherPad";
     platforms = platforms.linux;
     maintainers = [ maintainers.flosse ];
     license = licenses.gpl3;
diff --git a/pkgs/applications/editors/flpsed/default.nix b/pkgs/applications/editors/flpsed/default.nix
index cbff8e606f2d..3d6aac7e18e5 100644
--- a/pkgs/applications/editors/flpsed/default.nix
+++ b/pkgs/applications/editors/flpsed/default.nix
@@ -19,7 +19,7 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "WYSIWYG PostScript annotator";
-    homepage = http://flpsed.org/flpsed.html;
+    homepage = "https://flpsed.org/flpsed.html";
     license = licenses.gpl3;
     platforms = platforms.linux;
     maintainers = with maintainers; [ ];
diff --git a/pkgs/applications/editors/focuswriter/default.nix b/pkgs/applications/editors/focuswriter/default.nix
index ccda1b4d4cbd..c30cfcb1fb9c 100644
--- a/pkgs/applications/editors/focuswriter/default.nix
+++ b/pkgs/applications/editors/focuswriter/default.nix
@@ -2,11 +2,11 @@
 
 mkDerivation rec {
   pname = "focuswriter";
-  version = "1.7.4";
+  version = "1.7.6";
 
   src = fetchurl {
     url = "https://gottcode.org/focuswriter/focuswriter-${version}-src.tar.bz2";
-    sha256 = "1fli85p9d58gsg2kwmncqdcw1nmx062kddbrhr50mnsn04dc4j3g";
+    sha256 = "0h85f6cs9zbxv118mjfxqfv41j19zkx2xq36mpnlmrlzkjj7dx9l";
   };
 
   nativeBuildInputs = [ pkgconfig qmake qttools ];
@@ -22,6 +22,6 @@ mkDerivation rec {
     license = licenses.gpl3Plus;
     maintainers = with maintainers; [ madjar ];
     platforms = platforms.linux;
-    homepage = https://gottcode.org/focuswriter/;
+    homepage = "https://gottcode.org/focuswriter/";
   };
 }
diff --git a/pkgs/applications/editors/fte/default.nix b/pkgs/applications/editors/fte/default.nix
index ab149131b808..f19a264c06a5 100644
--- a/pkgs/applications/editors/fte/default.nix
+++ b/pkgs/applications/editors/fte/default.nix
@@ -21,7 +21,7 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "A free text editor for developers";
-    homepage = http://fte.sourceforge.net/;
+    homepage = "http://fte.sourceforge.net/";
     license = licenses.gpl2;
     maintainers = [ maintainers.volth ];
     platforms = platforms.all;
diff --git a/pkgs/applications/editors/gnome-builder/default.nix b/pkgs/applications/editors/gnome-builder/default.nix
index bda0552e7529..c58d12a58f89 100644
--- a/pkgs/applications/editors/gnome-builder/default.nix
+++ b/pkgs/applications/editors/gnome-builder/default.nix
@@ -5,7 +5,6 @@
 , docbook_xsl
 , docbook_xml_dtd_43
 , fetchurl
-, fetchpatch
 , flatpak
 , gnome3
 , libgit2-glib
@@ -18,6 +17,7 @@
 , jsonrpc-glib
 , libdazzle
 , libpeas
+, libportal
 , libxml2
 , meson
 , ninja
@@ -39,25 +39,13 @@
 
 stdenv.mkDerivation rec {
   pname = "gnome-builder";
-  version = "3.34.1";
+  version = "3.36.0";
 
   src = fetchurl {
     url = "mirror://gnome/sources/${pname}/${stdenv.lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
-    sha256 = "19018pq94cxf6fywd7fsmy98x56by5zfmh140pl530gaaw84cvhb";
+    sha256 = "G0nl6DVzb3k6cN2guFIe/XNhFNhKbaq5e8wz62VA0Qo=";
   };
 
-  patches = [
-    # Fix build with Meson 0.52
-    (fetchpatch {
-      url = "https://gitlab.gnome.org/GNOME/gnome-builder/commit/c8b862b491cfbbb4f79b24d7cd90e4fb1f37cb9f.patch";
-      sha256 = "0n8kg7nnjqmbnyag1ps6dvrlqrxc94djjncqx10d6y7ijwdxf4w8";
-    })
-    (fetchpatch {
-      url = "https://gitlab.gnome.org/GNOME/gnome-builder/commit/da26dfbf78468f5ed724e022b300a07862a95833.patch";
-      sha256 = "0psa65bzjpjj7vc5rknv2w2dz3p50jjv10s6j2fd6lpw8j2800k4";
-    })
-  ];
-
   nativeBuildInputs = [
     appstream-glib
     desktop-file-utils
@@ -65,7 +53,7 @@ stdenv.mkDerivation rec {
     docbook_xml_dtd_43
     gobject-introspection
     gtk-doc
-    (meson.override ({ inherit stdenv; }))
+    meson
     ninja
     pkgconfig
     python3
@@ -80,6 +68,7 @@ stdenv.mkDerivation rec {
     gnome3.glade
     libgit2-glib
     libpeas
+    libportal
     vte
     gspell
     gtk3
@@ -109,8 +98,6 @@ stdenv.mkDerivation rec {
     patchShebangs build-aux/meson/post_install.py
   '';
 
-  NIX_CFLAGS_COMPILE = "-I${glib.dev}/include/gio-unix-2.0";
-
   mesonFlags = [
     "-Dpython_libprefix=${python3.libPrefix}"
     "-Ddocs=true"
@@ -162,9 +149,9 @@ stdenv.mkDerivation rec {
       currently recommend running gnome-builder inside a nix-shell with
       appropriate dependencies loaded.
     '';
-    homepage = https://wiki.gnome.org/Apps/Builder;
+    homepage = "https://wiki.gnome.org/Apps/Builder";
     license = licenses.gpl3Plus;
-    maintainers = gnome3.maintainers;
+    maintainers = teams.gnome.members;
     platforms = platforms.linux;
   };
 }
diff --git a/pkgs/applications/editors/gnome-latex/default.nix b/pkgs/applications/editors/gnome-latex/default.nix
index cfd3a4289901..33a321329341 100644
--- a/pkgs/applications/editors/gnome-latex/default.nix
+++ b/pkgs/applications/editors/gnome-latex/default.nix
@@ -38,7 +38,7 @@ in stdenv.mkDerivation {
   passthru.updateScript = gnome3.updateScript { packageName = pname; };
 
   meta = with stdenv.lib; {
-    homepage = https://wiki.gnome.org/Apps/GNOME-LaTeX;
+    homepage = "https://wiki.gnome.org/Apps/GNOME-LaTeX";
     description = "A LaTeX editor for the GNOME desktop";
     maintainers = [ maintainers.manveru ];
     license = licenses.gpl3Plus;
diff --git a/pkgs/applications/editors/gobby/default.nix b/pkgs/applications/editors/gobby/default.nix
index f194227932d0..e3d039e42232 100644
--- a/pkgs/applications/editors/gobby/default.nix
+++ b/pkgs/applications/editors/gobby/default.nix
@@ -19,7 +19,7 @@ in stdenv.mkDerivation {
   preConfigure = "./autogen.sh";
 
   meta = with stdenv.lib; {
-    homepage = http://gobby.0x539.de/;
+    homepage = "http://gobby.0x539.de/";
     description = "A GTK-based collaborative editor supporting multiple documents in one session and a multi-user chat";
     license = stdenv.lib.licenses.gpl2Plus;
     maintainers = [ maintainers.phreedom ];
diff --git a/pkgs/applications/editors/heme/default.nix b/pkgs/applications/editors/heme/default.nix
index 4e67fc304b18..7d1830c842b6 100644
--- a/pkgs/applications/editors/heme/default.nix
+++ b/pkgs/applications/editors/heme/default.nix
@@ -21,7 +21,7 @@ stdenv.mkDerivation rec {
   '';
   meta = with lib; {
     description = "Portable and fast console hex editor for unix operating systems";
-    homepage = http://heme.sourceforge.net/;
+    homepage = "http://heme.sourceforge.net/";
     license = licenses.gpl2;
     platforms = platforms.linux;
     maintainers = with maintainers; [ cstrahan ];
diff --git a/pkgs/applications/editors/hexcurse/default.nix b/pkgs/applications/editors/hexcurse/default.nix
index c87694321f35..a1b90b83d589 100644
--- a/pkgs/applications/editors/hexcurse/default.nix
+++ b/pkgs/applications/editors/hexcurse/default.nix
@@ -15,19 +15,19 @@ stdenv.mkDerivation rec {
   patches = [
     # gcc7 compat
     (fetchpatch {
-      url = https://github.com/LonnyGomes/hexcurse/commit/d808cb7067d1df067f8b707fabbfaf9f8931484c.patch;
+      url = "https://github.com/LonnyGomes/hexcurse/commit/d808cb7067d1df067f8b707fabbfaf9f8931484c.patch";
       sha256 = "0h8345blmc401c6bivf0imn4cwii67264yrzxg821r46wrnfvyi2";
     })
     # gcc7 compat
     (fetchpatch {
-      url = https://github.com/LonnyGomes/hexcurse/commit/716b5d58ac859cc240b8ccb9cbd79ace3e0593c1.patch;
+      url = "https://github.com/LonnyGomes/hexcurse/commit/716b5d58ac859cc240b8ccb9cbd79ace3e0593c1.patch";
       sha256 = "0v6gbp6pjpmnzswlf6d97aywiy015g3kcmfrrkspsbb7lh1y3nix";
     })
   ];
 
   meta = with lib; {
     description = "ncurses-based console hexeditor written in C";
-    homepage = https://github.com/LonnyGomes/hexcurse;
+    homepage = "https://github.com/LonnyGomes/hexcurse";
     license = licenses.gpl2;
     platforms = platforms.linux;
     maintainers = with maintainers; [ cstrahan ];
diff --git a/pkgs/applications/editors/hexdino/default.nix b/pkgs/applications/editors/hexdino/default.nix
index 48cd58570f8a..79e0027d5096 100644
--- a/pkgs/applications/editors/hexdino/default.nix
+++ b/pkgs/applications/editors/hexdino/default.nix
@@ -17,7 +17,7 @@ rustPlatform.buildRustPackage {
 
   meta = with stdenv.lib; {
     description = "A hex editor with vim like keybindings written in Rust";
-    homepage = https://github.com/Luz/hexdino;
+    homepage = "https://github.com/Luz/hexdino";
     license = licenses.mit;
     maintainers = [ maintainers.luz ];
     platforms = platforms.all;
diff --git a/pkgs/applications/editors/hexedit/default.nix b/pkgs/applications/editors/hexedit/default.nix
index 09191b38e1bc..916dd4a15948 100644
--- a/pkgs/applications/editors/hexedit/default.nix
+++ b/pkgs/applications/editors/hexedit/default.nix
@@ -13,7 +13,7 @@ stdenv.mkDerivation rec {
 
   meta = {
     description = "View and edit files in hexadecimal or in ASCII";
-    homepage = http://prigaux.chez.com/hexedit.html;
+    homepage = "http://prigaux.chez.com/hexedit.html";
     license = stdenv.lib.licenses.gpl2Plus;
     platforms = stdenv.lib.platforms.unix;
   };
diff --git a/pkgs/applications/editors/howl/default.nix b/pkgs/applications/editors/howl/default.nix
index 5e5f2f8563cb..975016d55417 100644
--- a/pkgs/applications/editors/howl/default.nix
+++ b/pkgs/applications/editors/howl/default.nix
@@ -28,7 +28,7 @@ stdenv.mkDerivation rec {
   '';
 
   meta = {
-    homepage = https://howl.io/;
+    homepage = "https://howl.io/";
     description = "A general purpose, fast and lightweight editor with a keyboard-centric minimalistic user interface";
     license = licenses.mit;
     maintainers = with maintainers; [ pacien ];
diff --git a/pkgs/applications/editors/ht/default.nix b/pkgs/applications/editors/ht/default.nix
index fc1fe969bdc0..096b69a5e82a 100644
--- a/pkgs/applications/editors/ht/default.nix
+++ b/pkgs/applications/editors/ht/default.nix
@@ -19,7 +19,7 @@ stdenv.mkDerivation rec {
 
   meta = with lib; {
     description = "File editor/viewer/analyzer for executables";
-    homepage = http://hte.sourceforge.net;
+    homepage = "http://hte.sourceforge.net";
     license = licenses.gpl2;
     platforms = platforms.linux;
     maintainers = with maintainers; [ cstrahan ];
diff --git a/pkgs/applications/editors/jedit/default.nix b/pkgs/applications/editors/jedit/default.nix
index 21a6a8475182..fd8b53372510 100644
--- a/pkgs/applications/editors/jedit/default.nix
+++ b/pkgs/applications/editors/jedit/default.nix
@@ -3,11 +3,11 @@
 let
   version = "5.2.0";
   bcpg = fetchurl {
-    url = http://central.maven.org/maven2/org/bouncycastle/bcpg-jdk16/1.46/bcpg-jdk16-1.46.jar;
+    url = "http://central.maven.org/maven2/org/bouncycastle/bcpg-jdk16/1.46/bcpg-jdk16-1.46.jar";
     sha256 = "16xhmwks4l65m5x150nd23y5lyppha9sa5fj65rzhxw66gbli82d";
   };
   jsr305 = fetchurl {
-    url = http://central.maven.org/maven2/com/google/code/findbugs/jsr305/2.0.0/jsr305-2.0.0.jar;
+    url = "http://central.maven.org/maven2/com/google/code/findbugs/jsr305/2.0.0/jsr305-2.0.0.jar";
     sha256 = "0s74pv8qjc42c7q8nbc0c3b1hgx0bmk3b8vbk1z80p4bbgx56zqy";
   };
 in
@@ -58,7 +58,7 @@ stdenv.mkDerivation {
 
   meta = with stdenv.lib; {
     description = "Mature programmer's text editor (Java based)";
-    homepage = http://www.jedit.org;
+    homepage = "http://www.jedit.org";
     license = licenses.gpl2;
     platforms = platforms.unix;
     maintainers = [ maintainers.vbgl ];
diff --git a/pkgs/applications/editors/jetbrains/common.nix b/pkgs/applications/editors/jetbrains/common.nix
index bca85c01016a..07776bebe425 100644
--- a/pkgs/applications/editors/jetbrains/common.nix
+++ b/pkgs/applications/editors/jetbrains/common.nix
@@ -1,4 +1,4 @@
-{ stdenv, lib, makeDesktopItem, makeWrapper, patchelf, p7zip
+{ stdenv, lib, makeDesktopItem, makeWrapper, patchelf
 , coreutils, gnugrep, which, git, unzip, libsecret, libnotify
 }:
 
@@ -19,14 +19,14 @@ with stdenv; lib.makeOverridable mkDerivation rec {
     comment = lib.replaceChars ["\n"] [" "] meta.longDescription;
     desktopName = product;
     genericName = meta.description;
-    categories = "Application;Development;";
+    categories = "Development;";
     icon = execName;
     extraEntries = ''
       StartupWMClass=${wmClass}
     '';
   };
 
-  nativeBuildInputs = [ makeWrapper patchelf p7zip unzip ];
+  nativeBuildInputs = [ makeWrapper patchelf unzip ];
 
   patchPhase = lib.optionalString (!stdenv.isDarwin) ''
       get_file_size() {
diff --git a/pkgs/applications/editors/jetbrains/default.nix b/pkgs/applications/editors/jetbrains/default.nix
index 1db952cf1a5a..282d950c85d5 100644
--- a/pkgs/applications/editors/jetbrains/default.nix
+++ b/pkgs/applications/editors/jetbrains/default.nix
@@ -15,7 +15,7 @@ let
       inherit name version src wmClass jdk;
       product = "CLion";
       meta = with stdenv.lib; {
-        homepage = https://www.jetbrains.com/clion/;
+        homepage = "https://www.jetbrains.com/clion/";
         inherit description license;
         longDescription = ''
           Enhancing productivity for every C and C++
@@ -83,7 +83,7 @@ let
       inherit name version src wmClass jdk;
       product = "DataGrip";
       meta = with stdenv.lib; {
-        homepage = https://www.jetbrains.com/datagrip/;
+        homepage = "https://www.jetbrains.com/datagrip/";
         inherit description license;
         longDescription = ''
           DataGrip is a new IDE from JetBrains built for database admins.
@@ -100,7 +100,7 @@ let
       inherit name version src wmClass jdk;
       product = "Goland";
       meta = with stdenv.lib; {
-        homepage = https://www.jetbrains.com/go/;
+        homepage = "https://www.jetbrains.com/go/";
         inherit description license;
         longDescription = ''
           Goland is the codename for a new commercial IDE by JetBrains
@@ -125,7 +125,7 @@ let
       inherit name version src wmClass jdk;
       product = "IDEA";
       meta = with stdenv.lib; {
-        homepage = https://www.jetbrains.com/idea/;
+        homepage = "https://www.jetbrains.com/idea/";
         inherit description license;
         longDescription = ''
           IDE for Java SE, Groovy & Scala development Powerful
@@ -143,7 +143,7 @@ let
       inherit name version src wmClass jdk;
       product = "PhpStorm";
       meta = with stdenv.lib; {
-        homepage = https://www.jetbrains.com/phpstorm/;
+        homepage = "https://www.jetbrains.com/phpstorm/";
         inherit description license;
         longDescription = ''
           PhpStorm provides an editor for PHP, HTML and JavaScript
@@ -160,7 +160,7 @@ let
       inherit name version src wmClass jdk;
       product = "PyCharm";
       meta = with stdenv.lib; {
-        homepage = https://www.jetbrains.com/pycharm/;
+        homepage = "https://www.jetbrains.com/pycharm/";
         inherit description license;
         longDescription = ''
           Python IDE with complete set of tools for productive
@@ -187,7 +187,7 @@ let
       inherit name version src wmClass jdk;
       product = "Rider";
       meta = with stdenv.lib; {
-        homepage = https://www.jetbrains.com/rider/;
+        homepage = "https://www.jetbrains.com/rider/";
         inherit description license;
         longDescription = ''
           JetBrains Rider is a new .NET IDE based on the IntelliJ
@@ -213,7 +213,7 @@ let
       inherit name version src wmClass jdk;
       product = "RubyMine";
       meta = with stdenv.lib; {
-        homepage = https://www.jetbrains.com/ruby/;
+        homepage = "https://www.jetbrains.com/ruby/";
         inherit description license;
         longDescription = description;
         maintainers = with maintainers; [ edwtjo ];
@@ -226,7 +226,7 @@ let
       inherit name version src wmClass jdk;
       product = "WebStorm";
       meta = with stdenv.lib; {
-        homepage = https://www.jetbrains.com/webstorm/;
+        homepage = "https://www.jetbrains.com/webstorm/";
         inherit description license;
         longDescription = ''
           WebStorm provides an editor for HTML, JavaScript (incl. Node.js),
@@ -250,12 +250,12 @@ in
 
   clion = buildClion rec {
     name = "clion-${version}";
-    version = "2019.3.3"; /* updated by script */
+    version = "2020.1"; /* updated by script */
     description  = "C/C++ IDE. New. Intelligent. Cross-platform";
     license = stdenv.lib.licenses.unfree;
     src = fetchurl {
       url = "https://download.jetbrains.com/cpp/CLion-${version}.tar.gz";
-      sha256 = "1dvnb6mb8xgrgqzqxm2zirwm77w4pci6ibwsdh6wqpnzpqksh4iw"; /* updated by script */
+      sha256 = "18mbw72vgrzkvjykc23h17qxrxfvhjzhy9rxpi2asw196qalavzp"; /* updated by script */
     };
     wmClass = "jetbrains-clion";
     update-channel = "CLion RELEASE"; # channel's id as in http://www.jetbrains.com/updates/updates.xml
@@ -263,12 +263,12 @@ in
 
   datagrip = buildDataGrip rec {
     name = "datagrip-${version}";
-    version = "2019.3.2"; /* updated by script */
+    version = "2020.1"; /* updated by script */
     description = "Your Swiss Army Knife for Databases and SQL";
     license = stdenv.lib.licenses.unfree;
     src = fetchurl {
       url = "https://download.jetbrains.com/datagrip/${name}.tar.gz";
-      sha256 = "1aypzs5q9zgggxbpaxfd8r5ds0ck31lb00csn62npndqxa3bj7z5"; /* updated by script */
+      sha256 = "1z3asz9fp3xnmbhngar60g8rba83kx987ar67j5m8ws7cijqlzix"; /* updated by script */
     };
     wmClass = "jetbrains-datagrip";
     update-channel = "DataGrip RELEASE";
@@ -276,12 +276,12 @@ in
 
   goland = buildGoland rec {
     name = "goland-${version}";
-    version = "2019.3.2"; /* updated by script */
+    version = "2020.1"; /* updated by script */
     description = "Up and Coming Go IDE";
     license = stdenv.lib.licenses.unfree;
     src = fetchurl {
       url = "https://download.jetbrains.com/go/${name}.tar.gz";
-      sha256 = "0namvc8dfm562dgvs4mrv1c6lyi4j8yxw402fkw55l0xqv3ff0a9"; /* updated by script */
+      sha256 = "1qlpx3vfqwpyyxjsknhxvbdhyciwihhl0hkinrpdky6bza1yfgf6"; /* updated by script */
     };
     wmClass = "jetbrains-goland";
     update-channel = "GoLand RELEASE";
@@ -289,12 +289,12 @@ in
 
   idea-community = buildIdea rec {
     name = "idea-community-${version}";
-    version = "2019.3.3"; /* updated by script */
+    version = "2020.1"; /* updated by script */
     description = "Integrated Development Environment (IDE) by Jetbrains, community edition";
     license = stdenv.lib.licenses.asl20;
     src = fetchurl {
       url = "https://download.jetbrains.com/idea/ideaIC-${version}.tar.gz";
-      sha256 = "15rs866fp4lrsqdk13fnbg7ncdfrhky1m5sl90p32v45j90hagrg"; /* updated by script */
+      sha256 = "1rgqr7fn1sy0zbkfmrw3ll8jps345br3y4aqhynyr48mxiwi4c7s"; /* updated by script */
     };
     wmClass = "jetbrains-idea-ce";
     update-channel = "IntelliJ IDEA RELEASE";
@@ -302,12 +302,12 @@ in
 
   idea-ultimate = buildIdea rec {
     name = "idea-ultimate-${version}";
-    version = "2019.3.3"; /* updated by script */
+    version = "2020.1"; /* updated by script */
     description = "Integrated Development Environment (IDE) by Jetbrains, requires paid license";
     license = stdenv.lib.licenses.unfree;
     src = fetchurl {
       url = "https://download.jetbrains.com/idea/ideaIU-${version}-no-jbr.tar.gz";
-      sha256 = "034aq5lf64apc152xr0889hg2xak2if9n5xl6zvd3f9q9srhivxn"; /* updated by script */
+      sha256 = "0lrimmczl49azwsms56l4dg7himzr991a209r921jxa32rdjfq6x"; /* updated by script */
     };
     wmClass = "jetbrains-idea";
     update-channel = "IntelliJ IDEA RELEASE";
@@ -315,12 +315,12 @@ in
 
   phpstorm = buildPhpStorm rec {
     name = "phpstorm-${version}";
-    version = "2019.3.2"; /* updated by script */
+    version = "2020.1"; /* updated by script */
     description = "Professional IDE for Web and PHP developers";
     license = stdenv.lib.licenses.unfree;
     src = fetchurl {
       url = "https://download.jetbrains.com/webide/PhpStorm-${version}.tar.gz";
-      sha256 = "02qnkcri49chbbpx2f338cfs5w2kg1l7zfn6fa7qrla82zpjsqlm"; /* updated by script */
+      sha256 = "1yvqljjv6004kw2nkpddrsgnigb56rapgs3f1pcvl20h6hj08qj8"; /* updated by script */
     };
     wmClass = "jetbrains-phpstorm";
     update-channel = "PhpStorm RELEASE";
@@ -328,12 +328,12 @@ in
 
   pycharm-community = buildPycharm rec {
     name = "pycharm-community-${version}";
-    version = "2019.3.3"; /* updated by script */
+    version = "2020.1"; /* updated by script */
     description = "PyCharm Community Edition";
     license = stdenv.lib.licenses.asl20;
     src = fetchurl {
       url = "https://download.jetbrains.com/python/${name}.tar.gz";
-      sha256 = "0ly3cdzm4hp4qchdadjmbd39jnqpmpnlk6vgp8s4amsv35b6hydd"; /* updated by script */
+      sha256 = "1ld9hh9bxirsv5rwrx7wbmfaxwvxfw7cjfjqi8l0q0n93v89z90s"; /* updated by script */
     };
     wmClass = "jetbrains-pycharm-ce";
     update-channel = "PyCharm RELEASE";
@@ -341,12 +341,12 @@ in
 
   pycharm-professional = buildPycharm rec {
     name = "pycharm-professional-${version}";
-    version = "2019.3.3"; /* updated by script */
+    version = "2020.1"; /* updated by script */
     description = "PyCharm Professional Edition";
     license = stdenv.lib.licenses.unfree;
     src = fetchurl {
       url = "https://download.jetbrains.com/python/${name}.tar.gz";
-      sha256 = "1305zvb5n2zqnny4l50qfv7jd1sj4ffhrig4rpfiqg65ncfpypwb"; /* updated by script */
+      sha256 = "1swd2qfhsa6i1aq7z2s183d0hif2gmk1kkw9ns4aybny0wvvnqw2"; /* updated by script */
     };
     wmClass = "jetbrains-pycharm";
     update-channel = "PyCharm RELEASE";
@@ -354,12 +354,12 @@ in
 
   rider = buildRider rec {
     name = "rider-${version}";
-    version = "2019.3.1"; /* updated by script */
+    version = "2020.1.0"; /* updated by script */
     description = "A cross-platform .NET IDE based on the IntelliJ platform and ReSharper";
     license = stdenv.lib.licenses.unfree;
     src = fetchurl {
       url = "https://download.jetbrains.com/rider/JetBrains.Rider-${version}.tar.gz";
-      sha256 = "0cs8fc3h6d2m84ppiqjy0f3xklpc5gf0i6c4bzv04y8ngh0cwgl2"; /* updated by script */
+      sha256 = "1allpdr7k48nvl8vbvzyn6h81jpklzaqdqivrqqyh8hy9l98w4ws"; /* updated by script */
     };
     wmClass = "jetbrains-rider";
     update-channel = "Rider RELEASE";
@@ -367,12 +367,12 @@ in
 
   ruby-mine = buildRubyMine rec {
     name = "ruby-mine-${version}";
-    version = "2019.3.2"; /* updated by script */
+    version = "2020.1"; /* updated by script */
     description = "The Most Intelligent Ruby and Rails IDE";
     license = stdenv.lib.licenses.unfree;
     src = fetchurl {
       url = "https://download.jetbrains.com/ruby/RubyMine-${version}.tar.gz";
-      sha256 = "0mwzhvrhvsyb8r7sjcigv9jazim1zyipb3ym4xsd2gyl3ans2vm9"; /* updated by script */
+      sha256 = "1hk6k4f24infw9qj9mxp305nl0bxif6ymdsqg005pskvnyi8v5fi"; /* updated by script */
     };
     wmClass = "jetbrains-rubymine";
     update-channel = "RubyMine RELEASE";
@@ -380,12 +380,12 @@ in
 
   webstorm = buildWebStorm rec {
     name = "webstorm-${version}";
-    version = "2019.3.2"; /* updated by script */
+    version = "2020.1"; /* updated by script */
     description = "Professional IDE for Web and JavaScript development";
     license = stdenv.lib.licenses.unfree;
     src = fetchurl {
       url = "https://download.jetbrains.com/webstorm/WebStorm-${version}.tar.gz";
-      sha256 = "0mbfkwjqg2d1mkka0vajx41nv4f07y1w7chk6ii7sylaj7ypzi13"; /* updated by script */
+      sha256 = "1c68li5jxsjml0macdb0s04llwwq1hni5z8vq2zdfcn5zm3xwpif"; /* updated by script */
     };
     wmClass = "jetbrains-webstorm";
     update-channel = "WebStorm RELEASE";
diff --git a/pkgs/applications/editors/joe/default.nix b/pkgs/applications/editors/joe/default.nix
index 6f5839b3d06f..bb227512387d 100644
--- a/pkgs/applications/editors/joe/default.nix
+++ b/pkgs/applications/editors/joe/default.nix
@@ -11,7 +11,7 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "A full featured terminal-based screen editor";
-    homepage = https://joe-editor.sourceforge.io;
+    homepage = "https://joe-editor.sourceforge.io";
     license = licenses.gpl2;
     platforms = platforms.unix;
   };
diff --git a/pkgs/applications/editors/jucipp/default.nix b/pkgs/applications/editors/jucipp/default.nix
index 2682c1e789b4..53549986ed24 100644
--- a/pkgs/applications/editors/jucipp/default.nix
+++ b/pkgs/applications/editors/jucipp/default.nix
@@ -10,7 +10,7 @@ stdenv.mkDerivation rec {
   version = "1.2.3";
 
   meta = {
-    homepage = https://github.com/cppit/jucipp;
+    homepage = "https://github.com/cppit/jucipp";
     description = "A lightweight, platform independent C++-IDE with support for C++11, C++14, and experimental C++17 features depending on libclang version";
     license = licenses.mit;
     platforms = platforms.linux;
diff --git a/pkgs/applications/editors/jupp/default.nix b/pkgs/applications/editors/jupp/default.nix
index 4a44b35a0fa7..79db7b8a558a 100644
--- a/pkgs/applications/editors/jupp/default.nix
+++ b/pkgs/applications/editors/jupp/default.nix
@@ -1,18 +1,16 @@
-{ stdenv, fetchurl
-, ncurses, gpm
-}:
+{ stdenv, fetchurl, ncurses, gpm }:
 
 stdenv.mkDerivation rec {
 
   pname = "jupp";
-  version = "3.1";
-  srcName = "joe-3.1jupp31";
+  version = "39";
+  srcName = "joe-3.1${pname}${version}";
 
   src = fetchurl {
     urls = [
       "https://www.mirbsd.org/MirOS/dist/jupp/${srcName}.tgz"
       "https://pub.allbsd.org/MirOS/dist/jupp/${srcName}.tgz" ];
-    sha256 = "1fnf9jsd6p4jyybkhjjs328qx38ywy8w029ngc7j7kqp0ixn0l0s";
+    sha256 = "14gys92dy3kq9ikigry7q2x4w5v2z76d97vp212bddrxiqy5np8d";
   };
 
   preConfigure = "chmod +x ./configure";
@@ -37,7 +35,7 @@ stdenv.mkDerivation rec {
       and has a lot of bugs fixed. It is based upon an older version of joe
       because these behave better overall.
     '';
-    homepage = http://mirbsd.de/jupp;
+    homepage = "http://www.mirbsd.org/jupp.htm";
     license = licenses.gpl1;
     maintainers = with maintainers; [ AndersonTorres ];
   };
diff --git a/pkgs/applications/editors/jupyter/kernel.nix b/pkgs/applications/editors/jupyter/kernel.nix
index 43cea9fcae93..fba884f5a2fd 100644
--- a/pkgs/applications/editors/jupyter/kernel.nix
+++ b/pkgs/applications/editors/jupyter/kernel.nix
@@ -67,7 +67,7 @@ in
 
     meta = {
       description = "Wrapper to create jupyter notebook kernel definitions";
-      homepage = https://jupyter.org/;
+      homepage = "https://jupyter.org/";
       maintainers = with maintainers; [ aborsu ];
     };
   };
diff --git a/pkgs/applications/editors/kakoune/default.nix b/pkgs/applications/editors/kakoune/default.nix
index 8cb70af40e06..6a468bd67eb5 100644
--- a/pkgs/applications/editors/kakoune/default.nix
+++ b/pkgs/applications/editors/kakoune/default.nix
@@ -31,7 +31,7 @@ stdenv.mkDerivation rec {
   '';
 
   meta = {
-    homepage = http://kakoune.org/;
+    homepage = "http://kakoune.org/";
     description = "A vim inspired text editor";
     license = licenses.publicDomain;
     maintainers = with maintainers; [ vrthra ];
diff --git a/pkgs/applications/editors/kdevelop5/kdev-php.nix b/pkgs/applications/editors/kdevelop5/kdev-php.nix
index 72ef08107040..4bd6e34b4fcb 100644
--- a/pkgs/applications/editors/kdevelop5/kdev-php.nix
+++ b/pkgs/applications/editors/kdevelop5/kdev-php.nix
@@ -2,11 +2,11 @@
 
 stdenv.mkDerivation rec {
   pname = "kdev-php";
-  version = "5.5.0";
+  version = "5.5.1";
 
   src = fetchurl {
     url = "https://github.com/KDE/${pname}/archive/v${version}.tar.gz";
-    sha256 = "1hd3ckayrwszda517zfvhihrfmzq4m3kcsrz4sqkbvib0giwsfkp";
+    sha256 = "1z3mmlg5srzff0y1pjd4wfdf9k4rzk7gfdvbvzizkiy395qw1phv";
   };
 
   nativeBuildInputs = [ cmake extra-cmake-modules ];
diff --git a/pkgs/applications/editors/kdevelop5/kdev-python.nix b/pkgs/applications/editors/kdevelop5/kdev-python.nix
index 275aaba4f2eb..80a5436c9556 100644
--- a/pkgs/applications/editors/kdevelop5/kdev-python.nix
+++ b/pkgs/applications/editors/kdevelop5/kdev-python.nix
@@ -2,11 +2,11 @@
 
 stdenv.mkDerivation rec {
   pname = "kdev-python";
-  version = "5.5.0";
+  version = "5.5.1";
 
   src = fetchurl {
     url = "https://github.com/KDE/${pname}/archive/v${version}.tar.gz";
-    sha256 = "0kna6vkxc6lrfzb3gzn11qvw8jpa86gi1k996hdk83gn0lhmkvx5";
+    sha256 = "0k4j2kp77sz2p8s77wmcawia81bx7vfb2nnh9lqxzdk2mmlg387c";
   };
 
   cmakeFlags = [
diff --git a/pkgs/applications/editors/kdevelop5/kdevelop-pg-qt.nix b/pkgs/applications/editors/kdevelop5/kdevelop-pg-qt.nix
index 0ed4fe0aaad7..ad83bd43af2f 100644
--- a/pkgs/applications/editors/kdevelop5/kdevelop-pg-qt.nix
+++ b/pkgs/applications/editors/kdevelop5/kdevelop-pg-qt.nix
@@ -2,7 +2,7 @@
 
 let
   pname = "kdevelop-pg-qt";
-  version = "2.2.0";
+  version = "2.2.1";
 
 in
 stdenv.mkDerivation rec {
@@ -10,7 +10,7 @@ stdenv.mkDerivation rec {
   
   src = fetchurl {
     url = "mirror://kde/stable/${pname}/${version}/src/${name}.tar.xz";
-    sha256 = "01a4y98hf8zlrdf5l8f4izqh4n3j3xs93j8ny5a3f4z50nb6hxq7";
+    sha256 = "0ay6m6j6zgrbcm48f14bass83bk4w5qnx76xihc05p69i9w32ff1";
   };
 
   nativeBuildInputs = [ cmake pkgconfig extra-cmake-modules ];
@@ -25,7 +25,7 @@ stdenv.mkDerivation rec {
       KDevelop-PG-Qt is the parser-generator from KDevplatform.
       It is used for some KDevelop-languagesupport-plugins (Ruby, PHP, CSS...).
     '';
-    homepage = https://www.kdevelop.org;
+    homepage = "https://www.kdevelop.org";
     license = with stdenv.lib.licenses; [ lgpl2Plus ];
   };
 }
diff --git a/pkgs/applications/editors/kdevelop5/kdevelop.nix b/pkgs/applications/editors/kdevelop5/kdevelop.nix
index 51dfbbab61e8..476819369cf1 100644
--- a/pkgs/applications/editors/kdevelop5/kdevelop.nix
+++ b/pkgs/applications/editors/kdevelop5/kdevelop.nix
@@ -10,11 +10,11 @@
 
 mkDerivation rec {
   pname = "kdevelop";
-  version = "5.5.0";
+  version = "5.5.1";
 
   src = fetchurl {
     url = "mirror://kde/stable/${pname}/${version}/src/${pname}-${version}.tar.xz";
-    sha256 = "0438721v24pim5q0q54ivsws9a679fm7ymrm1nn9g1fv06qsm4d8";
+    sha256 = "18hxwkdbfw0qs3p19jv6d8wwwdzb9m087891i8w2bzkn21fd5pmy";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/applications/editors/kile/default.nix b/pkgs/applications/editors/kile/default.nix
index 494ad686ee3b..f928dbb6ad13 100644
--- a/pkgs/applications/editors/kile/default.nix
+++ b/pkgs/applications/editors/kile/default.nix
@@ -54,7 +54,7 @@ mkDerivation rec {
 
   meta = {
     description = "Kile is a user friendly TeX/LaTeX authoring tool for the KDE desktop environment";
-    homepage = https://www.kde.org/applications/office/kile/;
+    homepage = "https://www.kde.org/applications/office/kile/";
     maintainers = with lib.maintainers; [ fridh ];
     license = lib.licenses.gpl2Plus;
   };
diff --git a/pkgs/applications/editors/kodestudio/default.nix b/pkgs/applications/editors/kodestudio/default.nix
index 9d0d91f4be54..71fa2bcd41b5 100644
--- a/pkgs/applications/editors/kodestudio/default.nix
+++ b/pkgs/applications/editors/kodestudio/default.nix
@@ -125,8 +125,8 @@ in
         (with JavaScript coming soon). Using Kha or Kore you can access all
         hardware at the lowest possible level in a completely portable way.
       '';
-      homepage = http://kode.tech/;
-      downloadPage = https://github.com/Kode/KodeStudio/releases;
+      homepage = "http://kode.tech/";
+      downloadPage = "https://github.com/Kode/KodeStudio/releases";
       license = licenses.mit;
       maintainers = [ maintainers.patternspandemic ];
       platforms = [ "x86_64-linux" "i686-cygwin" ];
diff --git a/pkgs/applications/editors/leafpad/default.nix b/pkgs/applications/editors/leafpad/default.nix
index 508d2329edc4..94fa0be01737 100644
--- a/pkgs/applications/editors/leafpad/default.nix
+++ b/pkgs/applications/editors/leafpad/default.nix
@@ -19,7 +19,7 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "A notepad clone for GTK 2.0";
-    homepage = http://tarot.freeshell.org/leafpad;
+    homepage = "http://tarot.freeshell.org/leafpad";
     platforms = platforms.linux;
     maintainers = [ maintainers.flosse ];
     license = licenses.gpl3;
diff --git a/pkgs/applications/editors/leo-editor/default.nix b/pkgs/applications/editors/leo-editor/default.nix
index bd433436eb02..f09fd2ec2779 100644
--- a/pkgs/applications/editors/leo-editor/default.nix
+++ b/pkgs/applications/editors/leo-editor/default.nix
@@ -1,19 +1,19 @@
-{ stdenv, python3, fetchFromGitHub, makeWrapper, makeDesktopItem }:
+{ lib, mkDerivation, python3, fetchFromGitHub, makeWrapper, wrapQtAppsHook, makeDesktopItem }:
 
-stdenv.mkDerivation rec {
+mkDerivation rec {
   pname = "leo-editor";
-  version = "5.7.3";
+  version = "6.2.1";
 
   src = fetchFromGitHub {
     owner = "leo-editor";
     repo = "leo-editor";
     rev = version;
-    sha256 = "0ri6l6cxwva450l05af5vs1lsgrz6ciwd02njdgphs9pm1vwxbl9";
+    sha256 = "1s9jvxwzsl32clp78g92nq9p2byf08libr5widl1jnkv1cpkbvh9";
   };
 
   dontBuild = true;
 
-  nativeBuildInputs = [ makeWrapper python3 ];
+  nativeBuildInputs = [ wrapQtAppsHook makeWrapper python3 ];
   propagatedBuildInputs = with python3.pkgs; [ pyqt5 docutils ];
 
   desktopItem = makeDesktopItem {
@@ -24,11 +24,11 @@ stdenv.mkDerivation rec {
     comment = meta.description;
     desktopName = "Leo";
     genericName = "Text Editor";
-    categories = stdenv.lib.concatStringsSep ";" [
-      "Application" "Development" "IDE" "QT"
+    categories = lib.concatStringsSep ";" [
+      "Application" "Development" "IDE"
     ];
     startupNotify = "false";
-    mimeType = stdenv.lib.concatStringsSep ";" [
+    mimeType = lib.concatStringsSep ";" [
       "text/plain" "text/asp" "text/x-c" "text/x-script.elisp" "text/x-fortran"
       "text/html" "application/inf" "text/x-java-source" "application/x-javascript"
       "application/javascript" "text/ecmascript" "application/x-ksh" "text/x-script.ksh"
@@ -53,10 +53,12 @@ stdenv.mkDerivation rec {
     makeWrapper ${python3.interpreter} $out/bin/leo \
       --set PYTHONPATH "$PYTHONPATH:$out/share/leo-editor" \
       --add-flags "-O $out/share/leo-editor/launchLeo.py"
+
+    wrapQtApp $out/bin/leo
   '';
 
-  meta = with stdenv.lib; {
-    homepage = http://leoeditor.com;
+  meta = with lib; {
+    homepage = "http://leoeditor.com";
     description = "A powerful folding editor";
     longDescription = "Leo is a PIM, IDE and outliner that accelerates the work flow of programmers, authors and web designers.";
     license = licenses.mit;
diff --git a/pkgs/applications/editors/lighttable/default.nix b/pkgs/applications/editors/lighttable/default.nix
index 90e8c73e075d..26c5ee421527 100644
--- a/pkgs/applications/editors/lighttable/default.nix
+++ b/pkgs/applications/editors/lighttable/default.nix
@@ -57,7 +57,7 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "The next generation code editor";
-    homepage = http://www.lighttable.com/;
+    homepage = "http://www.lighttable.com/";
     license = licenses.gpl3;
     maintainers = [ maintainers.matejc ];
     platforms = [ "x86_64-linux" ];
diff --git a/pkgs/applications/editors/manuskript/default.nix b/pkgs/applications/editors/manuskript/default.nix
index dc8eb200fff9..deeb9b36c719 100644
--- a/pkgs/applications/editors/manuskript/default.nix
+++ b/pkgs/applications/editors/manuskript/default.nix
@@ -42,7 +42,7 @@ python3Packages.buildPythonApplication rec {
 
   meta = {
     description = "A open-source tool for writers";
-    homepage = http://www.theologeek.ch/manuskript;
+    homepage = "http://www.theologeek.ch/manuskript";
     longDescription = ''
     Manuskript is a tool for those writer who like to organize and
     plan everything before writing.  The snowflake method can help you
diff --git a/pkgs/applications/editors/micro/default.nix b/pkgs/applications/editors/micro/default.nix
index e6b93f20c488..6a1ee5d196ee 100644
--- a/pkgs/applications/editors/micro/default.nix
+++ b/pkgs/applications/editors/micro/default.nix
@@ -2,7 +2,7 @@
 
 buildGoPackage  rec {
   pname = "micro";
-  version = "1.4.1";
+  version = "2.0.3";
 
   goPackagePath = "github.com/zyedidia/micro";
 
@@ -10,16 +10,18 @@ buildGoPackage  rec {
     owner = "zyedidia";
     repo = "micro";
     rev = "v${version}";
-    sha256 = "0m9p6smb5grdazsgr3m1x4rry9ihhlgl9ildhvfp53czrifbx0m5";
+    sha256 = "017m9kb3gfrgzd06f1nma1i3m5rb0hzpgdikb86lsyv8ik18y12z";
     fetchSubmodules = true;
   };
 
   subPackages = [ "cmd/micro" ];
 
-  buildFlagsArray = [ "-ldflags=" "-X main.Version=${version}" ];
+  buildFlagsArray = [ "-ldflags=" "-X ${goPackagePath}/internal/util.Version=${version}" ];
+
+  goDeps = ./deps.nix;
 
   meta = with stdenv.lib; {
-    homepage = https://micro-editor.github.io;
+    homepage = "https://micro-editor.github.io";
     description = "Modern and intuitive terminal-based text editor";
     license = licenses.mit;
     maintainers = with maintainers; [ dtzWill ];
diff --git a/pkgs/applications/editors/micro/deps.nix b/pkgs/applications/editors/micro/deps.nix
new file mode 100644
index 000000000000..e8ed69a9088b
--- /dev/null
+++ b/pkgs/applications/editors/micro/deps.nix
@@ -0,0 +1,336 @@
+# file generated from go.mod using vgo2nix (https://github.com/adisbladis/vgo2nix)
+[
+  {
+    goPackagePath = "github.com/blang/semver";
+    fetch = {
+      type = "git";
+      url = "https://github.com/blang/semver";
+      rev = "v3.5.1";
+      sha256 = "13ws259bwcibkclbr82ilhk6zadm63kxklxhk12wayklj8ghhsmy";
+    };
+  }
+  {
+    goPackagePath = "github.com/chzyer/logex";
+    fetch = {
+      type = "git";
+      url = "https://github.com/chzyer/logex";
+      rev = "v1.1.10";
+      sha256 = "08pbjj3wx9acavlwyr055isa8a5hnmllgdv5k6ra60l5y1brmlq4";
+    };
+  }
+  {
+    goPackagePath = "github.com/chzyer/readline";
+    fetch = {
+      type = "git";
+      url = "https://github.com/chzyer/readline";
+      rev = "2972be24d48e";
+      sha256 = "104q8dazj8yf6b089jjr82fy9h1g80zyyzvp3g8b44a7d8ngjj6r";
+    };
+  }
+  {
+    goPackagePath = "github.com/chzyer/test";
+    fetch = {
+      type = "git";
+      url = "https://github.com/chzyer/test";
+      rev = "a1ea475d72b1";
+      sha256 = "0rns2aqk22i9xsgyap0pq8wi4cfaxsri4d9q6xxhhyma8jjsnj2k";
+    };
+  }
+  {
+    goPackagePath = "github.com/davecgh/go-spew";
+    fetch = {
+      type = "git";
+      url = "https://github.com/davecgh/go-spew";
+      rev = "v1.1.1";
+      sha256 = "0hka6hmyvp701adzag2g26cxdj47g21x6jz4sc6jjz1mn59d474y";
+    };
+  }
+  {
+    goPackagePath = "github.com/dustin/go-humanize";
+    fetch = {
+      type = "git";
+      url = "https://github.com/dustin/go-humanize";
+      rev = "v1.0.0";
+      sha256 = "1kqf1kavdyvjk7f8kx62pnm7fbypn9z1vbf8v2qdh3y7z7a0cbl3";
+    };
+  }
+  {
+    goPackagePath = "github.com/gdamore/encoding";
+    fetch = {
+      type = "git";
+      url = "https://github.com/gdamore/encoding";
+      rev = "v1.0.0";
+      sha256 = "1vmm5zll92i2fm4ajqx0gyx0p9j36496x5nabi3y0x7h0inv0pk9";
+    };
+  }
+  {
+    goPackagePath = "github.com/go-errors/errors";
+    fetch = {
+      type = "git";
+      url = "https://github.com/go-errors/errors";
+      rev = "v1.0.1";
+      sha256 = "0rznpknk19rxkr7li6dqs52c26pjazp69lh493l4ny4sxn5922lp";
+    };
+  }
+  {
+    goPackagePath = "github.com/kballard/go-shellquote";
+    fetch = {
+      type = "git";
+      url = "https://github.com/kballard/go-shellquote";
+      rev = "95032a82bc51";
+      sha256 = "1rspvmnsikdq95jmx3dykxd4k1rmgl98ryjrysvl0cf18hl1vq80";
+    };
+  }
+  {
+    goPackagePath = "github.com/kr/pretty";
+    fetch = {
+      type = "git";
+      url = "https://github.com/kr/pretty";
+      rev = "v0.1.0";
+      sha256 = "18m4pwg2abd0j9cn5v3k2ksk9ig4vlwxmlw9rrglanziv9l967qp";
+    };
+  }
+  {
+    goPackagePath = "github.com/kr/pty";
+    fetch = {
+      type = "git";
+      url = "https://github.com/kr/pty";
+      rev = "v1.1.1";
+      sha256 = "0383f0mb9kqjvncqrfpidsf8y6ns5zlrc91c6a74xpyxjwvzl2y6";
+    };
+  }
+  {
+    goPackagePath = "github.com/kr/text";
+    fetch = {
+      type = "git";
+      url = "https://github.com/kr/text";
+      rev = "v0.1.0";
+      sha256 = "1gm5bsl01apvc84bw06hasawyqm4q84vx1pm32wr9jnd7a8vjgj1";
+    };
+  }
+  {
+    goPackagePath = "github.com/lucasb-eyer/go-colorful";
+    fetch = {
+      type = "git";
+      url = "https://github.com/lucasb-eyer/go-colorful";
+      rev = "v1.0.3";
+      sha256 = "12bgz6dxbb2ki1g3x7fg9ipsjgfkd58fp7cdpv63h4kvlj2n7j69";
+    };
+  }
+  {
+    goPackagePath = "github.com/mattn/go-isatty";
+    fetch = {
+      type = "git";
+      url = "https://github.com/mattn/go-isatty";
+      rev = "v0.0.11";
+      sha256 = "0h671sv7hfprja495kavazkalkx7xzaqksjh13brcnwq67ijrali";
+    };
+  }
+  {
+    goPackagePath = "github.com/mattn/go-runewidth";
+    fetch = {
+      type = "git";
+      url = "https://github.com/mattn/go-runewidth";
+      rev = "v0.0.7";
+      sha256 = "1snr8mk63vz2h44knq26dm81p83887v7kb09iywqmx0nqzngih66";
+    };
+  }
+  {
+    goPackagePath = "github.com/mitchellh/go-homedir";
+    fetch = {
+      type = "git";
+      url = "https://github.com/mitchellh/go-homedir";
+      rev = "v1.1.0";
+      sha256 = "0ydzkipf28hwj2bfxqmwlww47khyk6d152xax4bnyh60f4lq3nx1";
+    };
+  }
+  {
+    goPackagePath = "github.com/pmezard/go-difflib";
+    fetch = {
+      type = "git";
+      url = "https://github.com/pmezard/go-difflib";
+      rev = "v1.0.0";
+      sha256 = "0c1cn55m4rypmscgf0rrb88pn58j3ysvc2d0432dp3c6fqg6cnzw";
+    };
+  }
+  {
+    goPackagePath = "github.com/robertkrimen/otto";
+    fetch = {
+      type = "git";
+      url = "https://github.com/robertkrimen/otto";
+      rev = "c382bd3c16ff";
+      sha256 = "043y6l647snsz71mdy84s2d3kn22aj6rbqd6c1vd8absvamqhlxa";
+    };
+  }
+  {
+    goPackagePath = "github.com/sergi/go-diff";
+    fetch = {
+      type = "git";
+      url = "https://github.com/sergi/go-diff";
+      rev = "v1.1.0";
+      sha256 = "0ir8ali2vx0j7pipmlfd6k8c973akyy2nmbjrf008fm800zcp7z2";
+    };
+  }
+  {
+    goPackagePath = "github.com/stretchr/objx";
+    fetch = {
+      type = "git";
+      url = "https://github.com/stretchr/objx";
+      rev = "v0.1.0";
+      sha256 = "19ynspzjdynbi85xw06mh8ad5j0qa1vryvxjgvbnyrr8rbm4vd8w";
+    };
+  }
+  {
+    goPackagePath = "github.com/stretchr/testify";
+    fetch = {
+      type = "git";
+      url = "https://github.com/stretchr/testify";
+      rev = "v1.4.0";
+      sha256 = "187i5g88sxfy4vxpm7dw1gwv29pa2qaq475lxrdh5livh69wqfjb";
+    };
+  }
+  {
+    goPackagePath = "github.com/yuin/gopher-lua";
+    fetch = {
+      type = "git";
+      url = "https://github.com/yuin/gopher-lua";
+      rev = "ab39c6098bdb";
+      sha256 = "13b0rrpv3988qw8rq6z7npajn1my059ybhafi5mxff9jw09k9sja";
+    };
+  }
+  {
+    goPackagePath = "github.com/zyedidia/clipboard";
+    fetch = {
+      type = "git";
+      url = "https://github.com/zyedidia/clipboard";
+      rev = "241f98e9b197";
+      sha256 = "1glc8w30sijpbppcvaf3503rmx5nxqkcgw87dr2pr3q3vv1bg3zi";
+    };
+  }
+  {
+    goPackagePath = "github.com/zyedidia/glob";
+    fetch = {
+      type = "git";
+      url = "https://github.com/zyedidia/glob";
+      rev = "dd4023a66dc3";
+      sha256 = "1vqw4xbqq6j8p5m7mwxvb448w69vjvgzx0ndsfzdh2cxfirwp3y7";
+    };
+  }
+  {
+    goPackagePath = "github.com/zyedidia/highlight";
+    fetch = {
+      type = "git";
+      url = "https://github.com/zyedidia/highlight";
+      rev = "201131ce5cf5";
+      sha256 = "0blaynf32swmqddx2hcrifrfssj9c04kwnbdy42h3kzxihrwz4ps";
+    };
+  }
+  {
+    goPackagePath = "github.com/zyedidia/json5";
+    fetch = {
+      type = "git";
+      url = "https://github.com/zyedidia/json5";
+      rev = "2da050b1a98d";
+      sha256 = "1sgydazf3npr788b4w17ydmlh3fd1zmpriv9b69967ww90ckh2kz";
+    };
+  }
+  {
+    goPackagePath = "github.com/zyedidia/poller";
+    fetch = {
+      type = "git";
+      url = "https://github.com/zyedidia/poller";
+      rev = "v1.0.1";
+      sha256 = "10cjrqfk1j0l55bdbpm7kv4mqc665pngc8avai0p9chq03y2654g";
+    };
+  }
+  {
+    goPackagePath = "github.com/zyedidia/pty";
+    fetch = {
+      type = "git";
+      url = "https://github.com/zyedidia/pty";
+      rev = "v2.0.0";
+      sha256 = "1n946ld8y2v2wfbwsxv8rfaicxbw3w8pk11ryc8iybmw7hkmmf79";
+    };
+  }
+  {
+    goPackagePath = "github.com/zyedidia/tcell";
+    fetch = {
+      type = "git";
+      url = "https://github.com/zyedidia/tcell";
+      rev = "v1.4.4";
+      sha256 = "0d62a9csab15b64y09jcbvq71065wliw4bd5m7lfpl5k8rmrrdyi";
+    };
+  }
+  {
+    goPackagePath = "github.com/zyedidia/terminal";
+    fetch = {
+      type = "git";
+      url = "https://github.com/zyedidia/terminal";
+      rev = "533c623e2415";
+      sha256 = "16l628f3zgl5yp9z5zkfy2hyl2sckw4d6mg3iqv2jjvh4i8yhrsm";
+    };
+  }
+  {
+    goPackagePath = "golang.org/x/sys";
+    fetch = {
+      type = "git";
+      url = "https://go.googlesource.com/sys";
+      rev = "33540a1f6037";
+      sha256 = "0fjcv0vzvi6za0b4xmnk3932pr9f9gczzf03y0kgq3ry9rqg169y";
+    };
+  }
+  {
+    goPackagePath = "golang.org/x/text";
+    fetch = {
+      type = "git";
+      url = "https://go.googlesource.com/text";
+      rev = "v0.3.2";
+      sha256 = "0flv9idw0jm5nm8lx25xqanbkqgfiym6619w575p7nrdh0riqwqh";
+    };
+  }
+  {
+    goPackagePath = "golang.org/x/tools";
+    fetch = {
+      type = "git";
+      url = "https://go.googlesource.com/tools";
+      rev = "90fa682c2a6e";
+      sha256 = "03ic2xsy51jw9749wl7gszdbz99iijbd2bckgygl6cm9w5m364ak";
+    };
+  }
+  {
+    goPackagePath = "gopkg.in/check.v1";
+    fetch = {
+      type = "git";
+      url = "https://gopkg.in/check.v1";
+      rev = "41f04d3bba15";
+      sha256 = "0vfk9czmlxmp6wndq8k17rhnjxal764mxfhrccza7nwlia760pjy";
+    };
+  }
+  {
+    goPackagePath = "gopkg.in/sourcemap.v1";
+    fetch = {
+      type = "git";
+      url = "https://gopkg.in/sourcemap.v1";
+      rev = "v1.0.5";
+      sha256 = "08rf2dl13hbnm3fq2cm0nnsspy9fhf922ln23cz5463cv7h62as4";
+    };
+  }
+  {
+    goPackagePath = "gopkg.in/yaml.v2";
+    fetch = {
+      type = "git";
+      url = "https://gopkg.in/yaml.v2";
+      rev = "v2.2.7";
+      sha256 = "0k5xcwkd3wmcx54isk7ck9cwp8fapfhyqdz3f13kxp77cxqizazj";
+    };
+  }
+  {
+    goPackagePath = "layeh.com/gopher-luar";
+    fetch = {
+      type = "git";
+      url = "https://github.com/layeh/gopher-luar";
+      rev = "v1.0.7";
+      sha256 = "1rdbni3q7zajmiy62ccvbfgqjzppk5212wpwks2ba726hvyf85mj";
+    };
+  }
+]
diff --git a/pkgs/applications/editors/mindforger/default.nix b/pkgs/applications/editors/mindforger/default.nix
index 9cfcf95e78b1..82aa38c14499 100644
--- a/pkgs/applications/editors/mindforger/default.nix
+++ b/pkgs/applications/editors/mindforger/default.nix
@@ -1,6 +1,6 @@
-{ stdenv, fetchurl, qmake, qtbase, qtwebkit }:
+{ mkDerivation, stdenv, fetchurl, qmake, qtbase, qtwebkit }:
 
-stdenv.mkDerivation rec {
+mkDerivation rec {
   pname = "mindforger";
   version = "1.48.2";
 
@@ -38,7 +38,7 @@ stdenv.mkDerivation rec {
      MindForger is actually more than an editor or IDE - it's human
      mind inspired personal knowledge management tool
     '';
-    homepage = https://www.mindforger.com;
+    homepage = "https://www.mindforger.com";
     license = licenses.gpl2Plus;
     platforms = platforms.all;
   };
diff --git a/pkgs/applications/editors/moe/default.nix b/pkgs/applications/editors/moe/default.nix
index 4e960524b94f..060abda33d0d 100644
--- a/pkgs/applications/editors/moe/default.nix
+++ b/pkgs/applications/editors/moe/default.nix
@@ -33,7 +33,7 @@ stdenv.mkDerivation rec {
       completion, directory browser, duplicate removal from prompt histories,
       delimiter matching, text conversion from/to UTF-8, romanization, etc.
     '';
-    homepage = https://www.gnu.org/software/moe/;
+    homepage = "https://www.gnu.org/software/moe/";
     license = licenses.gpl2Plus;
     maintainers = with maintainers; [ AndersonTorres ];
     platforms = platforms.unix;
diff --git a/pkgs/applications/editors/music/tuxguitar/default.nix b/pkgs/applications/editors/music/tuxguitar/default.nix
index 8522ecf9c78f..08841eb58100 100644
--- a/pkgs/applications/editors/music/tuxguitar/default.nix
+++ b/pkgs/applications/editors/music/tuxguitar/default.nix
@@ -37,7 +37,7 @@ in stdenv.mkDerivation rec {
       TuxGuitar is a multitrack guitar tablature editor and player written
       in Java-SWT. It can open GuitarPro, PowerTab and TablEdit files.
     '';
-    homepage = http://www.tuxguitar.com.ar/;
+    homepage = "http://www.tuxguitar.com.ar/";
     license = licenses.lgpl2;
     maintainers = [ maintainers.ardumont ];
     platforms = platforms.linux;
diff --git a/pkgs/applications/editors/nano/default.nix b/pkgs/applications/editors/nano/default.nix
index 4197792d7365..b4ce588050fa 100644
--- a/pkgs/applications/editors/nano/default.nix
+++ b/pkgs/applications/editors/nano/default.nix
@@ -20,11 +20,11 @@ let
 
 in stdenv.mkDerivation rec {
   pname = "nano";
-  version = "4.7";
+  version = "4.9.1";
 
   src = fetchurl {
     url = "mirror://gnu/nano/${pname}-${version}.tar.xz";
-    sha256 = "1x9nqy2kgaz6087p63i71gdjsqbdc9jjpx1ymlyclfakvsby3h2q";
+    sha256 = "0v5s58j3lbg5s6gapl9kjmzph7zgwaam53qspycy2sxaxw65mkaj";
   };
 
   nativeBuildInputs = [ texinfo ] ++ optional enableNls gettext;
@@ -45,7 +45,7 @@ in stdenv.mkDerivation rec {
   enableParallelBuilding = true;
 
   meta = {
-    homepage = https://www.nano-editor.org/;
+    homepage = "https://www.nano-editor.org/";
     description = "A small, user-friendly console text editor";
     license = licenses.gpl3Plus;
     maintainers = with maintainers; [
diff --git a/pkgs/applications/editors/nano/nanorc/default.nix b/pkgs/applications/editors/nano/nanorc/default.nix
index eab37fba19a7..5f3a1ac91bd6 100644
--- a/pkgs/applications/editors/nano/nanorc/default.nix
+++ b/pkgs/applications/editors/nano/nanorc/default.nix
@@ -21,7 +21,7 @@ stdenv.mkDerivation {
 
   meta = {
     description = "Improved Nano Syntax Highlighting Files";
-    homepage = https://github.com/scopatz/nanorc;
+    homepage = "https://github.com/scopatz/nanorc";
     license = stdenv.lib.licenses.gpl3;
     maintainers = with stdenv.lib.maintainers; [ nequissimus ];
     platforms = stdenv.lib.platforms.all;
diff --git a/pkgs/applications/editors/neovim/default.nix b/pkgs/applications/editors/neovim/default.nix
index 2fff5cdce854..475330a5fe57 100644
--- a/pkgs/applications/editors/neovim/default.nix
+++ b/pkgs/applications/editors/neovim/default.nix
@@ -112,7 +112,7 @@ in
           modifications to the core source
         - Improve extensibility with a new plugin architecture
       '';
-      homepage    = https://www.neovim.io;
+      homepage    = "https://www.neovim.io";
       # "Contributions committed before b17d96 by authors who did not sign the
       # Contributor License Agreement (CLA) remain under the Vim license.
       # Contributions committed after b17d96 are licensed under Apache 2.0 unless
diff --git a/pkgs/applications/editors/neovim/gnvim/default.nix b/pkgs/applications/editors/neovim/gnvim/default.nix
index a9b2abd0cb3b..e9f42d2b9b5e 100644
--- a/pkgs/applications/editors/neovim/gnvim/default.nix
+++ b/pkgs/applications/editors/neovim/gnvim/default.nix
@@ -11,10 +11,7 @@ rustPlatform.buildRustPackage rec {
     sha256 = "11gb59lhc1sp5dxj2fdm6072f4nxxay0war3kmchdwsk41nvxlrh";
   };
 
-  # Delete this on next update; see #79975 for details
-  legacyCargoFetcher = true;
-
-  cargoSha256 = "00r5jf5qdw02vcv3522qqrnwj14mip0l58prcncbvyg4pxlm2rb2";
+  cargoSha256 = "0ay7hx5bzchp772ywgxzia12c44kbyarrshl689cmqh59wphsrx5";
 
   buildInputs = [ gtk webkitgtk ];
 
@@ -43,8 +40,7 @@ rustPlatform.buildRustPackage rec {
   meta = with stdenv.lib; {
     description = "GUI for neovim, without any web bloat";
     homepage = "https://github.com/vhakulinen/gnvim";
-    license     = licenses.mit;
-    maintainers =  with maintainers; [ minijackson ];
-    inherit version;
+    license = licenses.mit;
+    maintainers = with maintainers; [ minijackson ];
   };
 }
diff --git a/pkgs/applications/editors/neovim/neovim-remote.nix b/pkgs/applications/editors/neovim/neovim-remote.nix
index c77cfd9c2b6e..06beff03f904 100644
--- a/pkgs/applications/editors/neovim/neovim-remote.nix
+++ b/pkgs/applications/editors/neovim/neovim-remote.nix
@@ -22,7 +22,7 @@ pythonPackages.buildPythonApplication rec {
 
   meta = {
     description = "A tool that helps controlling nvim processes from a terminal";
-    homepage = https://github.com/mhinz/neovim-remote/;
+    homepage = "https://github.com/mhinz/neovim-remote/";
     license = licenses.mit;
     maintainers = with maintainers; [ edanaher ];
     platforms = platforms.unix;
diff --git a/pkgs/applications/editors/neovim/ruby_provider/Gemfile.lock b/pkgs/applications/editors/neovim/ruby_provider/Gemfile.lock
index 6a3f581c4e81..d0827bf2a7ff 100644
--- a/pkgs/applications/editors/neovim/ruby_provider/Gemfile.lock
+++ b/pkgs/applications/editors/neovim/ruby_provider/Gemfile.lock
@@ -14,4 +14,4 @@ DEPENDENCIES
   neovim
 
 BUNDLED WITH
-   1.17.2
+   2.1.4
diff --git a/pkgs/applications/editors/neovim/wrapper.nix b/pkgs/applications/editors/neovim/wrapper.nix
index c0b976677579..c7d5f7649783 100644
--- a/pkgs/applications/editors/neovim/wrapper.nix
+++ b/pkgs/applications/editors/neovim/wrapper.nix
@@ -95,6 +95,16 @@ let
       '' + optionalString (configure != {}) ''
         echo "Generating remote plugin manifest"
         export NVIM_RPLUGIN_MANIFEST=$out/rplugin.vim
+        # Some plugins assume that the home directory is accessible for
+        # initializing caches, temporary files, etc. Even if the plugin isn't
+        # actively used, it may throw an error as soon as Neovim is launched
+        # (e.g., inside an autoload script), causing manifest generation to
+        # fail. Therefore, let's create a fake home directory before generating
+        # the manifest, just to satisfy the needs of these plugins.
+        #
+        # See https://github.com/Yggdroot/LeaderF/blob/v1.21/autoload/lfMru.vim#L10
+        # for an example of this behavior.
+        export HOME="$(mktemp -d)"
         # Launch neovim with a vimrc file containing only the generated plugin
         # code. Pass various flags to disable temp file generation
         # (swap/viminfo) and redirect errors to stderr.
diff --git a/pkgs/applications/editors/netbeans/default.nix b/pkgs/applications/editors/netbeans/default.nix
index 0fddddbaacf5..b2a13e3db7cd 100644
--- a/pkgs/applications/editors/netbeans/default.nix
+++ b/pkgs/applications/editors/netbeans/default.nix
@@ -3,7 +3,7 @@
 }:
 
 let
-  version = "11.2";
+  version = "11.3";
   desktopItem = makeDesktopItem {
     name = "netbeans";
     exec = "netbeans";
@@ -19,7 +19,7 @@ stdenv.mkDerivation {
   inherit version;
   src = fetchurl {
     url = "mirror://apache/netbeans/netbeans/${version}/netbeans-${version}-bin.zip";
-    sha512 = "d589481808832c4f0391ee1ecb8e18202cebeee8bd844cb4bdbf6125113b41f9138a34c4c2ef1fdf228294ef8c24b242ffec9ba5fdc4f1d288db4a3f19ba1509";
+    sha512 = "ae828836138b5a4156d58df24dd4053be58018cb6b5beb179cb0f4cd8b5db72d2a7356a434d01157aacb78d228732950cf4e3a0b6c725da8e053b6ccd91075d6";
   };
 
   buildCommand = ''
@@ -60,7 +60,7 @@ stdenv.mkDerivation {
     description = "An integrated development environment for Java, C, C++ and PHP";
     homepage = "https://netbeans.apache.org/";
     license = stdenv.lib.licenses.asl20;
-    maintainers = with stdenv.lib.maintainers; [ sander rszibele ];
+    maintainers = with stdenv.lib.maintainers; [ sander rszibele asbachb ];
     platforms = stdenv.lib.platforms.unix;
   };
 }
diff --git a/pkgs/applications/editors/notepadqq/default.nix b/pkgs/applications/editors/notepadqq/default.nix
index efda2c583604..a51f5106930e 100644
--- a/pkgs/applications/editors/notepadqq/default.nix
+++ b/pkgs/applications/editors/notepadqq/default.nix
@@ -32,7 +32,7 @@ mkDerivation rec {
   enableParallelBuilding = true;
 
   meta = with lib; {
-    homepage = https://notepadqq.com/;
+    homepage = "https://notepadqq.com/";
     description = "Notepad++-like editor for the Linux desktop";
     license = licenses.gpl3;
     platforms = platforms.linux;
diff --git a/pkgs/applications/editors/nvi/default.nix b/pkgs/applications/editors/nvi/default.nix
index a7a6b35a24a0..e28b2b43061e 100644
--- a/pkgs/applications/editors/nvi/default.nix
+++ b/pkgs/applications/editors/nvi/default.nix
@@ -48,7 +48,7 @@ stdenv.mkDerivation {
   '';
 
   meta = {
-    homepage = http://www.bostic.com/vi/;
+    homepage = "http://www.bostic.com/vi/";
     description = "The Berkeley Vi Editor";
     license = stdenv.lib.licenses.free;
   };
diff --git a/pkgs/applications/editors/nvpy/default.nix b/pkgs/applications/editors/nvpy/default.nix
index 567f47520352..dcf42b55c5c5 100644
--- a/pkgs/applications/editors/nvpy/default.nix
+++ b/pkgs/applications/editors/nvpy/default.nix
@@ -30,7 +30,7 @@ in pythonPackages.buildPythonApplication rec {
 
   meta = with pkgs.lib; {
     description = "A simplenote-syncing note-taking tool inspired by Notational Velocity";
-    homepage = https://github.com/cpbotha/nvpy;
+    homepage = "https://github.com/cpbotha/nvpy";
     platforms = platforms.linux;
     license = licenses.bsd3;
   };
diff --git a/pkgs/applications/editors/okteta/default.nix b/pkgs/applications/editors/okteta/default.nix
index fa63ee90adc9..b9d92409198b 100644
--- a/pkgs/applications/editors/okteta/default.nix
+++ b/pkgs/applications/editors/okteta/default.nix
@@ -1,8 +1,8 @@
-{ stdenv, fetchurl, extra-cmake-modules, kdoctools, qtscript, kconfig
+{ mkDerivation, stdenv, fetchurl, extra-cmake-modules, kdoctools, qtscript, kconfig
 , kinit, karchive, kcrash, kcmutils, kconfigwidgets, knewstuff, kparts
 , qca-qt5, shared-mime-info }:
 
-stdenv.mkDerivation rec {
+mkDerivation rec {
   pname = "okteta";
   version = "0.26.3";
 
diff --git a/pkgs/applications/editors/quartus-prime/default.nix b/pkgs/applications/editors/quartus-prime/default.nix
index 6a6ea80ca458..093635b10e42 100644
--- a/pkgs/applications/editors/quartus-prime/default.nix
+++ b/pkgs/applications/editors/quartus-prime/default.nix
@@ -1,25 +1,58 @@
-{ buildFHSUserEnv, makeDesktopItem, stdenv, lib, requireFile, unstick, cycloneVSupport ? true }:
+{ buildFHSUserEnv, makeDesktopItem, writeScript, stdenv, lib, requireFile, unstick,
+  supportedDevices ? [ "Arria II" "Cyclone V" "Cyclone IV" "Cyclone 10 LP" "MAX II/V" "MAX 10 FPGA" ] }:
 
 let
+  deviceIds = {
+    "Arria II" = "arria_lite";
+    "Cyclone V" = "cyclonev";
+    "Cyclone IV" = "cyclone";
+    "Cyclone 10 LP" = "cyclone10lp";
+    "MAX II/V" = "max";
+    "MAX 10 FPGA" = "max10";
+  };
+
+  supportedDeviceIds =
+    assert lib.assertMsg (lib.all (name: lib.hasAttr name deviceIds) supportedDevices)
+      "Supported devices are: ${lib.concatStringsSep ", " (lib.attrNames deviceIds)}";
+    lib.listToAttrs (map (name: {
+      inherit name;
+      value = deviceIds.${name};
+    }) supportedDevices);
+
+  unsupportedDeviceIds = lib.filterAttrs (name: value:
+    !(lib.hasAttr name supportedDeviceIds)
+  ) deviceIds;
+
   quartus = stdenv.mkDerivation rec {
     version = "19.1.0.670";
-    pname = "quartus-prime-lite";
+    pname = "quartus-prime-lite-unwrapped";
 
     src = let
       require = {name, sha256}: requireFile {
         inherit name sha256;
         url = "${meta.homepage}/${lib.versions.majorMinor version}/?edition=lite&platform=linux";
       };
+
+      hashes = {
+        "arria_lite" = "1flj9w0vb2p9f9zll136izr6qvmxn0lg72bvaqxs3sxc9vj06wm1";
+        "cyclonev" = "0bqxpvjgph0y6slk0jq75mcqzglmqkm0jsx10y9xz5llm6zxzqab";
+        "cyclone" = "0pzs8y4s3snxg4g6lrb21qi88abm48g279xzd98qv17qxb2z82rr";
+        "cyclone10lp" = "1ccxq8n20y40y47zddkijcv41w3cddvydddr3m4844q31in3nxha";
+        "max" = "1cxzbqscxvlcy74dpqmvlnxjyyxfwcx3spygpvpwi6dfj3ipgm2z";
+        "max10" = "14k83javivbk65mpb17wdwsyb8xk7x9gzj9x0wnd24mmijrvdy9s";
+      };
+
+      devicePackages = map (id: {
+        name = "${id}-${version}.qdz";
+        sha256 = lib.getAttr id hashes;
+      }) (lib.attrValues supportedDeviceIds);
     in map require ([{
       name = "QuartusLiteSetup-${version}-linux.run";
       sha256 = "15vxvqxqdk29ahlw3lkm1nzxyhzy4626wb9s5f2h6sjgq64r8m7f";
     } {
       name = "ModelSimSetup-${version}-linux.run";
       sha256 = "0j1vfr91jclv88nam2plx68arxmz4g50sqb840i60wqd5b0l3y6r";
-    }] ++ lib.optional cycloneVSupport {
-      name = "cyclonev-${version}.qdz";
-      sha256 = "0bqxpvjgph0y6slk0jq75mcqzglmqkm0jsx10y9xz5llm6zxzqab";
-    });
+    }] ++ devicePackages);
 
     nativeBuildInputs = [ unstick ];
 
@@ -37,27 +70,22 @@ let
       disabledComponents = [
         "quartus_help"
         "quartus_update"
+        # not modelsim_ase
         "modelsim_ae"
-        # Devices
-        "arria_lite"
-        "cyclone"
-        "cyclone10lp"
-        "max"
-        "max10"
-      ] ++ lib.optional (!cycloneVSupport) "cyclonev";
+      ] ++ (lib.attrValues unsupportedDeviceIds);
     in ''
-    ${lib.concatMapStringsSep "\n" copyInstaller installers}
-    ${lib.concatMapStringsSep "\n" copyComponent components}
+      ${lib.concatMapStringsSep "\n" copyInstaller installers}
+      ${lib.concatMapStringsSep "\n" copyComponent components}
 
-    unstick $TEMP/${(builtins.head installers).name} \
-      --disable-components ${lib.concatStringsSep "," disabledComponents} \
-      --mode unattended --installdir $out --accept_eula 1
+      unstick $TEMP/${(builtins.head installers).name} \
+        --disable-components ${lib.concatStringsSep "," disabledComponents} \
+        --mode unattended --installdir $out --accept_eula 1
 
-    # This patch is from https://wiki.archlinux.org/index.php/Altera_Design_Software
-    patch --force --strip 0 --directory $out < ${./vsim.patch}
+      # This patch is from https://wiki.archlinux.org/index.php/Altera_Design_Software
+      patch --force --strip 0 --directory $out < ${./vsim.patch}
 
-    rm -r $out/uninstall $out/logs
-  '';
+      rm -r $out/uninstall $out/logs
+    '';
 
     meta = {
       homepage = "https://fpgasoftware.intel.com";
@@ -69,17 +97,17 @@ let
   };
 
   desktopItem = makeDesktopItem {
-    name = quartus.name;
+    name = "quartus-prime-lite";
     exec = "quartus";
     icon = "quartus";
     desktopName = "Quartus";
-    genericName = "Quartus FPGA IDE";
+    genericName = "Quartus Prime";
     categories = "Development;";
   };
 
 # I think modelsim_ase/linux/vlm checksums itself, so use FHSUserEnv instead of `patchelf`
-in buildFHSUserEnv {
-  name = "quartus-prime-lite";
+in buildFHSUserEnv rec {
+  name = "quartus-prime-lite"; # wrapped
 
   targetPkgs = pkgs: with pkgs; [
     # quartus requirements
@@ -110,10 +138,43 @@ in buildFHSUserEnv {
     xorg.libXrender
   ];
 
-  extraInstallCommands = ''
-    mkdir -p $out/share/applications
-    cp ${desktopItem}/share/applications/* $out/share/applications
+  passthru = {
+    unwrapped = quartus;
+  };
+
+  extraInstallCommands = let
+    quartusExecutables = (map (c: "quartus/bin/quartus_${c}") [
+      "asm" "cdb" "cpf" "drc" "eda" "fit" "jbcc" "jli" "map" "pgm" "pow"
+      "sh" "si" "sim" "sta" "stp" "tan"
+    ]) ++ [ "quartus/bin/quartus" ];
+
+    qsysExecutables = map (c: "quartus/sopc_builder/bin/qsys-${c}") [
+      "generate" "edit" "script"
+    ];
+    # Should we install all executables ?
+    modelsimExecutables = map (c: "modelsim_ase/bin/${c}") [
+      "vsim" "vlog" "vlib"
+    ];
+  in ''
+    mkdir -p $out/share/applications $out/share/icons/128x128
+    ln -s ${desktopItem}/share/applications/* $out/share/applications
+    ln -s ${quartus}/licenses/images/dc_quartus_panel_logo.png $out/share/icons/128x128/quartus.png
+
+    mkdir -p $out/quartus/bin $out/quartus/sopc_builder/bin $out/modelsim_ase/bin
+    WRAPPER=$out/bin/${name}
+    EXECUTABLES="${lib.concatStringsSep " " (quartusExecutables ++ qsysExecutables ++ modelsimExecutables)}"
+    for executable in $EXECUTABLES; do
+        echo "#!${stdenv.shell}" >> $out/$executable
+        echo "$WRAPPER ${quartus}/$executable \$@" >> $out/$executable
+    done
+
+    cd $out
+    chmod +x $EXECUTABLES
+    # link into $out/bin so executables become available on $PATH
+    ln --symbolic --relative --target-directory ./bin $EXECUTABLES
   '';
 
-  runScript = "${quartus}/quartus/bin/quartus";
+  runScript = writeScript "${name}-wrapper" ''
+    exec $@
+  '';
 }
diff --git a/pkgs/applications/editors/quilter/default.nix b/pkgs/applications/editors/quilter/default.nix
index 2b4abb1f1625..9bc8e1bc920f 100644
--- a/pkgs/applications/editors/quilter/default.nix
+++ b/pkgs/applications/editors/quilter/default.nix
@@ -4,13 +4,13 @@
 
 stdenv.mkDerivation rec {
   pname = "quilter";
-  version = "2.1.1";
+  version = "2.2.2";
 
   src = fetchFromGitHub {
     owner = "lainsce";
     repo = pname;
     rev = version;
-    sha256 = "1raba835kvqq4lfpk141vg81ll7sg3jyhwyr6758pdjmncncg0wr";
+    sha256 = "1bgsbcx09ca063kdqfc7nigly99d7xgx2cbkpk1nkhr0hvkyg9l9";
   };
 
   nativeBuildInputs = [
@@ -47,7 +47,7 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "Focus on your writing - designed for elementary OS";
-    homepage = https://github.com/lainsce/quilter;
+    homepage = "https://github.com/lainsce/quilter";
     license = licenses.gpl2Plus;
     maintainers = pantheon.maintainers;
     platforms = platforms.linux;
diff --git a/pkgs/applications/editors/qxmledit/default.nix b/pkgs/applications/editors/qxmledit/default.nix
new file mode 100644
index 000000000000..cb658e8fcdac
--- /dev/null
+++ b/pkgs/applications/editors/qxmledit/default.nix
@@ -0,0 +1,28 @@
+{ stdenv, fetchFromGitHub,
+  qmake, qtbase, qtxmlpatterns, qtsvg, qtscxml, qtquick1, libGLU }:
+
+stdenv.mkDerivation rec {
+  name = "qxmledit-${version}" ;
+  version = "0.9.15" ;
+  src = fetchFromGitHub ( stdenv.lib.importJSON ./qxmledit.json ) ;
+  nativeBuildInputs = [ qmake ] ;
+  buildInputs = [ qtbase qtxmlpatterns qtsvg qtscxml qtquick1 libGLU ] ;
+  qmakeFlags = [ "CONFIG+=release" ] ;
+  outputs = [ "out" "doc" ] ;
+
+  preConfigure = ''
+    export QXMLEDIT_INST_DATA_DIR="$out/share/data"
+    export QXMLEDIT_INST_TRANSLATIONS_DIR="$out/share/i18n"
+    export QXMLEDIT_INST_INCLUDE_DIR="$out/include"
+    export QXMLEDIT_INST_DIR="$out/bin"
+    export QXMLEDIT_INST_LIB_DIR="$out/lib"
+    export QXMLEDIT_INST_DOC_DIR="$doc"
+  '';
+
+  meta = with stdenv.lib; {
+    description = "Simple XML editor based on qt libraries" ;
+    homepage = "https://sourceforge.net/projects/qxmledit";
+    license = licenses.lgpl2;
+    platforms = platforms.all;
+  } ;
+}
diff --git a/pkgs/applications/editors/qxmledit/qxmledit.json b/pkgs/applications/editors/qxmledit/qxmledit.json
new file mode 100644
index 000000000000..3b50532d6a0d
--- /dev/null
+++ b/pkgs/applications/editors/qxmledit/qxmledit.json
@@ -0,0 +1,6 @@
+{
+    "owner": "lbellonda",
+    "repo": "qxmledit",
+    "rev": "6136dca50ceb3b4447c91a7a18dcf84785ea11d1",
+    "sha256": "1wcnphalwf0a5gz9r44jgk8wcv1w2qipbwjkbzkra2kxanxns834"
+}
\ No newline at end of file
diff --git a/pkgs/applications/editors/rednotebook/default.nix b/pkgs/applications/editors/rednotebook/default.nix
index a46a643e136a..7f94b354dd29 100644
--- a/pkgs/applications/editors/rednotebook/default.nix
+++ b/pkgs/applications/editors/rednotebook/default.nix
@@ -5,13 +5,13 @@
 
 buildPythonApplication rec {
   pname = "rednotebook";
-  version = "2.16";
+  version = "2.18";
 
   src = fetchFromGitHub {
     owner = "jendrikseipp";
     repo = "rednotebook";
     rev = "v${version}";
-    sha256 = "1cziac9pmhpxvs8qg54wbckzgjpplqb55hykg5vdwdqqs7j054aj";
+    sha256 = "1m75ns6vgycyi3zjlc9w2gnry1gyfz1jxhrklcxxi6aap0jxlgnr";
   };
 
   # We have not packaged tests.
diff --git a/pkgs/applications/editors/retext/default.nix b/pkgs/applications/editors/retext/default.nix
index e97423892616..7752313b2a7e 100644
--- a/pkgs/applications/editors/retext/default.nix
+++ b/pkgs/applications/editors/retext/default.nix
@@ -54,7 +54,7 @@ in python.pkgs.buildPythonApplication {
   '';
 
   meta = with stdenv.lib; {
-    homepage = https://github.com/retext-project/retext/;
+    homepage = "https://github.com/retext-project/retext/";
     description = "Simple but powerful editor for Markdown and reStructuredText";
     license = licenses.gpl3;
     maintainers = with maintainers; [ klntsky ];
diff --git a/pkgs/applications/editors/rstudio/default.nix b/pkgs/applications/editors/rstudio/default.nix
index cab7ac119b6a..3fe845a067b3 100644
--- a/pkgs/applications/editors/rstudio/default.nix
+++ b/pkgs/applications/editors/rstudio/default.nix
@@ -1,4 +1,4 @@
-{ lib, mkDerivation, fetchurl, fetchFromGitHub, makeDesktopItem, cmake, boost, zlib
+{ lib, mkDerivation, fetchurl, fetchpatch, fetchFromGitHub, makeDesktopItem, cmake, boost, zlib
 , openssl, R, qtbase, qtxmlpatterns, qtsensors, qtwebengine, qtwebchannel
 , libuuid, hunspellDicts, unzip, ant, jdk, gnumake, makeWrapper, pandoc
 , llvmPackages
@@ -8,7 +8,7 @@ with lib;
 let
   verMajor = "1";
   verMinor = "2";
-  verPatch = "1335";
+  verPatch = "5042";
   version = "${verMajor}.${verMinor}.${verPatch}";
   ginVer = "2.1.2";
   gwtVer = "2.8.1";
@@ -26,11 +26,19 @@ mkDerivation rec {
     owner = "rstudio";
     repo = "rstudio";
     rev = "v${version}";
-    sha256 = "0jv1d4yznv2lzwp0fdf377vqpg0k2q4z9qvji4sj86fabj835lqd";
+    sha256 = "1n67fa357v51j3z1ma8v2ydfsx3y8n10k2svmfcf4mdzsi8w0kc5";
   };
 
   # Hack RStudio to only use the input R and provided libclang.
-  patches = [ ./r-location.patch ./clang-location.patch ];
+  patches = [ ./r-location.patch ./clang-location.patch
+              (fetchpatch {
+                # Fetch a patch to ensure Rstudio compiles against R
+                # 4.0.0, should be removed next 1.2.X Rstudio update
+                # or possibly 1.3.X
+                url = "https://github.com/rstudio/rstudio/commit/3fb2397c2f208bb8ace0bbaf269481ccb96b5b20.patch";
+                sha256 = "0qpgjy6aash0fc0xbns42cwpj3nsw49nkbzwyq8az01xwg81g0f3";
+              })
+            ];
   postPatch = ''
     substituteInPlace src/cpp/core/r_util/REnvironmentPosix.cpp --replace '@R@' ${R}
     substituteInPlace src/cpp/core/libclang/LibClang.cpp \
@@ -57,7 +65,7 @@ mkDerivation rec {
   dictionaries = largeDicts ++ otherDicts;
 
   mathJaxSrc = fetchurl {
-    url = https://s3.amazonaws.com/rstudio-buildtools/mathjax-26.zip;
+    url = "https://s3.amazonaws.com/rstudio-buildtools/mathjax-26.zip";
     sha256 = "0wbcqb9rbfqqvvhqr1pbqax75wp8ydqdyhp91fbqfqp26xzjv6lk";
   };
 
@@ -127,7 +135,7 @@ mkDerivation rec {
 
   meta = with lib;
     { description = "Set of integrated tools for the R language";
-      homepage = https://www.rstudio.com/;
+      homepage = "https://www.rstudio.com/";
       license = licenses.agpl3;
       maintainers = with maintainers; [ ehmry changlinli ciil ];
       platforms = platforms.linux;
diff --git a/pkgs/applications/editors/scite/default.nix b/pkgs/applications/editors/scite/default.nix
index 78dd0d095414..4e92856fee24 100644
--- a/pkgs/applications/editors/scite/default.nix
+++ b/pkgs/applications/editors/scite/default.nix
@@ -5,7 +5,7 @@ stdenv.mkDerivation {
   version = "4.0.5";
 
   src = fetchurl {
-    url = https://www.scintilla.org/scite405.tgz;
+    url = "https://www.scintilla.org/scite405.tgz";
     sha256 = "0h16wk2986nkkhhdv5g4lxlcn02qwyja24x1r6vf02r1hf46b9q2";
   };
 
@@ -24,7 +24,7 @@ stdenv.mkDerivation {
   '';
 
   meta = with stdenv.lib; {
-    homepage = https://www.scintilla.org/SciTE.html;
+    homepage = "https://www.scintilla.org/SciTE.html";
     description = "SCIntilla based Text Editor";
     license = licenses.mit;
     platforms = platforms.linux;
diff --git a/pkgs/applications/editors/sigil/default.nix b/pkgs/applications/editors/sigil/default.nix
index ac171f60ead7..cbb9f7bd5b87 100644
--- a/pkgs/applications/editors/sigil/default.nix
+++ b/pkgs/applications/editors/sigil/default.nix
@@ -35,7 +35,7 @@ mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "Free, open source, multi-platform ebook (ePub) editor";
-    homepage = https://github.com/Sigil-Ebook/Sigil/;
+    homepage = "https://github.com/Sigil-Ebook/Sigil/";
     license = licenses.gpl3;
     # currently unmaintained
     platforms = platforms.linux;
diff --git a/pkgs/applications/editors/standardnotes/default.nix b/pkgs/applications/editors/standardnotes/default.nix
index 5a13d91aef2c..18d9338f9093 100644
--- a/pkgs/applications/editors/standardnotes/default.nix
+++ b/pkgs/applications/editors/standardnotes/default.nix
@@ -1,38 +1,47 @@
-{ stdenv, appimage-run, fetchurl, runtimeShell }:
+{ stdenv, appimageTools, autoPatchelfHook, desktop-file-utils
+  , fetchurl, runtimeShell }:
 
 let
-  version = "3.0.15";
+  version = "3.3.3";
+  pname = "standardnotes";
+  name = "${pname}-${version}";
 
   plat = {
-    i386-linux = "i386";
-    x86_64-linux = "x86_64";
+    i386-linux = "-i386";
+    x86_64-linux = "";
   }.${stdenv.hostPlatform.system};
 
   sha256 = {
-    i386-linux = "0v2nsis6vb1lnhmjd28vrfxqwwpycv02j0nvjlfzcgj4b3400j7a";
-    x86_64-linux = "130n586cw0836zsbwqcz3pp3h0d4ny74ngqs4k4cvfb92556r7xh";
+    i386-linux = "2ccdf23588b09d645811e562d4fd7e02ac0e367bf2b34e373d8470d48544036d";
+    x86_64-linux = "6366d0a37cbf2cf51008a666e40bada763dd1539173de01e093bcbe4146a6bd8";
   }.${stdenv.hostPlatform.system};
-in
-
-stdenv.mkDerivation {
-  pname = "standardnotes";
-  inherit version;
 
   src = fetchurl {
-    url = "https://github.com/standardnotes/desktop/releases/download/v${version}/standard-notes-${version}-${plat}.AppImage";
+    url = "https://github.com/standardnotes/desktop/releases/download/v${version}/standard-notes-${version}${plat}.AppImage";
     inherit sha256;
   };
 
-  buildInputs = [ appimage-run ];
+  appimageContents = appimageTools.extract {
+    inherit name src;
+  };
+
+  nativeBuildInputs = [ autoPatchelfHook desktop-file-utils ];
+
+in appimageTools.wrapType2 rec {
+  inherit name src;
+
+  extraInstallCommands = ''
+    # directory in /nix/store so readonly
+    cp -r  ${appimageContents}/* $out
+    cd $out
+    chmod -R +w $out
+    mv $out/bin/${name} $out/bin/${pname}
 
-  dontUnpack = true;
+    # fixup and install desktop file
+    ${desktop-file-utils}/bin/desktop-file-install --dir $out/share/applications \
+      --set-key Exec --set-value ${pname} standard-notes.desktop
 
-  installPhase = ''
-    mkdir -p $out/{bin,share}
-    cp $src $out/share/standardNotes.AppImage
-    echo "#!${runtimeShell}" > $out/bin/standardnotes
-    echo "${appimage-run}/bin/appimage-run $out/share/standardNotes.AppImage" >> $out/bin/standardnotes
-    chmod +x $out/bin/standardnotes $out/share/standardNotes.AppImage
+    rm usr/lib/* AppRun standard-notes.desktop .so*
   '';
 
   meta = with stdenv.lib; {
@@ -41,7 +50,7 @@ stdenv.mkDerivation {
       Standard Notes is a private notes app that features unmatched simplicity,
       end-to-end encryption, powerful extensions, and open-source applications.
     '';
-    homepage = https://standardnotes.org;
+    homepage = "https://standardnotes.org";
     license = licenses.agpl3;
     maintainers = with maintainers; [ mgregoire ];
     platforms = [ "i386-linux" "x86_64-linux" ];
diff --git a/pkgs/applications/editors/sublime/2/default.nix b/pkgs/applications/editors/sublime/2/default.nix
index 24639f3bfd46..b10008d0c499 100644
--- a/pkgs/applications/editors/sublime/2/default.nix
+++ b/pkgs/applications/editors/sublime/2/default.nix
@@ -10,8 +10,8 @@ stdenv.mkDerivation rec {
       fetchurl {
         name = "sublimetext-2.0.2.tar.bz2";
         url = [
-          http://c758482.r82.cf2.rackcdn.com/Sublime%20Text%202.0.2.tar.bz2
-          https://download.sublimetext.com/Sublime%20Text%202.0.2.tar.bz2
+          "http://c758482.r82.cf2.rackcdn.com/Sublime%20Text%202.0.2.tar.bz2"
+          "https://download.sublimetext.com/Sublime%20Text%202.0.2.tar.bz2"
         ];
         sha256 = "026g5mppk28lzzzn9ibykcqkrd5msfmg0sc0z8w8jd7v3h28wcq7";
       }
@@ -19,8 +19,8 @@ stdenv.mkDerivation rec {
       fetchurl {
         name = "sublimetext-2.0.2.tar.bz2";
         url = [
-          http://c758482.r82.cf2.rackcdn.com/Sublime%20Text%202.0.2.tar.bz2
-          https://download.sublimetext.com/Sublime%20Text%202.0.2%20x64.tar.bz2
+          "http://c758482.r82.cf2.rackcdn.com/Sublime%20Text%202.0.2.tar.bz2"
+          "https://download.sublimetext.com/Sublime%20Text%202.0.2%20x64.tar.bz2"
         ];
         sha256 = "115b71nbv9mv8cz6bkjwpbdf2ywnjc1zy2d3080f6ck4sqqfvfh1";
       };
diff --git a/pkgs/applications/editors/sublime/3/common.nix b/pkgs/applications/editors/sublime/3/common.nix
index 8e52237d949d..a75233fcf359 100644
--- a/pkgs/applications/editors/sublime/3/common.nix
+++ b/pkgs/applications/editors/sublime/3/common.nix
@@ -145,7 +145,7 @@ in stdenv.mkDerivation (rec {
 
   meta = with stdenv.lib; {
     description = "Sophisticated text editor for code, markup and prose";
-    homepage = https://www.sublimetext.com/;
+    homepage = "https://www.sublimetext.com/";
     maintainers = with maintainers; [ jtojnar wmertens demin-dmitriy zimbatm ];
     license = licenses.unfree;
     platforms = [ "x86_64-linux" "i686-linux" ];
diff --git a/pkgs/applications/editors/supertux-editor/default.nix b/pkgs/applications/editors/supertux-editor/default.nix
index 6714f917315c..dc18bd694c69 100644
--- a/pkgs/applications/editors/supertux-editor/default.nix
+++ b/pkgs/applications/editors/supertux-editor/default.nix
@@ -32,7 +32,7 @@ stdenv.mkDerivation {
 
   meta = with stdenv.lib; {
     description = "Level editor for SuperTux";
-    homepage = https://github.com/SuperTux/supertux-editor;
+    homepage = "https://github.com/SuperTux/supertux-editor";
     license = licenses.gpl3Plus;
     maintainers = with maintainers; [ mathnerd314 ];
     platforms = platforms.linux;
diff --git a/pkgs/applications/editors/tecoc/default.nix b/pkgs/applications/editors/tecoc/default.nix
index 48af4a99dada..3df13260d51f 100644
--- a/pkgs/applications/editors/tecoc/default.nix
+++ b/pkgs/applications/editors/tecoc/default.nix
@@ -55,8 +55,8 @@ stdenv.mkDerivation rec {
 
       TECOC is a portable C implementation of TECO-11.
  '';
-    homepage = https://github.com/blakemcbride/TECOC;
-    license = {  url = https://github.com/blakemcbride/TECOC/tree/master/doc/readme-1st.txt; };
+    homepage = "https://github.com/blakemcbride/TECOC";
+    license = {  url = "https://github.com/blakemcbride/TECOC/tree/master/doc/readme-1st.txt"; };
     maintainers = [ maintainers.AndersonTorres ];
     platforms = platforms.unix;
   };
diff --git a/pkgs/applications/editors/texmacs/common.nix b/pkgs/applications/editors/texmacs/common.nix
index ec2498aa69b9..9479295e7471 100644
--- a/pkgs/applications/editors/texmacs/common.nix
+++ b/pkgs/applications/editors/texmacs/common.nix
@@ -62,7 +62,7 @@ rec {
     Scheme extension language.  A native spreadsheet and tools for
     collaborative authoring are planned for later.
   '';
-    homepage = http://texmacs.org/;
+    homepage = "http://texmacs.org/";
     license = stdenv.lib.licenses.gpl2Plus;
   };
 }
diff --git a/pkgs/applications/editors/texmaker/default.nix b/pkgs/applications/editors/texmaker/default.nix
index c45025dd80cc..0b78ff54c358 100644
--- a/pkgs/applications/editors/texmaker/default.nix
+++ b/pkgs/applications/editors/texmaker/default.nix
@@ -28,7 +28,7 @@ mkDerivation rec {
 	LaTeX editing with completion, structure viewer, preview,
 	spell checking and support of any compilation chain.
 	'';
-    homepage = http://www.xm1math.net/texmaker/;
+    homepage = "http://www.xm1math.net/texmaker/";
     license = licenses.gpl2Plus;
     platforms = platforms.linux;
     maintainers = with maintainers; [ cfouche markuskowa ];
diff --git a/pkgs/applications/editors/texstudio/default.nix b/pkgs/applications/editors/texstudio/default.nix
index 372d9508174a..94837023ca0d 100644
--- a/pkgs/applications/editors/texstudio/default.nix
+++ b/pkgs/applications/editors/texstudio/default.nix
@@ -3,13 +3,13 @@
 
 mkDerivation rec {
   pname = "texstudio";
-  version = "2.12.20";
+  version = "2.12.22";
 
   src = fetchFromGitHub {
     owner = "${pname}-org";
     repo = pname;
     rev = version;
-    sha256 = "0hywx2knqdrslzmm4if476ryf4ma0aw5j8kdp6lyrz2jx7az2gqa";
+    sha256 = "037jvsfln8wav17qj9anxz2a7p51v7ky85wmhdj2hgwp40al651g";
   };
 
   nativeBuildInputs = [ qmake wrapQtAppsHook pkgconfig ];
@@ -24,9 +24,9 @@ mkDerivation rec {
       LaTeX editing with completion, structure viewer, preview,
       spell checking and support of any compilation chain.
     '';
-    homepage = http://texstudio.sourceforge.net;
+    homepage = "http://texstudio.sourceforge.net";
     license = licenses.gpl2Plus;
     platforms = [ "x86_64-linux" ];
-    maintainers = with maintainers; [ cfouche ];
+    maintainers = with maintainers; [ ajs124 cfouche ];
   };
 }
diff --git a/pkgs/applications/editors/textadept/default.nix b/pkgs/applications/editors/textadept/default.nix
index 85006e51b663..bb771c89010b 100644
--- a/pkgs/applications/editors/textadept/default.nix
+++ b/pkgs/applications/editors/textadept/default.nix
@@ -9,7 +9,7 @@ stdenv.mkDerivation rec {
   ];
 
   src = fetchhg {
-    url = http://foicica.com/hg/textadept;
+    url = "http://foicica.com/hg/textadept";
     rev = "textadept_${version}";
     sha256 = "0fai8xqddkkprmbf0cf8wwgv7ccfdb1iyim30nppm2m16whkc8fl";
   };
@@ -41,7 +41,7 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "An extensible text editor based on Scintilla with Lua scripting";
-    homepage = http://foicica.com/textadept;
+    homepage = "http://foicica.com/textadept";
     license = licenses.mit;
     maintainers = with maintainers; [ raskin mirrexagon ];
     platforms = platforms.linux;
diff --git a/pkgs/applications/editors/texworks/default.nix b/pkgs/applications/editors/texworks/default.nix
index 8042363f73c9..d0347bcb37c6 100644
--- a/pkgs/applications/editors/texworks/default.nix
+++ b/pkgs/applications/editors/texworks/default.nix
@@ -1,30 +1,30 @@
-{ stdenv, lib, fetchFromGitHub, cmake, pkgconfig
-, qt5, libsForQt5, hunspell
+{ mkDerivation, lib, fetchFromGitHub, cmake, pkg-config
+, qtscript, poppler, hunspell
 , withLua ? true, lua
 , withPython ? true, python3 }:
 
-stdenv.mkDerivation rec {
+mkDerivation rec {
   pname = "texworks";
-  version = "0.6.3";
+  version = "0.6.5";
 
   src = fetchFromGitHub {
     owner = "TeXworks";
     repo = "texworks";
     rev = "release-${version}";
-    sha256 = "1ljfl784z7dmh6f1qacqhc6qhcaqdzw033yswbvpvkkck0lsk2mr";
+    sha256 = "1lw1p4iyzxypvjhnav11g6rwf6gx7kyzwy2iprvv8zzpqcdkjp2z";
   };
 
-  nativeBuildInputs = [ cmake pkgconfig ];
-  buildInputs = [ qt5.qtscript libsForQt5.poppler hunspell ]
+  nativeBuildInputs = [ cmake pkg-config ];
+  buildInputs = [ qtscript poppler hunspell ]
                 ++ lib.optional withLua lua
                 ++ lib.optional withPython python3;
 
   cmakeFlags = lib.optional withLua "-DWITH_LUA=ON"
                ++ lib.optional withPython "-DWITH_PYTHON=ON";
 
-  meta = with stdenv.lib; {
+  meta = with lib; {
     description = "Simple TeX front-end program inspired by TeXShop";
-    homepage = http://www.tug.org/texworks/;
+    homepage = "http://www.tug.org/texworks/";
     license = licenses.gpl2Plus;
     maintainers = with maintainers; [ dotlambda ];
     platforms = with platforms; linux;
diff --git a/pkgs/applications/editors/thonny/default.nix b/pkgs/applications/editors/thonny/default.nix
index 16f1ba4346e9..706d3fd71763 100644
--- a/pkgs/applications/editors/thonny/default.nix
+++ b/pkgs/applications/editors/thonny/default.nix
@@ -4,13 +4,13 @@ with python3.pkgs;
 
 buildPythonApplication rec {
   pname = "thonny";
-  version = "3.2.6";
+  version = "3.2.7";
 
   src = fetchFromGitHub {
     owner = pname;
     repo = pname;
     rev = "v${version}";
-    sha256 = "19krnxpp3i1n65zafazvdm9mvnjry5rml0y9imj4365q4bkj20g2";
+    sha256 = "0gzvdgg5l4j0wgkh7lp4wjabrpxvvs5m7mnpszqixxijdffjd4cj";
   };
 
   propagatedBuildInputs = with python3.pkgs; [
@@ -45,7 +45,7 @@ buildPythonApplication rec {
       evaluation, detailed visualization of the call stack and a mode
       for explaining the concepts of references and heap.
     '';
-    homepage = https://www.thonny.org/;
+    homepage = "https://www.thonny.org/";
     license = licenses.mit;
     maintainers = with maintainers; [ leenaars ];
     platforms = platforms.linux;
diff --git a/pkgs/applications/editors/tiled/default.nix b/pkgs/applications/editors/tiled/default.nix
index aa6fc0a7d240..bee9934a9ca1 100644
--- a/pkgs/applications/editors/tiled/default.nix
+++ b/pkgs/applications/editors/tiled/default.nix
@@ -3,13 +3,13 @@
 
 mkDerivation rec {
   pname = "tiled";
-  version = "1.3.2";
+  version = "1.3.4";
 
   src = fetchFromGitHub {
     owner = "bjorn";
     repo = pname;
     rev = "v${version}";
-    sha256 = "1jfr9ngsbkn9j3yvy3mnx0llfwmk39dj8kfiy9fawkhw0v4bzjbd";
+    sha256 = "0q3x1v88szxm8177qcnynfiyc7w8sn07ig6c7fjd164q7w30y24m";
   };
 
   nativeBuildInputs = [ pkgconfig qmake ];
@@ -19,7 +19,7 @@ mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "Free, easy to use and flexible tile map editor";
-    homepage = https://www.mapeditor.org/;
+    homepage = "https://www.mapeditor.org/";
     license = with licenses; [
       bsd2	# libtiled and tmxviewer
       gpl2Plus	# all the rest
diff --git a/pkgs/applications/editors/tweak/default.nix b/pkgs/applications/editors/tweak/default.nix
index 6bfce921d0f6..3dc7d04ede38 100644
--- a/pkgs/applications/editors/tweak/default.nix
+++ b/pkgs/applications/editors/tweak/default.nix
@@ -14,7 +14,7 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "An efficient hex editor";
-    homepage = http://www.chiark.greenend.org.uk/~sgtatham/tweak;
+    homepage = "http://www.chiark.greenend.org.uk/~sgtatham/tweak";
     license = licenses.mit;
     platforms = platforms.linux;
   };
diff --git a/pkgs/applications/editors/typora/default.nix b/pkgs/applications/editors/typora/default.nix
index 09baf383f972..583229eb8684 100644
--- a/pkgs/applications/editors/typora/default.nix
+++ b/pkgs/applications/editors/typora/default.nix
@@ -60,9 +60,9 @@ stdenv.mkDerivation rec {
 
   meta = with lib; {
     description = "A minimal Markdown reading & writing app";
-    homepage = https://typora.io;
+    homepage = "https://typora.io";
     license = licenses.unfree;
-    maintainers = with maintainers; [ jensbin worldofpeace ];
+    maintainers = with maintainers; [ jensbin ];
     platforms = [ "x86_64-linux"];
   };
 }
diff --git a/pkgs/applications/editors/uemacs/default.nix b/pkgs/applications/editors/uemacs/default.nix
index 0a2df6b6d4bb..e14a07eb6835 100644
--- a/pkgs/applications/editors/uemacs/default.nix
+++ b/pkgs/applications/editors/uemacs/default.nix
@@ -5,7 +5,7 @@ stdenv.mkDerivation {
   version = "2014-12-08";
 
   src = fetchgit {
-    url = git://git.kernel.org/pub/scm/editors/uemacs/uemacs.git;
+    url = "git://git.kernel.org/pub/scm/editors/uemacs/uemacs.git";
     rev = "8841922689769960fa074fbb053cb8507f2f3ed9";
     sha256 = "14yq7kpkax111cg6k7i3mnqk7sq7a65krq6qizzj7vvnm7bsj3sd";
   };
@@ -28,7 +28,7 @@ stdenv.mkDerivation {
   buildInputs = [ ncurses ];
 
   meta = with stdenv.lib; {
-    homepage = https://git.kernel.org/cgit/editors/uemacs/uemacs.git;
+    homepage = "https://git.kernel.org/cgit/editors/uemacs/uemacs.git";
     description = "Torvalds Micro-emacs fork";
     longDescription = ''
       uEmacs/PK 4.0 is a full screen editor based on MicroEMACS 3.9e
diff --git a/pkgs/applications/editors/vbindiff/default.nix b/pkgs/applications/editors/vbindiff/default.nix
index d1aa59569e62..110b7caaf81a 100644
--- a/pkgs/applications/editors/vbindiff/default.nix
+++ b/pkgs/applications/editors/vbindiff/default.nix
@@ -13,7 +13,7 @@ stdenv.mkDerivation rec {
 
   meta = {
     description = "A terminal visual binary diff viewer";
-    homepage = https://www.cjmweb.net/vbindiff/;
+    homepage = "https://www.cjmweb.net/vbindiff/";
     license = stdenv.lib.licenses.gpl2Plus;
     platforms = stdenv.lib.platforms.unix;
   };
diff --git a/pkgs/applications/editors/vim/common.nix b/pkgs/applications/editors/vim/common.nix
index e5ee1da75801..8bdc0c0753c0 100644
--- a/pkgs/applications/editors/vim/common.nix
+++ b/pkgs/applications/editors/vim/common.nix
@@ -1,12 +1,12 @@
 { lib, fetchFromGitHub }:
 rec {
-  version = "8.2.0227";
+  version = "8.2.0510";
 
   src = fetchFromGitHub {
     owner = "vim";
     repo = "vim";
     rev = "v${version}";
-    sha256 = "1yi7l2yd214iv6i8pr52m272mlzps5v3h6xdgr1770xfz4y1yc0h";
+    sha256 = "16ggwf238pzzkn3ng6n09qz9cgdzha9vc0ghlcxhwilnjh12l7p9";
   };
 
   enableParallelBuilding = true;
@@ -22,7 +22,7 @@ rec {
 
   meta = with lib; {
     description = "The most popular clone of the VI editor";
-    homepage    = http://www.vim.org;
+    homepage    = "http://www.vim.org";
     license     = licenses.vim;
     maintainers = with maintainers; [ lovek323 equirosa ];
     platforms   = platforms.unix;
diff --git a/pkgs/applications/editors/vim/configurable.nix b/pkgs/applications/editors/vim/configurable.nix
index bb3d571e6f86..3b37c805cdd7 100644
--- a/pkgs/applications/editors/vim/configurable.nix
+++ b/pkgs/applications/editors/vim/configurable.nix
@@ -14,7 +14,7 @@
 
 , features          ? "huge" # One of tiny, small, normal, big or huge
 , wrapPythonDrv     ? false
-, guiSupport        ? config.vim.gui or "gtk3"
+, guiSupport        ? config.vim.gui or (if stdenv.isDarwin then "gtk2" else "gtk3")
 , luaSupport        ? config.vim.lua or true
 , perlSupport       ? config.vim.perl or false      # Perl interpreter
 , pythonSupport     ? config.vim.python or true     # Python interpreter
diff --git a/pkgs/applications/editors/vim/default.nix b/pkgs/applications/editors/vim/default.nix
index ae4e9ac8a9c9..95d2076153cb 100644
--- a/pkgs/applications/editors/vim/default.nix
+++ b/pkgs/applications/editors/vim/default.nix
@@ -2,7 +2,7 @@
 # default vimrc
 , vimrc ? fetchurl {
     name = "default-vimrc";
-    url = https://git.archlinux.org/svntogit/packages.git/plain/trunk/archlinux.vim?id=68f6d131750aa778807119e03eed70286a17b1cb;
+    url = "https://git.archlinux.org/svntogit/packages.git/plain/trunk/archlinux.vim?id=68f6d131750aa778807119e03eed70286a17b1cb";
     sha256 = "18ifhv5q9prd175q3vxbqf6qyvkk6bc7d2lhqdk0q78i68kv9y0c";
   }
 # apple frameworks
diff --git a/pkgs/applications/editors/vim/macvim-sparkle.patch b/pkgs/applications/editors/vim/macvim-sparkle.patch
deleted file mode 100644
index e0ba5145b3e5..000000000000
--- a/pkgs/applications/editors/vim/macvim-sparkle.patch
+++ /dev/null
@@ -1,106 +0,0 @@
-diff --git a/src/MacVim/English.lproj/MainMenu.nib/designable.nib b/src/MacVim/English.lproj/MainMenu.nib/designable.nib
-index bdbcfdb9e..5efc78ab6 100644
---- a/src/MacVim/English.lproj/MainMenu.nib/designable.nib
-+++ b/src/MacVim/English.lproj/MainMenu.nib/designable.nib
-@@ -24,11 +24,6 @@
-                                     <action selector="orderFrontStandardAboutPanel:" target="-2" id="142"/>
-                                 </connections>
-                             </menuItem>
--                            <menuItem title="Check for Updates…" id="255">
--                                <connections>
--                                    <action selector="checkForUpdates:" target="Jqk-qh-n0J" id="Wau-rL-cbn"/>
--                                </connections>
--                            </menuItem>
-                             <menuItem isSeparatorItem="YES" id="196">
-                                 <modifierMask key="keyEquivalentModifierMask" command="YES"/>
-                             </menuItem>
-@@ -206,6 +201,5 @@
-                 </menuItem>
-             </items>
-         </menu>
--        <customObject id="Jqk-qh-n0J" customClass="SUUpdater"/>
-     </objects>
- </document>
-diff --git a/src/MacVim/English.lproj/Preferences.nib/designable.nib b/src/MacVim/English.lproj/Preferences.nib/designable.nib
-index 889450913..38afc3416 100644
---- a/src/MacVim/English.lproj/Preferences.nib/designable.nib
-+++ b/src/MacVim/English.lproj/Preferences.nib/designable.nib
-@@ -88,14 +88,10 @@
-                     <rect key="frame" x="207" y="208" width="258" height="18"/>
-                     <autoresizingMask key="autoresizingMask" flexibleMinY="YES"/>
-                     <string key="toolTip">Checks for updates and presents a dialog box showing the release notes and prompt for whether you want to install the new version.</string>
--                    <buttonCell key="cell" type="check" title="Check for updates" bezelStyle="regularSquare" imagePosition="left" alignment="left" inset="2" id="975">
-+                    <buttonCell key="cell" type="check" title="Check for updates" bezelStyle="regularSquare" imagePosition="left" alignment="left" enabled="NO" inset="2" id="975">
-                         <behavior key="behavior" changeContents="YES" doesNotDimImage="YES" lightByContents="YES"/>
-                         <font key="font" metaFont="system"/>
-                     </buttonCell>
--                    <connections>
--                        <action selector="checkForUpdatesChanged:" target="-2" id="YjS-ig-M1j"/>
--                        <binding destination="58" name="value" keyPath="values.SUCheckAtStartup" id="169"/>
--                    </connections>
-                 </button>
-                 <textField verticalHuggingPriority="750" id="121">
-                     <rect key="frame" x="209" y="50" width="243" height="58"/>
-@@ -186,16 +182,13 @@
-                     <rect key="frame" x="221" y="188" width="244" height="18"/>
-                     <autoresizingMask key="autoresizingMask" flexibleMinY="YES"/>
-                     <string key="toolTip">MacVim will automatically download and install updates without prompting. The updated version will be used the next time MacVim starts.</string>
--                    <buttonCell key="cell" type="check" title="Automatically install updates" bezelStyle="regularSquare" imagePosition="left" alignment="left" inset="2" id="GfP-vg-mec">
-+                    <buttonCell key="cell" type="check" title="Automatically install updates" bezelStyle="regularSquare" imagePosition="left" alignment="left" enabled="NO" inset="2" id="GfP-vg-mec">
-                         <behavior key="behavior" changeContents="YES" doesNotDimImage="YES" lightByContents="YES"/>
-                         <font key="font" metaFont="system"/>
-                         <connections>
-                             <binding destination="58" name="enabled" keyPath="values.SUCheckAtStartup" id="5oY-Gf-XJN"/>
-                         </connections>
-                     </buttonCell>
--                    <connections>
--                        <binding destination="58" name="value" keyPath="values.SUAutomaticallyUpdate" id="kyZ-ah-zKf"/>
--                    </connections>
-                 </button>
-             </subviews>
-             <point key="canvasLocation" x="137.5" y="382"/>
-diff --git a/src/MacVim/MacVim.xcodeproj/project.pbxproj b/src/MacVim/MacVim.xcodeproj/project.pbxproj
-index 648c4290d..c7dd99d1e 100644
---- a/src/MacVim/MacVim.xcodeproj/project.pbxproj
-+++ b/src/MacVim/MacVim.xcodeproj/project.pbxproj
-@@ -66,8 +66,6 @@
- 		1DFE25A50C527BC4003000F7 /* PSMTabBarControl.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 1D493DB90C52533B00AB718C /* PSMTabBarControl.framework */; };
- 		52818B031C1C08CE00F59085 /* QLStephen.qlgenerator in Copy QuickLookPlugin */ = {isa = PBXBuildFile; fileRef = 52818AFF1C1C075300F59085 /* QLStephen.qlgenerator */; settings = {ATTRIBUTES = (CodeSignOnCopy, ); }; };
- 		528DA66A1426D4F9003380F1 /* macvim-askpass in Copy Scripts */ = {isa = PBXBuildFile; fileRef = 528DA6691426D4EB003380F1 /* macvim-askpass */; };
--		52A364731C4A5789005757EC /* Sparkle.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 52A364721C4A5789005757EC /* Sparkle.framework */; };
--		52A364761C4A57C1005757EC /* Sparkle.framework in Copy Frameworks */ = {isa = PBXBuildFile; fileRef = 52A364721C4A5789005757EC /* Sparkle.framework */; settings = {ATTRIBUTES = (CodeSignOnCopy, RemoveHeadersOnCopy, ); }; };
- 		52B7ED9B1C4A4D6900AFFF15 /* dsa_pub.pem in Resources */ = {isa = PBXBuildFile; fileRef = 52B7ED9A1C4A4D6900AFFF15 /* dsa_pub.pem */; };
- 		8D11072A0486CEB800E47090 /* MainMenu.nib in Resources */ = {isa = PBXBuildFile; fileRef = 29B97318FDCFA39411CA2CEA /* MainMenu.nib */; };
- 		8D11072B0486CEB800E47090 /* InfoPlist.strings in Resources */ = {isa = PBXBuildFile; fileRef = 089C165CFE840E0CC02AAC07 /* InfoPlist.strings */; };
-@@ -124,7 +122,6 @@
- 			dstPath = "";
- 			dstSubfolderSpec = 10;
- 			files = (
--				52A364761C4A57C1005757EC /* Sparkle.framework in Copy Frameworks */,
- 				1D493DBA0C52534300AB718C /* PSMTabBarControl.framework in Copy Frameworks */,
- 			);
- 			name = "Copy Frameworks";
-@@ -250,7 +247,6 @@
- 		32CA4F630368D1EE00C91783 /* MacVim_Prefix.pch */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MacVim_Prefix.pch; sourceTree = "<group>"; };
- 		52818AFA1C1C075300F59085 /* QuickLookStephen.xcodeproj */ = {isa = PBXFileReference; lastKnownFileType = "wrapper.pb-project"; name = QuickLookStephen.xcodeproj; path = qlstephen/QuickLookStephen.xcodeproj; sourceTree = "<group>"; };
- 		528DA6691426D4EB003380F1 /* macvim-askpass */ = {isa = PBXFileReference; lastKnownFileType = text.script.sh; path = "macvim-askpass"; sourceTree = "<group>"; };
--		52A364721C4A5789005757EC /* Sparkle.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; path = Sparkle.framework; sourceTree = "<group>"; };
- 		52B7ED9A1C4A4D6900AFFF15 /* dsa_pub.pem */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = dsa_pub.pem; sourceTree = "<group>"; };
- 		8D1107310486CEB800E47090 /* Info.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist; path = Info.plist; sourceTree = "<group>"; };
- 		8D1107320486CEB800E47090 /* MacVim.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = MacVim.app; sourceTree = BUILT_PRODUCTS_DIR; };
-@@ -264,7 +260,6 @@
- 				1DFE25A50C527BC4003000F7 /* PSMTabBarControl.framework in Frameworks */,
- 				8D11072F0486CEB800E47090 /* Cocoa.framework in Frameworks */,
- 				1D8B5A53104AF9FF002E59D5 /* Carbon.framework in Frameworks */,
--				52A364731C4A5789005757EC /* Sparkle.framework in Frameworks */,
- 			);
- 			runOnlyForDeploymentPostprocessing = 0;
- 		};
-@@ -443,7 +438,6 @@
- 		29B97323FDCFA39411CA2CEA /* Frameworks */ = {
- 			isa = PBXGroup;
- 			children = (
--				52A364721C4A5789005757EC /* Sparkle.framework */,
- 				1D8B5A52104AF9FF002E59D5 /* Carbon.framework */,
- 				1D493DB30C52533B00AB718C /* PSMTabBarControl.xcodeproj */,
- 				1058C7A0FEA54F0111CA2CBB /* Linked Frameworks */,
diff --git a/pkgs/applications/editors/vim/macvim.nix b/pkgs/applications/editors/vim/macvim.nix
index ede12f50feca..93ec48e54e0d 100644
--- a/pkgs/applications/editors/vim/macvim.nix
+++ b/pkgs/applications/editors/vim/macvim.nix
@@ -27,13 +27,13 @@ in
 stdenv.mkDerivation {
   pname = "macvim";
 
-  version = "8.1.2234";
+  version = "8.2.539";
 
   src = fetchFromGitHub {
     owner = "macvim-dev";
     repo = "macvim";
-    rev = "snapshot-161";
-    sha256 = "1hp3y85pj1icz053g627a1wp5pnwgxhk07pyd4arwcxs2103agw4";
+    rev = "snapshot-163";
+    sha256 = "0ibc6h7zmk81dygkxd8a2rcq72zbqmr9kh64xhsm9h0p70505cdk";
   };
 
   enableParallelBuilding = true;
@@ -43,18 +43,7 @@ stdenv.mkDerivation {
     gettext ncurses cscope luajit ruby tcl perl python.pkg
   ];
 
-  patches = [ ./macvim.patch ./macvim-sparkle.patch ];
-
-  # The sparkle patch modified the nibs, so we have to recompile them
-  postPatch = ''
-    for nib in MainMenu Preferences; do
-      # redirect stdin/stdout/stderr to /dev/null because ibtool marks them nonblocking
-      # and not redirecting screws with subsequent commands.
-      # redirecting stderr is unfortunate but I don't know of a reasonable way to remove O_NONBLOCK
-      # from the fds.
-      /usr/bin/ibtool --compile src/MacVim/English.lproj/$nib.nib/keyedobjects.nib src/MacVim/English.lproj/$nib.nib >/dev/null 2>/dev/null </dev/null
-    done
-  '';
+  patches = [ ./macvim.patch ];
 
   configureFlags = [
       "--enable-cscope"
@@ -76,18 +65,21 @@ stdenv.mkDerivation {
       "--with-tclsh=${tcl}/bin/tclsh"
       "--with-tlib=ncurses"
       "--with-compiledby=Nix"
-      "LDFLAGS=-headerpad_max_install_names"
+      "--disable-sparkle"
   ];
 
   makeFlags = ''PREFIX=$(out) CPPFLAGS="-Wno-error"'';
 
+  # Remove references to Sparkle.framework from the project.
+  # It's unused (we disabled it with --disable-sparkle) and this avoids
+  # copying the unnecessary several-megabyte framework into the result.
+  postPatch = ''
+    echo "Patching file src/MacVim/MacVim.xcodeproj/project.pbxproj"
+    sed -e '/Sparkle\.framework/d' -i src/MacVim/MacVim.xcodeproj/project.pbxproj
+  '';
+
   # This is unfortunate, but we need to use the same compiler as Xcode,
   # but Xcode doesn't provide a way to configure the compiler.
-  #
-  # If you're willing to modify the system files, you can do this:
-  #   http://hamelot.co.uk/programming/add-gcc-compiler-to-xcode-6/
-  #
-  # But we don't have that option.
   preConfigure = ''
     CC=/usr/bin/clang
 
@@ -103,8 +95,34 @@ stdenv.mkDerivation {
   ''
   ;
 
+  # Because we're building with system clang, this means we're building against Xcode's SDK and
+  # linking against system libraries. The configure script is picking up Nix Libsystem (via ruby)
+  # so we need to patch that out or we'll get linker issues. The MacVim binary built by Xcode links
+  # against the system anyway so it doesn't really matter that the Vim binary will too. If we
+  # decide that matters, we can always patch it back to the Nix libsystem post-build.
+  # It also picks up libiconv, libunwind, and objc4 from Nix. These seem relatively harmless but
+  # let's strip them out too.
+  #
+  # Note: If we do add a post-build install_name_tool patch, we need to add the
+  # "LDFLAGS=-headerpad_max_install_names" flag to configureFlags and either patch it into the
+  # Xcode project or pass it as a flag to xcodebuild as well.
   postConfigure = ''
-    substituteInPlace src/auto/config.mk --replace "PERL_CFLAGS	=" "PERL_CFLAGS	= -I${darwin.libutil}/include"
+    substituteInPlace src/auto/config.mk \
+      --replace "PERL_CFLAGS	=" "PERL_CFLAGS	= -I${darwin.libutil}/include" \
+      --replace " -L${stdenv.cc.libc}/lib" "" \
+      --replace " -L${darwin.libobjc}/lib" "" \
+      --replace " -L${darwin.libunwind}/lib" "" \
+      --replace " -L${darwin.libiconv}/lib" ""
+
+    # All the libraries we stripped have -osx- in their name as of this time.
+    # Assert now that this pattern no longer appears in config.mk.
+    ( # scope variable
+      while IFS="" read -r line; do
+        if [[ "$line" == LDFLAGS*-osx-* ]]; then
+          echo "WARNING: src/auto/config.mk contains reference to Nix osx library" >&2
+        fi
+      done <src/auto/config.mk
+    )
 
     substituteInPlace src/MacVim/vimrc --subst-var-by CSCOPE ${cscope}/bin/cscope
   '';
@@ -145,7 +163,7 @@ stdenv.mkDerivation {
 
   meta = with stdenv.lib; {
     description = "Vim - the text editor - for macOS";
-    homepage    = https://github.com/macvim-dev/macvim;
+    homepage    = "https://github.com/macvim-dev/macvim";
     license = licenses.vim;
     maintainers = with maintainers; [ cstrahan lilyball ];
     platforms   = platforms.darwin;
diff --git a/pkgs/applications/editors/vim/macvim.patch b/pkgs/applications/editors/vim/macvim.patch
index 9d5dbded26a1..6b90b623cb68 100644
--- a/pkgs/applications/editors/vim/macvim.patch
+++ b/pkgs/applications/editors/vim/macvim.patch
@@ -1,25 +1,5 @@
-diff --git a/src/MacVim/MacVim.xcodeproj/project.pbxproj b/src/MacVim/MacVim.xcodeproj/project.pbxproj
-index e519018de..556a4127d 100644
---- a/src/MacVim/MacVim.xcodeproj/project.pbxproj
-+++ b/src/MacVim/MacVim.xcodeproj/project.pbxproj
-@@ -1007,6 +1007,7 @@
- 				LD_RUNPATH_SEARCH_PATHS = "@loader_path/../Frameworks";
- 				MACOSX_DEPLOYMENT_TARGET = "";
- 				ONLY_ACTIVE_ARCH = YES;
-+				OTHER_LDFLAGS = "-headerpad_max_install_names";
- 				PRODUCT_BUNDLE_IDENTIFIER = org.vim.MacVim;
- 				PRODUCT_NAME = MacVim;
- 				VERSIONING_SYSTEM = "apple-generic";
-@@ -1039,6 +1040,7 @@
- 				LD_RUNPATH_SEARCH_PATHS = "@loader_path/../Frameworks";
- 				MACOSX_DEPLOYMENT_TARGET = "";
- 				ONLY_ACTIVE_ARCH = YES;
-+				OTHER_LDFLAGS = "-headerpad_max_install_names";
- 				PRODUCT_BUNDLE_IDENTIFIER = org.vim.MacVim;
- 				PRODUCT_NAME = MacVim;
- 				VERSIONING_SYSTEM = "apple-generic";
 diff --git a/src/MacVim/vimrc b/src/MacVim/vimrc
-index 23a06bf37..dfb10fe94 100644
+index 23a06bf..dfb10fe 100644
 --- a/src/MacVim/vimrc
 +++ b/src/MacVim/vimrc
 @@ -14,35 +14,5 @@ set backspace+=indent,eol,start
@@ -61,10 +41,10 @@ index 23a06bf37..dfb10fe94 100644
 +" Default cscopeprg to the Nix-installed path
 +set cscopeprg=@CSCOPE@
 diff --git a/src/Makefile b/src/Makefile
-index 32810d0a7..13a05f349 100644
+index 24c6934..d0f094e 100644
 --- a/src/Makefile
 +++ b/src/Makefile
-@@ -1385,7 +1385,7 @@ MACVIMGUI_SRC	= gui.c gui_beval.c MacVim/gui_macvim.m MacVim/MMBackend.m \
+@@ -1407,7 +1407,7 @@ MACVIMGUI_SRC	= gui.c gui_beval.c MacVim/gui_macvim.m MacVim/MMBackend.m \
  		  MacVim/MacVim.m
  MACVIMGUI_OBJ	= objects/gui.o objects/gui_beval.o \
  		  objects/gui_macvim.o objects/MMBackend.o objects/MacVim.o
@@ -74,10 +54,10 @@ index 32810d0a7..13a05f349 100644
  MACVIMGUI_LIBS_DIR =
  MACVIMGUI_LIBS1	= -framework Cocoa -framework Carbon
 diff --git a/src/auto/configure b/src/auto/configure
-index 9e6a82f4a..3c6d1a89b 100755
+index 730d6d5..0259112 100755
 --- a/src/auto/configure
 +++ b/src/auto/configure
-@@ -5829,10 +5829,7 @@ $as_echo "not found" >&6; }
+@@ -5859,10 +5859,7 @@ $as_echo "not found" >&6; }
  
      for path in "${vi_cv_path_mzscheme_pfx}/lib" "${SCHEME_LIB}"; do
        if test "X$path" != "X"; then
@@ -89,7 +69,7 @@ index 9e6a82f4a..3c6d1a89b 100755
  	  MZSCHEME_LIBS="${path}/libmzscheme3m.a"
  	  MZSCHEME_CFLAGS="-DMZ_PRECISE_GC"
  	elif test -f "${path}/libracket3m.a"; then
-@@ -6217,23 +6214,6 @@ $as_echo ">>> too old; need Perl version 5.003_01 or later <<<" >&6; }
+@@ -6247,23 +6244,6 @@ $as_echo ">>> too old; need Perl version 5.003_01 or later <<<" >&6; }
    fi
  
    if test "x$MACOS_X" = "xyes"; then
@@ -113,7 +93,7 @@ index 9e6a82f4a..3c6d1a89b 100755
                  PERL_LIBS=`echo "$PERL_LIBS" | sed -e 's/-arch\ ppc//' -e 's/-arch\ i386//' -e 's/-arch\ x86_64//'`
      PERL_CFLAGS=`echo "$PERL_CFLAGS" | sed -e 's/-arch\ ppc//' -e 's/-arch\ i386//' -e 's/-arch\ x86_64//'`
    fi
-@@ -6456,13 +6436,7 @@ __:
+@@ -6486,13 +6466,7 @@ __:
  eof
  	    	    eval "`cd ${PYTHON_CONFDIR} && make -f "${tmp_mkf}" __ | sed '/ directory /d'`"
  	    rm -f -- "${tmp_mkf}"
@@ -128,7 +108,7 @@ index 9e6a82f4a..3c6d1a89b 100755
  	      vi_cv_path_python_plibs="-L${PYTHON_CONFDIR} -lpython${vi_cv_var_python_version}"
  	      	      	      	      if test -n "${python_LINKFORSHARED}" && test -n "${python_PYTHONFRAMEWORKPREFIX}"; then
  	        python_link_symbol=`echo ${python_LINKFORSHARED} | sed 's/\([^ \t][^ \t]*[ \t][ \t]*[^ \t][^ \t]*\)[ \t].*/\1/'`
-@@ -6477,7 +6451,6 @@ eof
+@@ -6507,7 +6481,6 @@ eof
  	      fi
  	      vi_cv_path_python_plibs="${vi_cv_path_python_plibs} ${python_BASEMODLIBS} ${python_LIBS} ${python_SYSLIBS} ${python_LINKFORSHARED}"
  	      	      vi_cv_path_python_plibs=`echo $vi_cv_path_python_plibs | sed s/-ltermcap//`
@@ -136,7 +116,7 @@ index 9e6a82f4a..3c6d1a89b 100755
  
  fi
  
-@@ -6556,13 +6529,6 @@ rm -f core conftest.err conftest.$ac_objext \
+@@ -6586,13 +6559,6 @@ rm -f core conftest.err conftest.$ac_objext \
  $as_echo "no" >&6; }
  	fi
  
@@ -150,7 +130,7 @@ index 9e6a82f4a..3c6d1a89b 100755
  			{ $as_echo "$as_me:${as_lineno-$LINENO}: checking if compile and link flags for Python are sane" >&5
  $as_echo_n "checking if compile and link flags for Python are sane... " >&6; }
  	cflags_save=$CFLAGS
-@@ -7456,11 +7422,7 @@ $as_echo "$tclver - OK" >&6; };
+@@ -7486,11 +7452,7 @@ $as_echo "$tclver - OK" >&6; };
  
        { $as_echo "$as_me:${as_lineno-$LINENO}: checking for location of Tcl include" >&5
  $as_echo_n "checking for location of Tcl include... " >&6; }
@@ -162,7 +142,7 @@ index 9e6a82f4a..3c6d1a89b 100755
        TCL_INC=
        for try in $tclinc; do
  	if test -f "$try/tcl.h"; then
-@@ -7478,12 +7440,8 @@ $as_echo "<not found>" >&6; }
+@@ -7508,12 +7470,8 @@ $as_echo "<not found>" >&6; }
        if test -z "$SKIP_TCL"; then
  	{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for location of tclConfig.sh script" >&5
  $as_echo_n "checking for location of tclConfig.sh script... " >&6; }
@@ -175,7 +155,7 @@ index 9e6a82f4a..3c6d1a89b 100755
  	for try in $tclcnf; do
  	  if test -f "$try/tclConfig.sh"; then
  	    { $as_echo "$as_me:${as_lineno-$LINENO}: result: $try/tclConfig.sh" >&5
-@@ -7673,10 +7631,6 @@ $as_echo "$rubyhdrdir" >&6; }
+@@ -7703,10 +7661,6 @@ $as_echo "$rubyhdrdir" >&6; }
  	if test -f "$rubylibdir/$librubya"; then
  	  librubyarg="$librubyarg"
  	  RUBY_LIBS="$RUBY_LIBS -L$rubylibdir"
@@ -187,10 +167,10 @@ index 9e6a82f4a..3c6d1a89b 100755
  
  	if test "X$librubyarg" != "X"; then
 diff --git a/src/vim.h b/src/vim.h
-index f158aab..a714da9 100644
+index 87d1c92..8a7d5a5 100644
 --- a/src/vim.h
 +++ b/src/vim.h
-@@ -243,17 +243,6 @@
+@@ -250,17 +250,6 @@
  # define SUN_SYSTEM
  #endif
  
@@ -209,7 +189,7 @@ index f158aab..a714da9 100644
  # include "os_amiga.h"
  #endif
 diff --git a/src/vimtutor b/src/vimtutor
-index 1e8769b25..47078b0e7 100755
+index 1e8769b..47078b0 100755
 --- a/src/vimtutor
 +++ b/src/vimtutor
 @@ -16,7 +16,7 @@ seq="vim vim81 vim80 vim8 vim74 vim73 vim72 vim71 vim70 vim7 vim6 vi"
diff --git a/pkgs/applications/editors/vim/qvim.nix b/pkgs/applications/editors/vim/qvim.nix
index 81948918a114..0e3a4a150526 100644
--- a/pkgs/applications/editors/vim/qvim.nix
+++ b/pkgs/applications/editors/vim/qvim.nix
@@ -32,7 +32,7 @@ in {
   enableParallelBuilding = true; # test this
 
   src = fetchgit {
-    url = https://bitbucket.org/equalsraf/vim-qt.git;
+    url = "https://bitbucket.org/equalsraf/vim-qt.git";
     rev = "refs/tags/package-" + tag;
     inherit sha256;
   };
@@ -104,7 +104,7 @@ in {
 
   meta = with stdenv.lib; {
     description = "The most popular clone of the VI editor (Qt GUI fork)";
-    homepage    = https://bitbucket.org/equalsraf/vim-qt/wiki/Home;
+    homepage    = "https://bitbucket.org/equalsraf/vim-qt/wiki/Home";
     license = licenses.vim;
     maintainers = with maintainers; [ smironov ttuegel ];
     platforms   = platforms.linux;
diff --git a/pkgs/applications/editors/vim/vimacs.nix b/pkgs/applications/editors/vim/vimacs.nix
new file mode 100644
index 000000000000..d067b4181213
--- /dev/null
+++ b/pkgs/applications/editors/vim/vimacs.nix
@@ -0,0 +1,34 @@
+{ stdenv, config, vim_configurable, macvim, vimPlugins
+, useMacvim ? stdenv.isDarwin && (config.vimacs.macvim or true)
+, vimacsExtraArgs ? "" }:
+
+stdenv.mkDerivation rec {
+  pname = "vimacs";
+  version = vimPackage.version;
+  vimPackage = if useMacvim then macvim else vim_configurable;
+
+  buildInputs = [ vimPackage vimPlugins.vimacs ];
+
+  buildCommand = ''
+    mkdir -p "$out"/bin
+    cp "${vimPlugins.vimacs}"/share/vim-plugins/vimacs/bin/vim $out/bin/vimacs
+    substituteInPlace "$out"/bin/vimacs \
+      --replace '-vim}' '-@bin@/bin/vim}' \
+      --replace '-gvim}' '-@bin@/bin/vim -g}' \
+      --replace '--cmd "let g:VM_Enabled = 1"' \
+                '--cmd "let g:VM_Enabled = 1" --cmd "set rtp^=@rtp@" ${vimacsExtraArgs}' \
+      --replace @rtp@ ${vimPlugins.vimacs.rtp} \
+      --replace @bin@ ${vimPackage}
+    for prog in vm gvm gvimacs vmdiff vimacsdiff
+    do
+      ln -s "$out"/bin/vimacs $out/bin/$prog
+    done
+  '';
+
+  meta = with stdenv.lib; {
+    description = "Vim-Improved eMACS: Emacs emulation for Vim";
+    homepage = "http://algorithm.com.au/code/vimacs";
+    license = licenses.gpl2Plus;
+    maintainers = with stdenv.lib.maintainers; [ millerjason ];
+  };
+}
diff --git a/pkgs/applications/editors/vis/default.nix b/pkgs/applications/editors/vis/default.nix
index 1bda6958206b..85f78035a0f3 100644
--- a/pkgs/applications/editors/vis/default.nix
+++ b/pkgs/applications/editors/vis/default.nix
@@ -63,7 +63,7 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "A vim like editor";
-    homepage = https://github.com/martanne/vis;
+    homepage = "https://github.com/martanne/vis";
     license = licenses.isc;
     maintainers = with maintainers; [ vrthra ramkromberg ];
     platforms = platforms.unix;
diff --git a/pkgs/applications/editors/vscode/generic.nix b/pkgs/applications/editors/vscode/generic.nix
index bdcf786f61d2..abd4a55c92b8 100644
--- a/pkgs/applications/editors/vscode/generic.nix
+++ b/pkgs/applications/editors/vscode/generic.nix
@@ -25,7 +25,7 @@ in
       comment = "Code Editing. Redefined.";
       genericName = "Text Editor";
       exec = executableName;
-      icon = "@out@/share/pixmaps/code.png";
+      icon = "code";
       startupNotify = "true";
       categories = "Utility;TextEditor;Development;IDE;";
       mimeType = "text/plain;inode/directory;";
@@ -37,7 +37,7 @@ in
         [Desktop Action new-empty-window]
         Name=New Empty Window
         Exec=${executableName} --new-window %F
-        Icon=@out@/share/pixmaps/code.png
+        Icon=code
       '';
     };
 
@@ -47,7 +47,7 @@ in
       comment = "Code Editing. Redefined.";
       genericName = "Text Editor";
       exec = executableName + " --open-url %U";
-      icon = "@out@/share/pixmaps/code.png";
+      icon = "code";
       startupNotify = "true";
       categories = "Utility;TextEditor;Development;IDE;";
       mimeType = "x-scheme-handler/vscode;";
@@ -62,6 +62,8 @@ in
       else [ gtk2 at-spi2-atk wrapGAppsHook ] ++ atomEnv.packages)
         ++ [ libsecret libXScrnSaver ];
 
+    runtimeDependencies = lib.optional (stdenv.isLinux) [ systemd.lib fontconfig.lib ];
+
     nativeBuildInputs = lib.optional (!stdenv.isDarwin) autoPatchelfHook;
 
     dontBuild = true;
@@ -81,10 +83,8 @@ in
         ln -s $out/lib/vscode/bin/${executableName} $out/bin
 
         mkdir -p $out/share/applications
-        substitute $desktopItem/share/applications/${executableName}.desktop $out/share/applications/${executableName}.desktop \
-          --subst-var out
-        substitute $urlHandlerDesktopItem/share/applications/${executableName}-url-handler.desktop $out/share/applications/${executableName}-url-handler.desktop \
-          --subst-var out
+        ln -s $desktopItem/share/applications/${executableName}.desktop $out/share/applications/${executableName}.desktop
+        ln -s $urlHandlerDesktopItem/share/applications/${executableName}-url-handler.desktop $out/share/applications/${executableName}-url-handler.desktop
 
         mkdir -p $out/share/pixmaps
         cp $out/lib/vscode/resources/app/resources/linux/code.png $out/share/pixmaps/code.png
@@ -94,9 +94,5 @@ in
         grep -q "VSCODE_PATH='$out/lib/vscode'" $out/bin/${executableName} # check if sed succeeded
       '';
 
-    preFixup = lib.optionalString (system == "i686-linux" || system == "x86_64-linux") ''
-      gappsWrapperArgs+=(--prefix LD_LIBRARY_PATH : ${lib.makeLibraryPath [ systemd fontconfig ]})
-    '';
-
     inherit meta;
   }
diff --git a/pkgs/applications/editors/vscode/vscode.nix b/pkgs/applications/editors/vscode/vscode.nix
index cd3e5676e8c7..371adc36789a 100644
--- a/pkgs/applications/editors/vscode/vscode.nix
+++ b/pkgs/applications/editors/vscode/vscode.nix
@@ -11,15 +11,17 @@ let
   archive_fmt = if system == "x86_64-darwin" then "zip" else "tar.gz";
 
   sha256 = {
-    x86_64-linux = "0c067qp3aa5kqya3y8pzc9cvyzsafizhgjp9dsibnfl08lvz9hbs";
-    x86_64-darwin = "0vi94nk8p3vp30nx60mwqcmfqbrmrqwvfdjbah0zm480dcjzz7dv";
+    x86_64-linux = "1n083pzp2dsz6z6rcl1ldcwhd4i03sjigdfslfardhc4v5lbvmv8";
+    x86_64-darwin = "1qk3gscyskf4fwc8i09afr3wsyd1lwwycx6rf02wwh4n9py50b20";
   }.${system};
 in
   callPackage ./generic.nix rec {
     # The update script doesn't correctly change the hash for darwin, so please:
     # nixpkgs-update: no auto update
 
-    version = "1.42.1";
+    # Please backport all compatible updates to the stable release.
+    # This is important for the extension ecosystem.
+    version = "1.44.2";
     pname = "vscode";
 
     executableName = "code" + lib.optionalString isInsiders "-insiders";
@@ -46,8 +48,8 @@ in
         and code refactoring. It is also customizable, so users can change the
         editor's theme, keyboard shortcuts, and preferences
       '';
-      homepage = https://code.visualstudio.com/;
-      downloadPage = https://code.visualstudio.com/Updates;
+      homepage = "https://code.visualstudio.com/";
+      downloadPage = "https://code.visualstudio.com/Updates";
       license = licenses.unfree;
       maintainers = with maintainers; [ eadwu synthetica ];
       platforms = [ "x86_64-linux" "x86_64-darwin" ];
diff --git a/pkgs/applications/editors/vscode/vscodium.nix b/pkgs/applications/editors/vscode/vscodium.nix
index eafe1718c2fe..fe96223b65f4 100644
--- a/pkgs/applications/editors/vscode/vscodium.nix
+++ b/pkgs/applications/editors/vscode/vscodium.nix
@@ -11,8 +11,8 @@ let
   archive_fmt = if system == "x86_64-darwin" then "zip" else "tar.gz";
 
   sha256 = {
-    x86_64-linux = "1pac3rv7ps23ymynvy8dwd5k2154aln33ksr75z1d8w859x3f1dy";
-    x86_64-darwin = "1imzgqynbd65c7gbfp2gb1cxjbazx7afvbdvbqnm5qg7pvq22rni";
+    x86_64-linux = "141hwj1a2bsgzpfk354dnnmg4ak00fss3xsgqplyk949pbk6v1af";
+    x86_64-darwin = "0fi8nz1gayzw5dp6d3m7jsmij3jj4yjg5rk1s9w6falpgka76dm1";
   }.${system};
 
   sourceRoot = {
@@ -25,7 +25,9 @@ in
     # The update script doesn't correctly change the hash for darwin, so please:
     # nixpkgs-update: no auto update
 
-    version = "1.42.1";
+    # Please backport all compatible updates to the stable release.
+    # This is important for the extension ecosystem.
+    version = "1.44.2";
     pname = "vscodium";
 
     executableName = "codium";
@@ -49,10 +51,10 @@ in
         and code refactoring. It is also customizable, so users can change the
         editor's theme, keyboard shortcuts, and preferences
       '';
-      homepage = https://github.com/VSCodium/vscodium;
-      downloadPage = https://github.com/VSCodium/vscodium/releases;
+      homepage = "https://github.com/VSCodium/vscodium";
+      downloadPage = "https://github.com/VSCodium/vscodium/releases";
       license = licenses.mit;
-      maintainers = with maintainers; [ synthetica ];
+      maintainers = with maintainers; [ synthetica turion ];
       platforms = [ "x86_64-linux" "x86_64-darwin" ];
     };
   }
diff --git a/pkgs/applications/editors/vscode/with-extensions.nix b/pkgs/applications/editors/vscode/with-extensions.nix
index 074e6b8b12d5..5dcd1f6fb783 100644
--- a/pkgs/applications/editors/vscode/with-extensions.nix
+++ b/pkgs/applications/editors/vscode/with-extensions.nix
@@ -48,7 +48,7 @@ let
   wrappedPkgName = lib.removeSuffix "-${wrappedPkgVersion}" vscode.name;
 
   combinedExtensionsDrv = buildEnv {
-    name = "${wrappedPkgName}-extensions-${wrappedPkgVersion}";
+    name = "vscode-extensions";
     paths = vscodeExtensions;
   };
 
@@ -70,6 +70,6 @@ runCommand "${wrappedPkgName}-with-extensions-${wrappedPkgVersion}" {
   ln -sT "${vscode}/share/applications/${executableName}.desktop" "$out/share/applications/${executableName}.desktop"
   ln -sT "${vscode}/share/applications/${executableName}-url-handler.desktop" "$out/share/applications/${executableName}-url-handler.desktop"
   makeWrapper "${vscode}/bin/${executableName}" "$out/bin/${executableName}" ${lib.optionalString (vscodeExtensions != []) ''
-    --add-flags "--extensions-dir ${combinedExtensionsDrv}/share/${wrappedPkgName}/extensions"
+    --add-flags "--extensions-dir ${combinedExtensionsDrv}"
   ''}
 ''
diff --git a/pkgs/applications/editors/wily/default.nix b/pkgs/applications/editors/wily/default.nix
index aab3aecd7d69..ac741599bdab 100644
--- a/pkgs/applications/editors/wily/default.nix
+++ b/pkgs/applications/editors/wily/default.nix
@@ -19,7 +19,7 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "An emulation of ACME";
-    homepage = http://wily.sourceforge.net;
+    homepage = "http://wily.sourceforge.net";
     license = licenses.artistic1;
     maintainers = [ maintainers.vrthra ];
     platforms = platforms.unix;
diff --git a/pkgs/applications/editors/wxhexeditor/default.nix b/pkgs/applications/editors/wxhexeditor/default.nix
index 4725d8143b47..9b0fd592a6a2 100644
--- a/pkgs/applications/editors/wxhexeditor/default.nix
+++ b/pkgs/applications/editors/wxhexeditor/default.nix
@@ -23,7 +23,7 @@ stdenv.mkDerivation rec {
   patches = [
     # https://github.com/EUA/wxHexEditor/issues/90
     (fetchpatch {
-      url = https://github.com/EUA/wxHexEditor/commit/d0fa3ddc3e9dc9b05f90b650991ef134f74eed01.patch;
+      url = "https://github.com/EUA/wxHexEditor/commit/d0fa3ddc3e9dc9b05f90b650991ef134f74eed01.patch";
       sha256 = "1wcb70hrnhq72frj89prcqylpqs74xrfz3kdfdkq84p5qfz9svyj";
     })
     ./missing-semicolon.patch
@@ -43,7 +43,7 @@ stdenv.mkDerivation rec {
       a good reverse engineer tool like a good hex editor, you welcome.
       wxHexEditor could edit HDD/SDD disk devices or partitions in raw up to exabyte sizes.
     '';
-    homepage = http://www.wxhexeditor.org/;
+    homepage = "http://www.wxhexeditor.org/";
     license = stdenv.lib.licenses.gpl2;
     platforms = stdenv.lib.platforms.linux;
   };
diff --git a/pkgs/applications/editors/xmlcopyeditor/default.nix b/pkgs/applications/editors/xmlcopyeditor/default.nix
index eeda097db258..f3270fccdfe7 100644
--- a/pkgs/applications/editors/xmlcopyeditor/default.nix
+++ b/pkgs/applications/editors/xmlcopyeditor/default.nix
@@ -20,7 +20,7 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "A fast, free, validating XML editor";
-    homepage = http://xml-copy-editor.sourceforge.net/;
+    homepage = "http://xml-copy-editor.sourceforge.net/";
     license = licenses.gpl2Plus;
     platforms = platforms.linux;
     maintainers = with maintainers; [ candeira ];
diff --git a/pkgs/applications/editors/zile/default.nix b/pkgs/applications/editors/zile/default.nix
index ae3871bb87af..c7c57a9e3ef8 100644
--- a/pkgs/applications/editors/zile/default.nix
+++ b/pkgs/applications/editors/zile/default.nix
@@ -45,7 +45,7 @@ stdenv.mkDerivation rec {
       compiles to about 130Kb.
     '';
 
-    homepage = https://www.gnu.org/software/zile/;
+    homepage = "https://www.gnu.org/software/zile/";
 
     license = licenses.gpl3Plus;
 
diff --git a/pkgs/applications/gis/grass/default.nix b/pkgs/applications/gis/grass/default.nix
index 8734fabfdcf9..cb574ffc8f18 100644
--- a/pkgs/applications/gis/grass/default.nix
+++ b/pkgs/applications/gis/grass/default.nix
@@ -99,7 +99,7 @@ stdenv.mkDerivation rec {
   enableParallelBuilding = true;
 
   meta = {
-    homepage = https://grass.osgeo.org/;
+    homepage = "https://grass.osgeo.org/";
     description = "GIS software suite used for geospatial data management and analysis, image processing, graphics and maps production, spatial modeling, and visualization";
     license = stdenv.lib.licenses.gpl2Plus;
     platforms = stdenv.lib.platforms.all;
diff --git a/pkgs/applications/gis/openorienteering-mapper/default.nix b/pkgs/applications/gis/openorienteering-mapper/default.nix
index 21d16282edcb..2fc118597f92 100644
--- a/pkgs/applications/gis/openorienteering-mapper/default.nix
+++ b/pkgs/applications/gis/openorienteering-mapper/default.nix
@@ -4,7 +4,7 @@
 
 stdenv.mkDerivation rec {
   pname = "OpenOrienteering-Mapper";
-  version = "0.9.1";
+  version = "0.9.2";
 
   buildInputs = [ gdal qtbase qttools qtlocation qtimageformats
                   qtsensors clipper zlib proj doxygen cups];
@@ -15,7 +15,7 @@ stdenv.mkDerivation rec {
     owner = "OpenOrienteering";
     repo = "mapper";
     rev = "v${version}";
-    sha256 = "1fyhvf2y89hj7wj89kxccx3dqcja6ndy3w4rx1vmzrp246jpz7wb";
+    sha256 = "1787f2agjzcyizk2m60icb44yv9dlwv6irw3k53fqfmwkhkd2h5p";
   };
 
   cmakeFlags =
@@ -54,7 +54,7 @@ stdenv.mkDerivation rec {
       OpenOrienteering Mapper is an orienteering mapmaking program
       and provides a free alternative to the existing proprietary solution.
     '';
-    homepage = https://www.openorienteering.org/apps/mapper/;
+    homepage = "https://www.openorienteering.org/apps/mapper/";
     license = licenses.gpl3;
     platforms = with platforms; linux ++ darwin;
     maintainers = with maintainers; [ mpickering sikmir ];
diff --git a/pkgs/applications/gis/qgis/unwrapped.nix b/pkgs/applications/gis/qgis/unwrapped.nix
index de436088fa76..2e11f22f517b 100644
--- a/pkgs/applications/gis/qgis/unwrapped.nix
+++ b/pkgs/applications/gis/qgis/unwrapped.nix
@@ -10,7 +10,7 @@ let
     [ qscintilla-qt5 gdal jinja2 numpy psycopg2
       chardet dateutil pyyaml pytz requests urllib3 pygments pyqt5 sip owslib six ];
 in mkDerivation rec {
-  version = "3.10.1";
+  version = "3.10.4";
   pname = "qgis";
   name = "${pname}-unwrapped-${version}";
 
@@ -18,7 +18,7 @@ in mkDerivation rec {
     owner = "qgis";
     repo = "QGIS";
     rev = "final-${lib.replaceStrings ["."] ["_"] version}";
-    sha256 = "0xq0nnp7zdqaihqvh5rsi1129g23vnk5ijkpxfzaggafgmhf5hgz";
+    sha256 = "0d1rsgjgnnq6jgms5bgppz8lkh4518nf90fk0qvxajdfi9j4jn12";
   };
 
   passthru = {
@@ -49,7 +49,7 @@ in mkDerivation rec {
 
   meta = {
     description = "A Free and Open Source Geographic Information System";
-    homepage = http://www.qgis.org;
+    homepage = "http://www.qgis.org";
     license = lib.licenses.gpl2Plus;
     platforms = with lib.platforms; linux;
     maintainers = with lib.maintainers; [ lsix ];
diff --git a/pkgs/applications/gis/saga/default.nix b/pkgs/applications/gis/saga/default.nix
index 747777c75af2..388ac1ee7a7f 100644
--- a/pkgs/applications/gis/saga/default.nix
+++ b/pkgs/applications/gis/saga/default.nix
@@ -1,14 +1,14 @@
 { stdenv, fetchurl, gdal, wxGTK30, proj, libiodbc, lzma,
-  libharu, opencv, vigra, postgresql, Cocoa,
+  libharu, opencv2, vigra, postgresql, Cocoa,
   unixODBC , poppler, hdf4, hdf5, netcdf, sqlite, qhull, giflib }:
 
 stdenv.mkDerivation {
   pname = "saga";
-  version = "7.5.0";
+  version = "7.6.2";
 
   # See https://groups.google.com/forum/#!topic/nix-devel/h_vSzEJAPXs
   # for why the have additional buildInputs on darwin
-  buildInputs = [ gdal wxGTK30 proj libharu opencv vigra postgresql libiodbc lzma
+  buildInputs = [ gdal wxGTK30 proj libharu opencv2 vigra postgresql libiodbc lzma
                   qhull giflib ]
                 ++ stdenv.lib.optionals stdenv.isDarwin
                   [ Cocoa unixODBC poppler hdf4.out hdf5 netcdf sqlite ];
@@ -18,13 +18,13 @@ stdenv.mkDerivation {
   CXXFLAGS = stdenv.lib.optionalString stdenv.cc.isClang "-std=c++11 -Wno-narrowing";
 
   src = fetchurl {
-    url = "https://sourceforge.net/projects/saga-gis/files/SAGA%20-%207/SAGA%20-%207.5.0/saga-7.5.0.tar.gz";
-    sha256 = "0s5195802xwlkb2w4i4vd9ys95d7fnzn5cnnixh1csaqc2x1qp6r";
+    url = "https://sourceforge.net/projects/saga-gis/files/SAGA%20-%207/SAGA%20-%207.6.2/saga-7.6.2.tar.gz";
+    sha256 = "09j5magmayq2y620kqa490mfd1kpdp3lng2ifcgbrmssc079ybm0";
   };
 
   meta = with stdenv.lib; {
     description = "System for Automated Geoscientific Analyses";
-    homepage = http://www.saga-gis.org;
+    homepage = "http://www.saga-gis.org";
     license = licenses.gpl2Plus;
     maintainers = with maintainers; [ michelk mpickering ];
     platforms = with platforms; unix;
diff --git a/pkgs/applications/gis/whitebox-tools/default.nix b/pkgs/applications/gis/whitebox-tools/default.nix
index a10e62be4673..d81a08e29008 100644
--- a/pkgs/applications/gis/whitebox-tools/default.nix
+++ b/pkgs/applications/gis/whitebox-tools/default.nix
@@ -19,7 +19,7 @@ rustPlatform.buildRustPackage rec {
 
   meta = with stdenv.lib; {
     description = "An advanced geospatial data analysis platform";
-    homepage = http://www.uoguelph.ca/~hydrogeo/WhiteboxTools/index.html;
+    homepage = "http://www.uoguelph.ca/~hydrogeo/WhiteboxTools/index.html";
     license = licenses.mit;
     maintainers = [ maintainers.mpickering ];
     platforms = platforms.all;
diff --git a/pkgs/applications/graphics/ImageMagick/7.0.nix b/pkgs/applications/graphics/ImageMagick/7.0.nix
index 31eebf7d0a9f..c07c3957254b 100644
--- a/pkgs/applications/graphics/ImageMagick/7.0.nix
+++ b/pkgs/applications/graphics/ImageMagick/7.0.nix
@@ -80,7 +80,7 @@ stdenv.mkDerivation {
   '';
 
   meta = with stdenv.lib; {
-    homepage = http://www.imagemagick.org/;
+    homepage = "http://www.imagemagick.org/";
     description = "A software suite to create, edit, compose, or convert bitmap images";
     platforms = platforms.linux ++ platforms.darwin;
     license = licenses.asl20;
diff --git a/pkgs/applications/graphics/ImageMagick/default.nix b/pkgs/applications/graphics/ImageMagick/default.nix
index 9cfccc7425bb..57ce02bb6610 100644
--- a/pkgs/applications/graphics/ImageMagick/default.nix
+++ b/pkgs/applications/graphics/ImageMagick/default.nix
@@ -96,7 +96,7 @@ stdenv.mkDerivation {
   '';
 
   meta = with stdenv.lib; {
-    homepage = http://www.imagemagick.org/;
+    homepage = "http://www.imagemagick.org/";
     description = "A software suite to create, edit, compose, or convert bitmap images";
     platforms = platforms.linux ++ platforms.darwin;
     maintainers = with maintainers; [ the-kenny ];
diff --git a/pkgs/applications/graphics/PythonMagick/default.nix b/pkgs/applications/graphics/PythonMagick/default.nix
index e35a0190d8bc..487648d07ca1 100644
--- a/pkgs/applications/graphics/PythonMagick/default.nix
+++ b/pkgs/applications/graphics/PythonMagick/default.nix
@@ -21,7 +21,7 @@ stdenv.mkDerivation rec {
   buildInputs = [ python python.pkgs.boost imagemagick ];
 
   meta = with stdenv.lib; {
-    homepage = http://www.imagemagick.org/script/api.php;
+    homepage = "http://www.imagemagick.org/script/api.php";
     license = licenses.imagemagick;
     description = "PythonMagick provides object oriented bindings for the ImageMagick Library.";
   };
diff --git a/pkgs/applications/graphics/ahoviewer/default.nix b/pkgs/applications/graphics/ahoviewer/default.nix
index 87bddf9099ee..c5f1bf868018 100644
--- a/pkgs/applications/graphics/ahoviewer/default.nix
+++ b/pkgs/applications/graphics/ahoviewer/default.nix
@@ -40,7 +40,7 @@ stdenv.mkDerivation rec {
   '';
 
   meta = with stdenv.lib; {
-    homepage = https://github.com/ahodesuka/ahoviewer;
+    homepage = "https://github.com/ahodesuka/ahoviewer";
     description = "A GTK2 image viewer, manga reader, and booru browser";
     maintainers = with maintainers; [ skrzyp xzfc ];
     license = licenses.mit;
diff --git a/pkgs/applications/graphics/alchemy/default.nix b/pkgs/applications/graphics/alchemy/default.nix
index 5132d5950aab..6fc84e088dd3 100644
--- a/pkgs/applications/graphics/alchemy/default.nix
+++ b/pkgs/applications/graphics/alchemy/default.nix
@@ -32,7 +32,7 @@ stdenv.mkDerivation rec {
       Experimental in nature, Alchemy lets you brainstorm visually to explore
       an expanded range of ideas and possibilities in a serendipitous way.
     '';
-    homepage = http://al.chemy.org/;
+    homepage = "http://al.chemy.org/";
     license = licenses.gpl3Plus;
     maintainers = [ maintainers.marcweber ];
     platforms = platforms.linux;
diff --git a/pkgs/applications/graphics/animbar/default.nix b/pkgs/applications/graphics/animbar/default.nix
index c4f1b4218d07..771145d54b65 100644
--- a/pkgs/applications/graphics/animbar/default.nix
+++ b/pkgs/applications/graphics/animbar/default.nix
@@ -31,7 +31,7 @@ stdenv.mkDerivation rec {
 	names: picket fence animation, barrier grid animation, Moiré
 	animation, to name a few.
     '';
-    homepage = http://animbar.mnim.org;
+    homepage = "http://animbar.mnim.org";
     maintainers = with maintainers; [ leenaars ];
     platforms = platforms.linux;
     license = licenses.gpl3;
diff --git a/pkgs/applications/graphics/antimony/default.nix b/pkgs/applications/graphics/antimony/default.nix
index 5966d6427ed6..363f3b8c84d9 100644
--- a/pkgs/applications/graphics/antimony/default.nix
+++ b/pkgs/applications/graphics/antimony/default.nix
@@ -4,19 +4,19 @@
 }:
 
 let
-  gitRev    = "6dfe6822e0279a4cc2f1c60e85b42212627285fe";
+  gitRev    = "8fb4b0929ce84cf375bfb83a9d522ccd80681eaf";
   gitBranch = "develop";
   gitTag    = "0.9.3";
 in
   stdenv.mkDerivation {
     pname = "antimony";
-    version = "2019-10-30";
+    version = "2020-03-28";
 
     src = fetchFromGitHub {
       owner  = "mkeeter";
       repo   = "antimony";
       rev    = gitRev;
-      sha256 = "07zlkwlk79czq8dy85b6n3ds3g36l8qy4ix849ady6ia3gm8981j";
+      sha256 = "1s0zmq5jmhmb1wcsyaxfmii448g6x8b41mzvb1awlljj85qj0k2s";
     };
 
     patches = [ ./paths-fix.patch ];
@@ -29,11 +29,10 @@ in
 
     buildInputs = [
       libpng python3 python3.pkgs.boost
-      libGLU libGL qtbase wrapQtAppsHook
-      ncurses
+      libGLU libGL qtbase ncurses
     ];
 
-    nativeBuildInputs = [ cmake flex lemon ];
+    nativeBuildInputs = [ cmake flex lemon wrapQtAppsHook ];
 
     cmakeFlags= [
       "-DGITREV=${gitRev}"
@@ -45,7 +44,7 @@ in
 
     meta = with stdenv.lib; {
       description = "A computer-aided design (CAD) tool from a parallel universe";
-      homepage    = https://github.com/mkeeter/antimony;
+      homepage    = "https://github.com/mkeeter/antimony";
       license     = licenses.mit;
       maintainers = with maintainers; [ rnhmjoj ];
       platforms   = platforms.linux;
diff --git a/pkgs/applications/graphics/apitrace/default.nix b/pkgs/applications/graphics/apitrace/default.nix
index 5ce36f4f10e9..e6865d2d8f07 100644
--- a/pkgs/applications/graphics/apitrace/default.nix
+++ b/pkgs/applications/graphics/apitrace/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchFromGitHub, cmake, libX11, procps, python2, libdwarf, qtbase, qtwebkit }:
+{ stdenv, fetchFromGitHub, cmake, libX11, procps, python2, libdwarf, qtbase, qtwebkit, wrapQtAppsHook, libglvnd }:
 
 stdenv.mkDerivation rec {
   pname = "apitrace";
@@ -15,10 +15,51 @@ stdenv.mkDerivation rec {
   # of games -- so it's fine to use e.g. bundled snappy.
   buildInputs = [ libX11 procps python2 libdwarf qtbase qtwebkit ];
 
-  nativeBuildInputs = [ cmake ];
+  nativeBuildInputs = [ cmake wrapQtAppsHook ];
+
+  # Don't automatically wrap all binaries, I prefer to explicitly only wrap
+  # `qapitrace`.
+  dontWrapQtApps = true;
+
+  postFixup = ''
+
+    # Since https://github.com/NixOS/nixpkgs/pull/60985, we add `/run-opengl-driver[-32]`
+    # to the `RUNPATH` of dispatcher libraries `dlopen()` ing OpenGL drivers.
+    # `RUNPATH` doesn't propagate throughout the whole application, but only
+    # from the module performing the `dlopen()`.
+    # 
+    # Apitrace wraps programs by running them with `LD_PRELOAD` pointing to `.so`
+    # files in $out/lib/apitrace/wrappers.
+    # 
+    # Theses wrappers effectively wrap the `dlopen()` calls from `libglvnd`
+    # and other dispatcher libraries, and run `dlopen()`  by themselves.
+    # 
+    # As `RUNPATH` doesn't propagate through the whole library, and they're now the
+    # library doing the real `dlopen()`, they also need to have
+    # `/run-opengl-driver[-32]` added to their `RUNPATH`.
+    #
+    # To stay simple, we add paths for 32 and 64 bits unconditionally.
+    # This doesn't have an impact on closure size, and if the 32 bit drivers
+    # are not available, that folder is ignored.
+    for i in $out/lib/apitrace/wrappers/*.so
+    do
+      echo "Patching OpenGL driver path for $i"
+      patchelf --set-rpath "/run/opengl-driver/lib:/run/opengl-driver-32/lib:$(patchelf --print-rpath $i)" $i
+    done
+
+    # Theses open the OpenGL driver at runtime, but it is not listed as NEEDED libraries. They need
+    # a reference to libglvnd.
+    for i in $out/bin/eglretrace $out/bin/glretrace
+    do
+      echo "Patching RPath for $i"
+      patchelf --set-rpath "${stdenv.lib.makeLibraryPath [libglvnd]}:$(patchelf --print-rpath $i)" $i
+    done
+
+    wrapQtApp $out/bin/qapitrace
+  '';
 
   meta = with stdenv.lib; {
-    homepage = https://apitrace.github.io;
+    homepage = "https://apitrace.github.io";
     description = "Tools to trace OpenGL, OpenGL ES, Direct3D, and DirectDraw APIs";
     license = licenses.mit;
     platforms = platforms.linux;
diff --git a/pkgs/applications/graphics/autopanosiftc/default.nix b/pkgs/applications/graphics/autopanosiftc/default.nix
index c64604975ab0..14af98ebc48b 100644
--- a/pkgs/applications/graphics/autopanosiftc/default.nix
+++ b/pkgs/applications/graphics/autopanosiftc/default.nix
@@ -4,7 +4,7 @@ stdenv.mkDerivation {
   name = "autopano-sift-C-2.5.1";
 
   src = fetchurl {
-    url = mirror://sourceforge/hugin/autopano-sift-C-2.5.1.tar.gz;
+    url = "mirror://sourceforge/hugin/autopano-sift-C-2.5.1.tar.gz";
     sha256 = "0dqk8ff82gmy4v5ns5nr9gpzkc1p7c2y8c8fkid102r47wsjk44s";
   };
 
@@ -12,13 +12,13 @@ stdenv.mkDerivation {
 
   patches = [
     (fetchurl {
-      url = https://gitweb.gentoo.org/repo/gentoo.git/plain/media-gfx/autopano-sift-C/files/autopano-sift-C-2.5.1-lm.patch;
+      url = "https://gitweb.gentoo.org/repo/gentoo.git/plain/media-gfx/autopano-sift-C/files/autopano-sift-C-2.5.1-lm.patch";
       sha256 = "1bfcr5sps0ip9gl4jprji5jgf9wkczz6d2clsjjlbsy8r3ixi3lv";
     })
   ];
 
   meta = {
-    homepage = http://hugin.sourceforge.net/;
+    homepage = "http://hugin.sourceforge.net/";
     description = "Implementation in C of the autopano-sift algorithm for automatically stitching panoramas";
     license = stdenv.lib.licenses.gpl2;
     platforms = stdenv.lib.platforms.linux;
diff --git a/pkgs/applications/graphics/autotrace/default.nix b/pkgs/applications/graphics/autotrace/default.nix
index 57e95dfef106..cd7937f8a549 100644
--- a/pkgs/applications/graphics/autotrace/default.nix
+++ b/pkgs/applications/graphics/autotrace/default.nix
@@ -62,7 +62,7 @@ stdenv.mkDerivation rec {
   '';
 
   meta = with stdenv.lib; {
-    homepage = http://autotrace.sourceforge.net/;
+    homepage = "http://autotrace.sourceforge.net/";
     description = "Utility for converting bitmap into vector graphics";
     platforms = platforms.unix;
     maintainers = with maintainers; [ hodapp ];
diff --git a/pkgs/applications/graphics/avocode/default.nix b/pkgs/applications/graphics/avocode/default.nix
index c5c29459b453..9981e8a439ee 100644
--- a/pkgs/applications/graphics/avocode/default.nix
+++ b/pkgs/applications/graphics/avocode/default.nix
@@ -5,11 +5,11 @@
 
 stdenv.mkDerivation rec {
   pname = "avocode";
-  version = "4.3.0";
+  version = "4.6.2";
 
   src = fetchurl {
     url = "https://media.avocode.com/download/avocode-app/${version}/avocode-${version}-linux.zip";
-    sha256 = "0ifb4nsh1mw61gb0hqphr1fmdkq1rjbrvvc9hvpclqg7wc7awids";
+    sha256 = "1ldvscxfvwpsir8vr1ca9ra0841m6xy331ys31dngcp77nwncjqc";
   };
 
   libPath = stdenv.lib.makeLibraryPath (with xorg; [
@@ -93,7 +93,7 @@ stdenv.mkDerivation rec {
   enableParallelBuilding = true;
 
   meta = with stdenv.lib; {
-    homepage = https://avocode.com/;
+    homepage = "https://avocode.com/";
     description = "The bridge between designers and developers";
     license = licenses.unfree;
     platforms = platforms.linux;
diff --git a/pkgs/applications/graphics/awesomebump/default.nix b/pkgs/applications/graphics/awesomebump/default.nix
index b827a12f81c8..4d79f10a9e10 100644
--- a/pkgs/applications/graphics/awesomebump/default.nix
+++ b/pkgs/applications/graphics/awesomebump/default.nix
@@ -1,4 +1,4 @@
-{ lib, stdenv, fetchgit, qtbase, qmake, makeWrapper, qtscript, flex, bison, qtdeclarative }:
+{ mkDerivation, lib, fetchgit, qtbase, qmake, qtscript, flex, bison, qtdeclarative }:
 
 
 let
@@ -11,7 +11,7 @@ let
     fetchSubmodules = true;
   };
 
-  qtnproperty = stdenv.mkDerivation {
+  qtnproperty = mkDerivation {
     name = "qtnproperty";
     inherit src;
     sourceRoot = "AwesomeBump/Sources/utils/QtnProperty";
@@ -22,7 +22,7 @@ let
       install -D bin-linux/QtnPEG $out/bin/QtnPEG
     '';
   };
-in stdenv.mkDerivation {
+in mkDerivation {
   pname = "awesomebump";
   inherit version;
 
@@ -30,12 +30,13 @@ in stdenv.mkDerivation {
 
   buildInputs = [ qtbase qtscript qtdeclarative ];
 
-  nativeBuildInputs = [ qmake makeWrapper ];
+  nativeBuildInputs = [ qmake ];
 
   preBuild = ''
     ln -sf ${qtnproperty}/bin/QtnPEG Sources/utils/QtnProperty/bin-linux/QtnPEG
   '';
 
+  dontWrapQtApps = true;
   postInstall = ''
     d=$out/libexec/AwesomeBump
 
@@ -44,7 +45,7 @@ in stdenv.mkDerivation {
     cp -prd Bin/Configs Bin/Core $d/
 
     # AwesomeBump expects to find Core and Configs in its current directory.
-    makeWrapper $d/AwesomeBump $out/bin/AwesomeBump \
+    makeQtWrapper $d/AwesomeBump $out/bin/AwesomeBump \
         --run "cd $d"
   '';
 
@@ -53,7 +54,7 @@ in stdenv.mkDerivation {
   enableParallelBuilding = false;
 
   meta = {
-    homepage = https://github.com/kmkolasinski/AwesomeBump;
+    homepage = "https://github.com/kmkolasinski/AwesomeBump";
     description = "A program to generate normal, height, specular or ambient occlusion textures from a single image";
     license = lib.licenses.gpl3Plus;
     maintainers = [ lib.maintainers.eelco ];
diff --git a/pkgs/applications/graphics/azpainter/default.nix b/pkgs/applications/graphics/azpainter/default.nix
index 2f636764e1fc..67f1f47dccd0 100644
--- a/pkgs/applications/graphics/azpainter/default.nix
+++ b/pkgs/applications/graphics/azpainter/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchFromGitHub, autoreconfHook
+{ stdenv, fetchFromGitHub
 , libX11, libXext, libXi
 , freetype, fontconfig
 , libpng, libjpeg
@@ -7,17 +7,15 @@
 
 stdenv.mkDerivation rec {
   pname = "azpainter";
-  version = "2.1.5";
+  version = "2.1.6";
 
   src = fetchFromGitHub {
     owner = "Symbian9";
     repo = pname;
-    rev = "refs/tags/v${version}";
-    sha256 = "0x5jmsprjissqcvwq75pqq9wgv4k9b7cy507hai8xk6xs3vxwgba";
+    rev = "v${version}";
+    sha256 = "sha256-al87Rnf4HkKdmtN3EqxC0zEHgVWwnVi7WttqT/Qxr0Q=";
   };
 
-  nativeBuildInputs = [ autoreconfHook ];
-
   buildInputs = [
     libX11 libXext libXi
     freetype fontconfig
@@ -25,14 +23,11 @@ stdenv.mkDerivation rec {
     zlib
   ];
 
-  configureFlags = [
-    "--with-freetype-dir=${stdenv.lib.getDev freetype}/include/freetype2"
-  ];
-
   meta = with stdenv.lib; {
     description = "Full color painting software for illustration drawing";
     homepage = "https://osdn.net/projects/azpainter";
     license = licenses.gpl3Plus;
     maintainers = with maintainers; [ dtzWill ];
+    platforms = with platforms; linux ++ darwin;
   };
 }
diff --git a/pkgs/applications/graphics/batik/default.nix b/pkgs/applications/graphics/batik/default.nix
index 51156dea4a17..3c78c8b6dbd2 100644
--- a/pkgs/applications/graphics/batik/default.nix
+++ b/pkgs/applications/graphics/batik/default.nix
@@ -4,7 +4,7 @@ stdenv.mkDerivation {
   name = "batik-1.6";
   builder = ./builder.sh;
   src = fetchurl {
-    url = http://tarballs.nixos.org/batik-1.6.zip;
+    url = "http://tarballs.nixos.org/batik-1.6.zip";
     sha256 = "0cf15dspmzcnfda8w5lbsdx28m4v2rpq1dv5zx0r0n99ihqd1sh6";
   };
 
@@ -12,7 +12,7 @@ stdenv.mkDerivation {
 
   meta = with stdenv.lib; {
     description = "Java based toolkit for handling SVG";
-    homepage = https://xmlgraphics.apache.org/batik;
+    homepage = "https://xmlgraphics.apache.org/batik";
     license = licenses.asl20;
     platforms = platforms.unix;
     knownVulnerabilities = [
diff --git a/pkgs/applications/graphics/c3d/default.nix b/pkgs/applications/graphics/c3d/default.nix
index 55a5d49f7524..61efec8dc9d4 100644
--- a/pkgs/applications/graphics/c3d/default.nix
+++ b/pkgs/applications/graphics/c3d/default.nix
@@ -15,7 +15,7 @@ stdenv.mkDerivation {
     ++ stdenv.lib.optional stdenv.isDarwin Cocoa;
 
   meta = with stdenv.lib; {
-    homepage = http://www.itksnap.org/c3d;
+    homepage = "http://www.itksnap.org/c3d";
     description = "Medical imaging processing tool";
     maintainers = with maintainers; [ bcdarwin ];
     platforms = platforms.unix;
diff --git a/pkgs/applications/graphics/comical/default.nix b/pkgs/applications/graphics/comical/default.nix
index 2796a5535a03..8e6e151aff6a 100644
--- a/pkgs/applications/graphics/comical/default.nix
+++ b/pkgs/applications/graphics/comical/default.nix
@@ -15,7 +15,7 @@ stdenv.mkDerivation rec {
 
   meta = {
     description = "Viewer of CBR and CBZ files, often used to store scanned comics";
-    homepage = http://comical.sourceforge.net/;
+    homepage = "http://comical.sourceforge.net/";
     license = stdenv.lib.licenses.gpl2Plus;
     maintainers = with stdenv.lib.maintainers; [viric];
     platforms = with stdenv.lib.platforms; linux;
diff --git a/pkgs/applications/graphics/cq-editor/default.nix b/pkgs/applications/graphics/cq-editor/default.nix
index 32d079d85ff3..a6b35b1d8ea6 100644
--- a/pkgs/applications/graphics/cq-editor/default.nix
+++ b/pkgs/applications/graphics/cq-editor/default.nix
@@ -21,7 +21,7 @@ mkDerivationWith python3Packages.buildPythonApplication rec {
     pyqt5
     pyparsing
     pyqtgraph
-    spyder
+    spyder_3
     pathpy
     qtconsole
     requests
diff --git a/pkgs/applications/graphics/darktable/default.nix b/pkgs/applications/graphics/darktable/default.nix
index 53e04dc7f784..948b4ddd54db 100644
--- a/pkgs/applications/graphics/darktable/default.nix
+++ b/pkgs/applications/graphics/darktable/default.nix
@@ -7,12 +7,12 @@
 }:
 
 stdenv.mkDerivation rec {
-  version = "3.0.0";
+  version = "3.0.2";
   pname = "darktable";
 
   src = fetchurl {
     url = "https://github.com/darktable-org/darktable/releases/download/release-${version}/darktable-${version}.tar.xz";
-    sha256 = "7195a5ff7ee95ab7c5a57e4e84f8c90cc4728b2c917359203c21293ab754c0db";
+    sha256 = "1yrnkw8c47kmy2x6m1xp69hwyk02xyc8pd9kvcmyj54lzrhzdfka";
   };
 
   nativeBuildInputs = [ cmake ninja llvm pkgconfig intltool perl desktop-file-utils wrapGAppsHook ];
@@ -50,7 +50,7 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "Virtual lighttable and darkroom for photographers";
-    homepage = https://www.darktable.org;
+    homepage = "https://www.darktable.org";
     license = licenses.gpl3Plus;
     platforms = platforms.linux ++ platforms.darwin;
     maintainers = with maintainers; [ goibhniu flosse mrVanDalo ];
diff --git a/pkgs/applications/graphics/deskew/default.nix b/pkgs/applications/graphics/deskew/default.nix
index c35aaa044aef..422c7a0e15e8 100644
--- a/pkgs/applications/graphics/deskew/default.nix
+++ b/pkgs/applications/graphics/deskew/default.nix
@@ -28,7 +28,7 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "A command line tool for deskewing scanned text documents";
-    homepage = https://bitbucket.org/galfar/app-deskew/overview;
+    homepage = "https://bitbucket.org/galfar/app-deskew/overview";
     license = licenses.mit;
     maintainers = with maintainers; [ryantm];
     platforms = platforms.all;
diff --git a/pkgs/applications/graphics/dia/default.nix b/pkgs/applications/graphics/dia/default.nix
index 3984cfc17ca5..6ec54201fbfa 100644
--- a/pkgs/applications/graphics/dia/default.nix
+++ b/pkgs/applications/graphics/dia/default.nix
@@ -8,7 +8,7 @@ stdenv.mkDerivation {
   version = "0.97.3.20170622";
 
   src = fetchgit {
-    url = https://gitlab.gnome.org/GNOME/dia.git;
+    url = "https://gitlab.gnome.org/GNOME/dia.git";
     rev = "b86085dfe2b048a2d37d587adf8ceba6fb8bc43c";
     sha256 = "1fyxfrzdcs6blxhkw3bcgkksaf3byrsj4cbyrqgb4869k3ynap96";
   };
@@ -31,7 +31,7 @@ stdenv.mkDerivation {
 
   meta = with stdenv.lib; {
     description = "Gnome Diagram drawing software";
-    homepage = http://live.gnome.org/Dia;
+    homepage = "http://live.gnome.org/Dia";
     maintainers = with maintainers; [ raskin ];
     license = licenses.gpl2;
     platforms = platforms.unix;
diff --git a/pkgs/applications/graphics/digikam/default.nix b/pkgs/applications/graphics/digikam/default.nix
index e6e24e0e56f5..50162166013e 100644
--- a/pkgs/applications/graphics/digikam/default.nix
+++ b/pkgs/applications/graphics/digikam/default.nix
@@ -125,7 +125,7 @@ mkDerivation rec {
   meta = with lib; {
     description = "Photo Management Program";
     license = licenses.gpl2;
-    homepage = https://www.digikam.org;
+    homepage = "https://www.digikam.org";
     maintainers = with maintainers; [ the-kenny ];
     platforms = platforms.linux;
   };
diff --git a/pkgs/applications/graphics/displaycal/default.nix b/pkgs/applications/graphics/displaycal/default.nix
index 7a4db535b2b0..7a99361a03d9 100644
--- a/pkgs/applications/graphics/displaycal/default.nix
+++ b/pkgs/applications/graphics/displaycal/default.nix
@@ -20,7 +20,7 @@ in buildPythonApplication {
   enableParallelBuilding = true;
 
   src = fetchurl {
-    url = mirror://sourceforge/project/dispcalgui/release/3.5.0.0/DisplayCAL-3.5.0.0.tar.gz;
+    url = "mirror://sourceforge/project/dispcalgui/release/3.5.0.0/DisplayCAL-3.5.0.0.tar.gz";
     sha256 = "1j496sv8pbhby5hkkbp07k6bs3f7mb1l3dijmn2iga3kmix0fn5q";
   };
 
@@ -62,7 +62,7 @@ in buildPythonApplication {
 
   meta = {
     description = "Display Calibration and Characterization powered by Argyll CMS";
-    homepage = https://displaycal.net/;
+    homepage = "https://displaycal.net/";
     license = stdenv.lib.licenses.gpl3;
     maintainers = [stdenv.lib.maintainers.marcweber];
     platforms = stdenv.lib.platforms.linux;
diff --git a/pkgs/applications/graphics/dosage/default.nix b/pkgs/applications/graphics/dosage/default.nix
index e26886b070e5..b491c3e3ead0 100644
--- a/pkgs/applications/graphics/dosage/default.nix
+++ b/pkgs/applications/graphics/dosage/default.nix
@@ -22,7 +22,7 @@ python3Packages.buildPythonApplication rec {
 
   meta = {
     description = "A comic strip downloader and archiver";
-    homepage = https://dosage.rocks/;
+    homepage = "https://dosage.rocks/";
     license = stdenv.lib.licenses.mit;
   };
 }
diff --git a/pkgs/applications/graphics/draftsight/default.nix b/pkgs/applications/graphics/draftsight/default.nix
index 144c723da20f..ccd4fd660f76 100644
--- a/pkgs/applications/graphics/draftsight/default.nix
+++ b/pkgs/applications/graphics/draftsight/default.nix
@@ -80,7 +80,7 @@ stdenv.mkDerivation {
   meta = with stdenv.lib; {
     description = "2D design & drafting application, meant to be similar to AutoCAD";
     longDescription = "Professional-grade 2D design and drafting solution from Dassault Systèmes that lets you create, edit, view and mark up any kind of 2D CAD drawing.";
-    homepage = https://www.3ds.com/products-services/draftsight-cad-software/;
+    homepage = "https://www.3ds.com/products-services/draftsight-cad-software/";
     license = stdenv.lib.licenses.unfree;
     maintainers = with maintainers; [ hodapp ];
     platforms = [ "x86_64-linux" ];
diff --git a/pkgs/applications/graphics/drawing/default.nix b/pkgs/applications/graphics/drawing/default.nix
index 67fa5da398bc..fb68276b168c 100644
--- a/pkgs/applications/graphics/drawing/default.nix
+++ b/pkgs/applications/graphics/drawing/default.nix
@@ -17,7 +17,7 @@
 
 python3.pkgs.buildPythonApplication rec {
   pname = "drawing";
-  version = "0.4.11";
+  version = "0.4.13";
 
   format = "other";
   
@@ -25,7 +25,7 @@ python3.pkgs.buildPythonApplication rec {
     owner = "maoschanz";
     repo = pname;
     rev = version;
-    sha256 = "00c1h6jns11rmsg35gy40fb6ahvik80wpbm2133bjcqxfwwnlal6";
+    sha256 = "0mj2nmfrckv89srgkn16fnbrb35f5a655ak8bb3rd9na3hd5bq53";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/applications/graphics/drawio/default.nix b/pkgs/applications/graphics/drawio/default.nix
index 2a7efea52713..8281596374cc 100644
--- a/pkgs/applications/graphics/drawio/default.nix
+++ b/pkgs/applications/graphics/drawio/default.nix
@@ -11,11 +11,11 @@
 
 stdenv.mkDerivation rec {
   pname = "drawio";
-  version = "12.6.5";
+  version = "13.0.3";
 
   src = fetchurl {
     url = "https://github.com/jgraph/drawio-desktop/releases/download/v${version}/draw.io-x86_64-${version}.rpm";
-    sha256 = "14x4h680q3w9wsdmivy2k1bggb09vdm3a3wrpfwd79dbaagjk4lc";
+    sha256 = "104pfwipm8ch9xqlsz1gh18icr1p6i3n4c77bbdjakxcy4s5n7sg";
   };
 
   nativeBuildInputs = [
@@ -86,7 +86,7 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "A desktop application for creating diagrams";
-    homepage = https://about.draw.io/;
+    homepage = "https://about.draw.io/";
     license = licenses.asl20;
     maintainers = with maintainers; [ danieldk ];
     platforms = [ "x86_64-linux" ];
diff --git a/pkgs/applications/graphics/drawpile/default.nix b/pkgs/applications/graphics/drawpile/default.nix
index abe3bd19f744..0ffcb5cdb410 100644
--- a/pkgs/applications/graphics/drawpile/default.nix
+++ b/pkgs/applications/graphics/drawpile/default.nix
@@ -60,11 +60,11 @@ let
 
 in mkDerivation rec {
   pname = "drawpile";
-  version = "2.1.16";
+  version = "2.1.17";
 
   src = fetchurl {
     url = "https://drawpile.net/files/src/drawpile-${version}.tar.gz";
-    sha256 = "1mz64c1a5x906j2jqq7i16l1q1d97wgm2y0ybmmcyqzg09x9wyaw";
+    sha256 = "11lhn1mymhqk9g5sh384xhj3qw8h9lv88pr768y9q6kg3sl7nzzf";
   };
 
   nativeBuildInputs = [
@@ -86,8 +86,8 @@ in mkDerivation rec {
 
   meta = {
     description = "A collaborative drawing program that allows multiple users to sketch on the same canvas simultaneously";
-    homepage = https://drawpile.net/;
-    downloadPage = https://drawpile.net/download/;
+    homepage = "https://drawpile.net/";
+    downloadPage = "https://drawpile.net/download/";
     license = licenses.gpl3;
     maintainers = with maintainers; [ fgaz ];
     platforms = platforms.unix;
diff --git a/pkgs/applications/graphics/epeg/default.nix b/pkgs/applications/graphics/epeg/default.nix
index 3b7bdfb8efc2..bdbdf04bcd50 100644
--- a/pkgs/applications/graphics/epeg/default.nix
+++ b/pkgs/applications/graphics/epeg/default.nix
@@ -24,7 +24,7 @@ stdenv.mkDerivation rec {
   '';
 
   meta = with stdenv.lib; {
-    homepage = https://github.com/mattes/epeg;
+    homepage = "https://github.com/mattes/epeg";
     description = "Insanely fast JPEG/ JPG thumbnail scaling";
     platforms = platforms.linux ++ platforms.darwin;
     license = {
diff --git a/pkgs/applications/graphics/exrdisplay/default.nix b/pkgs/applications/graphics/exrdisplay/default.nix
index d8b08faf2398..7841e9d571b7 100644
--- a/pkgs/applications/graphics/exrdisplay/default.nix
+++ b/pkgs/applications/graphics/exrdisplay/default.nix
@@ -21,7 +21,7 @@ stdenv.mkDerivation {
 
   meta = {
     description = "Application for viewing OpenEXR images on a display at various exposure settings";
-    homepage = http://openexr.com;
+    homepage = "http://openexr.com";
     platforms = stdenv.lib.platforms.linux;
     license = stdenv.lib.licenses.bsd3;
   };
diff --git a/pkgs/applications/graphics/exrtools/default.nix b/pkgs/applications/graphics/exrtools/default.nix
index c8928540bb65..39c23eb4fe8c 100644
--- a/pkgs/applications/graphics/exrtools/default.nix
+++ b/pkgs/applications/graphics/exrtools/default.nix
@@ -14,7 +14,7 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "Collection of utilities for manipulating OpenEXR images";
-    homepage = http://scanline.ca/exrtools;
+    homepage = "http://scanline.ca/exrtools";
     platforms = platforms.linux;
     license = licenses.mit;
     maintainers = [ maintainers.juliendehos ];
diff --git a/pkgs/applications/graphics/fbida/default.nix b/pkgs/applications/graphics/fbida/default.nix
index 3e64783df316..7f0167f98342 100644
--- a/pkgs/applications/graphics/fbida/default.nix
+++ b/pkgs/applications/graphics/fbida/default.nix
@@ -26,7 +26,7 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "Image viewing and manipulation programs including fbi, fbgs, ida, exiftran and thumbnail.cgi";
-    homepage = https://www.kraxel.org/blog/linux/fbida/;
+    homepage = "https://www.kraxel.org/blog/linux/fbida/";
     license = licenses.gpl2;
     maintainers = with maintainers; [ pSub ];
     platforms = platforms.linux;
diff --git a/pkgs/applications/graphics/feh/default.nix b/pkgs/applications/graphics/feh/default.nix
index 1eb99a9a7e41..a0e04bf4ad32 100644
--- a/pkgs/applications/graphics/feh/default.nix
+++ b/pkgs/applications/graphics/feh/default.nix
@@ -6,11 +6,11 @@ with stdenv.lib;
 
 stdenv.mkDerivation rec {
   pname = "feh";
-  version = "3.3";
+  version = "3.4";
 
   src = fetchurl {
     url = "https://feh.finalrewind.org/${pname}-${version}.tar.bz2";
-    sha256 = "04c8cgwzkax481sz7lbzy23mk79bqmjy3qpvr7vxa4c14mc9k5gk";
+    sha256 = "0r83zincbfnk8g13xwm2qaccml9srnwlsmpc1f0nhwjkqyjmqm0q";
   };
 
   outputs = [ "out" "man" "doc" ];
diff --git a/pkgs/applications/graphics/fig2dev/default.nix b/pkgs/applications/graphics/fig2dev/default.nix
index c364badc1742..cd7db3d29c50 100644
--- a/pkgs/applications/graphics/fig2dev/default.nix
+++ b/pkgs/applications/graphics/fig2dev/default.nix
@@ -18,7 +18,7 @@ in stdenv.mkDerivation {
 
   meta = with stdenv.lib; {
     description = "Tool to convert Xfig files to other formats";
-    homepage = http://mcj.sourceforge.net/;
+    homepage = "http://mcj.sourceforge.net/";
     license = licenses.xfig;
     platforms = platforms.linux;
   };
diff --git a/pkgs/applications/graphics/fluxus/default.nix b/pkgs/applications/graphics/fluxus/default.nix
index a80940711013..a53eb806bcf1 100644
--- a/pkgs/applications/graphics/fluxus/default.nix
+++ b/pkgs/applications/graphics/fluxus/default.nix
@@ -50,7 +50,7 @@ stdenv.mkDerivation rec {
     owner = "nebogeo";
     repo = "fluxus";
     rev = "ba9aee218dd4a9cfab914ad78bdb6d59e9a37400";
-    hash = "sha256:0mwghpgq4n1khwlmgscirhmcdhi6x00c08q4idi2zcqz961bbs28";
+    sha256 = "0mwghpgq4n1khwlmgscirhmcdhi6x00c08q4idi2zcqz961bbs28";
   };
 
   buildInputs = [
@@ -69,7 +69,7 @@ stdenv.mkDerivation rec {
     openssl.dev
     racket
   ];
-  nativeBuildInputs = [ scons ];
+  nativeBuildInputs = [ scons.py2 ];
 
   patches = [ ./fix-build.patch ];
   sconsFlags = [
@@ -90,7 +90,7 @@ stdenv.mkDerivation rec {
   meta = with stdenv.lib; {
     description = "Livecoding environment for 3D graphics, sound, and games";
     license = licenses.gpl2;
-    homepage = http://www.pawfal.org/fluxus/;
+    homepage = "http://www.pawfal.org/fluxus/";
     maintainers = [ maintainers.brainrape ];
   };
 }
diff --git a/pkgs/applications/graphics/fondo/default.nix b/pkgs/applications/graphics/fondo/default.nix
index 7b186312301d..877328e8823e 100644
--- a/pkgs/applications/graphics/fondo/default.nix
+++ b/pkgs/applications/graphics/fondo/default.nix
@@ -65,7 +65,7 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "Find the most beautiful wallpapers for your desktop";
-    homepage = https://github.com/calo001/fondo;
+    homepage = "https://github.com/calo001/fondo";
     license = licenses.agpl3Plus;
     maintainers = with maintainers; [ worldofpeace ];
     platforms = platforms.linux;
diff --git a/pkgs/applications/graphics/fontmatrix/default.nix b/pkgs/applications/graphics/fontmatrix/default.nix
index 3b8662976032..99ca119b3bcd 100644
--- a/pkgs/applications/graphics/fontmatrix/default.nix
+++ b/pkgs/applications/graphics/fontmatrix/default.nix
@@ -19,7 +19,7 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "Fontmatrix is a free/libre font explorer for Linux, Windows and Mac";
-    homepage = https://github.com/fontmatrix/fontmatrix;
+    homepage = "https://github.com/fontmatrix/fontmatrix";
     license = licenses.gpl2;
     platforms = platforms.linux;
   };
diff --git a/pkgs/applications/graphics/freepv/default.nix b/pkgs/applications/graphics/freepv/default.nix
index 57321220fb14..11d203746e1a 100644
--- a/pkgs/applications/graphics/freepv/default.nix
+++ b/pkgs/applications/graphics/freepv/default.nix
@@ -5,7 +5,7 @@ stdenv.mkDerivation {
   name = "freepv-0.3.0";
 
   src = fetchurl {
-    url = mirror://sourceforge/freepv/freepv-0.3.0.tar.gz;
+    url = "mirror://sourceforge/freepv/freepv-0.3.0.tar.gz";
     sha256 = "1w19abqjn64w47m35alg7bcdl1p97nf11zn64cp4p0dydihmhv56";
   };
 
@@ -29,7 +29,7 @@ stdenv.mkDerivation {
 
   meta = {
     description = "Open source panorama viewer using GL";
-    homepage = http://freepv.sourceforge.net/;
+    homepage = "http://freepv.sourceforge.net/";
     license = [ stdenv.lib.licenses.lgpl21 ];
   };
 }
diff --git a/pkgs/applications/graphics/fstl/default.nix b/pkgs/applications/graphics/fstl/default.nix
index 1d712a63fbdf..c96ea765d43f 100644
--- a/pkgs/applications/graphics/fstl/default.nix
+++ b/pkgs/applications/graphics/fstl/default.nix
@@ -2,7 +2,7 @@
 
 mkDerivation rec {
   pname = "fstl";
-  version = "0.9.3";
+  version = "0.9.4";
 
   buildInputs = [qtbase mesa_glu];
 
@@ -23,7 +23,7 @@ mkDerivation rec {
     owner = "mkeeter";
     repo = "fstl";
     rev = "v" + version;
-    sha256 = "1j0y9xbf0ybrrnsmfzgpyyz6bi98xgzn9ivani424j01vffns892";
+    sha256 = "028hzdv11hgvcpc36q5scf4nw1256qswh37xhfn5a0iv7wycmnif";
   };
 
   meta = with stdenv.lib; {
diff --git a/pkgs/applications/graphics/gcolor2/default.nix b/pkgs/applications/graphics/gcolor2/default.nix
index f729c9c2bba2..f585a0c5d29c 100644
--- a/pkgs/applications/graphics/gcolor2/default.nix
+++ b/pkgs/applications/graphics/gcolor2/default.nix
@@ -26,7 +26,7 @@ stdenv.mkDerivation {
 
   meta = {
     description = "Simple GTK 2 color selector";
-    homepage = http://gcolor2.sourceforge.net/;
+    homepage = "http://gcolor2.sourceforge.net/";
     license = stdenv.lib.licenses.gpl2Plus;
     maintainers = with stdenv.lib.maintainers; [ notthemessiah ];
     platforms = with stdenv.lib.platforms; unix;
diff --git a/pkgs/applications/graphics/gcolor3/default.nix b/pkgs/applications/graphics/gcolor3/default.nix
index 67be3ba6782c..1c1c6ba08ee2 100644
--- a/pkgs/applications/graphics/gcolor3/default.nix
+++ b/pkgs/applications/graphics/gcolor3/default.nix
@@ -34,7 +34,7 @@ in stdenv.mkDerivation {
 
   meta = with stdenv.lib; {
     description = "A simple color chooser written in GTK3";
-    homepage = https://www.hjdskes.nl/projects/gcolor3/;
+    homepage = "https://www.hjdskes.nl/projects/gcolor3/";
     license = licenses.gpl2Plus;
     maintainers = with maintainers; [ jtojnar ];
     platforms = platforms.unix;
diff --git a/pkgs/applications/graphics/geeqie/default.nix b/pkgs/applications/graphics/geeqie/default.nix
index 4275c6f0dcfd..51c066196efd 100644
--- a/pkgs/applications/graphics/geeqie/default.nix
+++ b/pkgs/applications/graphics/geeqie/default.nix
@@ -61,7 +61,7 @@ stdenv.mkDerivation rec {
 
     license = licenses.gpl2Plus;
 
-    homepage = http://geeqie.sourceforge.net;
+    homepage = "http://geeqie.sourceforge.net";
 
     maintainers = with maintainers; [ jfrankenau pSub ];
     platforms = platforms.gnu ++ platforms.linux;
diff --git a/pkgs/applications/graphics/gimp/plugins/default.nix b/pkgs/applications/graphics/gimp/plugins/default.nix
index 0a06c42b5fc0..0b5e6a7f379f 100644
--- a/pkgs/applications/graphics/gimp/plugins/default.nix
+++ b/pkgs/applications/graphics/gimp/plugins/default.nix
@@ -45,7 +45,7 @@ stdenv.lib.makeScope pkgs.newScope (self: with self; {
     */
     name = "gap-2.6.0";
     src = fetchurl {
-      url = https://ftp.gimp.org/pub/gimp/plug-ins/v2.6/gap/gimp-gap-2.6.0.tar.bz2;
+      url = "https://ftp.gimp.org/pub/gimp/plug-ins/v2.6/gap/gimp-gap-2.6.0.tar.bz2";
       sha256 = "1jic7ixcmsn4kx2cn32nc5087rk6g8xsrz022xy11yfmgvhzb0ql";
     };
     NIX_LDFLAGS = "-lm";
@@ -56,7 +56,7 @@ stdenv.lib.makeScope pkgs.newScope (self: with self; {
     hardeningDisable = [ "format" ];
     meta = with stdenv.lib; {
       description = "The GIMP Animation Package";
-      homepage = https://www.gimp.org;
+      homepage = "https://www.gimp.org";
       # The main code is given in GPLv3, but it has ffmpeg in it, and I think ffmpeg license
       # falls inside "free".
       license = with licenses; [ gpl3 free ];
@@ -143,7 +143,7 @@ stdenv.lib.makeScope pkgs.newScope (self: with self; {
     name = "wavelet-sharpen-0.1.2";
     NIX_LDFLAGS = "-lm";
     src = fetchurl {
-      url = http://registry.gimp.org/files/wavelet-sharpen-0.1.2.tar.gz;
+      url = "http://registry.gimp.org/files/wavelet-sharpen-0.1.2.tar.gz";
       sha256 = "0vql1k67i21g5ivaa1jh56rg427m0icrkpryrhg75nscpirfxxqw";
     };
     installPhase = "installPlugins src/wavelet-sharpen"; # TODO translations are not copied .. How to do this on nix?
@@ -156,7 +156,7 @@ stdenv.lib.makeScope pkgs.newScope (self: with self; {
     name = "lqr-plugin-0.6.1";
     buildInputs = with pkgs; [ liblqr1 ];
     src = fetchurl {
-      url = http://registry.gimp.org/files/gimp-lqr-plugin-0.6.1.tar.bz2;
+      url = "http://registry.gimp.org/files/gimp-lqr-plugin-0.6.1.tar.bz2";
       sha256 = "00hklkpcimcbpjly4rjhfipaw096cpy768g9wixglwrsyqhil7l9";
     };
     #postInstall = ''mkdir -p $out/nix-support; echo "${liblqr1}" > "$out/nix-support/propagated-user-env-packages"'';
@@ -189,7 +189,7 @@ stdenv.lib.makeScope pkgs.newScope (self: with self; {
     meta = {
       description = "GIMP plugin to correct lens distortion using the lensfun library and database";
 
-      homepage = http://lensfun.sebastiankraft.net/;
+      homepage = "http://lensfun.sebastiankraft.net/";
 
       license = stdenv.lib.licenses.gpl3Plus;
       maintainers = [ ];
@@ -203,7 +203,7 @@ stdenv.lib.makeScope pkgs.newScope (self: with self; {
   exposureBlend = scriptDerivation {
     name = "exposure-blend";
     src = fetchurl {
-      url = http://tir.astro.utoledo.edu/jdsmith/code/eb/exposure-blend.scm;
+      url = "http://tir.astro.utoledo.edu/jdsmith/code/eb/exposure-blend.scm";
       sha256 = "1b6c9wzpklqras4wwsyw3y3jp6fjmhnnskqiwm5sabs8djknfxla";
     };
     meta.broken = true;
@@ -212,7 +212,7 @@ stdenv.lib.makeScope pkgs.newScope (self: with self; {
   lightning = scriptDerivation {
     name = "Lightning";
     src = fetchurl {
-      url = http://registry.gimp.org/files/Lightning.scm;
+      url = "http://registry.gimp.org/files/Lightning.scm";
       sha256 = "c14a8f4f709695ede3f77348728a25b3f3ded420da60f3f8de3944b7eae98a49";
     };
   };
@@ -235,7 +235,7 @@ stdenv.lib.makeScope pkgs.newScope (self: with self; {
     # http://registry.gimp.org/node/153
     name = "lightning-gate";
     src = fetchurl {
-      url = http://registry.gimp.org/files/LightningGate.scm;
+      url = "http://registry.gimp.org/files/LightningGate.scm";
       sha256 = "181w1zi9a99kn2mfxjp43wkwcgw5vbb6iqjas7a9mhm8p04csys2";
     };
   };
diff --git a/pkgs/applications/graphics/glabels/default.nix b/pkgs/applications/graphics/glabels/default.nix
index fef296f45be2..be487fcb8a6b 100644
--- a/pkgs/applications/graphics/glabels/default.nix
+++ b/pkgs/applications/graphics/glabels/default.nix
@@ -33,7 +33,7 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "Create labels and business cards";
-    homepage = https://glabels.org/;
+    homepage = "https://glabels.org/";
     license = with licenses; [ gpl3Plus lgpl3Plus ];
     platforms = platforms.unix;
     maintainers = [ maintainers.nico202 ];
diff --git a/pkgs/applications/graphics/gnome-photos/default.nix b/pkgs/applications/graphics/gnome-photos/default.nix
index 6cbe5448b40a..46be8d145320 100644
--- a/pkgs/applications/graphics/gnome-photos/default.nix
+++ b/pkgs/applications/graphics/gnome-photos/default.nix
@@ -117,9 +117,9 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "Access, organize and share your photos";
-    homepage = https://wiki.gnome.org/Apps/Photos;
+    homepage = "https://wiki.gnome.org/Apps/Photos";
     license = licenses.gpl3Plus;
-    maintainers = gnome3.maintainers;
+    maintainers = teams.gnome.members;
     platforms = platforms.linux;
   };
 }
diff --git a/pkgs/applications/graphics/gnuclad/default.nix b/pkgs/applications/graphics/gnuclad/default.nix
index 5b6dd42e09e5..fcb4bdb53743 100644
--- a/pkgs/applications/graphics/gnuclad/default.nix
+++ b/pkgs/applications/graphics/gnuclad/default.nix
@@ -15,7 +15,7 @@ stdenv.mkDerivation rec {
   nativeBuildInputs = [ pkgconfig ];
 
   meta = with stdenv.lib; {
-    homepage = https://launchpad.net/gnuclad;
+    homepage = "https://launchpad.net/gnuclad";
     description = "gnuclad tries to help the environment by creating trees.  It's primary use will be generating cladogram trees for the GNU/Linux distro timeline project.";
     license = licenses.gpl3Plus;
     maintainers = with maintainers; [ mog ];
diff --git a/pkgs/applications/graphics/gocr/default.nix b/pkgs/applications/graphics/gocr/default.nix
index f5fa8ca9221d..7c586374ec51 100644
--- a/pkgs/applications/graphics/gocr/default.nix
+++ b/pkgs/applications/graphics/gocr/default.nix
@@ -24,7 +24,7 @@ stdenv.mkDerivation rec {
   '';
 
   meta = {
-    homepage = http://jocr.sourceforge.net/;
+    homepage = "http://jocr.sourceforge.net/";
     description = "GPL Optical Character Recognition";
     license = stdenv.lib.licenses.gpl2;
     platforms = stdenv.lib.platforms.linux;
diff --git a/pkgs/applications/graphics/goxel/default.nix b/pkgs/applications/graphics/goxel/default.nix
index 84fdb60c31ef..6fb5b91c2a92 100644
--- a/pkgs/applications/graphics/goxel/default.nix
+++ b/pkgs/applications/graphics/goxel/default.nix
@@ -28,7 +28,7 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "Open Source 3D voxel editor";
-    homepage = https://guillaumechereau.github.io/goxel/;
+    homepage = "https://guillaumechereau.github.io/goxel/";
     license = licenses.gpl3;
     platforms = platforms.linux;
     maintainers = with maintainers; [ tilpner ];
diff --git a/pkgs/applications/graphics/gpicview/default.nix b/pkgs/applications/graphics/gpicview/default.nix
index 86867cd1cca7..9e3ab37c3223 100644
--- a/pkgs/applications/graphics/gpicview/default.nix
+++ b/pkgs/applications/graphics/gpicview/default.nix
@@ -17,8 +17,8 @@ stdenv.mkDerivation {
 
   meta = with stdenv.lib; {
     description = "A simple and fast image viewer for X";
-    homepage    = http://lxde.sourceforge.net/gpicview/;
-    repositories.git = git://lxde.git.sourceforge.net/gitroot/lxde/gpicview;
+    homepage    = "http://lxde.sourceforge.net/gpicview/";
+    repositories.git = "git://lxde.git.sourceforge.net/gitroot/lxde/gpicview";
     license     = licenses.gpl2;
     maintainers = with maintainers; [ lovek323 ];
     platforms   = platforms.unix;
diff --git a/pkgs/applications/graphics/gqview/default.nix b/pkgs/applications/graphics/gqview/default.nix
index d82238f925b3..965ac5db6821 100644
--- a/pkgs/applications/graphics/gqview/default.nix
+++ b/pkgs/applications/graphics/gqview/default.nix
@@ -9,7 +9,7 @@ stdenv.mkDerivation {
   name = "gqview-2.1.5";
 
   src = fetchurl {
-    url = mirror://sourceforge/gqview/gqview-2.1.5.tar.gz;
+    url = "mirror://sourceforge/gqview/gqview-2.1.5.tar.gz";
     sha256 = "0ilm5s7ps9kg4f5hzgjhg0xhn6zg0v9i7jnd67zrx9h7wsaa9zhj";
   };
 
@@ -22,7 +22,7 @@ stdenv.mkDerivation {
 
   meta = with stdenv.lib; {
     description = "A fast image viewer";
-    homepage = http://gqview.sourceforge.net;
+    homepage = "http://gqview.sourceforge.net";
     license = licenses.gpl2;
     platforms = platforms.unix;
   };
diff --git a/pkgs/applications/graphics/grafx2/default.nix b/pkgs/applications/graphics/grafx2/default.nix
index 039bb1917d37..2a2a6a675989 100644
--- a/pkgs/applications/graphics/grafx2/default.nix
+++ b/pkgs/applications/graphics/grafx2/default.nix
@@ -21,7 +21,7 @@ stdenv.mkDerivation rec {
 
   meta = {
     description = "Bitmap paint program inspired by the Amiga programs Deluxe Paint and Brilliance";
-    homepage = http://pulkomandy.tk/projects/GrafX2;
+    homepage = "http://pulkomandy.tk/projects/GrafX2";
     license = stdenv.lib.licenses.gpl2;
     platforms = [ "x86_64-linux" "i686-linux" ];
     maintainers = [ stdenv.lib.maintainers.zoomulator ];
diff --git a/pkgs/applications/graphics/graphicsmagick/default.nix b/pkgs/applications/graphics/graphicsmagick/default.nix
index 403a5285e150..be5114565ff5 100644
--- a/pkgs/applications/graphics/graphicsmagick/default.nix
+++ b/pkgs/applications/graphics/graphicsmagick/default.nix
@@ -35,7 +35,7 @@ stdenv.mkDerivation rec {
   '';
 
   meta = {
-    homepage = http://www.graphicsmagick.org;
+    homepage = "http://www.graphicsmagick.org";
     description = "Swiss army knife of image processing";
     license = stdenv.lib.licenses.mit;
     platforms = stdenv.lib.platforms.all;
diff --git a/pkgs/applications/graphics/gscan2pdf/default.nix b/pkgs/applications/graphics/gscan2pdf/default.nix
index 76bb0bc13175..352b6b900cc6 100644
--- a/pkgs/applications/graphics/gscan2pdf/default.nix
+++ b/pkgs/applications/graphics/gscan2pdf/default.nix
@@ -10,11 +10,11 @@ with stdenv.lib;
 
 perlPackages.buildPerlPackage rec {
   pname = "gscan2pdf";
-  version = "2.6.3";
+  version = "2.6.5";
 
   src = fetchurl {
     url = "mirror://sourceforge/gscan2pdf/${version}/${pname}-${version}.tar.xz";
-    sha256 = "1chmk51xwylnjrgc6hw23x7g7cpwzgwmjc49fcah7pkd3dk1cvvr";
+    sha256 = "0x8931i5zs4zl3iqjhlp7h8y6ssklxiqsddz5kh84nl3p0izbg0y";
   };
 
   nativeBuildInputs = [ wrapGAppsHook ];
@@ -100,7 +100,7 @@ perlPackages.buildPerlPackage rec {
 
   meta = {
     description = "A GUI to produce PDFs or DjVus from scanned documents";
-    homepage = http://gscan2pdf.sourceforge.net/;
+    homepage = "http://gscan2pdf.sourceforge.net/";
     license = licenses.gpl3;
     maintainers = with maintainers; [ pacien ];
   };
diff --git a/pkgs/applications/graphics/gthumb/default.nix b/pkgs/applications/graphics/gthumb/default.nix
index b51db1e945fe..27e8e00bdb3a 100644
--- a/pkgs/applications/graphics/gthumb/default.nix
+++ b/pkgs/applications/graphics/gthumb/default.nix
@@ -33,11 +33,11 @@
 
 stdenv.mkDerivation rec {
   pname = "gthumb";
-  version = "3.8.3";
+  version = "3.10.0";
 
   src = fetchurl {
     url = "mirror://gnome/sources/${pname}/${stdenv.lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
-    sha256 = "1a0gss9cjcwayrcpkam5kc1giwbfy38jgqxvh33in9gfq9dgrygg";
+    sha256 = "0j7cxp4hhkvkckyvll6pmqkv5rwrknlzq9j1my0grb01b8wzhw9y";
   };
 
   nativeBuildInputs = [
@@ -59,7 +59,10 @@ stdenv.mkDerivation rec {
     gnome3.adwaita-icon-theme
     gsettings-desktop-schemas
     gst_all_1.gst-plugins-base
-    gst_all_1.gstreamer
+    (gst_all_1.gst-plugins-good.override { gtkSupport = true; })
+    gst_all_1.gst-libav
+    gst_all_1.gst-plugins-bad
+    gst_all_1.gst-plugins-ugly
     gtk3
     json-glib
     lcms2
diff --git a/pkgs/applications/graphics/guetzli/default.nix b/pkgs/applications/graphics/guetzli/default.nix
index d7b964259683..ccddf907e94c 100644
--- a/pkgs/applications/graphics/guetzli/default.nix
+++ b/pkgs/applications/graphics/guetzli/default.nix
@@ -22,7 +22,7 @@ stdenv.mkDerivation {
   meta = {
     description = "Perceptual JPEG encoder";
     longDescription = "Guetzli is a JPEG encoder that aims for excellent compression density at high visual quality.";
-    homepage = https://github.com/google/guetzli;
+    homepage = "https://github.com/google/guetzli";
     license = stdenv.lib.licenses.asl20;
     platforms = stdenv.lib.platforms.x86_64;
     maintainers = [ stdenv.lib.maintainers.seppeljordan ];
diff --git a/pkgs/applications/graphics/hugin/default.nix b/pkgs/applications/graphics/hugin/default.nix
index 8f7800a7323a..7314ff893b00 100644
--- a/pkgs/applications/graphics/hugin/default.nix
+++ b/pkgs/applications/graphics/hugin/default.nix
@@ -46,7 +46,7 @@ stdenv.mkDerivation rec {
   '';
 
   meta = with stdenv.lib; {
-    homepage = http://hugin.sourceforge.net/;
+    homepage = "http://hugin.sourceforge.net/";
     description = "Toolkit for stitching photographs and assembling panoramas, together with an easy to use graphical front end";
     license = licenses.gpl2Plus;
     maintainers = with maintainers; [ hrdinka ];
diff --git a/pkgs/applications/graphics/ideogram/default.nix b/pkgs/applications/graphics/ideogram/default.nix
index 3e17a045ecc1..4bf414cf8dd5 100644
--- a/pkgs/applications/graphics/ideogram/default.nix
+++ b/pkgs/applications/graphics/ideogram/default.nix
@@ -58,7 +58,7 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "Insert emoji anywhere, even in non-native apps - designed for elementary OS";
-    homepage = https://github.com/cassidyjames/ideogram;
+    homepage = "https://github.com/cassidyjames/ideogram";
     license = licenses.gpl2Plus;
     maintainers = pantheon.maintainers;
     platforms = platforms.linux;
diff --git a/pkgs/applications/graphics/image_optim/Gemfile.lock b/pkgs/applications/graphics/image_optim/Gemfile.lock
index 20c9772ce464..3ffadb5acbe3 100644
--- a/pkgs/applications/graphics/image_optim/Gemfile.lock
+++ b/pkgs/applications/graphics/image_optim/Gemfile.lock
@@ -20,4 +20,4 @@ DEPENDENCIES
   image_optim
 
 BUNDLED WITH
-   1.16.3
+   2.1.4
diff --git a/pkgs/applications/graphics/image_optim/default.nix b/pkgs/applications/graphics/image_optim/default.nix
index 385f9825e46f..ba437eab4122 100644
--- a/pkgs/applications/graphics/image_optim/default.nix
+++ b/pkgs/applications/graphics/image_optim/default.nix
@@ -58,7 +58,7 @@ bundlerApp {
 
   meta = with lib; {
     description = "Command line tool and ruby interface to optimize (lossless compress, optionally lossy) jpeg, png, gif and svg images using external utilities (advpng, gifsicle, jhead, jpeg-recompress, jpegoptim, jpegrescan, jpegtran, optipng, pngcrush, pngout, pngquant, svgo)";
-    homepage    = https://github.com/toy/image_optim;
+    homepage    = "https://github.com/toy/image_optim";
     license     = licenses.mit;
     maintainers = with maintainers; [ srghma nicknovitski ];
     platforms   = platforms.all;
diff --git a/pkgs/applications/graphics/imagej/default.nix b/pkgs/applications/graphics/imagej/default.nix
index 6472712bcb40..d47369f5094a 100644
--- a/pkgs/applications/graphics/imagej/default.nix
+++ b/pkgs/applications/graphics/imagej/default.nix
@@ -32,7 +32,7 @@ let
         --add-flags "-jar $out/share/java/ij.jar -ijpath $out/share"
     '';
     meta = with stdenv.lib; {
-      homepage = https://imagej.nih.gov/ij/;
+      homepage = "https://imagej.nih.gov/ij/";
       description = "Image processing and analysis in Java";
       longDescription = ''
         ImageJ is a public domain Java image processing program
diff --git a/pkgs/applications/graphics/imgcat/default.nix b/pkgs/applications/graphics/imgcat/default.nix
index 1fa3ec8ccc68..5943632930c5 100644
--- a/pkgs/applications/graphics/imgcat/default.nix
+++ b/pkgs/applications/graphics/imgcat/default.nix
@@ -25,7 +25,7 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "It's like cat, but for images";
-    homepage = https://github.com/eddieantonio/imgcat;
+    homepage = "https://github.com/eddieantonio/imgcat";
     license = licenses.isc;
     maintainers = with maintainers; [ jwiegley ];
     platforms = platforms.unix;
diff --git a/pkgs/applications/graphics/imlibsetroot/default.nix b/pkgs/applications/graphics/imlibsetroot/default.nix
index 8ca4d71bb56c..06549468efe9 100644
--- a/pkgs/applications/graphics/imlibsetroot/default.nix
+++ b/pkgs/applications/graphics/imlibsetroot/default.nix
@@ -21,7 +21,7 @@ stdenv.mkDerivation {
 
   meta = with stdenv.lib; {
     description = "A Xinerama Aware Background Changer";
-    homepage = http://robotmonkeys.net/2010/03/30/imlibsetroot/;
+    homepage = "http://robotmonkeys.net/2010/03/30/imlibsetroot/";
     license = licenses.gpl2;
     platforms = platforms.linux;
     maintainers = with maintainers; [ dwarfmaster ];
diff --git a/pkgs/applications/graphics/imv/default.nix b/pkgs/applications/graphics/imv/default.nix
index 26a6cabf7841..88b4a8476658 100644
--- a/pkgs/applications/graphics/imv/default.nix
+++ b/pkgs/applications/graphics/imv/default.nix
@@ -53,7 +53,7 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "A command line image viewer for tiling window managers";
-    homepage    = https://github.com/eXeC64/imv;
+    homepage    = "https://github.com/eXeC64/imv";
     license     = licenses.gpl2;
     maintainers = with maintainers; [ rnhmjoj markus1189 ];
     platforms   = [ "i686-linux" "x86_64-linux" ];
diff --git a/pkgs/applications/graphics/inkscape/default.nix b/pkgs/applications/graphics/inkscape/default.nix
index 3996b94ba14d..86fb6e034915 100644
--- a/pkgs/applications/graphics/inkscape/default.nix
+++ b/pkgs/applications/graphics/inkscape/default.nix
@@ -1,54 +1,62 @@
-{ stdenv, fetchurl, fetchpatch, pkgconfig, perlPackages, libXft
-, libpng, zlib, popt, boehmgc, libxml2, libxslt, glib, gtkmm2
-, glibmm, libsigcxx, lcms, boost, gettext, makeWrapper
-, gsl, gtkspell2, cairo, python2, poppler, imagemagick, libwpg, librevenge
-, libvisio, libcdr, libexif, potrace, cmake
-, librsvg, wrapGAppsHook
+{ stdenv
+, boehmgc
+, boost
+, cairo
+, cmake
+, fetchpatch
+, fetchurl
+, gettext
+, glib
+, glibmm
+, gsl
+, gtkmm2
+, gtkspell2
+, imagemagick
+, lcms
+, libcdr
+, libexif
+, libpng
+, librevenge
+, librsvg
+, libsigcxx
+, libvisio
+, libwpg
+, libXft
+, libxml2
+, libxslt
+, makeWrapper
+, perlPackages
+, pkg-config
+, poppler
+, popt
+, potrace
+, python3
+, wrapGAppsHook
+, zlib
 }:
-
 let
-  python2Env = python2.withPackages(ps: with ps;
-    [ numpy lxml scour ]);
+  python3Env = python3.withPackages
+    (ps: with ps; [
+      numpy
+      lxml
+      scour
+    ]);
 in
-
 stdenv.mkDerivation rec {
-  name = "inkscape-0.92.4";
+  pname = "inkscape";
+  version = "0.92.5";
 
   src = fetchurl {
-    url = "https://media.inkscape.org/dl/resources/file/${name}.tar.bz2";
-    sha256 = "0pjinhjibfsz1aywdpgpj3k23xrsszpj4a1ya5562dkv2yl2vv2p";
+    url = "https://media.inkscape.org/dl/resources/file/${pname}-${version}.tar.bz2";
+    sha256 = "ge5/aeK9ZKlzQ9g5Wkp6eQWyG4YVZu1eXZF5F41Rmgs=";
   };
 
-  patches = [
-    (fetchpatch {
-      name = "inkscape-poppler_0_76_compat.patch";
-      url = "https://gitlab.com/inkscape/inkscape/commit/e831b034746f8dc3c3c1b88372751f6dcb974831.diff";
-      sha256 = "096rdyi6ppjq1h9jwwsm9hb99nggfrfinik8rm23jkn4h2zl01zf";
-    })
-    (fetchpatch {
-      name = "inkscape-poppler_0_82_compat.patch";
-      url = "https://gitlab.com/inkscape/inkscape/commit/835b6bb62be565efab986d5a3f30a672ad56c7eb.patch";
-      sha256 = "02c6sxi2w52b885vr3pgani6kvxp9gdqqk2jgiykkdzv70hhrnm7";
-    })
-    (fetchpatch {
-      name = "inkscape-poppler_0_83_compat.patch";
-      url = "https://gitlab.com/inkscape/inkscape/commit/b5360a807b12d4e8318475ffd0464b84882788b5.patch";
-      sha256 = "1p44rr2q2i3zkd1y1j7xgdcbgx8yvlq6hq92im8s0bkjby6p5cpz";
-    })
-  ];
-
   # Inkscape hits the ARGMAX when linking on macOS. It appears to be
   # CMake’s ARGMAX check doesn’t offer enough padding for NIX_LDFLAGS.
   # Setting strictDeps it avoids duplicating some dependencies so it
   # will leave us under ARGMAX.
   strictDeps = true;
 
-  unpackPhase = ''
-    cp $src ${name}.tar.bz2
-    tar xvjf ${name}.tar.bz2 > /dev/null
-    cd ${name}
-  '';
-
   postPatch = ''
     patchShebangs share/extensions
     patchShebangs fix-roff-punct
@@ -56,24 +64,52 @@ stdenv.mkDerivation rec {
     # Python is used at run-time to execute scripts, e.g., those from
     # the "Effects" menu.
     substituteInPlace src/extension/implementation/script.cpp \
-      --replace '"python-interpreter", "python"' '"python-interpreter", "${python2Env}/bin/python"'
+      --replace '"python-interpreter", "python"' '"python-interpreter", "${python3Env}/bin/python"'
   '';
 
-  nativeBuildInputs = [ pkgconfig cmake makeWrapper python2Env wrapGAppsHook ]
-    ++ (with perlPackages; [ perl XMLParser ]);
-  buildInputs = [
-    libXft libpng zlib popt boehmgc
-    libxml2 libxslt glib gtkmm2 glibmm libsigcxx lcms boost gettext
-    gsl poppler imagemagick libwpg librevenge
-    libvisio libcdr libexif potrace
+  nativeBuildInputs = [
+    pkg-config
+    cmake
+    makeWrapper
+    python3Env
+    wrapGAppsHook
+  ] ++ (with perlPackages; [
+    perl
+    XMLParser
+  ]);
 
+  buildInputs = [
+    boehmgc
+    boost
+    gettext
+    glib
+    glibmm
+    gsl
+    gtkmm2
+    imagemagick
+    lcms
+    libcdr
+    libexif
+    libpng
+    librevenge
     librsvg # for loading icons
-
-    python2Env perlPackages.perl
-  ] ++ stdenv.lib.optional (!stdenv.isDarwin) gtkspell2
-    ++ stdenv.lib.optional stdenv.isDarwin cairo;
-
-  enableParallelBuilding = true;
+    libsigcxx
+    libvisio
+    libwpg
+    libXft
+    libxml2
+    libxslt
+    perlPackages.perl
+    poppler
+    popt
+    potrace
+    python3Env
+    zlib
+  ] ++ stdenv.lib.optionals (!stdenv.isDarwin) [
+    gtkspell2
+  ] ++ stdenv.lib.optionals stdenv.isDarwin [
+    cairo
+  ];
 
   # Make sure PyXML modules can be found at run-time.
   postInstall = stdenv.lib.optionalString stdenv.isDarwin ''
@@ -82,9 +118,10 @@ stdenv.mkDerivation rec {
   '';
 
   meta = with stdenv.lib; {
-    license = "GPL";
-    homepage = https://www.inkscape.org;
     description = "Vector graphics editor";
+    homepage = "https://www.inkscape.org";
+    license = licenses.gpl3Plus;
+    maintainers = [ maintainers.jtojnar ];
     platforms = platforms.all;
     longDescription = ''
       Inkscape is a feature-rich vector graphics editor that edits
diff --git a/pkgs/applications/graphics/ipe/default.nix b/pkgs/applications/graphics/ipe/default.nix
index 0cb09ecb6430..6a2a8dbc18fe 100644
--- a/pkgs/applications/graphics/ipe/default.nix
+++ b/pkgs/applications/graphics/ipe/default.nix
@@ -1,8 +1,8 @@
 { stdenv, fetchurl, makeWrapper, pkgconfig, zlib, freetype, cairo, lua5, texlive, ghostscript
-, libjpeg, libpng, qtbase
+, libjpeg, libpng, qtbase, mkDerivation
 }:
 
-stdenv.mkDerivation rec {
+mkDerivation rec {
   name = "ipe-7.2.13";
 
   src = fetchurl {
@@ -20,13 +20,9 @@ stdenv.mkDerivation rec {
     libjpeg libpng zlib qtbase freetype cairo lua5 texlive ghostscript
   ];
 
-  nativeBuildInputs = [ makeWrapper pkgconfig ];
+  nativeBuildInputs = [ pkgconfig ];
 
-  postFixup = ''
-    for prog in $out/bin/*; do
-      wrapProgram "$prog" --prefix PATH : "${texlive}/bin"
-    done
-  '';
+  qtWrapperArgs = [ ''--prefix PATH : ${texlive}/bin''  ];
 
   enableParallelBuilding = true;
 
@@ -34,7 +30,7 @@ stdenv.mkDerivation rec {
 
   meta = {
     description = "An editor for drawing figures";
-    homepage = http://ipe.otfried.org;
+    homepage = "http://ipe.otfried.org";
     license = stdenv.lib.licenses.gpl3Plus;
     longDescription = ''
       Ipe is an extensible drawing editor for creating figures in PDF and Postscript format.
diff --git a/pkgs/applications/graphics/jbrout/default.nix b/pkgs/applications/graphics/jbrout/default.nix
deleted file mode 100644
index 4eb7518cc102..000000000000
--- a/pkgs/applications/graphics/jbrout/default.nix
+++ /dev/null
@@ -1,42 +0,0 @@
-{ stdenv, fetchsvn, pythonPackages, makeWrapper, fbida, which }:
-
-let
-  inherit (pythonPackages) python;
-in pythonPackages.buildPythonApplication rec {
-  pname = "jbrout";
-  version = "338";
-
-  src = fetchsvn {
-    url = "http://jbrout.googlecode.com/svn/trunk";
-    rev = version;
-    sha256 = "0257ni4vkxgd0qhs73fw5ppw1qpf11j8fgwsqc03b1k1yv3hk4hf";
-  };
-
-  doCheck = false;
-
-  # XXX: patchPhase to avoid this
-  #  File "/nix/store/vnyjxn6h3rbrn49m25yyw7i1chlxglhw-python-2.7.1/lib/python2.7/zipfile.py", line 348, in FileHeader
-  #    len(filename), len(extra))
-  #struct.error: ushort format requires 0 <= number <= USHRT_MAX
-  patchPhase = ''
-    find | xargs touch
-
-    substituteInPlace setup.py --replace "version=__version__" "version=baseVersion"
-  '';
-
-  postInstall = ''
-    mkdir $out/bin
-    echo "python $out/${python.sitePackages}/jbrout/jbrout.py" > $out/bin/jbrout
-    chmod +x $out/bin/jbrout
-  '';
-
-  buildInputs = [ python makeWrapper which ];
-  propagatedBuildInputs = with pythonPackages; [ pillow lxml pyGtkGlade pyexiv2 fbida ];
-
-  meta = {
-    homepage = https://manatlan.com/jbrout/;
-    description = "Photo manager";
-    platforms = stdenv.lib.platforms.linux;
-    license = stdenv.lib.licenses.gpl2Plus;
-  };
-}
diff --git a/pkgs/applications/graphics/jpegoptim/default.nix b/pkgs/applications/graphics/jpegoptim/default.nix
index cc1ca3a0ff2a..265ce82b8ac3 100644
--- a/pkgs/applications/graphics/jpegoptim/default.nix
+++ b/pkgs/applications/graphics/jpegoptim/default.nix
@@ -16,7 +16,7 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "Optimize JPEG files";
-    homepage = https://www.kokkonen.net/tjko/projects.html ;
+    homepage = "https://www.kokkonen.net/tjko/projects.html";
     license = licenses.gpl2;
     maintainers = [ maintainers.aristid ];
     platforms = platforms.all;
diff --git a/pkgs/applications/graphics/jpegrescan/default.nix b/pkgs/applications/graphics/jpegrescan/default.nix
index 1c65c7da3a28..5fe35edabdf6 100644
--- a/pkgs/applications/graphics/jpegrescan/default.nix
+++ b/pkgs/applications/graphics/jpegrescan/default.nix
@@ -34,7 +34,7 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "losslessly shrink any JPEG file";
-    homepage = https://github.com/kud/jpegrescan;
+    homepage = "https://github.com/kud/jpegrescan";
     license = licenses.publicDomain;
     maintainers = [ maintainers.ramkromberg ];
     platforms = platforms.all;
diff --git a/pkgs/applications/graphics/k3d/default.nix b/pkgs/applications/graphics/k3d/default.nix
index 31085cd8023d..c74f35e4334a 100644
--- a/pkgs/applications/graphics/k3d/default.nix
+++ b/pkgs/applications/graphics/k3d/default.nix
@@ -15,7 +15,7 @@ stdenv.mkDerivation rec {
 
   patches = [
     (fetchpatch { /* glibmm 2.50 fix */
-      url = https://github.com/K-3D/k3d/commit/c65889d0652490d88a573e47de7a9324bf27bff2.patch;
+      url = "https://github.com/K-3D/k3d/commit/c65889d0652490d88a573e47de7a9324bf27bff2.patch";
       sha256 = "162icv1hicr2dirkb9ijacvg9bhz5j30yfwg7b45ijavk8rns62j";
     })
   ];
@@ -43,7 +43,7 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "A 3D editor with support for procedural editing";
-    homepage = http://www.k-3d.org/;
+    homepage = "http://www.k-3d.org/";
     platforms = platforms.linux;
     maintainers = [ maintainers.raskin ];
     license = licenses.gpl2;
diff --git a/pkgs/applications/graphics/kodelife/default.nix b/pkgs/applications/graphics/kodelife/default.nix
index 0b4e49dc2b59..e5aac9b8823d 100644
--- a/pkgs/applications/graphics/kodelife/default.nix
+++ b/pkgs/applications/graphics/kodelife/default.nix
@@ -9,7 +9,7 @@
 
 stdenv.mkDerivation rec {
   pname = "kodelife";
-  version = "0.8.8.110";
+  version = "0.9.0.129";
 
   suffix = {
     aarch64-linux = "linux-arm64";
@@ -21,10 +21,10 @@ stdenv.mkDerivation rec {
   src = fetchzip {
     url = "https://hexler.net/pub/${pname}/${pname}-${version}-${suffix}.zip";
     sha256 = {
-      aarch64-linux = "1lcpj1mgkvksq1d08ibh59y0dmdh7zm77wi5ziqhg3p5g9nxyasd";
-      armv7l-linux  = "0sljy06302x567jqw5lagbyhpc3j140jk4wccacxjrbb6hcx3l42";
-      x86_64-darwin = "1b058s9kny026q395nj99v8hggxkgv43nnjkmx1a2siajw0db94c";
-      x86_64-linux  = "1q77cpz4gflrvfz6dm6np8sqbwyr235gq7y4pzs4hnqbrdzd4nwl";
+      aarch64-linux = "0z2fqlf156348ha3zhv16kvqdx68fbwbzch2gzjm9x1na9n5k1ra";
+      armv7l-linux  = "1ppwgrmgl1j2ws9mhrscvvkamd69a6xw7x35df6d30cyj97r0mzy";
+      x86_64-darwin = "0f8vn6m3xzsiyxm2ka5wkbp63wvzrix6g1xrbpvcm3v2llmychkl";
+      x86_64-linux  = "035c1nlw0nim057sz3axpkcgkafqbm6gpr8hwr097vlrqll6w3dv";
     }.${stdenv.hostPlatform.system} or (throw "Unsupported system: ${stdenv.hostPlatform.system}");
   };
 
@@ -32,6 +32,7 @@ stdenv.mkDerivation rec {
   dontBuild = true;
   dontStrip = true;
   dontPatchELF = true;
+  preferLocalBuild = true;
 
   installPhase = ''
     mkdir -p $out/bin
diff --git a/pkgs/applications/graphics/krita/default.nix b/pkgs/applications/graphics/krita/default.nix
index 3cc4834d756e..6ad67f75b218 100644
--- a/pkgs/applications/graphics/krita/default.nix
+++ b/pkgs/applications/graphics/krita/default.nix
@@ -17,6 +17,9 @@ mkDerivation rec {
     sha256 = "1sx4j4brk71bas3cpqzk4bd8bknyl3x4fdg5pv4r7pcfd3vpq2vy";
   };
 
+  # *somtimes* fails with can't find ui_manager.h, also see https://github.com/NixOS/nixpkgs/issues/35359
+  enableParallelBuilding = false;
+
   nativeBuildInputs = [ cmake extra-cmake-modules python3Packages.sip makeWrapper ];
 
   buildInputs = [
@@ -45,7 +48,7 @@ mkDerivation rec {
 
   meta = with lib; {
     description = "A free and open source painting application";
-    homepage = https://krita.org/;
+    homepage = "https://krita.org/";
     maintainers = with maintainers; [ abbradar ];
     platforms = platforms.linux;
     license = licenses.gpl2;
diff --git a/pkgs/applications/graphics/krop/default.nix b/pkgs/applications/graphics/krop/default.nix
index 401e5f6fc570..818fc63535ed 100644
--- a/pkgs/applications/graphics/krop/default.nix
+++ b/pkgs/applications/graphics/krop/default.nix
@@ -28,7 +28,7 @@ python3Packages.buildPythonApplication rec {
   doCheck = false;
 
   meta = {
-    homepage = http://arminstraub.com/software/krop;
+    homepage = "http://arminstraub.com/software/krop";
     description = "Graphical tool to crop the pages of PDF files";
     longDescription = ''
     Krop is a tool that allows you to optimise your PDF files, and remove
diff --git a/pkgs/applications/graphics/leocad/default.nix b/pkgs/applications/graphics/leocad/default.nix
index 201a4fe113e3..5e950eeac04b 100644
--- a/pkgs/applications/graphics/leocad/default.nix
+++ b/pkgs/applications/graphics/leocad/default.nix
@@ -24,7 +24,7 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "CAD program for creating virtual LEGO models";
-    homepage = https://www.leocad.org/;
+    homepage = "https://www.leocad.org/";
     license = licenses.gpl2;
     platforms = platforms.linux;
   };
diff --git a/pkgs/applications/graphics/luminance-hdr/default.nix b/pkgs/applications/graphics/luminance-hdr/default.nix
index 94899c937a86..811a907746d5 100644
--- a/pkgs/applications/graphics/luminance-hdr/default.nix
+++ b/pkgs/applications/graphics/luminance-hdr/default.nix
@@ -1,9 +1,10 @@
-{ stdenv, cmake, fetchFromGitHub, pkgconfig, boost, exiv2, fftwFloat, gsl
+{ stdenv, mkDerivation, cmake, fetchFromGitHub, pkgconfig
+, boost, exiv2, fftwFloat, gsl
 , ilmbase, lcms2, libraw, libtiff, openexr
 , qtbase, qtdeclarative, qttools, qtwebengine, eigen
 }:
 
-stdenv.mkDerivation rec {
+mkDerivation rec {
   pname = "luminance-hdr";
   version = "2.6.0";
 
@@ -24,7 +25,7 @@ stdenv.mkDerivation rec {
   nativeBuildInputs = [ cmake pkgconfig ];
 
   meta = with stdenv.lib; {
-    homepage = http://qtpfsgui.sourceforge.net/;
+    homepage = "http://qtpfsgui.sourceforge.net/";
     description = "A complete open source solution for HDR photography";
     license = licenses.gpl2;
     platforms = platforms.linux;
diff --git a/pkgs/applications/graphics/mandelbulber/default.nix b/pkgs/applications/graphics/mandelbulber/default.nix
index 0a3368ec2abe..53d1c5c3f732 100644
--- a/pkgs/applications/graphics/mandelbulber/default.nix
+++ b/pkgs/applications/graphics/mandelbulber/default.nix
@@ -19,13 +19,13 @@ assert withOpenCL -> ocl-icd != null;
 
 mkDerivation rec {
   pname = "mandelbulber";
-  version = "2.20";
+  version = "2.21";
 
   src = fetchFromGitHub {
     owner = "buddhi1980";
     repo = "mandelbulber2";
     rev = version;
-    sha256 = "043dks9fimhradyhdzqdc6lb9z0x9lkj3szj10751g424lppp207";
+    sha256 = "1bmk71vbxc1n8cnizlmzfqlvgxjb95cydbzxlvq1s5givxr2jwli";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/applications/graphics/meh/default.nix b/pkgs/applications/graphics/meh/default.nix
index 7ad8c388a203..0b2e5bc37774 100644
--- a/pkgs/applications/graphics/meh/default.nix
+++ b/pkgs/applications/graphics/meh/default.nix
@@ -20,7 +20,7 @@ stdenv.mkDerivation {
 
   meta = {
     description = "A minimal image viewer using raw XLib";
-    homepage = https://www.johnhawthorn.com/meh/;
+    homepage = "https://www.johnhawthorn.com/meh/";
     license = stdenv.lib.licenses.mit;
     platforms = stdenv.lib.platforms.linux;
   };
diff --git a/pkgs/applications/graphics/meshlab/default.nix b/pkgs/applications/graphics/meshlab/default.nix
index 9733f1e2efa0..6ac937dcb931 100644
--- a/pkgs/applications/graphics/meshlab/default.nix
+++ b/pkgs/applications/graphics/meshlab/default.nix
@@ -126,7 +126,7 @@ in mkDerivation {
 
   meta = {
     description = "A system for processing and editing 3D triangular meshes.";
-    homepage = http://www.meshlab.net/;
+    homepage = "http://www.meshlab.net/";
     license = lib.licenses.gpl3;
     maintainers = with lib.maintainers; [viric];
     platforms = with lib.platforms; linux;
diff --git a/pkgs/applications/graphics/minidjvu/default.nix b/pkgs/applications/graphics/minidjvu/default.nix
index d629c776194d..2af79659cedb 100644
--- a/pkgs/applications/graphics/minidjvu/default.nix
+++ b/pkgs/applications/graphics/minidjvu/default.nix
@@ -3,7 +3,7 @@
 stdenv.mkDerivation {
   name = "minidjvu-0.8";
   src = fetchurl {
-    url = mirror://sourceforge/minidjvu/minidjvu-0.8.tar.gz;
+    url = "mirror://sourceforge/minidjvu/minidjvu-0.8.tar.gz";
     sha256 = "0jmpvy4g68k6xgplj9zsl6brg6vi81mx3nx2x9hfbr1f4zh95j79";
   };
 
@@ -18,7 +18,7 @@ stdenv.mkDerivation {
   '';
 
   meta = {
-    homepage = http://djvu.sourceforge.net/djview4.html;
+    homepage = "http://djvu.sourceforge.net/djview4.html";
     description = "Black-and-white djvu page encoder and decoder that use interpage information";
     license = stdenv.lib.licenses.gpl2Plus;
     maintainers = [ stdenv.lib.maintainers.viric ];
diff --git a/pkgs/applications/graphics/mozjpeg/default.nix b/pkgs/applications/graphics/mozjpeg/default.nix
index 63cc4a3a8d35..e17664a018ab 100644
--- a/pkgs/applications/graphics/mozjpeg/default.nix
+++ b/pkgs/applications/graphics/mozjpeg/default.nix
@@ -22,7 +22,7 @@ stdenv.mkDerivation rec {
 
       The idea is to reduce transfer times for JPEGs on the Web, thus reducing page load times.
     '';
-    homepage = https://github.com/mozilla/mozjpeg ;
+    homepage = "https://github.com/mozilla/mozjpeg";
     license = stdenv.lib.licenses.bsd3;
     maintainers = [ stdenv.lib.maintainers.aristid ];
     platforms = stdenv.lib.platforms.all;
diff --git a/pkgs/applications/graphics/mtpaint/default.nix b/pkgs/applications/graphics/mtpaint/default.nix
index 7274bdacd9d0..91278c9881fe 100644
--- a/pkgs/applications/graphics/mtpaint/default.nix
+++ b/pkgs/applications/graphics/mtpaint/default.nix
@@ -32,7 +32,7 @@ stdenv.mkDerivation rec {
       Due to its simplicity and lack of dependencies it runs well on
       GNU/Linux, Windows and older PC hardware.
     '';
-    homepage = http://mtpaint.sourceforge.net/;
+    homepage = "http://mtpaint.sourceforge.net/";
     license = stdenv.lib.licenses.gpl3;
     platforms = stdenv.lib.platforms.linux;
     maintainers = [ stdenv.lib.maintainers.vklquevs ];
diff --git a/pkgs/applications/graphics/nomacs/default.nix b/pkgs/applications/graphics/nomacs/default.nix
index 48a79e8844e8..f0d9329bc5a9 100644
--- a/pkgs/applications/graphics/nomacs/default.nix
+++ b/pkgs/applications/graphics/nomacs/default.nix
@@ -63,11 +63,11 @@ mkDerivation rec {
                 "-DUSE_SYSTEM_QUAZIP=ON"];
 
   meta = with stdenv.lib; {
-    homepage = https://nomacs.org;
+    homepage = "https://nomacs.org";
     description = "Qt-based image viewer";
     maintainers = [maintainers.ahmedtd];
     license = licenses.gpl3Plus;
-    repositories.git = https://github.com/nomacs/nomacs.git;
+    repositories.git = "https://github.com/nomacs/nomacs.git";
     inherit (qtbase.meta) platforms;
   };
 }
diff --git a/pkgs/applications/graphics/openimageio/2.x.nix b/pkgs/applications/graphics/openimageio/2.x.nix
index 9c4a8b229391..89d49a151457 100644
--- a/pkgs/applications/graphics/openimageio/2.x.nix
+++ b/pkgs/applications/graphics/openimageio/2.x.nix
@@ -57,7 +57,7 @@ stdenv.mkDerivation rec {
   ];
 
   meta = with stdenv.lib; {
-    homepage = http://www.openimageio.org;
+    homepage = "http://www.openimageio.org";
     description = "A library and tools for reading and writing images";
     license = licenses.bsd3;
     maintainers = with maintainers; [ goibhniu jtojnar ];
diff --git a/pkgs/applications/graphics/openimageio/default.nix b/pkgs/applications/graphics/openimageio/default.nix
index 23cad7e859df..1f2861e7109c 100644
--- a/pkgs/applications/graphics/openimageio/default.nix
+++ b/pkgs/applications/graphics/openimageio/default.nix
@@ -34,7 +34,7 @@ stdenv.mkDerivation rec {
   ];
 
   meta = with stdenv.lib; {
-    homepage = http://www.openimageio.org;
+    homepage = "http://www.openimageio.org";
     description = "A library and tools for reading and writing images";
     license = licenses.bsd3;
     maintainers = [ maintainers.goibhniu ];
diff --git a/pkgs/applications/graphics/openscad/default.nix b/pkgs/applications/graphics/openscad/default.nix
index 2c95f6d403f2..95af658ddd36 100644
--- a/pkgs/applications/graphics/openscad/default.nix
+++ b/pkgs/applications/graphics/openscad/default.nix
@@ -77,7 +77,7 @@ mkDerivation rec {
       machine parts but pretty sure is not what you are looking for when you are more
       interested in creating computer-animated movies.
     '';
-    homepage = http://openscad.org/;
+    homepage = "http://openscad.org/";
     license = stdenv.lib.licenses.gpl2;
     platforms = stdenv.lib.platforms.unix;
     maintainers = with stdenv.lib.maintainers;
diff --git a/pkgs/applications/graphics/panotools/default.nix b/pkgs/applications/graphics/panotools/default.nix
index 719aca5096a5..c03bdd8331be 100644
--- a/pkgs/applications/graphics/panotools/default.nix
+++ b/pkgs/applications/graphics/panotools/default.nix
@@ -14,7 +14,7 @@ stdenv.mkDerivation rec {
   #doCheck = true;
 
   meta = {
-    homepage = http://panotools.sourceforge.net/;
+    homepage = "http://panotools.sourceforge.net/";
     description = "Free software suite for authoring and displaying virtual reality panoramas";
     license = stdenv.lib.licenses.gpl2Plus;
 
diff --git a/pkgs/applications/graphics/paraview/default.nix b/pkgs/applications/graphics/paraview/default.nix
index ac01c28ebd4b..15d70d143081 100644
--- a/pkgs/applications/graphics/paraview/default.nix
+++ b/pkgs/applications/graphics/paraview/default.nix
@@ -59,7 +59,7 @@ mkDerivation rec {
   '';
 
   meta = with stdenv.lib; {
-    homepage = http://www.paraview.org/;
+    homepage = "http://www.paraview.org/";
     description = "3D Data analysis and visualization application";
     license = licenses.free;
     maintainers = with maintainers; [ guibert ];
diff --git a/pkgs/applications/graphics/pbrt/default.nix b/pkgs/applications/graphics/pbrt/default.nix
index 78f6d8bcbaff..fa3034cb3b07 100644
--- a/pkgs/applications/graphics/pbrt/default.nix
+++ b/pkgs/applications/graphics/pbrt/default.nix
@@ -21,7 +21,7 @@ stdenv.mkDerivation {
   buildInputs = [ git flex bison cmake zlib ];
 
   meta = with stdenv.lib; {
-    homepage = http://pbrt.org;
+    homepage = "http://pbrt.org";
     description = "The renderer described in the third edition of the book 'Physically Based Rendering: From Theory To Implementation'";
     platforms = platforms.linux ;
     license = licenses.bsd2;
diff --git a/pkgs/applications/graphics/pdfcpu/default.nix b/pkgs/applications/graphics/pdfcpu/default.nix
index f31506ce7339..b127be821c13 100644
--- a/pkgs/applications/graphics/pdfcpu/default.nix
+++ b/pkgs/applications/graphics/pdfcpu/default.nix
@@ -17,7 +17,7 @@ buildGoModule rec {
 
   meta = with stdenv.lib; {
     description = "A PDF processor written in Go";
-    homepage = https://pdfcpu.io;
+    homepage = "https://pdfcpu.io";
     license = licenses.asl20;
     maintainers = with maintainers; [ doronbehar ];
     platforms = platforms.all;
diff --git a/pkgs/applications/graphics/photoflow/default.nix b/pkgs/applications/graphics/photoflow/default.nix
index 78d16e692261..9fec8b99c1bd 100644
--- a/pkgs/applications/graphics/photoflow/default.nix
+++ b/pkgs/applications/graphics/photoflow/default.nix
@@ -47,7 +47,7 @@ stdenv.mkDerivation {
 
   meta = with stdenv.lib; {
     description = "A fully non-destructive photo retouching program providing a complete RAW image editing workflow";
-    homepage = https://aferrero2707.github.io/PhotoFlow/;
+    homepage = "https://aferrero2707.github.io/PhotoFlow/";
     license = licenses.gpl3Plus;
     maintainers = [ maintainers.MtP ];
     platforms = platforms.linux;
diff --git a/pkgs/applications/graphics/photoqt/default.nix b/pkgs/applications/graphics/photoqt/default.nix
index 14c49d30004c..71c63bc82aa2 100644
--- a/pkgs/applications/graphics/photoqt/default.nix
+++ b/pkgs/applications/graphics/photoqt/default.nix
@@ -40,7 +40,7 @@ mkDerivation rec {
   enableParallelBuilding = true;
 
   meta = {
-    homepage = https://photoqt.org/;
+    homepage = "https://photoqt.org/";
     description = "Simple, yet powerful and good looking image viewer";
     license = stdenv.lib.licenses.gpl2Plus;
     platforms = stdenv.lib.platforms.unix;
diff --git a/pkgs/applications/graphics/phototonic/default.nix b/pkgs/applications/graphics/phototonic/default.nix
index 5e7fb5cf7a0a..7020bf6c83e6 100644
--- a/pkgs/applications/graphics/phototonic/default.nix
+++ b/pkgs/applications/graphics/phototonic/default.nix
@@ -1,6 +1,6 @@
-{ stdenv, fetchFromGitHub, qtbase, qmake, exiv2 }:
+{ mkDerivation, stdenv, fetchFromGitHub, qtbase, qmake, exiv2 }:
 
-stdenv.mkDerivation rec {
+mkDerivation rec {
   pname = "phototonic";
   version = "2.1";
 
@@ -20,7 +20,7 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "An image viewer and organizer";
-    homepage = https://sourceforge.net/projects/phototonic/;
+    homepage = "https://sourceforge.net/projects/phototonic/";
     license = licenses.gpl3;
     platforms = platforms.linux;
     maintainers = with maintainers; [ pSub ];
diff --git a/pkgs/applications/graphics/pinta/default.nix b/pkgs/applications/graphics/pinta/default.nix
index 140903766848..af51c78a1698 100644
--- a/pkgs/applications/graphics/pinta/default.nix
+++ b/pkgs/applications/graphics/pinta/default.nix
@@ -74,7 +74,7 @@ buildDotnetPackage rec {
   '';
 
   meta = {
-    homepage = http://www.pinta-project.com/;
+    homepage = "http://www.pinta-project.com/";
     description = "Drawing/editing program modeled after Paint.NET";
     license = stdenv.lib.licenses.mit;
     maintainers = with stdenv.lib.maintainers; [ ];
diff --git a/pkgs/applications/graphics/potrace/default.nix b/pkgs/applications/graphics/potrace/default.nix
index 35ab27bcbf63..dd8e84349fad 100644
--- a/pkgs/applications/graphics/potrace/default.nix
+++ b/pkgs/applications/graphics/potrace/default.nix
@@ -17,7 +17,7 @@ stdenv.mkDerivation rec {
   doCheck = true;
 
   meta = with stdenv.lib; {
-    homepage = http://potrace.sourceforge.net/;
+    homepage = "http://potrace.sourceforge.net/";
     description = "A tool for tracing a bitmap, which means, transforming a bitmap into a smooth, scalable image";
     platforms = platforms.unix;
     maintainers = [ maintainers.pSub ];
diff --git a/pkgs/applications/graphics/pqiv/default.nix b/pkgs/applications/graphics/pqiv/default.nix
index 7639a2a9c761..505f28a24510 100644
--- a/pkgs/applications/graphics/pqiv/default.nix
+++ b/pkgs/applications/graphics/pqiv/default.nix
@@ -20,7 +20,7 @@ stdenv.mkDerivation (rec {
 
   meta = with stdenv.lib; {
     description = "Powerful image viewer with minimal UI";
-    homepage = http://www.pberndt.com/Programme/Linux/pqiv;
+    homepage = "http://www.pberndt.com/Programme/Linux/pqiv";
     license = licenses.gpl3;
     maintainers = [];
     platforms = platforms.linux;
diff --git a/pkgs/applications/graphics/processing/default.nix b/pkgs/applications/graphics/processing/default.nix
index 9972ea757098..cad6a35ce3f6 100644
--- a/pkgs/applications/graphics/processing/default.nix
+++ b/pkgs/applications/graphics/processing/default.nix
@@ -22,7 +22,7 @@ stdenv.mkDerivation rec {
     # do not download a file during build
     ${xmlstarlet}/bin/xmlstarlet ed --inplace -P -d '//get[@src="http://download.processing.org/reference.zip"]' build/build.xml
     install -D -m0444 ${fetchurl {
-                          url    = http://download.processing.org/reference.zip;
+                          url    = "http://download.processing.org/reference.zip";
                           sha256 = "198bpk8mzns6w5h0zdf50wr6iv7sgdi6v7jznj5rbsnpgyilxz35";
                         }
                        } ./java/reference.zip
@@ -56,7 +56,7 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "A language and IDE for electronic arts";
-    homepage = https://processing.org;
+    homepage = "https://processing.org";
     license = licenses.gpl2Plus;
     platforms = platforms.linux;
   };
diff --git a/pkgs/applications/graphics/qcomicbook/default.nix b/pkgs/applications/graphics/qcomicbook/default.nix
index 4d416a7c106d..f9dc494b4b35 100644
--- a/pkgs/applications/graphics/qcomicbook/default.nix
+++ b/pkgs/applications/graphics/qcomicbook/default.nix
@@ -1,6 +1,6 @@
-{ stdenv, fetchFromGitHub, pkgconfig, cmake, qtbase, qttools, qtx11extras, poppler }:
+{ mkDerivation, stdenv, fetchFromGitHub, pkgconfig, cmake, qtbase, qttools, qtx11extras, poppler }:
 
-stdenv.mkDerivation rec {
+mkDerivation rec {
   pname = "qcomicbook";
   version = "0.9.1";
 
@@ -25,7 +25,7 @@ stdenv.mkDerivation rec {
   '';
 
   meta = with stdenv.lib; {
-    homepage = https://github.com/stolowski/QComicBook;
+    homepage = "https://github.com/stolowski/QComicBook";
     description = "Comic book reader in Qt5";
     license = licenses.gpl2;
 
diff --git a/pkgs/applications/graphics/qimgv/default.nix b/pkgs/applications/graphics/qimgv/default.nix
index 6402868b9221..4bbf6aa31d3d 100644
--- a/pkgs/applications/graphics/qimgv/default.nix
+++ b/pkgs/applications/graphics/qimgv/default.nix
@@ -1,46 +1,67 @@
-{ mkDerivation, fetchFromGitHub, lib
-, pkgconfig, cmake
-, exiv2, qtbase, qtimageformats, qtsvg
+{ mkDerivation
+, lib
+, fetchFromGitHub
+, fetchpatch
+
+, cmake
+, pkgconfig
+
+, exiv2
+, mpv
+, opencv4
+, qtbase
+, qtimageformats
+, qtsvg
 }:
 
 mkDerivation rec {
   pname = "qimgv";
-  version = "0.8.9";
+  version = "0.9";
 
   src = fetchFromGitHub {
     owner = "easymodo";
     repo = pname;
     rev = "v${version}";
-    sha256 = "0cmya06j466v0pirhxbzbj1vbz0346y7rbc1gbv4n9xcp6c6bln6";
+    sha256 = "1yynjk47gjf2kjfb0ak4blxpb5irgqc1k59z726lwjd6gvg689fl";
   };
 
-  cmakeFlags = [
-    # Video support appears to be broken; the following gets printed upon
-    # attempting to view an mp4, webm, or mkv (and probably all video formats):
-    #
-    #   [VideoPlayerInitProxy] Error - could not load player library
-    #   "qimgv_player_mpv"
-    #
-    # GIFs are unaffected. If this ever gets addressed, all that is necessary is
-    # to add `mpv` to the arguments list and to `buildInputs`, and to remove
-    # `cmakeFlags`.
-    "-DVIDEO_SUPPORT=OFF"
+  patches = [
+    # QtAtomicInt's `storeRelaxed` was introduced in Qt 5.14, while nixpkgs only
+    # has Qt 5.12. This appears to be the only instance of Qt 5.12
+    # incompatibility, and will be fixed in the next release.
+    (fetchpatch {
+      url = "https://github.com/easymodo/qimgv/commit/a39d6086ceb9445d2c16943e0719096a99920bf8.patch";
+      sha256 = "1z3ngv6i316hrdcdzig4jg6bcdbgfxjaxvm2jcfcw2dnfbfiq47s";
+    })
   ];
 
   nativeBuildInputs = [
-    pkgconfig
     cmake
+    pkgconfig
   ];
 
   buildInputs = [
     exiv2
+    mpv
+    opencv4
     qtbase
     qtimageformats
     qtsvg
   ];
 
+  postPatch = ''
+    sed -i "s@/usr/bin/mpv@${mpv}/bin/mpv@" \
+      qimgv/settings.cpp
+  '';
+
+  # Wrap the library path so it can see `libqimgv_player_mpv.so`, which is used
+  # to play video files within qimgv itself.
+  qtWrapperArgs = [
+    "--prefix LD_LIBRARY_PATH : ${placeholder "out"}/lib"
+  ];
+
   meta = with lib; {
-    description = "Qt5 image viewer with optional video support";
+    description = "A Qt5 image viewer with optional video support";
     homepage = "https://github.com/easymodo/qimgv";
     license = licenses.gpl3;
     platforms = platforms.linux;
diff --git a/pkgs/applications/graphics/qimgv/qt5-12-compat.diff b/pkgs/applications/graphics/qimgv/qt5-12-compat.diff
new file mode 100644
index 000000000000..da64759e22d6
--- /dev/null
+++ b/pkgs/applications/graphics/qimgv/qt5-12-compat.diff
@@ -0,0 +1,13 @@
+diff --git a/qimgv/components/directorymanager/watchers/linux/linuxworker.cpp b/qimgv/components/directorymanager/watchers/linux/linuxworker.cpp
+index 96ec9d3..6d95d08 100644
+--- a/qimgv/components/directorymanager/watchers/linux/linuxworker.cpp
++++ b/qimgv/components/directorymanager/watchers/linux/linuxworker.cpp
+@@ -21,7 +21,7 @@ void LinuxWorker::setDescriptor(int desc) {
+ 
+ void LinuxWorker::run() {
+     emit started();
+-    isRunning.storeRelaxed(true);
++    isRunning.store(true);
+ 
+     if (fd == -1) {
+         qDebug() << TAG << "File descriptor isn't set! Stopping";
diff --git a/pkgs/applications/graphics/qiv/default.nix b/pkgs/applications/graphics/qiv/default.nix
index 750217d99188..d3dd917d7b7d 100644
--- a/pkgs/applications/graphics/qiv/default.nix
+++ b/pkgs/applications/graphics/qiv/default.nix
@@ -20,7 +20,7 @@ stdenv.mkDerivation (rec {
 
   meta = with stdenv.lib; {
     description = "Quick image viewer";
-    homepage = http://spiegl.de/qiv/;
+    homepage = "http://spiegl.de/qiv/";
     inherit version;
     license = licenses.gpl2;
     platforms = platforms.linux;
diff --git a/pkgs/applications/graphics/qscreenshot/default.nix b/pkgs/applications/graphics/qscreenshot/default.nix
index fafc76a76ffe..1653ea927206 100644
--- a/pkgs/applications/graphics/qscreenshot/default.nix
+++ b/pkgs/applications/graphics/qscreenshot/default.nix
@@ -19,7 +19,7 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "Simple creation and editing of screenshots";
-    homepage = https://sourceforge.net/projects/qscreenshot/;
+    homepage = "https://sourceforge.net/projects/qscreenshot/";
     license = licenses.gpl2;
     platforms = platforms.all;
     maintainers = [ maintainers.bjornfor ];
diff --git a/pkgs/applications/graphics/rapid-photo-downloader/default.nix b/pkgs/applications/graphics/rapid-photo-downloader/default.nix
index afdd2262e504..aa6db0accdba 100644
--- a/pkgs/applications/graphics/rapid-photo-downloader/default.nix
+++ b/pkgs/applications/graphics/rapid-photo-downloader/default.nix
@@ -80,7 +80,7 @@ mkDerivationWith python3Packages.buildPythonApplication rec {
 
   meta = with stdenv.lib; {
     description = "Photo and video importer for cameras, phones, and memory cards";
-    homepage = https://www.damonlynch.net/rapid/;
+    homepage = "https://www.damonlynch.net/rapid/";
     license = licenses.gpl3;
     platforms = platforms.linux;
     maintainers = with maintainers; [ jfrankenau ];
diff --git a/pkgs/applications/graphics/rawtherapee/default.nix b/pkgs/applications/graphics/rawtherapee/default.nix
index bda164465245..812c26f56e59 100644
--- a/pkgs/applications/graphics/rawtherapee/default.nix
+++ b/pkgs/applications/graphics/rawtherapee/default.nix
@@ -4,14 +4,14 @@
 }:
 
 stdenv.mkDerivation rec {
-  version = "5.7";
+  version = "5.8";
   pname = "rawtherapee";
 
   src = fetchFromGitHub {
     owner = "Beep6581";
     repo = "RawTherapee";
     rev = version;
-    sha256 = "0j3887a3683fqpvp66kaw6x81ai3gf5nvrbmb4cc8rb0lgj2xv2g";
+    sha256 = "0d644s4grfia6f3k6y0byd5pwajr12kai2kc280yxi8v3w1b12ik";
   };
 
   nativeBuildInputs = [ cmake pkgconfig wrapGAppsHook ];
@@ -36,7 +36,7 @@ stdenv.mkDerivation rec {
 
   meta = {
     description = "RAW converter and digital photo processing software";
-    homepage = http://www.rawtherapee.com/;
+    homepage = "http://www.rawtherapee.com/";
     license = stdenv.lib.licenses.gpl3Plus;
     maintainers = with stdenv.lib.maintainers; [ jcumming mahe the-kenny ];
     platforms = with stdenv.lib.platforms; linux;
diff --git a/pkgs/applications/graphics/renderdoc/default.nix b/pkgs/applications/graphics/renderdoc/default.nix
index 843801011f77..bf0b92b6f6d4 100644
--- a/pkgs/applications/graphics/renderdoc/default.nix
+++ b/pkgs/applications/graphics/renderdoc/default.nix
@@ -1,6 +1,6 @@
 { stdenv, fetchFromGitHub, cmake, pkgconfig, mkDerivation
 , qtbase, qtx11extras, qtsvg, makeWrapper
-, vulkan-loader, xorg, python3, python3Packages
+, vulkan-loader, libglvnd, xorg, python3, python3Packages
 , bison, pcre, automake, autoconf, addOpenGLRunpath
 }:
 let
@@ -13,14 +13,14 @@ let
   pythonPackages = python3Packages;
 in
 mkDerivation rec {
-  version = "1.6";
+  version = "1.7";
   pname = "renderdoc";
 
   src = fetchFromGitHub {
     owner = "baldurk";
     repo = "renderdoc";
     rev = "v${version}";
-    sha256 = "0b2f9m5azzvcjbmxkwcl1d7jvvp720b81zwn19rrskznfcc2r1i8";
+    sha256 = "0r0y0lx48hkyf39pgippsc9q8hdcf57bdva6gx7f35vlhicx5hlz";
   };
 
   buildInputs = [
@@ -52,8 +52,8 @@ mkDerivation rec {
 
   dontWrapQtApps = true;
   preFixup = ''
-    wrapQtApp $out/bin/qrenderdoc --suffix LD_LIBRARY_PATH : "$out/lib:${vulkan-loader}/lib"
-    wrapProgram $out/bin/renderdoccmd --suffix LD_LIBRARY_PATH : "$out/lib:${vulkan-loader}/lib"
+    wrapQtApp $out/bin/qrenderdoc --suffix LD_LIBRARY_PATH : "$out/lib:${vulkan-loader}/lib:${libglvnd}/lib"
+    wrapProgram $out/bin/renderdoccmd --suffix LD_LIBRARY_PATH : "$out/lib:${vulkan-loader}/lib:${libglvnd}/lib"
   '';
 
   # The only documentation for this so far is in pkgs/build-support/add-opengl-runpath/setup-hook.sh
@@ -65,7 +65,7 @@ mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "A single-frame graphics debugger";
-    homepage = https://renderdoc.org/;
+    homepage = "https://renderdoc.org/";
     license = licenses.mit;
     longDescription = ''
       RenderDoc is a free MIT licensed stand-alone graphics debugger that
diff --git a/pkgs/applications/graphics/runwayml/default.nix b/pkgs/applications/graphics/runwayml/default.nix
index c3f747837e01..eb8ecc34b8f3 100644
--- a/pkgs/applications/graphics/runwayml/default.nix
+++ b/pkgs/applications/graphics/runwayml/default.nix
@@ -37,7 +37,7 @@ in
 
   meta = with lib; {
     description = "Machine learning for creators";
-    homepage = https://runwayml.com/;
+    homepage = "https://runwayml.com/";
     license = licenses.unfree;
     maintainers = with maintainers; [ prusnak ];
     platforms = [ "x86_64-linux" ];
diff --git a/pkgs/applications/graphics/rx/default.nix b/pkgs/applications/graphics/rx/default.nix
index b4338d8f3cda..53e8109fef51 100644
--- a/pkgs/applications/graphics/rx/default.nix
+++ b/pkgs/applications/graphics/rx/default.nix
@@ -1,5 +1,5 @@
 { stdenv, rustPlatform, fetchFromGitHub, makeWrapper
-, cmake, pkgconfig
+, cmake, pkg-config
 , xorg ? null
 , libGL ? null }:
 
@@ -7,18 +7,18 @@ with stdenv.lib;
 
 rustPlatform.buildRustPackage rec {
   pname = "rx";
-  version = "0.3.2";
+  version = "0.4.0";
 
   src = fetchFromGitHub {
     owner = "cloudhead";
     repo = pname;
     rev = "v${version}";
-    sha256 = "1n5s7v2z13550gkqz7w6dw62jdy60wdi8w1lfa23609b4yhg4w94";
+    sha256 = "1pln65pqy39ijrld11d06klwzfhhzmrgdaxijpx9q7w9z66zmqb8";
   };
 
-  cargoSha256 = "077cs9bf7f3h5aschcv7pbbnpaq1rg79j7f6pnyrzkmn7gxzicg3";
+  cargoSha256 = "143a5x61s7ywk0ljqd10jkfvs6lrhlibkm2a9lw41wq13mgzb78j";
 
-  nativeBuildInputs = [ cmake pkgconfig makeWrapper ];
+  nativeBuildInputs = [ cmake pkg-config makeWrapper ];
 
   buildInputs = optionals stdenv.isLinux
   (with xorg; [
@@ -37,7 +37,7 @@ rustPlatform.buildRustPackage rec {
 
   meta = {
     description = "Modern and extensible pixel editor implemented in Rust";
-    homepage = "https://cloudhead.io/rx/";
+    homepage = "https://rx.cloudhead.io/";
     license = licenses.gpl3;
     maintainers = with maintainers; [ minijackson filalex77 ];
     platforms = [ "x86_64-linux" ];
diff --git a/pkgs/applications/graphics/sane/backends/airscan/default.nix b/pkgs/applications/graphics/sane/backends/airscan/default.nix
new file mode 100644
index 000000000000..11529eee2107
--- /dev/null
+++ b/pkgs/applications/graphics/sane/backends/airscan/default.nix
@@ -0,0 +1,27 @@
+{ lib, stdenv, fetchFromGitHub, pkg-config, avahi, libsoup, libjpeg
+, sane-backends, meson, ninja }:
+stdenv.mkDerivation rec {
+  pname = "sane-airscan";
+  version = "0.9.17";
+
+  nativeBuildInputs = [ meson ninja pkg-config ];
+  buildInputs = [ avahi libsoup libjpeg sane-backends ];
+
+  src = fetchFromGitHub {
+    owner = "alexpevzner";
+    repo = pname;
+    rev = version;
+    sha256 = "03y0c1z5s3wbvxa9nvji62w42cmvcgm2sw72j7wm831995q3abmx";
+  };
+
+  meta = with lib; {
+    homepage = "https://github.com/alexpevzner/sane-airscan";
+    description = "Scanner Access Now Easy - Apple AirScan (eSCL) driver";
+    longDescription = ''
+      sane-airscan: Linux support of Apple AirScan (eSCL) compatible document scanners.
+    '';
+    license = licenses.gpl2Plus;
+    platforms = platforms.linux;
+    maintainers = with maintainers; [ zaninime ];
+  };
+}
diff --git a/pkgs/applications/graphics/sane/backends/brscan4/default.nix b/pkgs/applications/graphics/sane/backends/brscan4/default.nix
index b431cf51b019..2ada41ac98a1 100644
--- a/pkgs/applications/graphics/sane/backends/brscan4/default.nix
+++ b/pkgs/applications/graphics/sane/backends/brscan4/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchurl, callPackage, patchelf, makeWrapper, coreutils, libusb }:
+{ stdenv, fetchurl, callPackage, patchelf, makeWrapper, coreutils, libusb-compat-0_1 }:
 
 let
   myPatchElf = file: with stdenv.lib; ''
@@ -10,17 +10,17 @@ let
   udevRules = callPackage ./udev_rules_type1.nix {};
 
 in stdenv.mkDerivation rec {
-  name = "brscan4-0.4.4-4";
+  name = "brscan4-0.4.8-1";
   src = 
     if stdenv.hostPlatform.system == "i686-linux" then
       fetchurl {
         url = "http://download.brother.com/welcome/dlf006646/${name}.i386.deb";
-        sha256 = "13mhjbzf9nvpdzrc2s98684r7likg76zxs1wlz2h8w59fsqgx4k2";
+        sha256 = "15hrf1gpm36lniqi6yf47dvdqjinm644xb752c6rcv8n06wb79ag";
       }
     else if stdenv.hostPlatform.system == "x86_64-linux" then
       fetchurl {
         url = "https://download.brother.com/welcome/dlf006645/${name}.amd64.deb";
-        sha256 = "0xy5px96y1saq9l80vwvfn6anr2q42qlxdhm6ci2a0diwib5q9fd";
+        sha256 = "0pyprjl0capg403yp6pp07gd6msx9kn7bzjcdswdbn28fyxrk5l4";
       }
     else throw "${name} is not supported on ${stdenv.hostPlatform.system} (only i686-linux and x86_64 linux are supported)";
 
@@ -30,13 +30,13 @@ in stdenv.mkDerivation rec {
   '';
 
   nativeBuildInputs = [ makeWrapper patchelf coreutils udevRules ];
-  buildInputs = [ libusb ];
+  buildInputs = [ libusb-compat-0_1 ];
   dontBuild = true;
 
   patchPhase = ''
     ${myPatchElf "opt/brother/scanner/brscan4/brsaneconfig4"}
 
-    RPATH=${libusb.out}/lib
+    RPATH=${libusb-compat-0_1.out}/lib
     for a in usr/lib64/sane/*.so*; do
       if ! test -L $a; then
         patchelf --set-rpath $RPATH $a
@@ -86,7 +86,7 @@ in stdenv.mkDerivation rec {
 
   meta = {
     description = "Brother brscan4 sane backend driver";
-    homepage = http://www.brother.com;
+    homepage = "http://www.brother.com";
     platforms = stdenv.lib.platforms.linux;
     license = stdenv.lib.licenses.unfree;
     maintainers = with stdenv.lib.maintainers; [ jraygauthier ];
diff --git a/pkgs/applications/graphics/sane/backends/brscan4/udev_rules_type1.nix b/pkgs/applications/graphics/sane/backends/brscan4/udev_rules_type1.nix
index da136a7f9e1e..682e401c069b 100644
--- a/pkgs/applications/graphics/sane/backends/brscan4/udev_rules_type1.nix
+++ b/pkgs/applications/graphics/sane/backends/brscan4/udev_rules_type1.nix
@@ -47,7 +47,7 @@ stdenv.mkDerivation rec {
 
   meta = {
     description = "Brother type1 scanners udev rules";
-    homepage = http://www.brother.com;
+    homepage = "http://www.brother.com";
     platforms = stdenv.lib.platforms.linux;
     license = stdenv.lib.licenses.unfree;
     maintainers = with stdenv.lib.maintainers; [ jraygauthier ];
diff --git a/pkgs/applications/graphics/sane/backends/dsseries/default.nix b/pkgs/applications/graphics/sane/backends/dsseries/default.nix
index d4165be3784f..37ac02987061 100644
--- a/pkgs/applications/graphics/sane/backends/dsseries/default.nix
+++ b/pkgs/applications/graphics/sane/backends/dsseries/default.nix
@@ -45,7 +45,7 @@ stdenv.mkDerivation rec {
 
   meta = {
     description = "Brother DSSeries SANE backend driver";
-    homepage = http://www.brother.com;
+    homepage = "http://www.brother.com";
     platforms = stdenv.lib.platforms.linux;
     license = stdenv.lib.licenses.unfree;
     maintainers = with stdenv.lib.maintainers; [ callahad ];
diff --git a/pkgs/applications/graphics/sane/frontends.nix b/pkgs/applications/graphics/sane/frontends.nix
index b00f8f6c58d7..885dff311b8f 100644
--- a/pkgs/applications/graphics/sane/frontends.nix
+++ b/pkgs/applications/graphics/sane/frontends.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchurl, sane-backends, libX11, gtk2, pkgconfig, libusb ? null }:
+{ stdenv, fetchurl, sane-backends, libX11, gtk2, pkgconfig, libusb-compat-0_1 ? null }:
 
 stdenv.mkDerivation rec {
   pname = "sane-frontends";
@@ -14,14 +14,14 @@ stdenv.mkDerivation rec {
   '';
 
   buildInputs = [ sane-backends libX11 gtk2 ]
-    ++ stdenv.lib.optional (libusb != null) libusb;
+    ++ stdenv.lib.optional (libusb-compat-0_1 != null) libusb-compat-0_1;
   nativeBuildInputs = [ pkgconfig ];
 
   enableParallelBuilding = true;
 
   meta = with stdenv.lib; {
     description = "Scanner Access Now Easy";
-    homepage    = http://www.sane-project.org/;
+    homepage    = "http://www.sane-project.org/";
     license     = licenses.gpl2Plus;
     maintainers = with maintainers; [ peti ];
     platforms   = platforms.linux;
diff --git a/pkgs/applications/graphics/sane/xsane.nix b/pkgs/applications/graphics/sane/xsane.nix
index 09b431fdb116..04d19dee8a8e 100644
--- a/pkgs/applications/graphics/sane/xsane.nix
+++ b/pkgs/applications/graphics/sane/xsane.nix
@@ -1,5 +1,5 @@
 { stdenv, fetchurl, sane-backends, sane-frontends, libX11, gtk2, pkgconfig, libpng
-, libusb ? null
+, libusb-compat-0_1 ? null
 , gimpSupport ? false, gimp ? null
 }:
 
@@ -20,11 +20,11 @@ stdenv.mkDerivation rec {
 
   nativeBuildInputs = [ pkgconfig ];
   buildInputs = [libpng sane-backends sane-frontends libX11 gtk2 ]
-    ++ (if libusb != null then [libusb] else [])
+    ++ (if libusb-compat-0_1 != null then [libusb-compat-0_1] else [])
     ++ stdenv.lib.optional gimpSupport gimp;
 
   meta = {
-    homepage = http://www.sane-project.org/;
+    homepage = "http://www.sane-project.org/";
     description = "Graphical scanning frontend for sane";
     license = stdenv.lib.licenses.gpl2Plus;
     maintainers = with stdenv.lib.maintainers; [peti];
diff --git a/pkgs/applications/graphics/scantailor/advanced.nix b/pkgs/applications/graphics/scantailor/advanced.nix
index 63f16f688acd..e4598193469b 100644
--- a/pkgs/applications/graphics/scantailor/advanced.nix
+++ b/pkgs/applications/graphics/scantailor/advanced.nix
@@ -1,8 +1,8 @@
-{ stdenv, fetchFromGitHub
+{ stdenv, fetchFromGitHub, mkDerivation
 , cmake, libjpeg, libpng, libtiff, boost
 , qtbase, qttools }:
 
-stdenv.mkDerivation rec {
+mkDerivation rec {
   pname = "scantailor-advanced";
   version = "1.0.16";
 
@@ -17,7 +17,7 @@ stdenv.mkDerivation rec {
   buildInputs = [ libjpeg libpng libtiff boost qtbase ];
 
   meta = with stdenv.lib; {
-    homepage = https://github.com/4lex4/scantailor-advanced;
+    homepage = "https://github.com/4lex4/scantailor-advanced";
     description = "Interactive post-processing tool for scanned pages";
     license = licenses.gpl3Plus;
     maintainers = with maintainers; [ jfrankenau ];
diff --git a/pkgs/applications/graphics/scantailor/default.nix b/pkgs/applications/graphics/scantailor/default.nix
index 14efe48f30db..bc54f3aa627a 100644
--- a/pkgs/applications/graphics/scantailor/default.nix
+++ b/pkgs/applications/graphics/scantailor/default.nix
@@ -13,7 +13,7 @@ stdenv.mkDerivation {
   enableParallelBuilding = true;
 
   meta = {
-    homepage = http://scantailor.org/;
+    homepage = "http://scantailor.org/";
     description = "Interactive post-processing tool for scanned pages";
 
     license = stdenv.lib.licenses.gpl3Plus;
diff --git a/pkgs/applications/graphics/screencloud/default.nix b/pkgs/applications/graphics/screencloud/default.nix
index 88bbbd9d8646..11e37c4bf649 100644
--- a/pkgs/applications/graphics/screencloud/default.nix
+++ b/pkgs/applications/graphics/screencloud/default.nix
@@ -68,7 +68,7 @@ stdenv.mkDerivation rec {
   '';
 
   meta = {
-    homepage = https://screencloud.net/;
+    homepage = "https://screencloud.net/";
     description = "Client for Screencloud, an easy to use screenshot sharing tool";
     license = stdenv.lib.licenses.gpl2;
     maintainers = with stdenv.lib.maintainers; [ forkk ];
diff --git a/pkgs/applications/graphics/shotwell/default.nix b/pkgs/applications/graphics/shotwell/default.nix
index 79bc743fbf01..b03d0a01dd6f 100644
--- a/pkgs/applications/graphics/shotwell/default.nix
+++ b/pkgs/applications/graphics/shotwell/default.nix
@@ -39,11 +39,11 @@
 
 stdenv.mkDerivation rec {
   pname = "shotwell";
-  version = "0.31.0";
+  version = "0.31.1";
 
   src = fetchurl {
     url = "mirror://gnome/sources/${pname}/${stdenv.lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
-    sha256 = "1pwq953wl7h9cvw7rvlr6pcbq9w28kkr7ddb8x2si81ngp0imwyx";
+    sha256 = "0mbgrad4d4snffw2z3rkhwqq1bkxdgy52pblx99vjadvpgspb034";
   };
 
   nativeBuildInputs = [
@@ -100,7 +100,7 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "Popular photo organizer for the GNOME desktop";
-    homepage = https://wiki.gnome.org/Apps/Shotwell;
+    homepage = "https://wiki.gnome.org/Apps/Shotwell";
     license = licenses.lgpl21Plus;
     maintainers = with maintainers; [domenkozar];
     platforms = platforms.linux;
diff --git a/pkgs/applications/graphics/shutter/default.nix b/pkgs/applications/graphics/shutter/default.nix
index dd41ee4c3f84..cddc99eebe29 100644
--- a/pkgs/applications/graphics/shutter/default.nix
+++ b/pkgs/applications/graphics/shutter/default.nix
@@ -38,7 +38,7 @@ stdenv.mkDerivation {
 
   meta = with stdenv.lib; {
     description = "Screenshot and annotation tool";
-    homepage = https://shutter-project.org/;
+    homepage = "https://shutter-project.org/";
     license = licenses.gpl3Plus;
     platforms = platforms.all;
     maintainers = [ maintainers.bjornfor ];
diff --git a/pkgs/applications/graphics/smartdeblur/default.nix b/pkgs/applications/graphics/smartdeblur/default.nix
index 314b4007aad5..0df161cd4731 100644
--- a/pkgs/applications/graphics/smartdeblur/default.nix
+++ b/pkgs/applications/graphics/smartdeblur/default.nix
@@ -23,7 +23,7 @@ stdenv.mkDerivation rec {
   cmakeFlags = [ "-DUSE_SYSTEM_FFTW=ON" ];
 
   meta = {
-    homepage = https://github.com/Y-Vladimir/SmartDeblur;
+    homepage = "https://github.com/Y-Vladimir/SmartDeblur";
     description = "Tool for restoring blurry and defocused images";
     license = stdenv.lib.licenses.gpl3;
     maintainers = with stdenv.lib.maintainers; [ ];
diff --git a/pkgs/applications/graphics/solvespace/default.nix b/pkgs/applications/graphics/solvespace/default.nix
index 7046caad295e..bd084b4287dc 100644
--- a/pkgs/applications/graphics/solvespace/default.nix
+++ b/pkgs/applications/graphics/solvespace/default.nix
@@ -6,7 +6,7 @@ stdenv.mkDerivation rec {
   name = "solvespace-2.3-20190501";
   rev = "e7b75f19c34c923780db776592b47152650d8f22";
   src = fetchgit {
-    url = https://github.com/solvespace/solvespace;
+    url = "https://github.com/solvespace/solvespace";
     inherit rev;
     sha256 = "07k4mbzxf0dmzwdhjx5nc09y7rn1schkaypsw9kz0l7ppylprpp2";
     fetchSubmodules = true;
@@ -46,6 +46,6 @@ stdenv.mkDerivation rec {
     license = licenses.gpl3;
     maintainers = [ maintainers.edef ];
     platforms = platforms.linux;
-    homepage = http://solvespace.com;
+    homepage = "http://solvespace.com";
   };
 }
diff --git a/pkgs/applications/graphics/swingsane/default.nix b/pkgs/applications/graphics/swingsane/default.nix
index f56646e5aedd..fc9132ec0b40 100644
--- a/pkgs/applications/graphics/swingsane/default.nix
+++ b/pkgs/applications/graphics/swingsane/default.nix
@@ -54,7 +54,7 @@ stdenv.mkDerivation rec {
       simultaneous scan jobs, image transformation jobs (deskew, binarize,
       crop, etc), PDF and PNG output.
     '';
-    homepage = http://swingsane.com/;
+    homepage = "http://swingsane.com/";
     license = licenses.asl20;
     platforms = platforms.all;
   };
diff --git a/pkgs/applications/graphics/sxiv/default.nix b/pkgs/applications/graphics/sxiv/default.nix
index f54299583286..4cf0ae555789 100644
--- a/pkgs/applications/graphics/sxiv/default.nix
+++ b/pkgs/applications/graphics/sxiv/default.nix
@@ -26,7 +26,7 @@ stdenv.mkDerivation rec {
 
   meta = {
     description = "Simple X Image Viewer";
-    homepage = https://github.com/muennich/sxiv;
+    homepage = "https://github.com/muennich/sxiv";
     license = stdenv.lib.licenses.gpl2Plus;
     platforms = stdenv.lib.platforms.linux;
     maintainers = with maintainers; [ jfrankenau ];
diff --git a/pkgs/applications/graphics/synfigstudio/default.nix b/pkgs/applications/graphics/synfigstudio/default.nix
index 188f7cb29343..e2ffd1602585 100644
--- a/pkgs/applications/graphics/synfigstudio/default.nix
+++ b/pkgs/applications/graphics/synfigstudio/default.nix
@@ -119,7 +119,7 @@ stdenv.mkDerivation {
 
   meta = with stdenv.lib; {
     description = "A 2D animation program";
-    homepage = http://www.synfig.org;
+    homepage = "http://www.synfig.org";
     license = licenses.gpl2Plus;
     maintainers = [ maintainers.goibhniu ];
     platforms = platforms.linux;
diff --git a/pkgs/applications/graphics/tesseract/tesseract3.nix b/pkgs/applications/graphics/tesseract/tesseract3.nix
index 157c0b9742bf..dc9d4ac2d595 100644
--- a/pkgs/applications/graphics/tesseract/tesseract3.nix
+++ b/pkgs/applications/graphics/tesseract/tesseract3.nix
@@ -21,7 +21,7 @@ stdenv.mkDerivation rec {
 
   meta = {
     description = "OCR engine";
-    homepage = https://github.com/tesseract-ocr/tesseract;
+    homepage = "https://github.com/tesseract-ocr/tesseract";
     license = stdenv.lib.licenses.asl20;
     maintainers = with stdenv.lib.maintainers; [ viric earvstedt ];
     platforms = with stdenv.lib.platforms; linux ++ darwin;
diff --git a/pkgs/applications/graphics/tesseract/tesseract4.nix b/pkgs/applications/graphics/tesseract/tesseract4.nix
index 95896337720a..d7c3cacc1f96 100644
--- a/pkgs/applications/graphics/tesseract/tesseract4.nix
+++ b/pkgs/applications/graphics/tesseract/tesseract4.nix
@@ -19,7 +19,7 @@ stdenv.mkDerivation rec {
 
   meta = {
     description = "OCR engine";
-    homepage = https://github.com/tesseract-ocr/tesseract;
+    homepage = "https://github.com/tesseract-ocr/tesseract";
     license = stdenv.lib.licenses.asl20;
     maintainers = with stdenv.lib.maintainers; [ viric earvstedt ];
     platforms = with stdenv.lib.platforms; linux ++ darwin;
diff --git a/pkgs/applications/graphics/tev/default.nix b/pkgs/applications/graphics/tev/default.nix
index b884532279e5..f6ad16d7f90b 100644
--- a/pkgs/applications/graphics/tev/default.nix
+++ b/pkgs/applications/graphics/tev/default.nix
@@ -5,14 +5,14 @@
 
 stdenv.mkDerivation rec {
   pname = "tev";
-  version = "1.14";
+  version = "1.15";
 
   src = fetchFromGitHub {
     owner = "Tom94";
     repo = pname;
     rev = "v${version}";
     fetchSubmodules = true;
-    sha256 = "1g86wl0sdn0wprfxff2q1yc1hiq9fndmzhyvj09cw51lzbab5faw";
+    sha256 = "173nxvj30xmbdj8fc3rbw0mlicxy6zbhxv01i7z5nmcdvpamkdx6";
   };
 
   nativeBuildInputs = [ cmake wrapGAppsHook ];
@@ -46,6 +46,7 @@ stdenv.mkDerivation rec {
       types of images can also be loaded.
     '';
     inherit (src.meta) homepage;
+    changelog = "https://github.com/Tom94/tev/releases/tag/v${version}";
     license = licenses.bsd3;
     platforms = platforms.unix;
     maintainers = with maintainers; [ primeos ];
diff --git a/pkgs/applications/graphics/timelapse-deflicker/default.nix b/pkgs/applications/graphics/timelapse-deflicker/default.nix
index 8355545e8dd6..ac382bb63278 100644
--- a/pkgs/applications/graphics/timelapse-deflicker/default.nix
+++ b/pkgs/applications/graphics/timelapse-deflicker/default.nix
@@ -24,7 +24,7 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "Simple script to deflicker images taken for timelapses";
-    homepage = https://github.com/cyberang3l/timelapse-deflicker;
+    homepage = "https://github.com/cyberang3l/timelapse-deflicker";
     license = licenses.gpl3;
     maintainers = with maintainers; [ valeriangalliat ];
     platforms = platforms.unix;
diff --git a/pkgs/applications/graphics/ufraw/default.nix b/pkgs/applications/graphics/ufraw/default.nix
index 131d83f0d58e..9e05a41e8483 100644
--- a/pkgs/applications/graphics/ufraw/default.nix
+++ b/pkgs/applications/graphics/ufraw/default.nix
@@ -64,7 +64,7 @@ stdenv.mkDerivation {
   '';
 
   meta = with stdenv.lib; {
-    homepage = https://github.com/sergiomb2/ufraw;
+    homepage = "https://github.com/sergiomb2/ufraw";
 
     description = "Utility to read and manipulate raw images from digital cameras";
 
diff --git a/pkgs/applications/graphics/unigine-valley/default.nix b/pkgs/applications/graphics/unigine-valley/default.nix
index 09abfc60a528..14ff5f9a519f 100644
--- a/pkgs/applications/graphics/unigine-valley/default.nix
+++ b/pkgs/applications/graphics/unigine-valley/default.nix
@@ -107,7 +107,7 @@ in
 
     meta = {
       description = "The Unigine Valley GPU benchmarking tool";
-      homepage = http://unigine.com/products/benchmarks/valley/;
+      homepage = "http://unigine.com/products/benchmarks/valley/";
       license = stdenv.lib.licenses.unfree; # see also: $out/$instPath/documentation/License.pdf
       maintainers = [ stdenv.lib.maintainers.kierdavis ];
       platforms = ["x86_64-linux" "i686-linux"];
diff --git a/pkgs/applications/graphics/viewnior/default.nix b/pkgs/applications/graphics/viewnior/default.nix
index a80e89e72bcd..41463a7627ae 100644
--- a/pkgs/applications/graphics/viewnior/default.nix
+++ b/pkgs/applications/graphics/viewnior/default.nix
@@ -30,7 +30,7 @@ stdenv.mkDerivation rec {
 
     license = stdenv.lib.licenses.gpl3;
 
-    homepage = http://siyanpanayotov.com/project/viewnior/;
+    homepage = "http://siyanpanayotov.com/project/viewnior/";
 
     maintainers = [ stdenv.lib.maintainers.smironov ];
 
diff --git a/pkgs/applications/graphics/vimiv/default.nix b/pkgs/applications/graphics/vimiv/default.nix
index fab85052df3b..b5e9d0b8cf2d 100644
--- a/pkgs/applications/graphics/vimiv/default.nix
+++ b/pkgs/applications/graphics/vimiv/default.nix
@@ -64,7 +64,7 @@ python3Packages.buildPythonApplication rec {
   postInstall = "make DESTDIR=\"$out\" install";
 
   meta = {
-    homepage = https://github.com/karlch/vimiv;
+    homepage = "https://github.com/karlch/vimiv";
     description = "An image viewer with Vim-like keybindings";
     license = lib.licenses.mit;
     platforms = lib.platforms.linux;
diff --git a/pkgs/applications/graphics/wings/default.nix b/pkgs/applications/graphics/wings/default.nix
index 8d6eca7ef32c..19c30f3ecc4d 100644
--- a/pkgs/applications/graphics/wings/default.nix
+++ b/pkgs/applications/graphics/wings/default.nix
@@ -36,7 +36,7 @@ stdenv.mkDerivation rec {
   '';
 
   meta = {
-    homepage = http://www.wings3d.com/;
+    homepage = "http://www.wings3d.com/";
     description = "Subdivision modeler inspired by Nendo and Mirai from Izware";
     license = stdenv.lib.licenses.tcltk;
     maintainers = with stdenv.lib.maintainers; [viric];
diff --git a/pkgs/applications/graphics/write_stylus/default.nix b/pkgs/applications/graphics/write_stylus/default.nix
index 0f1020b0b078..31fc40450265 100644
--- a/pkgs/applications/graphics/write_stylus/default.nix
+++ b/pkgs/applications/graphics/write_stylus/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, lib, qtbase, qtsvg, libglvnd, fetchurl, makeDesktopItem }:
+{ mkDerivation, stdenv, lib, qtbase, qtsvg, libglvnd, fetchurl, makeDesktopItem }:
 let
   # taken from: https://www.iconfinder.com/icons/50835/edit_pencil_write_icon
   # license: Free for commercial use
@@ -7,7 +7,7 @@ let
     sha256 = "0abdya42yf9alxbsmc2nf8jwld50zfria6z3d4ncvp1zw2a9jhb8";
   };
 in
-stdenv.mkDerivation rec {
+mkDerivation rec {
   pname = "write_stylus";
   version = "209";
 
@@ -54,7 +54,7 @@ stdenv.mkDerivation rec {
   '';
 
   meta = with stdenv.lib; {
-    homepage = http://www.styluslabs.com/;
+    homepage = "http://www.styluslabs.com/";
     description = "Write is a word processor for handwriting.";
     platforms = platforms.linux;
     license = stdenv.lib.licenses.unfree;
diff --git a/pkgs/applications/graphics/xaos/default.nix b/pkgs/applications/graphics/xaos/default.nix
index e80362c386b9..767f3aa920bf 100644
--- a/pkgs/applications/graphics/xaos/default.nix
+++ b/pkgs/applications/graphics/xaos/default.nix
@@ -23,7 +23,7 @@ stdenv.mkDerivation rec {
   '';
 
   meta = {
-    homepage = http://xaos.sourceforge.net/;
+    homepage = "http://xaos.sourceforge.net/";
     description = "Fractal viewer";
     license = stdenv.lib.licenses.gpl2Plus;
     platforms = [ "x86_64-linux" ];
diff --git a/pkgs/applications/graphics/xara/default.nix b/pkgs/applications/graphics/xara/default.nix
index 56388a8a2555..5e3c252435cd 100644
--- a/pkgs/applications/graphics/xara/default.nix
+++ b/pkgs/applications/graphics/xara/default.nix
@@ -5,7 +5,7 @@ stdenv.mkDerivation {
   name = "xaralx-0.7r1785";
 
   src = fetchurl {
-    url = http://downloads2.xara.com/opensource/XaraLX-0.7r1785.tar.bz2;
+    url = "http://downloads2.xara.com/opensource/XaraLX-0.7r1785.tar.bz2";
     sha256 = "05xbzq1i1vw2mdsv7zjqfpxfv3g1j0g5kks0gq6sh373xd6y8lyh";
   };
 
diff --git a/pkgs/applications/graphics/xfractint/default.nix b/pkgs/applications/graphics/xfractint/default.nix
index ae4765fc9e76..8d36e4630dc5 100644
--- a/pkgs/applications/graphics/xfractint/default.nix
+++ b/pkgs/applications/graphics/xfractint/default.nix
@@ -24,6 +24,6 @@ stdenv.mkDerivation rec {
     license = stdenv.lib.licenses.unfree;
     maintainers = [stdenv.lib.maintainers.raskin];
     platforms = stdenv.lib.platforms.linux;
-    homepage = https://www.fractint.net/;
+    homepage = "https://www.fractint.net/";
   };
 }
diff --git a/pkgs/applications/graphics/xournal/default.nix b/pkgs/applications/graphics/xournal/default.nix
index 6d10a7cae231..8a5d9c3597b8 100644
--- a/pkgs/applications/graphics/xournal/default.nix
+++ b/pkgs/applications/graphics/xournal/default.nix
@@ -56,7 +56,7 @@ stdenv.mkDerivation rec {
   '';
 
   meta = with stdenv.lib; {
-    homepage = http://xournal.sourceforge.net/;
+    homepage = "http://xournal.sourceforge.net/";
     description = "Note-taking application (supposes stylus)";
     maintainers = [ maintainers.guibert ];
     license = licenses.gpl2;
diff --git a/pkgs/applications/graphics/xournalpp/default.nix b/pkgs/applications/graphics/xournalpp/default.nix
index 65aa17e3b4ee..ba396bfd92c5 100644
--- a/pkgs/applications/graphics/xournalpp/default.nix
+++ b/pkgs/applications/graphics/xournalpp/default.nix
@@ -22,13 +22,13 @@
 
 stdenv.mkDerivation rec {
   pname = "xournalpp";
-  version = "1.0.17";
+  version = "1.0.18";
 
   src = fetchFromGitHub {
     owner = "xournalpp";
     repo = pname;
     rev = version;
-    sha256 = "0xw2mcgnm4sa9hrhfgp669lfypw97drxjmz5w8i5whaprpvmkxzw";
+    sha256 = "0a9ygbmd4dwgck3k8wsrm2grynqa0adb12wwspzmzvpisbadffjy";
   };
 
   nativeBuildInputs = [ cmake gettext pkgconfig wrapGAppsHook ];
diff --git a/pkgs/applications/graphics/xzgv/default.nix b/pkgs/applications/graphics/xzgv/default.nix
index de3f3a78988b..67f43faf99a3 100644
--- a/pkgs/applications/graphics/xzgv/default.nix
+++ b/pkgs/applications/graphics/xzgv/default.nix
@@ -19,7 +19,7 @@ stdenv.mkDerivation rec {
     mkdir -p $out/share/{app-install/desktop,applications,info,pixmaps}
   '';
   meta = with stdenv.lib; {
-    homepage = https://sourceforge.net/projects/xzgv/;
+    homepage = "https://sourceforge.net/projects/xzgv/";
     description = "Picture viewer for X with a thumbnail-based selector";
     license = licenses.gpl2;
     maintainers = [ maintainers.womfoo ];
diff --git a/pkgs/applications/graphics/zgv/default.nix b/pkgs/applications/graphics/zgv/default.nix
index 7b14d7750c3a..6cc59a7e60bd 100644
--- a/pkgs/applications/graphics/zgv/default.nix
+++ b/pkgs/applications/graphics/zgv/default.nix
@@ -19,7 +19,7 @@ stdenv.mkDerivation rec {
 
   patches = [
     (fetchpatch {
-    url = https://foss.aueb.gr/mirrors/linux/gentoo/media-gfx/zgv/files/zgv-5.9-libpng15.patch;
+    url = "https://foss.aueb.gr/mirrors/linux/gentoo/media-gfx/zgv/files/zgv-5.9-libpng15.patch";
     sha256 = "1blw9n04c28bnwcmcn64si4f5zpg42s8yn345js88fyzi9zm19xw";
     })
     ./switch.patch
@@ -33,7 +33,7 @@ stdenv.mkDerivation rec {
   '';
 
   meta = with stdenv.lib; {
-    homepage = http://www.svgalib.org/rus/zgv/;
+    homepage = "http://www.svgalib.org/rus/zgv/";
     description = "Picture viewer with a thumbnail-based selector";
     license = licenses.gpl2;
     maintainers = [ maintainers.vrthra ];
diff --git a/pkgs/applications/kde/ark/default.nix b/pkgs/applications/kde/ark/default.nix
index 76cc423f5460..dbbfcf80c6b0 100644
--- a/pkgs/applications/kde/ark/default.nix
+++ b/pkgs/applications/kde/ark/default.nix
@@ -9,14 +9,14 @@
   libarchive, libzip,
 
   # Archive tools
-  p7zip, lrzip,
+  lrzip,
 
   # Unfree tools
   unfreeEnableUnrar ? false, unrar,
 }:
 
 let
-  extraTools = [ p7zip lrzip ] ++ lib.optional unfreeEnableUnrar unrar;
+  extraTools = [ lrzip ] ++ lib.optional unfreeEnableUnrar unrar;
 in
 
 mkDerivation {
diff --git a/pkgs/applications/kde/default.nix b/pkgs/applications/kde/default.nix
index 6788a5df3ff1..60df1f899ded 100644
--- a/pkgs/applications/kde/default.nix
+++ b/pkgs/applications/kde/default.nix
@@ -78,6 +78,7 @@ let
       dolphin = callPackage ./dolphin.nix {};
       dolphin-plugins = callPackage ./dolphin-plugins.nix {};
       dragon = callPackage ./dragon.nix {};
+      elisa = callPackage ./elisa.nix {};
       eventviews = callPackage ./eventviews.nix {};
       ffmpegthumbs = callPackage ./ffmpegthumbs.nix { };
       filelight = callPackage ./filelight.nix {};
@@ -89,6 +90,7 @@ let
       kalarm = callPackage ./kalarm.nix {};
       kalarmcal = callPackage ./kalarmcal.nix {};
       kate = callPackage ./kate.nix {};
+      kbreakout = callPackage ./kbreakout.nix {};
       kcachegrind = callPackage ./kcachegrind.nix {};
       kcalc = callPackage ./kcalc.nix {};
       kcalutils = callPackage ./kcalutils.nix {};
@@ -145,6 +147,7 @@ let
       krdc = callPackage ./krdc.nix {};
       krfb = callPackage ./krfb.nix {};
       kruler = callPackage ./kruler.nix {};
+      kspaceduel = callPackage ./kspaceduel.nix {};
       ksudoku = callPackage ./ksudoku.nix {};
       ksystemlog = callPackage ./ksystemlog.nix {};
       ktnef = callPackage ./ktnef.nix {};
diff --git a/pkgs/applications/kde/elisa.nix b/pkgs/applications/kde/elisa.nix
new file mode 100644
index 000000000000..a2bfa88f8127
--- /dev/null
+++ b/pkgs/applications/kde/elisa.nix
@@ -0,0 +1,46 @@
+{ mkDerivation
+, fetchFromGitHub
+, lib
+, extra-cmake-modules
+, kdoctools
+, qtmultimedia
+, qtquickcontrols2
+, qtwebsockets
+, kconfig
+, kcmutils
+, kcrash
+, kdeclarative
+, kfilemetadata
+, kinit
+, kirigami2
+, baloo
+, vlc
+}:
+
+mkDerivation rec {
+  name = "elisa";
+
+  buildInputs = [ vlc ];
+
+  nativeBuildInputs = [ extra-cmake-modules kdoctools ];
+
+  propagatedBuildInputs = [
+    baloo
+    kcmutils
+    kconfig
+    kcrash
+    kdeclarative
+    kfilemetadata
+    kinit
+    kirigami2
+    qtmultimedia
+    qtquickcontrols2
+    qtwebsockets
+  ];
+
+  meta = with lib; {
+    description = "A simple media player for KDE";
+    license = licenses.gpl3;
+    maintainers = with maintainers; [ peterhoeg ];
+  };
+}
diff --git a/pkgs/applications/kde/fetch.sh b/pkgs/applications/kde/fetch.sh
index 424c759b56c3..3f6dc9ef1810 100644
--- a/pkgs/applications/kde/fetch.sh
+++ b/pkgs/applications/kde/fetch.sh
@@ -1 +1 @@
-WGET_ARGS=( http://download.kde.org/stable/release-service/19.12.1/src )
+WGET_ARGS=( http://download.kde.org/stable/release-service/19.12.3/src )
diff --git a/pkgs/applications/kde/ffmpeg-path.patch b/pkgs/applications/kde/ffmpeg-path.patch
new file mode 100644
index 000000000000..a0cef882f596
--- /dev/null
+++ b/pkgs/applications/kde/ffmpeg-path.patch
@@ -0,0 +1,25 @@
+diff --git a/src/kdenlivesettings.kcfg b/src/kdenlivesettings.kcfg
+index 5edad5ae7..d35347a40 100644
+--- a/src/kdenlivesettings.kcfg
++++ b/src/kdenlivesettings.kcfg
+@@ -403,17 +403,17 @@
+ 
+     <entry name="ffmpegpath" type="Path">
+       <label>FFmpeg / Libav binary path.</label>
+-      <default></default>
++      <default>@ffmpeg@/bin/ffmpeg</default>
+     </entry>
+ 
+     <entry name="ffplaypath" type="Path">
+       <label>FFplay / avplay binary path.</label>
+-      <default></default>
++      <default>@ffmpeg@/bin/ffplay</default>
+     </entry>
+ 
+     <entry name="ffprobepath" type="Path">
+       <label>FFprobe / avprobe binary path.</label>
+-      <default></default>
++      <default>@ffmpeg@/bin/ffprobe</default>
+     </entry>
+ 
+     <entry name="mltthreads" type="Int">
diff --git a/pkgs/applications/kde/kate.nix b/pkgs/applications/kde/kate.nix
index f01a57a55d4d..e0d0273efde1 100644
--- a/pkgs/applications/kde/kate.nix
+++ b/pkgs/applications/kde/kate.nix
@@ -14,6 +14,16 @@ mkDerivation {
     maintainers = [ lib.maintainers.ttuegel ];
   };
 
+  # InitialPreference values are too high and end up making kate &
+  # kwrite defaults for anything considered text/plain. Resetting to
+  # 1, which is the default.
+  postPatch = ''
+    substituteInPlace kate/data/org.kde.kate.desktop \
+      --replace InitialPreference=9 InitialPreference=1
+    substituteInPlace kwrite/data/org.kde.kwrite.desktop \
+      --replace InitialPreference=8 InitialPreference=1
+  '';
+
   nativeBuildInputs = [ extra-cmake-modules kdoctools ];
   buildInputs = [
     libgit2
diff --git a/pkgs/applications/kde/kbreakout.nix b/pkgs/applications/kde/kbreakout.nix
new file mode 100644
index 000000000000..fbcddd46ca85
--- /dev/null
+++ b/pkgs/applications/kde/kbreakout.nix
@@ -0,0 +1,22 @@
+{ mkDerivation, lib
+, extra-cmake-modules
+, cmake
+, kdbusaddons
+, ki18n
+, kconfigwidgets
+, kcrash
+, kxmlgui
+, libkdegames
+}:
+
+mkDerivation {
+  name = "kbreakout";
+  meta.license = with lib.licenses; [ lgpl21 gpl3 ];
+  outputs = [ "out" "dev" ];
+  nativeBuildInputs = [
+    cmake extra-cmake-modules
+  ];
+  propagatedBuildInputs = [
+    kdbusaddons ki18n kconfigwidgets kcrash kxmlgui libkdegames
+  ];
+}
diff --git a/pkgs/applications/kde/kdenlive.nix b/pkgs/applications/kde/kdenlive.nix
index b7c691e9594b..95496f90e043 100644
--- a/pkgs/applications/kde/kdenlive.nix
+++ b/pkgs/applications/kde/kdenlive.nix
@@ -70,14 +70,24 @@ mkDerivation {
     kpurpose
     kdeclarative
   ];
-  patches = [ ./mlt-path.patch ];
+  # Both MLT and FFMpeg paths must be set or Kdenlive will complain that it
+  # doesn't find them. See:
+  # https://github.com/NixOS/nixpkgs/issues/83885
+  patches = [ ./mlt-path.patch ./ffmpeg-path.patch ];
   inherit mlt;
+  ffmpeg = ffmpeg-full;
   postPatch =
     # Module Qt5::Concurrent must be included in `find_package` before it is used.
     ''
       sed -i CMakeLists.txt -e '/find_package(Qt5 REQUIRED/ s|)| Concurrent)|'
       substituteAllInPlace src/kdenlivesettings.kcfg
     '';
+  # Frei0r path needs to be set too or Kdenlive will complain. See:
+  # https://github.com/NixOS/nixpkgs/issues/83885
+  # https://github.com/NixOS/nixpkgs/issues/29614#issuecomment-488849325
+  qtWrapperArgs = [
+    "--set FREI0R_PATH ${frei0r}/lib/frei0r-1"
+  ];
   meta = {
     license = with lib.licenses; [ gpl2Plus ];
   };
diff --git a/pkgs/applications/kde/keditbookmarks.nix b/pkgs/applications/kde/keditbookmarks.nix
index 57741c03ad54..efe247df7376 100644
--- a/pkgs/applications/kde/keditbookmarks.nix
+++ b/pkgs/applications/kde/keditbookmarks.nix
@@ -9,7 +9,7 @@ mkDerivation {
   nativeBuildInputs = [ extra-cmake-modules kdoctools ];
   buildInputs = [ kio kparts kwindowsystem ];
   meta = with lib; {
-    homepage = http://www.kde.org;
+    homepage = "http://www.kde.org";
     license = with licenses; [ gpl2 lgpl21 fdl12 bsd3 ];
     maintainers = with maintainers; [ peterhoeg ];
     platforms = platforms.linux;
diff --git a/pkgs/applications/kde/kipi-plugins.nix b/pkgs/applications/kde/kipi-plugins.nix
index 5fb953acbd62..180d066a87cf 100644
--- a/pkgs/applications/kde/kipi-plugins.nix
+++ b/pkgs/applications/kde/kipi-plugins.nix
@@ -17,7 +17,7 @@ mkDerivation {
   meta = {
     description = "Plugins for KDE-based image applications";
     license = lib.licenses.gpl2;
-    homepage = https://cgit.kde.org/kipi-plugins.git;
+    homepage = "https://cgit.kde.org/kipi-plugins.git";
     maintainers = with lib.maintainers; [ ttuegel ];
   };
 }
diff --git a/pkgs/applications/kde/kitinerary.nix b/pkgs/applications/kde/kitinerary.nix
index ce66de251dca..303ea6162ba4 100644
--- a/pkgs/applications/kde/kitinerary.nix
+++ b/pkgs/applications/kde/kitinerary.nix
@@ -2,6 +2,7 @@
   mkDerivation, lib, extra-cmake-modules
 , qtbase, qtdeclarative, ki18n, kmime, kpkpass
 , poppler, kcontacts, kcalendarcore
+, shared-mime-info
 }:
 
 mkDerivation {
@@ -10,7 +11,10 @@ mkDerivation {
     license = with lib.licenses; [ lgpl21 ];
     maintainers = [ lib.maintainers.bkchr ];
   };
-  nativeBuildInputs = [ extra-cmake-modules ];
+  nativeBuildInputs = [
+    extra-cmake-modules
+    shared-mime-info # for update-mime-database
+  ];
   buildInputs = [
     qtbase qtdeclarative ki18n kmime kpkpass poppler
     kcontacts kcalendarcore
diff --git a/pkgs/applications/kde/konqueror.nix b/pkgs/applications/kde/konqueror.nix
index e6442fea2f9d..62ed3db063ea 100644
--- a/pkgs/applications/kde/konqueror.nix
+++ b/pkgs/applications/kde/konqueror.nix
@@ -12,9 +12,17 @@ mkDerivation {
     kdelibs4support kcmutils khtml kdesu
     qtwebkit qtwebengine qtx11extras qtscript qtwayland
   ];
+
+  # InitialPreference values are too high and any text/html ends up
+  # opening konqueror, even if firefox or chromium are also available.
+  # Resetting to 1, which is the default.
+  postPatch = ''
+    substituteInPlace kfmclient_html.desktop \
+      --replace InitialPreference=9 InitialPreference=1
+  '';
+
   meta = {
     license = with lib.licenses; [ gpl2 ];
     maintainers = with lib.maintainers; [ ];
   };
 }
-
diff --git a/pkgs/applications/kde/konsole.nix b/pkgs/applications/kde/konsole.nix
index 1be5b0b4a894..ed26dc08bb6c 100644
--- a/pkgs/applications/kde/konsole.nix
+++ b/pkgs/applications/kde/konsole.nix
@@ -11,7 +11,7 @@ mkDerivation {
   name = "konsole";
   meta = {
     license = with lib.licenses; [ gpl2 lgpl21 fdl12 ];
-    maintainers = [ lib.maintainers.ttuegel ];
+    maintainers = with lib.maintainers; [ ttuegel turion ];
   };
   nativeBuildInputs = [ extra-cmake-modules kdoctools ];
   buildInputs = [
diff --git a/pkgs/applications/kde/krdc.nix b/pkgs/applications/kde/krdc.nix
index 89ac92bb4745..2b0a1a5c5141 100644
--- a/pkgs/applications/kde/krdc.nix
+++ b/pkgs/applications/kde/krdc.nix
@@ -17,7 +17,7 @@ mkDerivation {
       --prefix PATH : ${lib.makeBinPath [ freerdp ]}
   '';
   meta = with lib; {
-    homepage = http://www.kde.org;
+    homepage = "http://www.kde.org";
     license = with licenses; [ gpl2 lgpl21 fdl12 bsd3 ];
     maintainers = with maintainers; [ peterhoeg ];
     platforms = platforms.linux;
diff --git a/pkgs/applications/kde/kspaceduel.nix b/pkgs/applications/kde/kspaceduel.nix
new file mode 100644
index 000000000000..b18a3e7cf8f7
--- /dev/null
+++ b/pkgs/applications/kde/kspaceduel.nix
@@ -0,0 +1,22 @@
+{ mkDerivation, lib
+, extra-cmake-modules
+, cmake
+, kdbusaddons
+, ki18n
+, kconfigwidgets
+, kcrash
+, kxmlgui
+, libkdegames
+}:
+
+mkDerivation {
+  name = "kspaceduel";
+  meta.license = with lib.licenses; [ lgpl21 gpl3 ];
+  outputs = [ "out" "dev" ];
+  nativeBuildInputs = [ 
+    cmake extra-cmake-modules
+  ];
+  propagatedBuildInputs = [
+    kdbusaddons ki18n kconfigwidgets kcrash kxmlgui libkdegames
+  ];
+}
diff --git a/pkgs/applications/kde/okular.nix b/pkgs/applications/kde/okular.nix
index 377fbe3339a7..3bcdb9ca8424 100644
--- a/pkgs/applications/kde/okular.nix
+++ b/pkgs/applications/kde/okular.nix
@@ -18,10 +18,19 @@ mkDerivation {
     kwindowsystem libkexiv2 libspectre libzip phonon poppler qca-qt5
     qtdeclarative qtsvg threadweaver kcrash
   ] ++ lib.optional (!stdenv.isAarch64) chmlib;
+
+  # InitialPreference values are too high and end up making okular
+  # default for anything considered text/plain. Resetting to 1, which
+  # is the default.
+  postPatch = ''
+    substituteInPlace generators/txt/okularApplication_txt.desktop \
+      --replace InitialPreference=3 InitialPreference=1
+  '';
+
   meta = with lib; {
-    homepage = http://www.kde.org;
+    homepage = "http://www.kde.org";
     license = with licenses; [ gpl2 lgpl21 fdl12 bsd3 ];
-    maintainers = with maintainers; [ ttuegel ];
+    maintainers = with maintainers; [ ttuegel turion ];
     platforms = lib.platforms.linux;
   };
 }
diff --git a/pkgs/applications/kde/srcs.nix b/pkgs/applications/kde/srcs.nix
index 60cf49fa05e1..dc6eb0f09e8c 100644
--- a/pkgs/applications/kde/srcs.nix
+++ b/pkgs/applications/kde/srcs.nix
@@ -4,1731 +4,1731 @@
 
 {
   akonadi = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/akonadi-19.12.1.tar.xz";
-      sha256 = "991680be1b57a5335690341ab2a681fc7d8e77a4951673021f0662f3005856a3";
-      name = "akonadi-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/akonadi-19.12.3.tar.xz";
+      sha256 = "e41714d81ecbb629aaa0b267e0c32a4b1d83c6a45cf3f37d52232003b4c0f325";
+      name = "akonadi-19.12.3.tar.xz";
     };
   };
   akonadi-calendar = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/akonadi-calendar-19.12.1.tar.xz";
-      sha256 = "4bec3252bd1a32874a22b28dcb82a2aed533b31e1955ca68803ddf076dbbd5be";
-      name = "akonadi-calendar-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/akonadi-calendar-19.12.3.tar.xz";
+      sha256 = "c58d18153ef711a79962ba907e44338a0ddd62968e0a6c50486bba09a6e2a446";
+      name = "akonadi-calendar-19.12.3.tar.xz";
     };
   };
   akonadi-calendar-tools = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/akonadi-calendar-tools-19.12.1.tar.xz";
-      sha256 = "0650e12b2155b08cf70cc4620f9ea3868bad66affc4668775cd050539eacbec9";
-      name = "akonadi-calendar-tools-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/akonadi-calendar-tools-19.12.3.tar.xz";
+      sha256 = "ad2c23cf188228dc697d39e2120b56ce445bbea3eb46721794cd6344aa7e94ba";
+      name = "akonadi-calendar-tools-19.12.3.tar.xz";
     };
   };
   akonadiconsole = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/akonadiconsole-19.12.1.tar.xz";
-      sha256 = "e6a755875b9ef9db4f022888b77bd011a5edf2c21667074b971d15818659dd5b";
-      name = "akonadiconsole-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/akonadiconsole-19.12.3.tar.xz";
+      sha256 = "0dedcccfcfd7e6ad9a5af0aa61ce05f26cbb625d8bf6b6d210ac6e3c5813487f";
+      name = "akonadiconsole-19.12.3.tar.xz";
     };
   };
   akonadi-contacts = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/akonadi-contacts-19.12.1.tar.xz";
-      sha256 = "0fbca91b3251d57291629e441ecf5cdd9b71a56f74f05f6c55a428402d3b4c91";
-      name = "akonadi-contacts-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/akonadi-contacts-19.12.3.tar.xz";
+      sha256 = "b0baed9edb8c05b6d9b8db84239cd83a334d8f1d14d4aa8027dc1139a543eadf";
+      name = "akonadi-contacts-19.12.3.tar.xz";
     };
   };
   akonadi-import-wizard = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/akonadi-import-wizard-19.12.1.tar.xz";
-      sha256 = "a58d29407eebd9ce895d38b121cb034f92c81b85afd1b8da9c70cc3d7dc29b3d";
-      name = "akonadi-import-wizard-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/akonadi-import-wizard-19.12.3.tar.xz";
+      sha256 = "2c1491e4f5994ed0d317a27cc717184a86f7d92c4b44f8bd056e147e80bee8c5";
+      name = "akonadi-import-wizard-19.12.3.tar.xz";
     };
   };
   akonadi-mime = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/akonadi-mime-19.12.1.tar.xz";
-      sha256 = "9ca3794a36e31a5dd759b741e91420f4910f05b0d726f6e803d365b8ab058f5b";
-      name = "akonadi-mime-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/akonadi-mime-19.12.3.tar.xz";
+      sha256 = "13bdf9a233a183d5aeee1be0991617fca6d73ffd35bc14ca0d18714149f04392";
+      name = "akonadi-mime-19.12.3.tar.xz";
     };
   };
   akonadi-notes = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/akonadi-notes-19.12.1.tar.xz";
-      sha256 = "cf8059cb14eca880c09fc83285576b4d03a8edf0799cebdf42d59084bb6904ca";
-      name = "akonadi-notes-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/akonadi-notes-19.12.3.tar.xz";
+      sha256 = "a34c2420190925b985b0629d7d2d19be04443cfeeaf284229666338e039e56e2";
+      name = "akonadi-notes-19.12.3.tar.xz";
     };
   };
   akonadi-search = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/akonadi-search-19.12.1.tar.xz";
-      sha256 = "78a0feaa41d4b474a2e90c74230bc5196349e1c4e72ad46fe341a1cb6e51a5b8";
-      name = "akonadi-search-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/akonadi-search-19.12.3.tar.xz";
+      sha256 = "60072a36f6c817d009a8476bad2e80c4131b14358e03b4889a03aa42340ed041";
+      name = "akonadi-search-19.12.3.tar.xz";
     };
   };
   akregator = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/akregator-19.12.1.tar.xz";
-      sha256 = "e6f00777059e5b9fe2458a7e4248a59652f08d836518bf0395aaf2ed77ef4d52";
-      name = "akregator-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/akregator-19.12.3.tar.xz";
+      sha256 = "63db0f6c75bffe9235122201445d151f4eaa7061d2a8df4eb924bca1a4600f68";
+      name = "akregator-19.12.3.tar.xz";
     };
   };
   analitza = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/analitza-19.12.1.tar.xz";
-      sha256 = "0c6c4ee1b4546ab84eb9503220ca0aa09f80cdd7cea3b89201db1d5aac2c4ce5";
-      name = "analitza-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/analitza-19.12.3.tar.xz";
+      sha256 = "47ca3acaf2d2f52e91cd2253742ab97d9b07abc3fef0d632bfc36d253dbf161b";
+      name = "analitza-19.12.3.tar.xz";
     };
   };
   ark = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/ark-19.12.1.tar.xz";
-      sha256 = "37b9dfc0b6005ebd0f2757ecce940568839e8a5d73b3bcbc1931ce4eccbb9d0c";
-      name = "ark-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/ark-19.12.3.tar.xz";
+      sha256 = "78594029729c197fc90321850696f1bd189b40d8d7fbc9faf51ad6b2ab744a07";
+      name = "ark-19.12.3.tar.xz";
     };
   };
   artikulate = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/artikulate-19.12.1.tar.xz";
-      sha256 = "407f72193c7c4ec3f8ac7fa93889803f2ec6523aebb59bdf9a9210e9fac0ee7d";
-      name = "artikulate-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/artikulate-19.12.3.tar.xz";
+      sha256 = "c27a5cb98a8e2975638fe74683a73f92c160ce133b133878844062dd99ffded6";
+      name = "artikulate-19.12.3.tar.xz";
     };
   };
   audiocd-kio = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/audiocd-kio-19.12.1.tar.xz";
-      sha256 = "3b4433bbbdd56bbafcf0418eaebb655b8fd4e03a4c29489112394393f3dc3815";
-      name = "audiocd-kio-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/audiocd-kio-19.12.3.tar.xz";
+      sha256 = "b920170ae816f29a61a6f6b25df68c9125a5d4d9fec225feee45e46317d64d42";
+      name = "audiocd-kio-19.12.3.tar.xz";
     };
   };
   baloo-widgets = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/baloo-widgets-19.12.1.tar.xz";
-      sha256 = "a9fb3a136267bb0089192f7bc523903bd304e528160d9f653ccd052b4a8c110c";
-      name = "baloo-widgets-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/baloo-widgets-19.12.3.tar.xz";
+      sha256 = "236c0bb0bcb345f4ce5f07d591bded6221383bc7b190b42b96999893390cd8a5";
+      name = "baloo-widgets-19.12.3.tar.xz";
     };
   };
   blinken = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/blinken-19.12.1.tar.xz";
-      sha256 = "4a1f7c782dc236d963bc1de11b7dcbc79012d47e3e6cc5ce692ca91ecb788388";
-      name = "blinken-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/blinken-19.12.3.tar.xz";
+      sha256 = "06ef385ab73d99fa3f1925a6f2ef522f691d04cd594777f5d9fa52a5f2e45a94";
+      name = "blinken-19.12.3.tar.xz";
     };
   };
   bomber = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/bomber-19.12.1.tar.xz";
-      sha256 = "f0007dae42d6586ab6c9da5775c835fb515cbf180698a1453a90efd2ba8f2795";
-      name = "bomber-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/bomber-19.12.3.tar.xz";
+      sha256 = "ea4926fe08c62ac5da28c3bb480a6986e51f7a77e3245d1dc1603c38617da4b0";
+      name = "bomber-19.12.3.tar.xz";
     };
   };
   bovo = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/bovo-19.12.1.tar.xz";
-      sha256 = "54cee2f71e9736057187c8121313b9c73f6cadd0fa463ea2a29cf0e86969d5ae";
-      name = "bovo-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/bovo-19.12.3.tar.xz";
+      sha256 = "ac67aff75c1e8e0d1a1a8142ae94431e4f39565f411287f57c2778f8820316af";
+      name = "bovo-19.12.3.tar.xz";
     };
   };
   calendarsupport = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/calendarsupport-19.12.1.tar.xz";
-      sha256 = "6f5e3282ff385044061320b7ccb4bef80a1848fa890afcbd12e16bd2524a4189";
-      name = "calendarsupport-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/calendarsupport-19.12.3.tar.xz";
+      sha256 = "ecbd194b5aa39284d33f7f2ddca75175f8699efee1bfbd5000ea10076567bae8";
+      name = "calendarsupport-19.12.3.tar.xz";
     };
   };
   cantor = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/cantor-19.12.1.tar.xz";
-      sha256 = "509ebe0bc173124d28e29483effa07985eef24cdd989e5e4e1fc233632cdf568";
-      name = "cantor-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/cantor-19.12.3.tar.xz";
+      sha256 = "8347160f18993f53c857ec0d418dfebbc533878ad9f480047646d121e4e644cb";
+      name = "cantor-19.12.3.tar.xz";
     };
   };
   cervisia = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/cervisia-19.12.1.tar.xz";
-      sha256 = "2a7d32ac0c1460c135397cedec177db8eb99117b53ec2c9652763b0e90184188";
-      name = "cervisia-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/cervisia-19.12.3.tar.xz";
+      sha256 = "733a90f521cd79157f6d02eeb28376bc703239800473e8cf366611dd4f3342a6";
+      name = "cervisia-19.12.3.tar.xz";
     };
   };
   dolphin = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/dolphin-19.12.1.tar.xz";
-      sha256 = "492b4ca71e33373c7000aad5c7daf6e04d7ad537e1fde8a73d2c3db15858e8c8";
-      name = "dolphin-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/dolphin-19.12.3.tar.xz";
+      sha256 = "ba16f4d5be5ccc3c135a913f2e3c7dd3b7a492cfc9ec9ae518f714fcd7c2ab47";
+      name = "dolphin-19.12.3.tar.xz";
     };
   };
   dolphin-plugins = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/dolphin-plugins-19.12.1.tar.xz";
-      sha256 = "9392571a7004c08aac02dcc6453f58b6d0de4716b7cd61776f78d9b1783c60e0";
-      name = "dolphin-plugins-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/dolphin-plugins-19.12.3.tar.xz";
+      sha256 = "7dbd5c0fe4281c46df789f86f468c4ea32949285055cae4652bab3de59acdfd3";
+      name = "dolphin-plugins-19.12.3.tar.xz";
     };
   };
   dragon = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/dragon-19.12.1.tar.xz";
-      sha256 = "a804ae2089c0e96700e91d90ba2100d9a42a81a128a3fdbb037ed94c31f380cd";
-      name = "dragon-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/dragon-19.12.3.tar.xz";
+      sha256 = "c5b09b2bd37f4e86f8412d3b950331d330257ba53278b1a569f36bf3fbf560ee";
+      name = "dragon-19.12.3.tar.xz";
     };
   };
   elisa = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/elisa-19.12.1.tar.xz";
-      sha256 = "4929da2ebe68a3dc0d22a809a7b2a84493aa6f072e16515bd557ddaac51fd8fa";
-      name = "elisa-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/elisa-19.12.3.tar.xz";
+      sha256 = "28ad795c1d993969d49ab71514129589a71ee6fe8a2de785e22f17f5af7c3d32";
+      name = "elisa-19.12.3.tar.xz";
     };
   };
   eventviews = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/eventviews-19.12.1.tar.xz";
-      sha256 = "5eb73fb2c541a6b073ad231a28abe6affc0cad92f5fd4d36a4b58aba8a46193c";
-      name = "eventviews-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/eventviews-19.12.3.tar.xz";
+      sha256 = "e2ac6a77c6bdee008229a2b03262ac5602e0cabfd325a92df58be63aaa7db662";
+      name = "eventviews-19.12.3.tar.xz";
     };
   };
   ffmpegthumbs = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/ffmpegthumbs-19.12.1.tar.xz";
-      sha256 = "5f7853788c07d409bc2dd2fd7c9afab4cd847f3d2dc6db4dc30cfd78e762bdbd";
-      name = "ffmpegthumbs-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/ffmpegthumbs-19.12.3.tar.xz";
+      sha256 = "cc4a1c3b4768dc674d210294a9957d622448cbe9cdaf713c1cb40bff3a79260e";
+      name = "ffmpegthumbs-19.12.3.tar.xz";
     };
   };
   filelight = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/filelight-19.12.1.tar.xz";
-      sha256 = "29806a4149b3fb60f81372d56c184d0e2f861816639a0a21b85cd7af314f860b";
-      name = "filelight-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/filelight-19.12.3.tar.xz";
+      sha256 = "9ea78509f932cd2bd553d934e2af75c25d0b65d85d2b0ab4a007ac5929b2d3b5";
+      name = "filelight-19.12.3.tar.xz";
     };
   };
   granatier = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/granatier-19.12.1.tar.xz";
-      sha256 = "98051d292dd5a3ba3f873e8bc2bed6cdae291c9516b9cb21a64703b3135baa7f";
-      name = "granatier-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/granatier-19.12.3.tar.xz";
+      sha256 = "aa2e410e4eeae74f3902028069955017a31a922dff98b81850f20743f7b54c95";
+      name = "granatier-19.12.3.tar.xz";
     };
   };
   grantlee-editor = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/grantlee-editor-19.12.1.tar.xz";
-      sha256 = "63a2571369aff6cc648b064bcbc32227eede19475cad8937cfc454984423ea0c";
-      name = "grantlee-editor-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/grantlee-editor-19.12.3.tar.xz";
+      sha256 = "5df3e5ce7933290f9f6423bdbcb0ff5614a1a4b6fda250a37bd3ed57647f8a3c";
+      name = "grantlee-editor-19.12.3.tar.xz";
     };
   };
   grantleetheme = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/grantleetheme-19.12.1.tar.xz";
-      sha256 = "f23aaf86ff8c630a2f3498b3eebcd6533b01ee806dcf4130df7dd55e3b890ddd";
-      name = "grantleetheme-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/grantleetheme-19.12.3.tar.xz";
+      sha256 = "cc0ce448c9d8396dcadea2a43089feca8e1074572df42752f70dd176676f29f9";
+      name = "grantleetheme-19.12.3.tar.xz";
     };
   };
   gwenview = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/gwenview-19.12.1.tar.xz";
-      sha256 = "ed36590a0193fbe22f08c1a026e58f86a3067f516b3a894f29b72aa229967c84";
-      name = "gwenview-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/gwenview-19.12.3.tar.xz";
+      sha256 = "b453cd55b7409bf8e4446a1b714dc66e73a0376d2da65b184b82f786767164e7";
+      name = "gwenview-19.12.3.tar.xz";
     };
   };
   incidenceeditor = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/incidenceeditor-19.12.1.tar.xz";
-      sha256 = "1f1345db2e518bfe9405df5fa441ece3af1093cbc75066673d252a0760262484";
-      name = "incidenceeditor-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/incidenceeditor-19.12.3.tar.xz";
+      sha256 = "c608a95f6d09433b378f5df0243eff77be3738fb56f99ab439774f2cad5908a6";
+      name = "incidenceeditor-19.12.3.tar.xz";
     };
   };
   juk = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/juk-19.12.1.tar.xz";
-      sha256 = "de1d9f3581f791ea050700b467dce4b38d9ec2dc20884b495826e479d3245edf";
-      name = "juk-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/juk-19.12.3.tar.xz";
+      sha256 = "4bc4210d223afc23cb6edc9262eceee038ecc6243a550698e676230168943611";
+      name = "juk-19.12.3.tar.xz";
     };
   };
   k3b = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/k3b-19.12.1.tar.xz";
-      sha256 = "59def9d9c9e14de52a14d58a22c15173d98086d9a156a3a463b9607dc7be602d";
-      name = "k3b-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/k3b-19.12.3.tar.xz";
+      sha256 = "832c314d528ed21971d9d9d26c1c4d6c61323c9b3b01787d710541e3651575a5";
+      name = "k3b-19.12.3.tar.xz";
     };
   };
   kaccounts-integration = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/kaccounts-integration-19.12.1.tar.xz";
-      sha256 = "0dda504f51b86207180aceb00d86d42cb16c7ebe81c60ca1ed6bf8fa20699127";
-      name = "kaccounts-integration-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/kaccounts-integration-19.12.3.tar.xz";
+      sha256 = "452b95113de5fb0d19a13ef75e229ee07b0e92cc1e7a17e9a2dc7879121d9d33";
+      name = "kaccounts-integration-19.12.3.tar.xz";
     };
   };
   kaccounts-providers = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/kaccounts-providers-19.12.1.tar.xz";
-      sha256 = "abcd1fa9f63248f3ce7f9c98d940b124ff5c70c1a3381a6cfad6ce7012b23c69";
-      name = "kaccounts-providers-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/kaccounts-providers-19.12.3.tar.xz";
+      sha256 = "8774e9a8113e4aba593afeff655e38f6259c78e7dbaf1d95ea00235be880f3dd";
+      name = "kaccounts-providers-19.12.3.tar.xz";
     };
   };
   kaddressbook = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/kaddressbook-19.12.1.tar.xz";
-      sha256 = "32e19973015151ac32fe7ae1f0a17e82e2834ce69ba052f31e8d197930f0be5c";
-      name = "kaddressbook-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/kaddressbook-19.12.3.tar.xz";
+      sha256 = "1dede421e6fef2b1abc7d36dd1855cef43cc82de909a432cd38cff42d4168fba";
+      name = "kaddressbook-19.12.3.tar.xz";
     };
   };
   kajongg = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/kajongg-19.12.1.tar.xz";
-      sha256 = "2f0944ea23cefb07187e0c176ae0a12cbba1b591aefeab9be9a59d5cab9e7a59";
-      name = "kajongg-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/kajongg-19.12.3.tar.xz";
+      sha256 = "23e2b1be670b48bdd027e4e7a57e86a94b322afe6d37d8492c3d17689decfae5";
+      name = "kajongg-19.12.3.tar.xz";
     };
   };
   kalarm = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/kalarm-19.12.1.tar.xz";
-      sha256 = "06a8d9544d1107ac3f2e8c4c2e9604055706dcb6b7f3b0267f0d4cb45f1caf35";
-      name = "kalarm-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/kalarm-19.12.3.tar.xz";
+      sha256 = "526ab8884752c15622233db8b72e88d0c22a7a1bd265763d850b6e18e32de417";
+      name = "kalarm-19.12.3.tar.xz";
     };
   };
   kalarmcal = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/kalarmcal-19.12.1.tar.xz";
-      sha256 = "18644d5cbc61b414675de66dd25d9a1dd30b0e93851f6223292f052d30a365e6";
-      name = "kalarmcal-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/kalarmcal-19.12.3.tar.xz";
+      sha256 = "0ec5188f1164d91de702639ab2f85a713889feef48fc02dfe7385c945d06aa60";
+      name = "kalarmcal-19.12.3.tar.xz";
     };
   };
   kalgebra = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/kalgebra-19.12.1.tar.xz";
-      sha256 = "49d623186800eb8f6fbb91eb43fb14dff78e112624c9cda6b331d494d610b16a";
-      name = "kalgebra-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/kalgebra-19.12.3.tar.xz";
+      sha256 = "ac865dded31b61c438ddb9db721543b8facba79c9b39365750b4bebfe2645640";
+      name = "kalgebra-19.12.3.tar.xz";
     };
   };
   kalzium = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/kalzium-19.12.1.tar.xz";
-      sha256 = "f50cc18d94ce9a1aaedcbee3a5dccc2cc6723ac8ec151a0ae0ff60009a7c6943";
-      name = "kalzium-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/kalzium-19.12.3.tar.xz";
+      sha256 = "e44f359d1343c30cf1993a3970a3e610d0d5782f92a6b331b035cf4fef104195";
+      name = "kalzium-19.12.3.tar.xz";
     };
   };
   kamera = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/kamera-19.12.1.tar.xz";
-      sha256 = "831d7b3d7ffdc73b03116b564fb1a23c651d468cae97c1c31791f6df1a8890ac";
-      name = "kamera-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/kamera-19.12.3.tar.xz";
+      sha256 = "22e19527bf9748cdc298be4c3fa2cb0a3b8b337da3a3a804c9d6066d7f3e1110";
+      name = "kamera-19.12.3.tar.xz";
     };
   };
   kamoso = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/kamoso-19.12.1.tar.xz";
-      sha256 = "c1776bf7f8eafd9f4c501aabc0df30035a0f1d40951e525312aa257e67cf74a7";
-      name = "kamoso-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/kamoso-19.12.3.tar.xz";
+      sha256 = "9ae14c4c80cdbbf2ce2e92db5e9c814fbd685e81aa5c319aac5477649fc39fe4";
+      name = "kamoso-19.12.3.tar.xz";
     };
   };
   kanagram = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/kanagram-19.12.1.tar.xz";
-      sha256 = "2127eada150ee3f023948b637890aa93d602874fd6c037c4bd031886a12a2fdc";
-      name = "kanagram-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/kanagram-19.12.3.tar.xz";
+      sha256 = "441cae90d3b70dbef40bebbcf1325fa06e0df174a3f961b4b117a5fa1b40d6e3";
+      name = "kanagram-19.12.3.tar.xz";
     };
   };
   kapman = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/kapman-19.12.1.tar.xz";
-      sha256 = "cd5bef40c51bc6ef635adab501acd2a40c2291c989c4ba3ef6e34a1cbebe4c49";
-      name = "kapman-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/kapman-19.12.3.tar.xz";
+      sha256 = "3c81e3395ce2b2ea0937b09c0836cb58b8a941c2b7e2a27bd9741b2a9be1c1dd";
+      name = "kapman-19.12.3.tar.xz";
     };
   };
   kapptemplate = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/kapptemplate-19.12.1.tar.xz";
-      sha256 = "b2fc583125aae1968c0342063a6cfcea2dbeff21e0ef505a021b689ed3a34085";
-      name = "kapptemplate-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/kapptemplate-19.12.3.tar.xz";
+      sha256 = "5bef4e4fb74da3102cba6672584195962514ee3f53fb369b48d492d6ce7255ad";
+      name = "kapptemplate-19.12.3.tar.xz";
     };
   };
   kate = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/kate-19.12.1.tar.xz";
-      sha256 = "9d2401907e5b163d5af0af5b4d28383896ef709bcde7f6ee2234e1a3adc28a47";
-      name = "kate-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/kate-19.12.3.tar.xz";
+      sha256 = "f60b52e5a6a78920ac703a458f1eaf0ced02ffcd8b5f2d49de9a48674eeb007c";
+      name = "kate-19.12.3.tar.xz";
     };
   };
   katomic = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/katomic-19.12.1.tar.xz";
-      sha256 = "bc51424757434e905b5b611a6fa634147e533e375922c03f896a093fa61e57a3";
-      name = "katomic-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/katomic-19.12.3.tar.xz";
+      sha256 = "d7ed527e2546e94cb091e433a2e61618301152704c48e1f003e1f8e60b4f0cbd";
+      name = "katomic-19.12.3.tar.xz";
     };
   };
   kbackup = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/kbackup-19.12.1.tar.xz";
-      sha256 = "1b30c142576d823043d4e78fa37592e8df79b5e13ea7a980d336b25c1093ecf8";
-      name = "kbackup-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/kbackup-19.12.3.tar.xz";
+      sha256 = "1761009f9cd854d3fb4f98eb24b5ee7f3c42c4541f7cfb2ff1589786c86bdc99";
+      name = "kbackup-19.12.3.tar.xz";
     };
   };
   kblackbox = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/kblackbox-19.12.1.tar.xz";
-      sha256 = "57901d6bf56228691b6c6436ca2f60e62542854e80f9c4fda7a60362a216e1ed";
-      name = "kblackbox-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/kblackbox-19.12.3.tar.xz";
+      sha256 = "dffb910a5d429dfc231b7d2185119430856d26af2c027d34c551a6d664ae49c6";
+      name = "kblackbox-19.12.3.tar.xz";
     };
   };
   kblocks = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/kblocks-19.12.1.tar.xz";
-      sha256 = "1077477910d1dfff60f1abad7b1cf937daf1f3e3a5e8b18407b7e2809b2fc3d9";
-      name = "kblocks-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/kblocks-19.12.3.tar.xz";
+      sha256 = "5bc5cb14b91c9b230563388b4d935211975bae34ed36cb0479cbf25bc3b652fb";
+      name = "kblocks-19.12.3.tar.xz";
     };
   };
   kblog = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/kblog-19.12.1.tar.xz";
-      sha256 = "6385ecfc024cf554a55e2840c3faf6b9e6ee81eb3536d5632899d32aecd54b9f";
-      name = "kblog-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/kblog-19.12.3.tar.xz";
+      sha256 = "3fba584c4c217c5b5b3be52752f8f3c371fb877fe3b730a48711028fedc6b3d4";
+      name = "kblog-19.12.3.tar.xz";
     };
   };
   kbounce = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/kbounce-19.12.1.tar.xz";
-      sha256 = "e9e1df6f2f57e102d95707b82b0aa582f9f1a6c3e395660b5faa33ef953e7fb3";
-      name = "kbounce-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/kbounce-19.12.3.tar.xz";
+      sha256 = "d1b7ac99e54070e1e28a3449e8773691e90625c9f881cf94352ef752700197d0";
+      name = "kbounce-19.12.3.tar.xz";
     };
   };
   kbreakout = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/kbreakout-19.12.1.tar.xz";
-      sha256 = "17475a5aa80f494876fb3b91d32df4c447417e79f4dd60d46f594cfab03f489f";
-      name = "kbreakout-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/kbreakout-19.12.3.tar.xz";
+      sha256 = "ca662c9f2c6765f5f8b07bd4cc2e2aa0a43b69fec6428c3deda2cfad0ab675fa";
+      name = "kbreakout-19.12.3.tar.xz";
     };
   };
   kbruch = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/kbruch-19.12.1.tar.xz";
-      sha256 = "94f9951c0ee3b4aea6d649f971f2d946d462b916a76e4e76ddafa809ce7e5550";
-      name = "kbruch-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/kbruch-19.12.3.tar.xz";
+      sha256 = "522ddae0b2ec640e70c717a9fe0d6a95aef1ed3fe2acbca4b93a99a309abd559";
+      name = "kbruch-19.12.3.tar.xz";
     };
   };
   kcachegrind = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/kcachegrind-19.12.1.tar.xz";
-      sha256 = "210e04441519c47d103871e52d98351abc41a04b9385c577a7839eec31a2f400";
-      name = "kcachegrind-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/kcachegrind-19.12.3.tar.xz";
+      sha256 = "a30b70bac32f2b33c3c90b8c17754cfbf7d293c9eff0d573747eca2b45353b41";
+      name = "kcachegrind-19.12.3.tar.xz";
     };
   };
   kcalc = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/kcalc-19.12.1.tar.xz";
-      sha256 = "51630cd5c6d7ebbf35fb91419acfe9b2d2719ebfcdc2fff8358dbfaa2cecda57";
-      name = "kcalc-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/kcalc-19.12.3.tar.xz";
+      sha256 = "bbda4fc074e1ea748e95840aa79c51fdf0a1943ebb63ce6c7b68c197831258bd";
+      name = "kcalc-19.12.3.tar.xz";
     };
   };
   kcalutils = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/kcalutils-19.12.1.tar.xz";
-      sha256 = "0298e92d84d9f4b612ea1a27abee1368bc624af2bc5bc4b5eb1053a27575ea04";
-      name = "kcalutils-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/kcalutils-19.12.3.tar.xz";
+      sha256 = "00da1f331110a63c3d3c2c96394ead3d282f582d73fa925065560a50807fb7ff";
+      name = "kcalutils-19.12.3.tar.xz";
     };
   };
   kcharselect = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/kcharselect-19.12.1.tar.xz";
-      sha256 = "5f23458974d6fa66c49d434937e7a7a31cc94e46616db866b35316025bb84b0c";
-      name = "kcharselect-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/kcharselect-19.12.3.tar.xz";
+      sha256 = "9be6ac607148b0815bd985075fbb97d44561fdd6a955b60f0afc728f9cbd978b";
+      name = "kcharselect-19.12.3.tar.xz";
     };
   };
   kcolorchooser = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/kcolorchooser-19.12.1.tar.xz";
-      sha256 = "713d1151f45382d8a889187ebb02f8e73ffbf28ac8abea0e03626888711d2c22";
-      name = "kcolorchooser-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/kcolorchooser-19.12.3.tar.xz";
+      sha256 = "cb0395c1b4f953fd51129cfe5088702ec261f84cc045f889e22c13e81793744a";
+      name = "kcolorchooser-19.12.3.tar.xz";
     };
   };
   kcron = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/kcron-19.12.1.tar.xz";
-      sha256 = "8c7d5fa24349b9ff7c4927579876ef84895398d8cde6122804d7104a4f4d5963";
-      name = "kcron-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/kcron-19.12.3.tar.xz";
+      sha256 = "22d07834e8431d0fcc756a0e7d92d4e8993008766bf336254f8650c9455c9ab0";
+      name = "kcron-19.12.3.tar.xz";
     };
   };
   kdav = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/kdav-19.12.1.tar.xz";
-      sha256 = "5059a295f3ecd9046da6f5ecadab596b3e47c75c5090650a1d6cd1f86a8b7498";
-      name = "kdav-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/kdav-19.12.3.tar.xz";
+      sha256 = "7a0ed47378e064536b26dfdfcf7abcdb8dd2ec253a7bbcef7962b701d368872a";
+      name = "kdav-19.12.3.tar.xz";
     };
   };
   kdebugsettings = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/kdebugsettings-19.12.1.tar.xz";
-      sha256 = "2730430123e6198131acbabb5d02800981082f7249f0d9b9001b5313b2d45f35";
-      name = "kdebugsettings-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/kdebugsettings-19.12.3.tar.xz";
+      sha256 = "ad18d13dd0943a3651ec4729441899b103bd2dc743a4a373ce7bd14fb38dd3e0";
+      name = "kdebugsettings-19.12.3.tar.xz";
     };
   };
   kde-dev-scripts = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/kde-dev-scripts-19.12.1.tar.xz";
-      sha256 = "c2965dee649abea0791774ae264230dbe673af07eb0bd85bf3e8c7c6a739cea5";
-      name = "kde-dev-scripts-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/kde-dev-scripts-19.12.3.tar.xz";
+      sha256 = "94c0ba9de369dd6af14dcea505616025bf06599618a6c7557861aa9fb89ea628";
+      name = "kde-dev-scripts-19.12.3.tar.xz";
     };
   };
   kde-dev-utils = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/kde-dev-utils-19.12.1.tar.xz";
-      sha256 = "94f983c9b49ed3bc59b20849b23e7c26b64b7b303fbd86147c4bc823f87cda7d";
-      name = "kde-dev-utils-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/kde-dev-utils-19.12.3.tar.xz";
+      sha256 = "772ec425865082b8be3650cf0af10ad943f38096036227cab22405b32c4e1fae";
+      name = "kde-dev-utils-19.12.3.tar.xz";
     };
   };
   kdeedu-data = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/kdeedu-data-19.12.1.tar.xz";
-      sha256 = "d140f048e1ca8bd777b4a431904b3313a86446a5fd04e1f9c4e1fb4641a09b15";
-      name = "kdeedu-data-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/kdeedu-data-19.12.3.tar.xz";
+      sha256 = "76fd5c0efaf339bcfc5ac9f131bac8889cff1df2dd3452ea7dd507b8d9e2645b";
+      name = "kdeedu-data-19.12.3.tar.xz";
     };
   };
   kdegraphics-mobipocket = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/kdegraphics-mobipocket-19.12.1.tar.xz";
-      sha256 = "546d11af89e97831cc09868051142d4180e9621cc537c2941272b42a85e71c6a";
-      name = "kdegraphics-mobipocket-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/kdegraphics-mobipocket-19.12.3.tar.xz";
+      sha256 = "c459f9f04cf98cdc88a6763da8880f418e0c33b3cbd1d06b9a7347ebb470d835";
+      name = "kdegraphics-mobipocket-19.12.3.tar.xz";
     };
   };
   kdegraphics-thumbnailers = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/kdegraphics-thumbnailers-19.12.1.tar.xz";
-      sha256 = "a91335c11637a351d3ea8798f5519ac5596d655aec92266e46ed2a1bab46a299";
-      name = "kdegraphics-thumbnailers-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/kdegraphics-thumbnailers-19.12.3.tar.xz";
+      sha256 = "92a045ac0e9ca57ea27760df3cca0203f29ba435574e9d837d0c1069b8e88f72";
+      name = "kdegraphics-thumbnailers-19.12.3.tar.xz";
     };
   };
   kdenetwork-filesharing = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/kdenetwork-filesharing-19.12.1.tar.xz";
-      sha256 = "823e31424998e96084eeb909dfb7ee6a8e8e6d33b5d2a57ada7d583350967684";
-      name = "kdenetwork-filesharing-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/kdenetwork-filesharing-19.12.3.tar.xz";
+      sha256 = "8cc75f47ef8038cd7ee75974056cd48022816ab42c76cb6bd2c35a3619445180";
+      name = "kdenetwork-filesharing-19.12.3.tar.xz";
     };
   };
   kdenlive = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/kdenlive-19.12.1.tar.xz";
-      sha256 = "fccf34a4660ce8a78ceefe8a4b9dd93d104f6871976d991ceec769366627dc77";
-      name = "kdenlive-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/kdenlive-19.12.3.tar.xz";
+      sha256 = "cebcb8f019bc0fc719ef54d00507dc1281758e3c8c69ea2f93f99feda777bc64";
+      name = "kdenlive-19.12.3.tar.xz";
     };
   };
   kdepim-addons = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/kdepim-addons-19.12.1.tar.xz";
-      sha256 = "091e3fd007ad54cd1dcd4e2d51c4ac883a2d9e365ca78592aa91a37835c4dcf5";
-      name = "kdepim-addons-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/kdepim-addons-19.12.3.tar.xz";
+      sha256 = "f33bc70ac54ab56eea7bd8ca4c0ac98d9612acc4ddc9ce989d06b99f04f62c19";
+      name = "kdepim-addons-19.12.3.tar.xz";
     };
   };
   kdepim-apps-libs = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/kdepim-apps-libs-19.12.1.tar.xz";
-      sha256 = "4ff633c98cd128f2409cb78c193dd72f1078ae29eba8db3e304248a019e17e43";
-      name = "kdepim-apps-libs-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/kdepim-apps-libs-19.12.3.tar.xz";
+      sha256 = "e133cf76364f6b244338eafd39845a9f392eb9b55c43446541acbcb24a6f4796";
+      name = "kdepim-apps-libs-19.12.3.tar.xz";
     };
   };
   kdepim-runtime = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/kdepim-runtime-19.12.1.tar.xz";
-      sha256 = "31b1fe9778723079048d0fe1750028fd3f5f5b467ee10dcfa7fab37202a6ca39";
-      name = "kdepim-runtime-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/kdepim-runtime-19.12.3.tar.xz";
+      sha256 = "dabf7da1ad35dfaa3531639a8964b61dbd7094ec0a9b3d62f50fa24a22f5db13";
+      name = "kdepim-runtime-19.12.3.tar.xz";
     };
   };
   kdesdk-kioslaves = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/kdesdk-kioslaves-19.12.1.tar.xz";
-      sha256 = "e8e8f02e019bad7983cdc5cddbd435ccf676fd804ee7f960653acdda5676abb2";
-      name = "kdesdk-kioslaves-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/kdesdk-kioslaves-19.12.3.tar.xz";
+      sha256 = "8b075bff545883aba24fee1763d0cdc64bf9444ae865f0623a33fc1ca295d254";
+      name = "kdesdk-kioslaves-19.12.3.tar.xz";
     };
   };
   kdesdk-thumbnailers = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/kdesdk-thumbnailers-19.12.1.tar.xz";
-      sha256 = "77f64ddb075407f781cf2d658af760840f9427cc171e8ec15805f47105da0e56";
-      name = "kdesdk-thumbnailers-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/kdesdk-thumbnailers-19.12.3.tar.xz";
+      sha256 = "b304843045f93e91e0aeeeacf968018dc192ea71ed9977be3d9cfc4e149edcde";
+      name = "kdesdk-thumbnailers-19.12.3.tar.xz";
     };
   };
   kdf = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/kdf-19.12.1.tar.xz";
-      sha256 = "bf5c96e5a78e0465e9b91617ffff0c37f04e896dc059d70962bbdd943c6c1c04";
-      name = "kdf-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/kdf-19.12.3.tar.xz";
+      sha256 = "257e07e27376f45eaa1bfb1b3055c7f10759ca7ec185aa7572dc60317c8119bd";
+      name = "kdf-19.12.3.tar.xz";
     };
   };
   kdialog = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/kdialog-19.12.1.tar.xz";
-      sha256 = "2a13d1957089e4a0307681786b9b5467b5df777311afd4598dd1cb69b4e070f6";
-      name = "kdialog-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/kdialog-19.12.3.tar.xz";
+      sha256 = "e6f9a7a6b7c2f18795070bf9466dd6256568b02683d955ef3253432216594d00";
+      name = "kdialog-19.12.3.tar.xz";
     };
   };
   kdiamond = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/kdiamond-19.12.1.tar.xz";
-      sha256 = "4f7770138d16bb7b91920b7f3c7024a89ef35dc330a2ac929a2fa5d4ee12b982";
-      name = "kdiamond-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/kdiamond-19.12.3.tar.xz";
+      sha256 = "95dfd2fd3daa59a58d128c35b95b609117438efdb5d60110414ab7aff5fe3e7c";
+      name = "kdiamond-19.12.3.tar.xz";
     };
   };
   keditbookmarks = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/keditbookmarks-19.12.1.tar.xz";
-      sha256 = "11a950d53bc6e0b50d62a3ced2b74eaaa85c595b845ca8f2dcfa65e69d407fb0";
-      name = "keditbookmarks-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/keditbookmarks-19.12.3.tar.xz";
+      sha256 = "1c5efb63eb0a714942677eb03f91ae0bbd10731eace5471ea12ae9d3296b6b05";
+      name = "keditbookmarks-19.12.3.tar.xz";
     };
   };
   kfind = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/kfind-19.12.1.tar.xz";
-      sha256 = "e9f5defa7796bbb54208b28af1fa76333a38e743d7febb8dd14739cf00d376eb";
-      name = "kfind-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/kfind-19.12.3.tar.xz";
+      sha256 = "b3738d6e3f26fffbfcc204d946e165ae0727d9f460cb2065ceb221b4872019b1";
+      name = "kfind-19.12.3.tar.xz";
     };
   };
   kfloppy = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/kfloppy-19.12.1.tar.xz";
-      sha256 = "77581323d16f8666fefca3372c91567dfe5233c0f92c79ead11b2253aee64e2c";
-      name = "kfloppy-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/kfloppy-19.12.3.tar.xz";
+      sha256 = "7f384f9197d5066a5db978a9551665ae9a90b1f3afd1937f800ab61e376d3723";
+      name = "kfloppy-19.12.3.tar.xz";
     };
   };
   kfourinline = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/kfourinline-19.12.1.tar.xz";
-      sha256 = "76e31b59f1b31ddb755def377324d5fa5b5a4835f1f537a30632a028bf671a3e";
-      name = "kfourinline-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/kfourinline-19.12.3.tar.xz";
+      sha256 = "1d2f4fdbf427e2ce86a0519ee61a70df0675f039cebd658cd75bd27af4fe69f6";
+      name = "kfourinline-19.12.3.tar.xz";
     };
   };
   kgeography = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/kgeography-19.12.1.tar.xz";
-      sha256 = "47f809fdb6da503c0b00f5d2052f9def3af0964ace45325e683227a1971c3a1b";
-      name = "kgeography-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/kgeography-19.12.3.tar.xz";
+      sha256 = "3947ca1f50910d77f85c630b49128a085fed4230c7919e09281bc1765529a533";
+      name = "kgeography-19.12.3.tar.xz";
     };
   };
   kget = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/kget-19.12.1.tar.xz";
-      sha256 = "33b043857b3d1c55d877d1c3af2bcc46feefe15019b7af40a9951c16e288658c";
-      name = "kget-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/kget-19.12.3.tar.xz";
+      sha256 = "a4b1d8fb94617c80a557c27ae58a14131bda4476340c136262e5bf8f51d918d9";
+      name = "kget-19.12.3.tar.xz";
     };
   };
   kgoldrunner = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/kgoldrunner-19.12.1.tar.xz";
-      sha256 = "1f2044656732ab7a72117139576201ca1701666d525c93b726473d4cd9aed29c";
-      name = "kgoldrunner-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/kgoldrunner-19.12.3.tar.xz";
+      sha256 = "5808d797fb9df178526b3ea462bc902ca36b5926ef7c51233816ba3da6bc0bdd";
+      name = "kgoldrunner-19.12.3.tar.xz";
     };
   };
   kgpg = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/kgpg-19.12.1.tar.xz";
-      sha256 = "e64dc85f303e45b8a7ef635525f6834c4fd2db36c5131fdb231fa11f7237fdb5";
-      name = "kgpg-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/kgpg-19.12.3.tar.xz";
+      sha256 = "53e5726a1ccf34a70090ac0bbf2effb6f1f9f9b3d0164a5beead982a24c97e38";
+      name = "kgpg-19.12.3.tar.xz";
     };
   };
   khangman = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/khangman-19.12.1.tar.xz";
-      sha256 = "42fa9d9a9a72fe4b14127b12d5b662d66c00c1899eeefba6102be95136333def";
-      name = "khangman-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/khangman-19.12.3.tar.xz";
+      sha256 = "55286b318ec2c2d8b7e63f4063fc0e39a8ff81c0a9d3f06c9879f141c94762a8";
+      name = "khangman-19.12.3.tar.xz";
     };
   };
   khelpcenter = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/khelpcenter-19.12.1.tar.xz";
-      sha256 = "cd38f6b719f4f6228e3a7f94fc63f16020e86382ca402179ae767f2f0b846466";
-      name = "khelpcenter-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/khelpcenter-19.12.3.tar.xz";
+      sha256 = "526c89e46cace9e8afb4e748f9bbf0d105472a4cc4a6d8bb821e8b9b88ab0f73";
+      name = "khelpcenter-19.12.3.tar.xz";
     };
   };
   kidentitymanagement = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/kidentitymanagement-19.12.1.tar.xz";
-      sha256 = "7df38592610e0ed74c55baf6670331d07b2df0c98484d5f8cf8f135b6d229702";
-      name = "kidentitymanagement-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/kidentitymanagement-19.12.3.tar.xz";
+      sha256 = "254bfc3a60df7bc1960fa1e6d5b7733f6aa5ed7772c1097d9a8cfcdda2704516";
+      name = "kidentitymanagement-19.12.3.tar.xz";
     };
   };
   kig = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/kig-19.12.1.tar.xz";
-      sha256 = "507d89cddc0e128ab398ce0f551af22af0ba1583a4419574296cfefb96d944ee";
-      name = "kig-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/kig-19.12.3.tar.xz";
+      sha256 = "1ae2c3024cdd14e476ff15b730f4ebe9b279477b67cc4cc89606755c7d3beef3";
+      name = "kig-19.12.3.tar.xz";
     };
   };
   kigo = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/kigo-19.12.1.tar.xz";
-      sha256 = "235df9bca39b02dac6648b408d71f7b0978604f8389ea7ef5aa8e0be87fbcf9d";
-      name = "kigo-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/kigo-19.12.3.tar.xz";
+      sha256 = "ee18b8563c49e3e01924ea76cd8c6ec376482c2100e0fac7cdfd14b5899592d5";
+      name = "kigo-19.12.3.tar.xz";
     };
   };
   killbots = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/killbots-19.12.1.tar.xz";
-      sha256 = "3d524028e7df412e4306daf4e7b1aca803d26b65985fa429c98db10cffff010f";
-      name = "killbots-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/killbots-19.12.3.tar.xz";
+      sha256 = "3c5dc7e1f27036d2584f6ee58bf3bbffd9e56a467f30a8e2eab9e1bda1e7d4a3";
+      name = "killbots-19.12.3.tar.xz";
     };
   };
   kimagemapeditor = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/kimagemapeditor-19.12.1.tar.xz";
-      sha256 = "9869f3a060dc44f2fad0646fa9c0f1c2924d68c3cc3de5147170456f27a39e77";
-      name = "kimagemapeditor-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/kimagemapeditor-19.12.3.tar.xz";
+      sha256 = "1aee6521974bde5151744d92823f6b405ee4a8bd2dfe3c538324a209e18c6b35";
+      name = "kimagemapeditor-19.12.3.tar.xz";
     };
   };
   kimap = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/kimap-19.12.1.tar.xz";
-      sha256 = "898e1f3b233b3631ffc74859d54bf402d36f0c5bae7f792e97d3fa5116d8bd0e";
-      name = "kimap-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/kimap-19.12.3.tar.xz";
+      sha256 = "5c3b3cdf928754f9919030d865a2cdad0ad342c82c436afef660d018f85de4d2";
+      name = "kimap-19.12.3.tar.xz";
     };
   };
   kio-extras = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/kio-extras-19.12.1.tar.xz";
-      sha256 = "79b3735510c3c8da9b3e019ee5a54b115f85bb8d89f1c04dbbf16dde3007e7b6";
-      name = "kio-extras-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/kio-extras-19.12.3.tar.xz";
+      sha256 = "413cb21479fedf1421a6e2585b4df813c3a3fadaa77c248a9f810021f58cea4b";
+      name = "kio-extras-19.12.3.tar.xz";
     };
   };
   kipi-plugins = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/kipi-plugins-19.12.1.tar.xz";
-      sha256 = "bcd27ab29b491f13116a156e403126d04ffbaa352b581eca7fb0904e13c5dabe";
-      name = "kipi-plugins-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/kipi-plugins-19.12.3.tar.xz";
+      sha256 = "16997bd6fbb59c194c2997732c870e33bbacd3d7346546af9a255db3330ec5ac";
+      name = "kipi-plugins-19.12.3.tar.xz";
     };
   };
   kirigami-gallery = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/kirigami-gallery-19.12.1.tar.xz";
-      sha256 = "de7f9d739feeac481223c7992179cb3cfaa2aabca1097b0d3597c5c9d737cb19";
-      name = "kirigami-gallery-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/kirigami-gallery-19.12.3.tar.xz";
+      sha256 = "17febaeb77e0dfc6f591dd285fd7f538466572f2f2e3253461c41f92d6cb05fe";
+      name = "kirigami-gallery-19.12.3.tar.xz";
     };
   };
   kiriki = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/kiriki-19.12.1.tar.xz";
-      sha256 = "f3079b53ed45ec46def7a95b336d441dba18151cc77c88ef8ce2d02fcf1d6375";
-      name = "kiriki-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/kiriki-19.12.3.tar.xz";
+      sha256 = "abbaa49f9b47286f9afbe7c968eb6fbfeecb4be84ed4b2ce7514a3ed1e92b2d5";
+      name = "kiriki-19.12.3.tar.xz";
     };
   };
   kiten = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/kiten-19.12.1.tar.xz";
-      sha256 = "abee050c05b54fae25562237b91a14156dabcb26ea142c714b5ec9e1907f54f3";
-      name = "kiten-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/kiten-19.12.3.tar.xz";
+      sha256 = "663739a8b252cb95a38294c6f7d675c833daaa81f2654f5cabd8e512fd353560";
+      name = "kiten-19.12.3.tar.xz";
     };
   };
   kitinerary = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/kitinerary-19.12.1.tar.xz";
-      sha256 = "6497469e9966c9c21c2810a1f21c2633b89e54dafb74d5689aa24382e3824926";
-      name = "kitinerary-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/kitinerary-19.12.3.tar.xz";
+      sha256 = "4188efe8672091cbdaa4f757f5d8b94a30b1373dceafc076b01330602d5086e2";
+      name = "kitinerary-19.12.3.tar.xz";
     };
   };
   kjumpingcube = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/kjumpingcube-19.12.1.tar.xz";
-      sha256 = "3e4abd57d14dccc9b39669eebdab578fc865464b8a4309c3ab8103002edc2ff0";
-      name = "kjumpingcube-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/kjumpingcube-19.12.3.tar.xz";
+      sha256 = "b969111cb884efc9ad8ef585066ca33d7168bb045c93a3f18668173a11d29ea2";
+      name = "kjumpingcube-19.12.3.tar.xz";
     };
   };
   kldap = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/kldap-19.12.1.tar.xz";
-      sha256 = "5595f840c2b97e96f265ffd91fb007f4beb198aaf67a0dbfd941108acbcb9aa3";
-      name = "kldap-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/kldap-19.12.3.tar.xz";
+      sha256 = "49f1ad32ae10b7f997c77f3a8db0776b972b93f9e18873b77baabf0db05cd5d4";
+      name = "kldap-19.12.3.tar.xz";
     };
   };
   kleopatra = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/kleopatra-19.12.1.tar.xz";
-      sha256 = "94ee94031696dd5d79d7a0ca00a2e51b4569466689e8a76c129deae645af08f4";
-      name = "kleopatra-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/kleopatra-19.12.3.tar.xz";
+      sha256 = "04edf29e42088b2bccdfe36b9b7170c38acd7816657673da5393244b73773098";
+      name = "kleopatra-19.12.3.tar.xz";
     };
   };
   klettres = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/klettres-19.12.1.tar.xz";
-      sha256 = "4f103d85918d40e0a3ffc451bf3862c45b37b8bd2453e6ee7d21d4c738967c36";
-      name = "klettres-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/klettres-19.12.3.tar.xz";
+      sha256 = "f2a1bbb002954a80045780de24f494154214b8add53a5c01a8783cbeb26d26c7";
+      name = "klettres-19.12.3.tar.xz";
     };
   };
   klickety = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/klickety-19.12.1.tar.xz";
-      sha256 = "66cba17839023b6fe563a461da8f52a3c8a2bd4949195da2d63d780547f2e159";
-      name = "klickety-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/klickety-19.12.3.tar.xz";
+      sha256 = "351e421ecca5fc80955ed614453c81d8b790200185db16f56be1e0ca9325ad39";
+      name = "klickety-19.12.3.tar.xz";
     };
   };
   klines = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/klines-19.12.1.tar.xz";
-      sha256 = "111c4e607c4ba434a8ff593e45ba669c78e6c1fbf9e4d77d0fc5d611e733604e";
-      name = "klines-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/klines-19.12.3.tar.xz";
+      sha256 = "8d11894d0a02de20090e52ef697a5a3c00e902213c018a82c94ca0985e92350a";
+      name = "klines-19.12.3.tar.xz";
     };
   };
   kmag = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/kmag-19.12.1.tar.xz";
-      sha256 = "59e5a59407894976574acf78e7248fd0609ce6ee222c60388a99e5576ac2061f";
-      name = "kmag-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/kmag-19.12.3.tar.xz";
+      sha256 = "d1e8bbc8006cd2cfcb345e30aac73350562bff98b69b0333ad49726cdce81e7e";
+      name = "kmag-19.12.3.tar.xz";
     };
   };
   kmahjongg = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/kmahjongg-19.12.1.tar.xz";
-      sha256 = "e157f2e603c03128fb99ac4d0b4bc3ab2002a60960c780a3907e35bb8aee9bd3";
-      name = "kmahjongg-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/kmahjongg-19.12.3.tar.xz";
+      sha256 = "41a07f74cc4e3bf05f6a57a380d4e093b0303528cb703369981b262a0b1787c8";
+      name = "kmahjongg-19.12.3.tar.xz";
     };
   };
   kmail = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/kmail-19.12.1.tar.xz";
-      sha256 = "a8fa4a604f8f88b91beebf0f3f9bb0ac7c040671bd75ab4478d8087a21cde40c";
-      name = "kmail-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/kmail-19.12.3.tar.xz";
+      sha256 = "7f70e5270960e474b15631a36110e13fdf7238d6fd9f1b3fdb6d8c145b6529ba";
+      name = "kmail-19.12.3.tar.xz";
     };
   };
   kmail-account-wizard = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/kmail-account-wizard-19.12.1.tar.xz";
-      sha256 = "e7cbda3946b19d01f5c3a722d2c104b7be072ab411f80437a25b8200d73e7cfa";
-      name = "kmail-account-wizard-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/kmail-account-wizard-19.12.3.tar.xz";
+      sha256 = "4199e8c73456bf31b829596919ca481c3a95e59dee7c9bfb2e680311d0354ff0";
+      name = "kmail-account-wizard-19.12.3.tar.xz";
     };
   };
   kmailtransport = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/kmailtransport-19.12.1.tar.xz";
-      sha256 = "1a46563c441a7d09e6cc2bf98a628b724944193e0df88607d5d867f4fa65c1a4";
-      name = "kmailtransport-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/kmailtransport-19.12.3.tar.xz";
+      sha256 = "077b3dba7c02dde9693c003ab7039f3b2a530e3b1aecfcf187313db5226e8953";
+      name = "kmailtransport-19.12.3.tar.xz";
     };
   };
   kmbox = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/kmbox-19.12.1.tar.xz";
-      sha256 = "7442fd3a421a917a3f27e47259a7da7e08ff6191290a0e9e67c67005c82c606a";
-      name = "kmbox-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/kmbox-19.12.3.tar.xz";
+      sha256 = "de69683abb42c5c24ccb4f034e067f50c94d5a10c53f359b0e6ad4b75a70b376";
+      name = "kmbox-19.12.3.tar.xz";
     };
   };
   kmime = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/kmime-19.12.1.tar.xz";
-      sha256 = "4d6db5d59b239b884bf8811f3ea616520ab1f69224a809cef3f79023b2563085";
-      name = "kmime-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/kmime-19.12.3.tar.xz";
+      sha256 = "5ed20ad77000c60ba5723aaa22149fca3a3956f930d63e70984f0a17b9339300";
+      name = "kmime-19.12.3.tar.xz";
     };
   };
   kmines = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/kmines-19.12.1.tar.xz";
-      sha256 = "8f921aa4bda7397c0fa6265ba07a6ce68190174864d0ee16ee575be806b49539";
-      name = "kmines-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/kmines-19.12.3.tar.xz";
+      sha256 = "05d8004f2e560bf2c9e32a3ca1988b3848b99bfb9cc96307c1ac2b703c202dad";
+      name = "kmines-19.12.3.tar.xz";
     };
   };
   kmix = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/kmix-19.12.1.tar.xz";
-      sha256 = "97fff89e4a102351d01265a9659c5664b030b9b4f27fa021b997fe7ab8801ad6";
-      name = "kmix-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/kmix-19.12.3.tar.xz";
+      sha256 = "a4c637383e988ffa21b9c48c72ef6d8855fe207c852d0679011337a331ccfc5c";
+      name = "kmix-19.12.3.tar.xz";
     };
   };
   kmousetool = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/kmousetool-19.12.1.tar.xz";
-      sha256 = "d056fd05ffb900f65670e3a77dc8a0c08fbc02d86f4fba1b34dd8f6b5f60c3e5";
-      name = "kmousetool-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/kmousetool-19.12.3.tar.xz";
+      sha256 = "3741aff20c778bb704c76df7ff005da36ef6c41b07fca35f257ba440741b8413";
+      name = "kmousetool-19.12.3.tar.xz";
     };
   };
   kmouth = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/kmouth-19.12.1.tar.xz";
-      sha256 = "da46e472a05920225c3ae0caba21279dc817b7c8e77ae981b1ad6cf2083a49ad";
-      name = "kmouth-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/kmouth-19.12.3.tar.xz";
+      sha256 = "424dd4cf81cd43e47630ada0f2a9e47be8106b31ebf2e5c8c1077e55e3a8113f";
+      name = "kmouth-19.12.3.tar.xz";
     };
   };
   kmplot = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/kmplot-19.12.1.tar.xz";
-      sha256 = "b82d9f9d4f3d3447e9125b42918819fe8effd5658d9a385da79e81e12f7466cf";
-      name = "kmplot-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/kmplot-19.12.3.tar.xz";
+      sha256 = "2743e3a472ccf40281f5afd9c6110dde6fb9bc437e8e291beba484d405d8152e";
+      name = "kmplot-19.12.3.tar.xz";
     };
   };
   knavalbattle = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/knavalbattle-19.12.1.tar.xz";
-      sha256 = "1cc2c7fec2e2edc634cb1f83cf7e433522b0bc7d76c04cbcde66bb486a832856";
-      name = "knavalbattle-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/knavalbattle-19.12.3.tar.xz";
+      sha256 = "59875e10b0f2b06c2d3165f2f2457113f04550215947c8296ce1dcaf385ee37f";
+      name = "knavalbattle-19.12.3.tar.xz";
     };
   };
   knetwalk = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/knetwalk-19.12.1.tar.xz";
-      sha256 = "95725a45c56956a2b8e8e2db36b6baedfc0271af0d6e3541d6143342e6f41ca5";
-      name = "knetwalk-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/knetwalk-19.12.3.tar.xz";
+      sha256 = "24cb7cfa4143b2ab1bcaf38a6698cd01252201238c6561bc711e0673366642ae";
+      name = "knetwalk-19.12.3.tar.xz";
     };
   };
   knights = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/knights-19.12.1.tar.xz";
-      sha256 = "60ce0d76eb13c95ba81b0f2dfe5bd3e80ed2226319e4ef97150c3240f428d355";
-      name = "knights-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/knights-19.12.3.tar.xz";
+      sha256 = "4796654dcaff355b4f1097260748cfe04812ff926acc7ca0f037711875dd1512";
+      name = "knights-19.12.3.tar.xz";
     };
   };
   knotes = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/knotes-19.12.1.tar.xz";
-      sha256 = "e89f22ee1a918553be5241e167bd038797391502cb98c5f260c96b25017dd235";
-      name = "knotes-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/knotes-19.12.3.tar.xz";
+      sha256 = "b27846609dfac1ffcb3ac5e7165b7557231b096f6a84206da956c37233aed7b0";
+      name = "knotes-19.12.3.tar.xz";
     };
   };
   kolf = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/kolf-19.12.1.tar.xz";
-      sha256 = "78c5e74d61f8c19b31d4d08781d12a87bc6101d0105081e0c15f4506e36ef6f5";
-      name = "kolf-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/kolf-19.12.3.tar.xz";
+      sha256 = "2ba1f781d7d98ca0b10231e4f963b27d043c726f44da662b6c77105da4f9cffc";
+      name = "kolf-19.12.3.tar.xz";
     };
   };
   kollision = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/kollision-19.12.1.tar.xz";
-      sha256 = "a48515f63c0dbcc890aa9c01e344ea5bcb123e587459879796acc39a16243c09";
-      name = "kollision-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/kollision-19.12.3.tar.xz";
+      sha256 = "ce0bb077e8db8a959f965d463bb25bac02c91585b422af6c9249ad8a8f25eaab";
+      name = "kollision-19.12.3.tar.xz";
     };
   };
   kolourpaint = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/kolourpaint-19.12.1.tar.xz";
-      sha256 = "a2db2312ddf79024358309da8b70cb2b9979d208372ce5f0960f662b8aab2518";
-      name = "kolourpaint-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/kolourpaint-19.12.3.tar.xz";
+      sha256 = "7c134da2feb75a87bfda6b4265ef705868a9be03d70a828111a2869ca0b517b1";
+      name = "kolourpaint-19.12.3.tar.xz";
     };
   };
   kompare = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/kompare-19.12.1.tar.xz";
-      sha256 = "c2eede65a85d59067caf6161606c3de4f18ec6b5e824cb1da9e6b3a8f1b7a92d";
-      name = "kompare-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/kompare-19.12.3.tar.xz";
+      sha256 = "b89b266b6f648500627d2e70df29b73248c7b7d7d5e7c1bbcaddaedf072f6f1a";
+      name = "kompare-19.12.3.tar.xz";
     };
   };
   konqueror = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/konqueror-19.12.1.tar.xz";
-      sha256 = "20da57d7dd141e2c45345457ca90be26af28c2078224eb461dff9f9589889a09";
-      name = "konqueror-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/konqueror-19.12.3.tar.xz";
+      sha256 = "0f2b31a1dae1740839232bd646bf22d7cb57e34995584b9a96271ebcb0da7f0e";
+      name = "konqueror-19.12.3.tar.xz";
     };
   };
   konquest = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/konquest-19.12.1.tar.xz";
-      sha256 = "178e42f76115f8e8b47494ea7732fb76a692debe714590c06d84f7071930b65a";
-      name = "konquest-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/konquest-19.12.3.tar.xz";
+      sha256 = "e23732a7d78382c73fca0d31afb3ed85614ee4b4bfe2f07647a13582fa0811a5";
+      name = "konquest-19.12.3.tar.xz";
     };
   };
   konsole = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/konsole-19.12.1.tar.xz";
-      sha256 = "39797ed81c5ace12fd90f4a6e65c25d33db8e4385ab2baad2bd6a3b2db0ef075";
-      name = "konsole-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/konsole-19.12.3.tar.xz";
+      sha256 = "0bde8eb6365c53e96489d0ceb05baa0bb0385ee865492622033164a4c4bfccdc";
+      name = "konsole-19.12.3.tar.xz";
     };
   };
   kontact = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/kontact-19.12.1.tar.xz";
-      sha256 = "e9f7911154953d58be962bd392baf7d9c310e9e665adb0c875ed5a50dcfe5e01";
-      name = "kontact-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/kontact-19.12.3.tar.xz";
+      sha256 = "8dbd01f73c181f7b44df5dfffac1cf33c36b36149294fd854403bada9ef33052";
+      name = "kontact-19.12.3.tar.xz";
     };
   };
   kontactinterface = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/kontactinterface-19.12.1.tar.xz";
-      sha256 = "a88b782b495d662920fd5f51c287c472c107c577af92431b4470787a78866b2c";
-      name = "kontactinterface-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/kontactinterface-19.12.3.tar.xz";
+      sha256 = "1a0392cbeb6833f4834c86f202ff06e5b6069d12100bffe37de6427f0531af89";
+      name = "kontactinterface-19.12.3.tar.xz";
     };
   };
   kopete = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/kopete-19.12.1.tar.xz";
-      sha256 = "eca3610cc9607c27620c7c23f9bb54bdd80d2fb295adaf6636506597fc0b848d";
-      name = "kopete-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/kopete-19.12.3.tar.xz";
+      sha256 = "8d58fb0c9dd8b651bfc996e6928f7ccdad8e21cba39ffd0e54d46f7145fa7b27";
+      name = "kopete-19.12.3.tar.xz";
     };
   };
   korganizer = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/korganizer-19.12.1.tar.xz";
-      sha256 = "8bd84dfdca4f4738152c19d336b8c516f0c79fd888f0361005bc5d6359eeb117";
-      name = "korganizer-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/korganizer-19.12.3.tar.xz";
+      sha256 = "ea0a970aa510d5cdbbf80e974049fa3e7591e02c9ec2c4206137c49266df1acb";
+      name = "korganizer-19.12.3.tar.xz";
     };
   };
   kpat = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/kpat-19.12.1.tar.xz";
-      sha256 = "cb72a256a2a6a34bd8ee05e09b28f0eedee6643f24f793c5f67a9465040c30c3";
-      name = "kpat-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/kpat-19.12.3.tar.xz";
+      sha256 = "00b823b1b204b68e0c8671e5ddfe5f96abe8c9fcfb1efa9b7f70191cfa5384e1";
+      name = "kpat-19.12.3.tar.xz";
     };
   };
   kpimtextedit = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/kpimtextedit-19.12.1.tar.xz";
-      sha256 = "253ded44f3ccb7de1a0a8879e45cc361c14dda2924619aeb04f4286c917f5475";
-      name = "kpimtextedit-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/kpimtextedit-19.12.3.tar.xz";
+      sha256 = "64be03d7a8d4b9ece40c0065a23113023c2b3320dc57068fe00f6c4bc72537d5";
+      name = "kpimtextedit-19.12.3.tar.xz";
     };
   };
   kpkpass = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/kpkpass-19.12.1.tar.xz";
-      sha256 = "b5a079dc1c102c52e29c1d0da3e5a1e51bf9e0a666bb82d6b783f1b55eaa7ada";
-      name = "kpkpass-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/kpkpass-19.12.3.tar.xz";
+      sha256 = "45723989170e86c6739c8a377c54b3ba7456a8dc3ed6cf52eef884074c2df189";
+      name = "kpkpass-19.12.3.tar.xz";
     };
   };
   kqtquickcharts = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/kqtquickcharts-19.12.1.tar.xz";
-      sha256 = "641f5c993e627dd6d0778066016d20196b7502e34ab793fcf17dd6b226d08ae8";
-      name = "kqtquickcharts-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/kqtquickcharts-19.12.3.tar.xz";
+      sha256 = "94669a7add0cef9a1c0969a92ece8e60a67fbb0ff32826cc49ce87bd890c976c";
+      name = "kqtquickcharts-19.12.3.tar.xz";
     };
   };
   krdc = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/krdc-19.12.1.tar.xz";
-      sha256 = "b3d9b9c43bfe5801d807be08172ca4c773ff6fc2d846cf5b2456c3360ca21824";
-      name = "krdc-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/krdc-19.12.3.tar.xz";
+      sha256 = "12602912abbc22e061067b6b5048d37a7cbdaaf99d203829d3f52fdf7319acce";
+      name = "krdc-19.12.3.tar.xz";
     };
   };
   kreversi = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/kreversi-19.12.1.tar.xz";
-      sha256 = "b81e6544ba23b0869329d734618b3bc4408b585d550985338e6d90bf2d3a17f3";
-      name = "kreversi-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/kreversi-19.12.3.tar.xz";
+      sha256 = "6bfe3a2faa7c0d08fb689b75341bfd5881d66bc865445573b2f4dbb316a751e8";
+      name = "kreversi-19.12.3.tar.xz";
     };
   };
   krfb = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/krfb-19.12.1.tar.xz";
-      sha256 = "7f25790480ac3a8db8a8bd847d80937a0ab763f6c5c12fa2ce704c4b24810287";
-      name = "krfb-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/krfb-19.12.3.tar.xz";
+      sha256 = "cb88997dc7b15b992d1de5c5cabaeccb37122e20823501ac29140875259782ee";
+      name = "krfb-19.12.3.tar.xz";
     };
   };
   kross-interpreters = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/kross-interpreters-19.12.1.tar.xz";
-      sha256 = "c5ec40971befd1d214d80c8c2ced3e30aaadfd2d4000ea782751f769783f8130";
-      name = "kross-interpreters-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/kross-interpreters-19.12.3.tar.xz";
+      sha256 = "2b4060494901a68ca1d07e0c345cc0814e11fb84e9f48014a7231021e4377487";
+      name = "kross-interpreters-19.12.3.tar.xz";
     };
   };
   kruler = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/kruler-19.12.1.tar.xz";
-      sha256 = "0ecbc70561c0d973866c4bd27333a5ddc904b748fb3a64f66b6b06040b30d34a";
-      name = "kruler-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/kruler-19.12.3.tar.xz";
+      sha256 = "803a0d31bbb5bfbfa057b13a7f6bbf7630dcc1816a0d41ea13cc4592bdacaa47";
+      name = "kruler-19.12.3.tar.xz";
     };
   };
   kshisen = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/kshisen-19.12.1.tar.xz";
-      sha256 = "a361dfc41595640287dd5b800921859ff17a45f7360e5e2fc6f520cc0e421afa";
-      name = "kshisen-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/kshisen-19.12.3.tar.xz";
+      sha256 = "f6ce353725d71ce65269b1b7b3d118cb8555cd065db0d3b17fe4696d87c10601";
+      name = "kshisen-19.12.3.tar.xz";
     };
   };
   ksirk = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/ksirk-19.12.1.tar.xz";
-      sha256 = "4f71e4ef3b4d2041edd48537f4b475cb505fc54e45b39b81a08c82d4eec7cc8e";
-      name = "ksirk-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/ksirk-19.12.3.tar.xz";
+      sha256 = "6387d7a6320e644157f10b94474ca715e7ad7fd15cdf7156a8e7d94bff019dcb";
+      name = "ksirk-19.12.3.tar.xz";
     };
   };
   ksmtp = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/ksmtp-19.12.1.tar.xz";
-      sha256 = "6c7d6ce91d65d7430cb31fb4a1fd44a600a5a459b3956807ee3180b5822dbac0";
-      name = "ksmtp-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/ksmtp-19.12.3.tar.xz";
+      sha256 = "1fd69f494afee91c11667ddbba43bc6cc316b51acf5894fe4c3a2631f53fae27";
+      name = "ksmtp-19.12.3.tar.xz";
     };
   };
   ksnakeduel = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/ksnakeduel-19.12.1.tar.xz";
-      sha256 = "73e9c55cce88a6e5d00683c73382ee82db64bfe788c14c3a4eda8decf382188f";
-      name = "ksnakeduel-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/ksnakeduel-19.12.3.tar.xz";
+      sha256 = "8db1dece78571f3e6933f8edcd693c3ceb1035acff780547a72c98b9f7decb87";
+      name = "ksnakeduel-19.12.3.tar.xz";
     };
   };
   kspaceduel = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/kspaceduel-19.12.1.tar.xz";
-      sha256 = "0bc1f1c12bcfc9e5c778918fb9fa644f5c7ec5c3e687c015d45a7c5c31a27834";
-      name = "kspaceduel-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/kspaceduel-19.12.3.tar.xz";
+      sha256 = "a9b5dc498b3695b59ae8925cc572cfc521ccadc8532756fa95ac876a7423c444";
+      name = "kspaceduel-19.12.3.tar.xz";
     };
   };
   ksquares = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/ksquares-19.12.1.tar.xz";
-      sha256 = "955225b9fadbda464bdaf1b59c95c3d12310f84484a296968737e9fb87b37b46";
-      name = "ksquares-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/ksquares-19.12.3.tar.xz";
+      sha256 = "45a922e4d85835cc655de560b6fd9be87d8cabc74eadbdecda3f17ba53ac92af";
+      name = "ksquares-19.12.3.tar.xz";
     };
   };
   ksudoku = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/ksudoku-19.12.1.tar.xz";
-      sha256 = "4dd72a5b0bb0c951508bbe2c60ce280efcd0414899e025a2ca4d92336576ec2a";
-      name = "ksudoku-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/ksudoku-19.12.3.tar.xz";
+      sha256 = "1cf36e762f31464b0640a88c739dfbb39b10129cace7fb5b74093ec607dea06c";
+      name = "ksudoku-19.12.3.tar.xz";
     };
   };
   ksystemlog = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/ksystemlog-19.12.1.tar.xz";
-      sha256 = "497496ca7451cd34f193ba11fe3100479515a89a34f0437ca2f508a48e68e895";
-      name = "ksystemlog-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/ksystemlog-19.12.3.tar.xz";
+      sha256 = "8225b1308ace76ebbf9bb805a2b6fae9bf8a425d0b09518645234c1b2df522dc";
+      name = "ksystemlog-19.12.3.tar.xz";
     };
   };
   kteatime = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/kteatime-19.12.1.tar.xz";
-      sha256 = "49a0531b64e93ceb29548a7f75da755e75afda001fce2e6ba906372456b5dc17";
-      name = "kteatime-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/kteatime-19.12.3.tar.xz";
+      sha256 = "0ab5fb6e33583e6d627b8f9dfaba5ce59e2b363e8045dfc66a4f65236d56542f";
+      name = "kteatime-19.12.3.tar.xz";
     };
   };
   ktimer = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/ktimer-19.12.1.tar.xz";
-      sha256 = "0c5fac1baddfa3144b8930f3d42b78a3eb8681d642a3c3339c903ad2cb30a2ba";
-      name = "ktimer-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/ktimer-19.12.3.tar.xz";
+      sha256 = "921af876a176a4731a74b5e9e76d751853043ec4f4857301b39a5c680246557c";
+      name = "ktimer-19.12.3.tar.xz";
     };
   };
   ktnef = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/ktnef-19.12.1.tar.xz";
-      sha256 = "2fce576e517e6ae9001ade6f07a51fcfa899a6569bc4b8c3948827adfc0af20c";
-      name = "ktnef-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/ktnef-19.12.3.tar.xz";
+      sha256 = "3537515b432e5da00d401046e94e0098fa54c071246cb0e357e3d8f47296ed3c";
+      name = "ktnef-19.12.3.tar.xz";
     };
   };
   ktouch = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/ktouch-19.12.1.tar.xz";
-      sha256 = "64b8a025f82b951c69c3be7aa7d3c23f14ccef9ed5e900776eb01462cff9a99f";
-      name = "ktouch-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/ktouch-19.12.3.tar.xz";
+      sha256 = "522fb081da5877717d577493fdaeeecbfe3d8d773e5d7fc83ecced008744ef0e";
+      name = "ktouch-19.12.3.tar.xz";
     };
   };
   ktp-accounts-kcm = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/ktp-accounts-kcm-19.12.1.tar.xz";
-      sha256 = "1ae81e4b7bae97d9d18c1fdc9e7083cc810b39d58dff5755dc9d78bd62551577";
-      name = "ktp-accounts-kcm-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/ktp-accounts-kcm-19.12.3.tar.xz";
+      sha256 = "ae5ae5004ecbf34596711a56e069d480c952de5ea784f5e90c391750439aff51";
+      name = "ktp-accounts-kcm-19.12.3.tar.xz";
     };
   };
   ktp-approver = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/ktp-approver-19.12.1.tar.xz";
-      sha256 = "502a63f13db44fc8a28f64e37c43839b8da22086bf858dc9c492476d9ba14b50";
-      name = "ktp-approver-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/ktp-approver-19.12.3.tar.xz";
+      sha256 = "af4f6d247b6332745f6b6dfacef74eb2ea0f7bbea9398080fc7b57e5953fdfbd";
+      name = "ktp-approver-19.12.3.tar.xz";
     };
   };
   ktp-auth-handler = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/ktp-auth-handler-19.12.1.tar.xz";
-      sha256 = "109583d4800d293fe11eeaa553d72643f2a3709c0d078a6e842f2e4b228d93e0";
-      name = "ktp-auth-handler-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/ktp-auth-handler-19.12.3.tar.xz";
+      sha256 = "40822e78879d97c3cc1d16f44f7d3b581980c4e249a273d7471b291adf3b9225";
+      name = "ktp-auth-handler-19.12.3.tar.xz";
     };
   };
   ktp-call-ui = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/ktp-call-ui-19.12.1.tar.xz";
-      sha256 = "adb3025f8f878fd4a56ce125bd51c155f26b02661b9365b6321fb456153b0c55";
-      name = "ktp-call-ui-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/ktp-call-ui-19.12.3.tar.xz";
+      sha256 = "96b1dd64b0f87228d76f12b6cad3677afeb4c44d6f18645c3001555506573fb1";
+      name = "ktp-call-ui-19.12.3.tar.xz";
     };
   };
   ktp-common-internals = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/ktp-common-internals-19.12.1.tar.xz";
-      sha256 = "4a1f189c1393164fba710e63b0e8f1aae6f22a5faacea0d86544e3e4a471603a";
-      name = "ktp-common-internals-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/ktp-common-internals-19.12.3.tar.xz";
+      sha256 = "48cde7fc4f2f0d39999f70699867044e0f85e06769a0824aac49c572fb1af5a4";
+      name = "ktp-common-internals-19.12.3.tar.xz";
     };
   };
   ktp-contact-list = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/ktp-contact-list-19.12.1.tar.xz";
-      sha256 = "c293fa90899d496c4e29b9c9986a3864e06ef22dabbd4583123abbc232f4fe25";
-      name = "ktp-contact-list-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/ktp-contact-list-19.12.3.tar.xz";
+      sha256 = "093544e84ca12169966837be5f01d339ddc59e5f031d78e68ddf7be4dd890efd";
+      name = "ktp-contact-list-19.12.3.tar.xz";
     };
   };
   ktp-contact-runner = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/ktp-contact-runner-19.12.1.tar.xz";
-      sha256 = "a86d8a67f3d8f3d741c6c4548a58cbdff384e8bd5ed5cd1d82db65456240ac0f";
-      name = "ktp-contact-runner-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/ktp-contact-runner-19.12.3.tar.xz";
+      sha256 = "50646e8670449d6f6a9b107e36f18174b5ec37052a7b4f471617f4f53fecc96b";
+      name = "ktp-contact-runner-19.12.3.tar.xz";
     };
   };
   ktp-desktop-applets = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/ktp-desktop-applets-19.12.1.tar.xz";
-      sha256 = "63f1a0df6a392f41a54fda8c4896754c2687ba34968cf5bbc0ac84a37c1a1741";
-      name = "ktp-desktop-applets-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/ktp-desktop-applets-19.12.3.tar.xz";
+      sha256 = "4ab8f04537345db8e41ed9f8ff7a6a2f3135e3539382cef97d1a7e9f0eddb54e";
+      name = "ktp-desktop-applets-19.12.3.tar.xz";
     };
   };
   ktp-filetransfer-handler = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/ktp-filetransfer-handler-19.12.1.tar.xz";
-      sha256 = "208aab8c78f4b7f38e331802a63fa10d00a65c115900c72c7a710b799ea56034";
-      name = "ktp-filetransfer-handler-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/ktp-filetransfer-handler-19.12.3.tar.xz";
+      sha256 = "b2e81fec33b51628d9d88707b6bd844c69eb2c9bfb00cb0b45759a4fd9769b03";
+      name = "ktp-filetransfer-handler-19.12.3.tar.xz";
     };
   };
   ktp-kded-module = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/ktp-kded-module-19.12.1.tar.xz";
-      sha256 = "274f97c6874eeb2af14b937ed20430d2ac2e1a769890a70da8d477ac33ed6082";
-      name = "ktp-kded-module-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/ktp-kded-module-19.12.3.tar.xz";
+      sha256 = "6bb0c05683812738e254c88d39936565966096a7156111565d8a64a59c55ef0d";
+      name = "ktp-kded-module-19.12.3.tar.xz";
     };
   };
   ktp-send-file = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/ktp-send-file-19.12.1.tar.xz";
-      sha256 = "5652e40e02ac191ad6e8df276a5faf8805000760261d495f3f4424416da3b977";
-      name = "ktp-send-file-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/ktp-send-file-19.12.3.tar.xz";
+      sha256 = "566d9dccc0c2fa7c23c95051c25543d3aabe76065ddff7dff9d8a37683d2022b";
+      name = "ktp-send-file-19.12.3.tar.xz";
     };
   };
   ktp-text-ui = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/ktp-text-ui-19.12.1.tar.xz";
-      sha256 = "226efc09343bb9218c461858747a1bc084ad8291fbbcc9f49eb888acfe2039c6";
-      name = "ktp-text-ui-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/ktp-text-ui-19.12.3.tar.xz";
+      sha256 = "b8ad9a224ae300c0412874d0877fdc8e050869d3a8f60a4051a0919a8749c50f";
+      name = "ktp-text-ui-19.12.3.tar.xz";
     };
   };
   ktuberling = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/ktuberling-19.12.1.tar.xz";
-      sha256 = "4c0d594ef72bd2dda5d42daf0f8b430319cbea6d28ba5c9725895b1221cdaace";
-      name = "ktuberling-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/ktuberling-19.12.3.tar.xz";
+      sha256 = "c4d74d18173d5761f7e6f8adf6178713a726c671aaa2eda4e6c77115484e9e55";
+      name = "ktuberling-19.12.3.tar.xz";
     };
   };
   kturtle = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/kturtle-19.12.1.tar.xz";
-      sha256 = "de10ea1ee142aea6fba8dee0d27d2e431aa806c6d7be4f5b5727cba8984e8d51";
-      name = "kturtle-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/kturtle-19.12.3.tar.xz";
+      sha256 = "6958a88c484261919cd89cb1f0d163b0c5d5f1e28b10b3b4e3b6b9e82e379ef1";
+      name = "kturtle-19.12.3.tar.xz";
     };
   };
   kubrick = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/kubrick-19.12.1.tar.xz";
-      sha256 = "485e7e4a30b01cb2661c640214bdc71a3e0a8b61a9071c64ffbbe75e2270af3c";
-      name = "kubrick-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/kubrick-19.12.3.tar.xz";
+      sha256 = "8fc0a0e68d255481c6efb3f4ff894c5e376367b29958c4738bd72d3f4b1ff557";
+      name = "kubrick-19.12.3.tar.xz";
     };
   };
   kwalletmanager = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/kwalletmanager-19.12.1.tar.xz";
-      sha256 = "b2370fbf559a3b8e8551daedada9c97d07041388dc74f8bd1286c64ab18b936b";
-      name = "kwalletmanager-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/kwalletmanager-19.12.3.tar.xz";
+      sha256 = "247c7f80a54babd21a13e6b9386370b72ec12bdf928c08a7e8a647ccca53e393";
+      name = "kwalletmanager-19.12.3.tar.xz";
     };
   };
   kwave = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/kwave-19.12.1.tar.xz";
-      sha256 = "e6c336644c00a457b37820fc87668dd9b8a448d8abf84cda267b6e5cd01e0645";
-      name = "kwave-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/kwave-19.12.3.tar.xz";
+      sha256 = "3c90115d4702dbe46767e2404c952d84533137fa558b787b87ff95ed61f6930d";
+      name = "kwave-19.12.3.tar.xz";
     };
   };
   kwordquiz = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/kwordquiz-19.12.1.tar.xz";
-      sha256 = "8ee204de56fe2bf33e11d19b9c0c21d7e3dcf26bf550f9dffa79b22a3082659f";
-      name = "kwordquiz-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/kwordquiz-19.12.3.tar.xz";
+      sha256 = "6965a3b3c171c3f62aeecf4ccdddde14d23062ab914b1860822546a5770b80fc";
+      name = "kwordquiz-19.12.3.tar.xz";
     };
   };
   libgravatar = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/libgravatar-19.12.1.tar.xz";
-      sha256 = "84525db5f24c04cfa2bb44376a3bd64368e9d9478a160cf862c695052f3fc254";
-      name = "libgravatar-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/libgravatar-19.12.3.tar.xz";
+      sha256 = "70ea306f48aede9f8f327eaa74ea5ce5761e5dfe67f2da50d3242c0f312edc86";
+      name = "libgravatar-19.12.3.tar.xz";
     };
   };
   libkcddb = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/libkcddb-19.12.1.tar.xz";
-      sha256 = "50c139aaa14a5f27b3818cec7ec6ede4b764d461b6547651b61e4edd295afe6f";
-      name = "libkcddb-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/libkcddb-19.12.3.tar.xz";
+      sha256 = "69cbaf03adba24c0cabf957ee4149c4fa86d403eb6b8a07f7f80eb17be49e892";
+      name = "libkcddb-19.12.3.tar.xz";
     };
   };
   libkcompactdisc = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/libkcompactdisc-19.12.1.tar.xz";
-      sha256 = "95b14098b24a86094b01b357e36ae135fb6c85c838e8735c843d27b101cc2bd9";
-      name = "libkcompactdisc-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/libkcompactdisc-19.12.3.tar.xz";
+      sha256 = "74aac7dcac84c60a7962f23e7bcc6eb693048fd96ca21015441a87487baa9d1c";
+      name = "libkcompactdisc-19.12.3.tar.xz";
     };
   };
   libkdcraw = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/libkdcraw-19.12.1.tar.xz";
-      sha256 = "bbdd5b1b9b40780b5f2be567d9ba0ab163fe7dcc7121070b788106e0fe966c1e";
-      name = "libkdcraw-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/libkdcraw-19.12.3.tar.xz";
+      sha256 = "9454aed707ee311dbfb921f8d45fba11710ffc01f48d65f64585d12c2580116f";
+      name = "libkdcraw-19.12.3.tar.xz";
     };
   };
   libkdegames = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/libkdegames-19.12.1.tar.xz";
-      sha256 = "317513544e08d03b2381bdb4c0bcd24c844dd8af7ccc4896569dd05933061d9c";
-      name = "libkdegames-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/libkdegames-19.12.3.tar.xz";
+      sha256 = "39cf5039b7fe11688028df026252c9cd4424546817b5bb635af2558f71ba6b20";
+      name = "libkdegames-19.12.3.tar.xz";
     };
   };
   libkdepim = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/libkdepim-19.12.1.tar.xz";
-      sha256 = "1d626a959a0f9fcb24c4e01c553126d40314c789db9bc80d6b52f2bb75e233cd";
-      name = "libkdepim-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/libkdepim-19.12.3.tar.xz";
+      sha256 = "911e7d174240d4c056472549dbd1f3da4467a57c765f3cb34fbac32943f38dbb";
+      name = "libkdepim-19.12.3.tar.xz";
     };
   };
   libkeduvocdocument = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/libkeduvocdocument-19.12.1.tar.xz";
-      sha256 = "a0e3921dab9d892d5efcddfbca548f230b508fc81ab4d7735c7610a710791816";
-      name = "libkeduvocdocument-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/libkeduvocdocument-19.12.3.tar.xz";
+      sha256 = "31594d30e03890507b25d676981164fd64258e69c6b264b85939118377eda964";
+      name = "libkeduvocdocument-19.12.3.tar.xz";
     };
   };
   libkexiv2 = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/libkexiv2-19.12.1.tar.xz";
-      sha256 = "53b9a4ecda0f76df1a5b9f7b8184b85e847838cf97e4ad3036a6c5bb719993e5";
-      name = "libkexiv2-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/libkexiv2-19.12.3.tar.xz";
+      sha256 = "f5d0947f6b1ca0583d569990dc6f68bb01d8f7756a38bcc40b1e54f7814e4d4d";
+      name = "libkexiv2-19.12.3.tar.xz";
     };
   };
   libkgapi = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/libkgapi-19.12.1.tar.xz";
-      sha256 = "8bfa16ab76b0042e2a0b827cf251b1155c0e693db39ffcb2805613d3393389cf";
-      name = "libkgapi-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/libkgapi-19.12.3.tar.xz";
+      sha256 = "f52923c382272b47782348fbadb32902fbcd4652f4100875a745ba57033cf48a";
+      name = "libkgapi-19.12.3.tar.xz";
     };
   };
   libkgeomap = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/libkgeomap-19.12.1.tar.xz";
-      sha256 = "68c9c5b91e77a4b4a07ca646d58e8e890975825f8f851d850c95dacb7a1d90d2";
-      name = "libkgeomap-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/libkgeomap-19.12.3.tar.xz";
+      sha256 = "eb604deffe78cdcd4a8c7d888416246d0a17f2e3b7d80d6959e1412f03ab2755";
+      name = "libkgeomap-19.12.3.tar.xz";
     };
   };
   libkipi = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/libkipi-19.12.1.tar.xz";
-      sha256 = "79f0a994b348467353425aea60dc4f4234c9a259cffcb55ac60d8c195bd0122c";
-      name = "libkipi-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/libkipi-19.12.3.tar.xz";
+      sha256 = "3a57d07cd4fe8e118558d807242bf483fa2aac1bcf3dcdc29139636c2b280786";
+      name = "libkipi-19.12.3.tar.xz";
     };
   };
   libkleo = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/libkleo-19.12.1.tar.xz";
-      sha256 = "8e9b78fbeb861370ab81f98150ff9ea8afc960293ae8324fedd0b877302994a7";
-      name = "libkleo-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/libkleo-19.12.3.tar.xz";
+      sha256 = "1e715442a0c52ca561316abdce9662082f52ad9f3101ea01435a90984989a057";
+      name = "libkleo-19.12.3.tar.xz";
     };
   };
   libkmahjongg = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/libkmahjongg-19.12.1.tar.xz";
-      sha256 = "e6a107a32c01c654a2372fda984724b4acd59dbc2902f3f9c7a7d9e14587639c";
-      name = "libkmahjongg-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/libkmahjongg-19.12.3.tar.xz";
+      sha256 = "f8ea23952a576e6081052d10e9c967bebe5db017ad62775183f91236158cc19f";
+      name = "libkmahjongg-19.12.3.tar.xz";
     };
   };
   libkomparediff2 = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/libkomparediff2-19.12.1.tar.xz";
-      sha256 = "319d61742f7603a60d781151cd717291c5cb976ff0f2895df9d167526cfb0b4a";
-      name = "libkomparediff2-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/libkomparediff2-19.12.3.tar.xz";
+      sha256 = "aadc6e420e24bdebe203d4dfc76f5c23c8529be70ac057d89b516ab57b165094";
+      name = "libkomparediff2-19.12.3.tar.xz";
     };
   };
   libksane = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/libksane-19.12.1.tar.xz";
-      sha256 = "5a5998996848e83c80589c8ed0b1a6c1fa48bb61686288d199d831ac810e1603";
-      name = "libksane-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/libksane-19.12.3.tar.xz";
+      sha256 = "0aab855b8414041c37ddfbb9f0732272206af1c0844376f1370b9d2a907af71d";
+      name = "libksane-19.12.3.tar.xz";
     };
   };
   libksieve = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/libksieve-19.12.1.tar.xz";
-      sha256 = "6c3d49e2ce4d8e6b7c1b4328aa6065a01c7711223dd4f3b9db3a542f9fc0a84c";
-      name = "libksieve-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/libksieve-19.12.3.tar.xz";
+      sha256 = "990e6a15e7e88120bf6c744fe6f1ac78184d6470318005f24634a70219f45002";
+      name = "libksieve-19.12.3.tar.xz";
     };
   };
   lokalize = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/lokalize-19.12.1.tar.xz";
-      sha256 = "ee29cff9a513d68cde72e6ace0f893de77be5cb3fe56b4b6e0d1fa5b808b424c";
-      name = "lokalize-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/lokalize-19.12.3.tar.xz";
+      sha256 = "8015c994e974fd51c1c7f5903a005bbbc25f094656bdd44cd5e8675cd69cea92";
+      name = "lokalize-19.12.3.tar.xz";
     };
   };
   lskat = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/lskat-19.12.1.tar.xz";
-      sha256 = "0aa36c4cc554b708f7334b32362831537ea52db81b8480b80ffac5c27a041e8f";
-      name = "lskat-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/lskat-19.12.3.tar.xz";
+      sha256 = "5f13417ba9f6831a5f48c220a5c67a8d73787715b8b4aa433e6e356b7ac58776";
+      name = "lskat-19.12.3.tar.xz";
     };
   };
   mailcommon = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/mailcommon-19.12.1.tar.xz";
-      sha256 = "160135049bc2e4984f14022af793a9ac05bf488faa6f9eb7bd86a094de1c9bfe";
-      name = "mailcommon-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/mailcommon-19.12.3.tar.xz";
+      sha256 = "d3999d290505b20aecbb4b14bec5af4d6a7db72d1f26f7a40b4aff231588c7e5";
+      name = "mailcommon-19.12.3.tar.xz";
     };
   };
   mailimporter = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/mailimporter-19.12.1.tar.xz";
-      sha256 = "c1a042560438d6f6195a1f64355515489b74a44c1d2f5f547ced6785439215f1";
-      name = "mailimporter-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/mailimporter-19.12.3.tar.xz";
+      sha256 = "b81e8a5794aee24aa611c1a1912f93a308ce56c429ad4a72afe308e6b554c4a7";
+      name = "mailimporter-19.12.3.tar.xz";
     };
   };
   marble = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/marble-19.12.1.tar.xz";
-      sha256 = "46ec0dcab4773ccfb843ae52881ae833b038a00b7690977a2e721099264dc8dd";
-      name = "marble-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/marble-19.12.3.tar.xz";
+      sha256 = "73a2c5234f8a1728e2a97499166e7bbf8dfb2f48d10fe8cff96380631d064627";
+      name = "marble-19.12.3.tar.xz";
     };
   };
   mbox-importer = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/mbox-importer-19.12.1.tar.xz";
-      sha256 = "04dd6220192095d0f7befb368b9d96a321acac7af43b3575faf25ae89d17b5f4";
-      name = "mbox-importer-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/mbox-importer-19.12.3.tar.xz";
+      sha256 = "62fb1490517e0a49bf823946c8b747062cb970dbe00281d459adda73596f0046";
+      name = "mbox-importer-19.12.3.tar.xz";
     };
   };
   messagelib = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/messagelib-19.12.1.tar.xz";
-      sha256 = "d2514ac31f78235340353701f735a15f69d99374a55566ec7702a3a5ddd23d05";
-      name = "messagelib-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/messagelib-19.12.3.tar.xz";
+      sha256 = "5e776d5ea7b0cbb246b03cf2bfc84a65a959e7433a7f80b77a5f67cfa7c23ccb";
+      name = "messagelib-19.12.3.tar.xz";
     };
   };
   minuet = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/minuet-19.12.1.tar.xz";
-      sha256 = "735b340f9f0d6ee09c2c6aa76061282da6bd921f8b77683c53311731a77edff1";
-      name = "minuet-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/minuet-19.12.3.tar.xz";
+      sha256 = "740a3704004336f08c0fde148257c1562254b4e706704ec7eb2149fb3d7b6b9b";
+      name = "minuet-19.12.3.tar.xz";
     };
   };
   okular = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/okular-19.12.1.tar.xz";
-      sha256 = "485044127c6bbe0d4c71f1518da15050957c06b8fe36633462367d15d684d4bd";
-      name = "okular-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/okular-19.12.3.tar.xz";
+      sha256 = "c5de22cc4292e3b7adae3f6ef6566dcba33a1dd5995fb0b968ea3e705a4c04e0";
+      name = "okular-19.12.3.tar.xz";
     };
   };
   palapeli = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/palapeli-19.12.1.tar.xz";
-      sha256 = "ea4d9dd576066a610444680f3e8686f242bc8be9222020423acab52ec98a185f";
-      name = "palapeli-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/palapeli-19.12.3.tar.xz";
+      sha256 = "6989bbc94ed955f6990d40bccbc0c38768898bf2ccb8163c45119517340b723d";
+      name = "palapeli-19.12.3.tar.xz";
     };
   };
   parley = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/parley-19.12.1.tar.xz";
-      sha256 = "54b91178a9bd1ff9c1817bd0df69a3a4bb9e4f3488f052034dd45e729f1325b6";
-      name = "parley-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/parley-19.12.3.tar.xz";
+      sha256 = "ebf9fdec981abca988d83d8a77e921e7ce871eb010b6cf4ea9065ee6d45f5089";
+      name = "parley-19.12.3.tar.xz";
     };
   };
   picmi = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/picmi-19.12.1.tar.xz";
-      sha256 = "5428ef9add8dd9479f319b8c08fbfefca9ee34fbf503bee1c55b04ecf82ae9f9";
-      name = "picmi-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/picmi-19.12.3.tar.xz";
+      sha256 = "04a69125fc76b1fcd58d873452e4a4e642ee9ee672cdb7656214d8cd854fc178";
+      name = "picmi-19.12.3.tar.xz";
     };
   };
   pimcommon = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/pimcommon-19.12.1.tar.xz";
-      sha256 = "d3058407ec578a32df82eb83eb7631d2904e75d6d345ed61dac0f3744840ebf5";
-      name = "pimcommon-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/pimcommon-19.12.3.tar.xz";
+      sha256 = "443e2915eb42a4f56f1ddf47785ceeceb4ca1e0384ff48bc93fc4a7756392766";
+      name = "pimcommon-19.12.3.tar.xz";
     };
   };
   pim-data-exporter = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/pim-data-exporter-19.12.1.tar.xz";
-      sha256 = "3f650c1c221826079d7c739e4070e295a7a1b1156f75e8e3100b06f878efed12";
-      name = "pim-data-exporter-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/pim-data-exporter-19.12.3.tar.xz";
+      sha256 = "8e9961fcc4f1ed0305d589e3a417f8924657d89d798a77c53956d73f6bf19938";
+      name = "pim-data-exporter-19.12.3.tar.xz";
     };
   };
   pim-sieve-editor = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/pim-sieve-editor-19.12.1.tar.xz";
-      sha256 = "3fdca7147c581dce4a014dc2d30bd7e6616c0559654cf9fee68e9292fd6ef037";
-      name = "pim-sieve-editor-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/pim-sieve-editor-19.12.3.tar.xz";
+      sha256 = "641ea56304df079a80e098fb253c173b63266990856f8795af093c144c3883ae";
+      name = "pim-sieve-editor-19.12.3.tar.xz";
     };
   };
   poxml = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/poxml-19.12.1.tar.xz";
-      sha256 = "f02aa4d1f7de8fb38921fe73076b3e905185979d9b75ff6345efaca8aad0ebb9";
-      name = "poxml-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/poxml-19.12.3.tar.xz";
+      sha256 = "190178290ce18fe3a684c22d650843f3008a6e31ebbab8fff25491c58b21e276";
+      name = "poxml-19.12.3.tar.xz";
     };
   };
   print-manager = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/print-manager-19.12.1.tar.xz";
-      sha256 = "76336be7da80a7494e2e5d5c9ab431047672a98630c7d61f916aa4b9edc35776";
-      name = "print-manager-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/print-manager-19.12.3.tar.xz";
+      sha256 = "74c13802a65136539b4542fec10fb248149a3324e8060e947a8f305ce665269a";
+      name = "print-manager-19.12.3.tar.xz";
     };
   };
   rocs = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/rocs-19.12.1.tar.xz";
-      sha256 = "cc9ff080b05bd6c48ee438c968917d8eb6f6eccb45ca70b45c5e53dce396bb45";
-      name = "rocs-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/rocs-19.12.3.tar.xz";
+      sha256 = "f834e69e676913e364162906b79da5a75a6043f4a5c8506954d1630abda45e3c";
+      name = "rocs-19.12.3.tar.xz";
     };
   };
   signon-kwallet-extension = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/signon-kwallet-extension-19.12.1.tar.xz";
-      sha256 = "a98397cc15733b9c1010f022a8d6bcf7727c4065ba6ae662273ba97864836bbe";
-      name = "signon-kwallet-extension-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/signon-kwallet-extension-19.12.3.tar.xz";
+      sha256 = "46199be023bad630b769b14c2c0a63feff2949da944c76780b1ebd9a50ee3daa";
+      name = "signon-kwallet-extension-19.12.3.tar.xz";
     };
   };
   spectacle = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/spectacle-19.12.1.tar.xz";
-      sha256 = "140f388c531043eeefff8d639eb468d1ed33397925021c6809c0c8a799bb25c9";
-      name = "spectacle-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/spectacle-19.12.3.tar.xz";
+      sha256 = "443f114dab1fb50e7e12a046fdf06c0456bf99a3abdf09dce05605fdf7d3de81";
+      name = "spectacle-19.12.3.tar.xz";
     };
   };
   step = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/step-19.12.1.tar.xz";
-      sha256 = "f171c58b567bb29ed50109b341e53dc00116e814c90f51aa7a6e405326982907";
-      name = "step-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/step-19.12.3.tar.xz";
+      sha256 = "0eb62c87553769e009daa02406b1d95742c946bdffe0d22327776ec558e7584b";
+      name = "step-19.12.3.tar.xz";
     };
   };
   svgpart = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/svgpart-19.12.1.tar.xz";
-      sha256 = "6083457999121ead13b6c267211a78ea04c925d6f9f7447b31677c0b49f6898b";
-      name = "svgpart-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/svgpart-19.12.3.tar.xz";
+      sha256 = "942d877a516d8407ef2782d7c6869ab688274fee6cde9b23ab1061bcbddf2cc9";
+      name = "svgpart-19.12.3.tar.xz";
     };
   };
   sweeper = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/sweeper-19.12.1.tar.xz";
-      sha256 = "50b1464c08b738f4af4c78b4edc291ce93877a52831b810cd12c8ca6a4df0cf9";
-      name = "sweeper-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/sweeper-19.12.3.tar.xz";
+      sha256 = "cf89cfba61c9eeda9b4e7921c21a23e7d9a110b134ab6fbd127c37d036bd0517";
+      name = "sweeper-19.12.3.tar.xz";
     };
   };
   umbrello = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/umbrello-19.12.1.tar.xz";
-      sha256 = "077a1b5a3dfe15d37f03ee97ca5b40a1b8e7e0f2305df2f16a966861cc79e0d6";
-      name = "umbrello-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/umbrello-19.12.3.tar.xz";
+      sha256 = "b2f769c7bd1cc259170b62c68d2dca05b4a143dd1048dbb507cf2bbb3020a193";
+      name = "umbrello-19.12.3.tar.xz";
     };
   };
   yakuake = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/yakuake-19.12.1.tar.xz";
-      sha256 = "abff4f358f41f544b2e12c340a74d92482241b1b95906b14add7810384602e42";
-      name = "yakuake-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/yakuake-19.12.3.tar.xz";
+      sha256 = "0e4f16eaf155750b0c35f1f8f1a625909f386f3359b9f23bf4e7c2f9045384e3";
+      name = "yakuake-19.12.3.tar.xz";
     };
   };
   zeroconf-ioslave = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/zeroconf-ioslave-19.12.1.tar.xz";
-      sha256 = "39641a186de9d0704a58063a8a37cfb3a405ff6bd9957c7d09efec3bec4dfc60";
-      name = "zeroconf-ioslave-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/zeroconf-ioslave-19.12.3.tar.xz";
+      sha256 = "c9b2146030a9845b8164f5784d1c6fcc198b6cfe0e23f6a91edf78d093e4368f";
+      name = "zeroconf-ioslave-19.12.3.tar.xz";
     };
   };
 }
diff --git a/pkgs/applications/kde/yakuake.nix b/pkgs/applications/kde/yakuake.nix
index 6f9c8df30012..cb7f7070b24a 100644
--- a/pkgs/applications/kde/yakuake.nix
+++ b/pkgs/applications/kde/yakuake.nix
@@ -24,7 +24,7 @@ mkDerivation {
   ];
 
   meta = {
-    homepage = https://yakuake.kde.org;
+    homepage = "https://yakuake.kde.org";
     description = "Quad-style terminal emulator for KDE";
     maintainers = with lib.maintainers; [ fridh ];
     license = lib.licenses.gpl2;
diff --git a/pkgs/applications/misc/1password/default.nix b/pkgs/applications/misc/1password/default.nix
index 1c409c232a82..010e9ae7a502 100644
--- a/pkgs/applications/misc/1password/default.nix
+++ b/pkgs/applications/misc/1password/default.nix
@@ -1,42 +1,45 @@
-{ stdenv, fetchzip }:
+{ stdenv, fetchzip, autoPatchelfHook, fetchurl, xar, cpio }:
 
 stdenv.mkDerivation rec {
   pname = "1password";
-  version = "0.7.0";
+  version = "0.10.0";
   src =
     if stdenv.hostPlatform.system == "i686-linux" then
       fetchzip {
         url = "https://cache.agilebits.com/dist/1P/op/pkg/v${version}/op_linux_386_v${version}.zip";
-        sha256 = "1lhp0ws543855rvpvh84rjvyi471259lg618cciqj8j6k04ls1g0";
+        sha256 = "07j11ikd0rzsj4d8rv74rfy497svq6l2q94ndf3b0a0mr8riyazj";
         stripRoot = false;
       }
     else if stdenv.hostPlatform.system == "x86_64-linux" then
       fetchzip {
         url = "https://cache.agilebits.com/dist/1P/op/pkg/v${version}/op_linux_amd64_v${version}.zip";
-        sha256 = "1sjv5qrc80fk9yz0cn2yj0cdm47ab3ch8n9hzj9hv9d64gjv4w8n";
+        sha256 = "177cl4x7rj3d74kzrpmiwps5n31axmlhqdwrdpkmay2gk9inswbs";
         stripRoot = false;
       }
     else if stdenv.hostPlatform.system == "x86_64-darwin" then
-      fetchzip {
-        url = "https://cache.agilebits.com/dist/1P/op/pkg/v${version}/op_darwin_amd64_v${version}.zip";
-        sha256 = "1hnixmq7mrc6ky79k3s61vv89v4qhkm31kyni3rscibfrab0r8ir";
-        stripRoot = false;
+      fetchurl {
+        url = "https://cache.agilebits.com/dist/1P/op/pkg/v${version}/op_darwin_amd64_v${version}.pkg";
+        sha256 = "13yxmnh77g6zvl2gqf77m5i3v5706p2plgbgsn5hqrrf3g8ql63b";
       }
     else throw "Architecture not supported";
 
+  buildInputs = stdenv.lib.optionals stdenv.isDarwin [ xar cpio ];
+
+  unpackPhase = stdenv.lib.optionalString stdenv.isDarwin ''
+    xar -xf $src
+    zcat Payload | cpio -i
+  '';
+
   installPhase = ''
     install -D op $out/bin/op
   '';
-  postFixup = stdenv.lib.optionalString stdenv.isLinux ''
-    patchelf \
-      --set-interpreter $(cat $NIX_CC/nix-support/dynamic-linker) \
-      $out/bin/op
-  '';
+
+  nativeBuildInputs = stdenv.lib.optionals stdenv.isLinux [ autoPatchelfHook ];
 
   meta = with stdenv.lib; {
     description  = "1Password command-line tool";
-    homepage     = https://support.1password.com/command-line/;
-    downloadPage = https://app-updates.agilebits.com/product_history/CLI;
+    homepage     = "https://support.1password.com/command-line/";
+    downloadPage = "https://app-updates.agilebits.com/product_history/CLI";
     maintainers  = with maintainers; [ joelburget marsam ];
     license      = licenses.unfree;
     platforms    = [ "i686-linux" "x86_64-linux" "x86_64-darwin" ];
diff --git a/pkgs/applications/misc/abook/default.nix b/pkgs/applications/misc/abook/default.nix
index f87bd4c11ec4..4c03b197b4a0 100644
--- a/pkgs/applications/misc/abook/default.nix
+++ b/pkgs/applications/misc/abook/default.nix
@@ -20,7 +20,7 @@ stdenv.mkDerivation rec {
   buildInputs = [ ncurses readline ];
 
   meta = {
-    homepage = http://abook.sourceforge.net/;
+    homepage = "http://abook.sourceforge.net/";
     description = "Text-based addressbook program designed to use with mutt mail client";
     license = stdenv.lib.licenses.gpl2;
     maintainers = [ stdenv.lib.maintainers.edwtjo ];
diff --git a/pkgs/applications/misc/adobe-reader/default.nix b/pkgs/applications/misc/adobe-reader/default.nix
index d1e4856e0523..b67e514ce54d 100644
--- a/pkgs/applications/misc/adobe-reader/default.nix
+++ b/pkgs/applications/misc/adobe-reader/default.nix
@@ -26,7 +26,7 @@ stdenv.mkDerivation {
 
   meta = {
     description = "Adobe Reader, a viewer for PDF documents";
-    homepage = http://www.adobe.com/products/reader;
+    homepage = "http://www.adobe.com/products/reader";
     license = stdenv.lib.licenses.unfree;
   };
 }
diff --git a/pkgs/applications/misc/airtame/default.nix b/pkgs/applications/misc/airtame/default.nix
index 465c72d73f5c..043f1c86bd12 100644
--- a/pkgs/applications/misc/airtame/default.nix
+++ b/pkgs/applications/misc/airtame/default.nix
@@ -70,7 +70,7 @@ in stdenv.mkDerivation rec {
   dontPatchELF = true;
 
   meta = with stdenv.lib; {
-    homepage = https://airtame.com/download;
+    homepage = "https://airtame.com/download";
     description = "Wireless streaming client for Airtame devices";
     license = licenses.unfree;
     maintainers = with maintainers; [ thanegill ];
diff --git a/pkgs/applications/misc/alacritty/default.nix b/pkgs/applications/misc/alacritty/default.nix
index 78e7249a0873..518ec310ffbe 100644
--- a/pkgs/applications/misc/alacritty/default.nix
+++ b/pkgs/applications/misc/alacritty/default.nix
@@ -1,40 +1,38 @@
-{ stdenv,
-  lib,
-  fetchFromGitHub,
-  rustPlatform,
-
-  cmake,
-  gzip,
-  installShellFiles,
-  makeWrapper,
-  ncurses,
-  pkgconfig,
-  python3,
-
-  expat,
-  fontconfig,
-  freetype,
-  libGL,
-  libX11,
-  libXcursor,
-  libXi,
-  libXrandr,
-  libXxf86vm,
-  libxcb,
-  libxkbcommon,
-  wayland,
-  xdg_utils,
+{ stdenv
+, lib
+, fetchFromGitHub
+, rustPlatform
+
+, cmake
+, gzip
+, installShellFiles
+, makeWrapper
+, ncurses
+, pkgconfig
+, python3
+
+, expat
+, fontconfig
+, freetype
+, libGL
+, libX11
+, libXcursor
+, libXi
+, libXrandr
+, libXxf86vm
+, libxcb
+, libxkbcommon
+, wayland
+, xdg_utils
 
   # Darwin Frameworks
-  AppKit,
-  CoreGraphics,
-  CoreServices,
-  CoreText,
-  Foundation,
-  OpenGL }:
-
-with rustPlatform;
-
+, AppKit
+, CoreGraphics
+, CoreServices
+, CoreText
+, Foundation
+, OpenGL
+}:
 let
   rpathLibs = [
     expat
@@ -51,18 +49,19 @@ let
     libxkbcommon
     wayland
   ];
-in buildRustPackage rec {
+in
+rustPlatform.buildRustPackage rec {
   pname = "alacritty";
-  version = "0.4.1";
+  version = "0.4.2";
 
   src = fetchFromGitHub {
-    owner = "jwilm";
+    owner = "alacritty";
     repo = pname;
     rev = "v${version}";
-    sha256 = "05jcg33ifngpzw2hdhgb614j87ihhhlqgar0kky183rywg0dxikg";
+    sha256 = "133d8vm7ihlvgw8n1jghhh35h664h0f52h6gci54f11vl6c1spws";
   };
 
-  cargoSha256 = "182j8ah67b2gw409vjfml3p41i00zh0klx9m8bwfkm64y2ki2bip";
+  cargoSha256 = "07gq63qd11zz229b8jp9wqggz39qfpzd223z1zk1xch7rhqq0pn4";
 
   nativeBuildInputs = [
     cmake
@@ -75,9 +74,17 @@ in buildRustPackage rec {
   ];
 
   buildInputs = rpathLibs
-    ++ lib.optionals stdenv.isDarwin [ AppKit CoreGraphics CoreServices CoreText Foundation OpenGL ];
+  ++ lib.optionals stdenv.isDarwin [
+    AppKit
+    CoreGraphics
+    CoreServices
+    CoreText
+    Foundation
+    OpenGL
+  ];
 
   outputs = [ "out" "terminfo" ];
+
   postPatch = ''
     substituteInPlace alacritty/src/config/mouse.rs \
       --replace xdg-open ${xdg_utils}/bin/xdg-open
@@ -88,16 +95,24 @@ in buildRustPackage rec {
   installPhase = ''
     runHook preInstall
 
-    install -D target/release/alacritty $out/bin/alacritty
+    install -D $releaseDir/alacritty $out/bin/alacritty
+
+  '' + (
+    if stdenv.isDarwin then ''
+      mkdir $out/Applications
+      cp -r $releaseDir/osx/Alacritty.app $out/Applications/Alacritty.app
+    '' else ''
+      install -D extra/linux/Alacritty.desktop -t $out/share/applications/
+      install -D extra/logo/compat/alacritty-term.svg $out/share/icons/hicolor/scalable/apps/Alacritty.svg
+
+      # patchelf generates an ELF that binutils' "strip" doesn't like:
+      #    strip: not enough room for program headers, try linking with -N
+      # As a workaround, strip manually before running patchelf.
+      strip -S $out/bin/alacritty
 
-  '' + (if stdenv.isDarwin then ''
-    mkdir $out/Applications
-    cp -r target/release/osx/Alacritty.app $out/Applications/Alacritty.app
-  '' else ''
-    install -D extra/linux/alacritty.desktop -t $out/share/applications/
-    install -D extra/logo/alacritty-term.svg $out/share/icons/hicolor/scalable/apps/Alacritty.svg
-    patchelf --set-rpath "${stdenv.lib.makeLibraryPath rpathLibs}" $out/bin/alacritty
-  '') + ''
+      patchelf --set-rpath "${lib.makeLibraryPath rpathLibs}" $out/bin/alacritty
+    ''
+  ) + ''
 
     installShellCompletion --zsh extra/completions/_alacritty
     installShellCompletion --bash extra/completions/alacritty.bash
@@ -116,11 +131,11 @@ in buildRustPackage rec {
 
   dontPatchELF = true;
 
-  meta = with stdenv.lib; {
-    description = "GPU-accelerated terminal emulator";
-    homepage = "https://github.com/jwilm/alacritty";
+  meta = with lib; {
+    description = "A cross-platform, GPU-accelerated terminal emulator";
+    homepage = "https://github.com/alacritty/alacritty";
     license = licenses.asl20;
-    maintainers = with maintainers; [ filalex77 mic92 ];
+    maintainers = with maintainers; [ filalex77 mic92 cole-h ];
     platforms = platforms.unix;
   };
 }
diff --git a/pkgs/applications/misc/albert/default.nix b/pkgs/applications/misc/albert/default.nix
index 6fc5f9514651..5c43d717913b 100644
--- a/pkgs/applications/misc/albert/default.nix
+++ b/pkgs/applications/misc/albert/default.nix
@@ -38,7 +38,7 @@ mkDerivation rec {
   '';
 
   meta = with lib; {
-    homepage    = https://albertlauncher.github.io/;
+    homepage    = "https://albertlauncher.github.io/";
     description = "Desktop agnostic launcher";
     license     = licenses.gpl3Plus;
     maintainers = with maintainers; [ ericsagnes synthetica ];
diff --git a/pkgs/applications/misc/almanah/default.nix b/pkgs/applications/misc/almanah/default.nix
index 06321d9d6218..f554d36a0c6a 100644
--- a/pkgs/applications/misc/almanah/default.nix
+++ b/pkgs/applications/misc/almanah/default.nix
@@ -64,9 +64,9 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "Small GTK application to allow to keep a diary of your life";
-    homepage = https://wiki.gnome.org/Apps/Almanah_Diary;
+    homepage = "https://wiki.gnome.org/Apps/Almanah_Diary";
     license = licenses.gpl3Plus;
     platforms = platforms.unix;
-    maintainers = gnome3.maintainers;
+    maintainers = teams.gnome.members;
   };
 }
diff --git a/pkgs/applications/misc/aminal/default.nix b/pkgs/applications/misc/aminal/default.nix
index 8c5aded5ed9b..dff6b15494bb 100644
--- a/pkgs/applications/misc/aminal/default.nix
+++ b/pkgs/applications/misc/aminal/default.nix
@@ -61,7 +61,7 @@ buildGoPackage rec {
       - Built-in patched fonts for powerline
       - Retina display support
     '';
-    homepage = https://github.com/liamg/aminal;
+    homepage = "https://github.com/liamg/aminal";
     license = licenses.gpl3;
     maintainers = with maintainers; [ kalbasit ];
     platforms = platforms.linux ++ platforms.darwin;
diff --git a/pkgs/applications/misc/antfs-cli/default.nix b/pkgs/applications/misc/antfs-cli/default.nix
index 8108b9e4ddb4..49da252b6c0d 100644
--- a/pkgs/applications/misc/antfs-cli/default.nix
+++ b/pkgs/applications/misc/antfs-cli/default.nix
@@ -5,7 +5,7 @@ python3Packages.buildPythonApplication {
   version = "unstable-2017-02-11";
 
   meta = with stdenv.lib; {
-    homepage = https://github.com/Tigge/antfs-cli;
+    homepage = "https://github.com/Tigge/antfs-cli";
     description = "Extracts FIT files from ANT-FS based sport watches";
     license = licenses.mit;
     platforms = platforms.linux;
diff --git a/pkgs/applications/misc/appeditor/default.nix b/pkgs/applications/misc/appeditor/default.nix
index cda75ac4c050..d5d37ae27c95 100644
--- a/pkgs/applications/misc/appeditor/default.nix
+++ b/pkgs/applications/misc/appeditor/default.nix
@@ -58,7 +58,7 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "Edit the Pantheon desktop application menu";
-    homepage = https://github.com/donadigo/appeditor;
+    homepage = "https://github.com/donadigo/appeditor";
     maintainers = with maintainers; [ kjuvi ] ++ pantheon.maintainers;
     platforms = platforms.linux;
     license = licenses.gpl3;
diff --git a/pkgs/applications/misc/apvlv/default.nix b/pkgs/applications/misc/apvlv/default.nix
index b5af1af91f36..48efafa74fcd 100644
--- a/pkgs/applications/misc/apvlv/default.nix
+++ b/pkgs/applications/misc/apvlv/default.nix
@@ -59,7 +59,7 @@ stdenv.mkDerivation rec {
   '';
 
   meta = with stdenv.lib; {
-    homepage = http://naihe2010.github.io/apvlv/;
+    homepage = "http://naihe2010.github.io/apvlv/";
     description = "PDF viewer with Vim-like behaviour";
     longDescription = ''
       apvlv is a PDF/DJVU/UMD/TXT Viewer Under Linux/WIN32
diff --git a/pkgs/applications/misc/archiver/default.nix b/pkgs/applications/misc/archiver/default.nix
index 03f534e1a4da..64b592b78714 100644
--- a/pkgs/applications/misc/archiver/default.nix
+++ b/pkgs/applications/misc/archiver/default.nix
@@ -5,16 +5,16 @@
 
 buildGoModule rec {
   pname = "archiver";
-  version = "3.2.0";
+  version = "3.3.0";
 
   src = fetchFromGitHub {
     owner = "mholt";
     repo = pname;
     rev = "v${version}";
-    sha256 = "1kq2cyhbniwdabk426j493cs8d4nj35vmznm9031rrdd9ln5h9gl";
+    sha256 = "1yr2jhidqvbwh1y08lpqaidwpr5yx3bhvznm5fc9pk64s7z5kq3h";
   };
 
-  modSha256 = "13vwgqpw7ypq6mrvwmnl8n38x0h89ymryrrzkf7ya478fp00vclj";
+  modSha256 = "1mrfqhd0zb78rlqlj2ncb0srwjfl7rzhy2p9mwa82pgysvlp08gv";
 
   meta = with lib; {
     description = "Easily create & extract archives, and compress & decompress files of various formats";
diff --git a/pkgs/applications/misc/artha/default.nix b/pkgs/applications/misc/artha/default.nix
index b03d2aa208b5..648a2cfd9945 100644
--- a/pkgs/applications/misc/artha/default.nix
+++ b/pkgs/applications/misc/artha/default.nix
@@ -18,7 +18,7 @@ stdenv.mkDerivation {
 
   meta = with stdenv.lib; {
     description = "An offline thesaurus based on WordNet";
-    homepage = http://artha.sourceforge.net;
+    homepage = "http://artha.sourceforge.net";
     license = licenses.gpl2;
     maintainers = [ maintainers.goibhniu ];
     platforms = platforms.linux;
diff --git a/pkgs/applications/misc/asciiquarium/default.nix b/pkgs/applications/misc/asciiquarium/default.nix
index 0e524ede0912..592c0938ffbd 100644
--- a/pkgs/applications/misc/asciiquarium/default.nix
+++ b/pkgs/applications/misc/asciiquarium/default.nix
@@ -22,7 +22,7 @@ in stdenv.mkDerivation {
 
   meta = with stdenv.lib; {
     description = "Enjoy the mysteries of the sea from the safety of your own terminal!";
-    homepage = https://robobunny.com/projects/asciiquarium/html/;
+    homepage = "https://robobunny.com/projects/asciiquarium/html/";
     license = licenses.gpl2;
     platforms = platforms.unix;
     maintainers = [ maintainers.utdemir ];
diff --git a/pkgs/applications/misc/audio/sox/default.nix b/pkgs/applications/misc/audio/sox/default.nix
index 622e7169faec..32ea821b22d6 100644
--- a/pkgs/applications/misc/audio/sox/default.nix
+++ b/pkgs/applications/misc/audio/sox/default.nix
@@ -42,7 +42,7 @@ stdenv.mkDerivation rec {
 
   meta = {
     description = "Sample Rate Converter for audio";
-    homepage = http://sox.sourceforge.net/;
+    homepage = "http://sox.sourceforge.net/";
     maintainers = [ lib.maintainers.marcweber ];
     license = if enableAMR then lib.licenses.unfree else lib.licenses.gpl2Plus;
     platforms = lib.platforms.linux ++ lib.platforms.darwin;
diff --git a/pkgs/applications/misc/audio/soxr/default.nix b/pkgs/applications/misc/audio/soxr/default.nix
index 20a754ba98ae..59c7154fa7de 100644
--- a/pkgs/applications/misc/audio/soxr/default.nix
+++ b/pkgs/applications/misc/audio/soxr/default.nix
@@ -20,7 +20,7 @@ stdenv.mkDerivation rec {
 
   meta = {
     description = "An audio resampling library";
-    homepage = http://soxr.sourceforge.net;
+    homepage = "http://soxr.sourceforge.net";
     license = stdenv.lib.licenses.lgpl21Plus;
     platforms = stdenv.lib.platforms.unix;
   };
diff --git a/pkgs/applications/misc/audio/wavesurfer/default.nix b/pkgs/applications/misc/audio/wavesurfer/default.nix
index 0add5ed78cc5..0ca01c8d2aed 100644
--- a/pkgs/applications/misc/audio/wavesurfer/default.nix
+++ b/pkgs/applications/misc/audio/wavesurfer/default.nix
@@ -4,7 +4,7 @@ stdenv.mkDerivation {
   name = "wavesurfer-1.8.5";
 
   src = fetchurl {
-    url = https://www.speech.kth.se/wavesurfer/wavesurfer-1.8.5.tar.gz;
+    url = "https://www.speech.kth.se/wavesurfer/wavesurfer-1.8.5.tar.gz";
     sha256 = "1yx9s1j47cq0v40cwq2gn7bdizpw46l95ba4zl9z4gg31mfvm807";
   };
 
@@ -22,7 +22,7 @@ stdenv.mkDerivation {
 
   meta = { 
     description = "Tool for recording, playing, editing, viewing and labeling of audio";
-    homepage = http://www.speech.kth.se/wavesurfer/;
+    homepage = "http://www.speech.kth.se/wavesurfer/";
     license = "BSD";
   };
 }
diff --git a/pkgs/applications/misc/audio/wavrsocvt/default.nix b/pkgs/applications/misc/audio/wavrsocvt/default.nix
index 09b75e27d46a..ebb04a30ab86 100644
--- a/pkgs/applications/misc/audio/wavrsocvt/default.nix
+++ b/pkgs/applications/misc/audio/wavrsocvt/default.nix
@@ -30,7 +30,7 @@ stdenv.mkDerivation {
     supported sample rates in the standard NXT firmware).
     You can then upload these with e.g. nxt-python.
     '';
-    homepage = http://bricxcc.sourceforge.net/;
+    homepage = "http://bricxcc.sourceforge.net/";
     license = licenses.mpl11;
     maintainers = with maintainers; [ leenaars ];
     platforms = with platforms; linux;
diff --git a/pkgs/applications/misc/ausweisapp2/default.nix b/pkgs/applications/misc/ausweisapp2/default.nix
new file mode 100644
index 000000000000..953e12a033d0
--- /dev/null
+++ b/pkgs/applications/misc/ausweisapp2/default.nix
@@ -0,0 +1,27 @@
+{ stdenv, mkDerivation, fetchFromGitHub, cmake, pkgconfig, pcsclite, qtsvg, qttools, qtwebsockets
+, qtquickcontrols2, qtgraphicaleffects }:
+
+mkDerivation rec {
+  pname = "AusweisApp2";
+  version = "1.20.0";
+
+  src = fetchFromGitHub {
+    owner = "Governikus";
+    repo = "AusweisApp2";
+    rev = "${version}";
+    sha256 = "0qkwdaxhig4qjim7h20j6ln6w76ycppfc786nd8l69bd1qv46m40";
+  };
+
+  nativeBuildInputs = [ cmake pkgconfig ];
+
+  buildInputs = [ qtsvg qttools qtwebsockets qtquickcontrols2 qtgraphicaleffects pcsclite ];
+
+  meta = with stdenv.lib; {
+    description = "Authentication software for the German ID card";
+    downloadPage = "https://github.com/Governikus/AusweisApp2/releases";
+    homepage = "https://www.ausweisapp.bund.de/ausweisapp2/";
+    license = licenses.eupl12;
+    maintainers = with maintainers; [ b4dm4n ];
+    platforms = platforms.linux;
+  };
+}
diff --git a/pkgs/applications/misc/autospotting/default.nix b/pkgs/applications/misc/autospotting/default.nix
index b00686fb24f6..a33261e7a59d 100644
--- a/pkgs/applications/misc/autospotting/default.nix
+++ b/pkgs/applications/misc/autospotting/default.nix
@@ -20,7 +20,7 @@ buildGoPackage {
   '';
 
   meta = with stdenv.lib; {
-    homepage = https://github.com/AutoSpotting/AutoSpotting;
+    homepage = "https://github.com/AutoSpotting/AutoSpotting";
     description = "Automatically convert your existing AutoScaling groups to up to 90% cheaper spot instances with minimal configuration changes";
     license = licenses.free;
     maintainers = [ maintainers.costrouc ];
diff --git a/pkgs/applications/misc/avrdudess/default.nix b/pkgs/applications/misc/avrdudess/default.nix
index 165bee76b69b..f4a56e4f9240 100644
--- a/pkgs/applications/misc/avrdudess/default.nix
+++ b/pkgs/applications/misc/avrdudess/default.nix
@@ -34,7 +34,7 @@ stdenv.mkDerivation {
 
   meta = with stdenv.lib; {
     description = "GUI for AVRDUDE (AVR microcontroller programmer)";
-    homepage = https://github.com/zkemble/AVRDUDESS;
+    homepage = "https://github.com/zkemble/AVRDUDESS";
     license = licenses.gpl3;
     platforms = platforms.linux;
     maintainers = [ maintainers.bjornfor ];
diff --git a/pkgs/applications/misc/barrier/default.nix b/pkgs/applications/misc/barrier/default.nix
index 10e46176c6e6..28b65d2b58b6 100644
--- a/pkgs/applications/misc/barrier/default.nix
+++ b/pkgs/applications/misc/barrier/default.nix
@@ -32,8 +32,8 @@ mkDerivation rec {
       Synergy was a commercialized reimplementation of the original
       CosmoSynergy written by Chris Schoeneman.
     '';
-    homepage = https://github.com/debauchee/barrier;
-    downloadPage = https://github.com/debauchee/barrier/releases;
+    homepage = "https://github.com/debauchee/barrier";
+    downloadPage = "https://github.com/debauchee/barrier/releases";
     license = stdenv.lib.licenses.gpl2;
     maintainers = [ stdenv.lib.maintainers.phryneas ];
     platforms = stdenv.lib.platforms.linux;
diff --git a/pkgs/applications/misc/bashSnippets/default.nix b/pkgs/applications/misc/bashSnippets/default.nix
index 0976e7625bcf..4a023849f390 100644
--- a/pkgs/applications/misc/bashSnippets/default.nix
+++ b/pkgs/applications/misc/bashSnippets/default.nix
@@ -41,7 +41,7 @@ stdenv.mkDerivation {
 
   meta = with lib; {
     description = "A collection of small bash scripts for heavy terminal users";
-    homepage = https://github.com/alexanderepstein/Bash-Snippets;
+    homepage = "https://github.com/alexanderepstein/Bash-Snippets";
     license = licenses.mit;
     maintainers = with maintainers; [ infinisil ];
     platforms = platforms.unix;
diff --git a/pkgs/applications/misc/bb/default.nix b/pkgs/applications/misc/bb/default.nix
index 06df1df9f769..fd7eb4990f06 100644
--- a/pkgs/applications/misc/bb/default.nix
+++ b/pkgs/applications/misc/bb/default.nix
@@ -19,7 +19,7 @@ stdenv.mkDerivation rec {
   '';
 
   meta = with lib; {
-    homepage    = http://aa-project.sourceforge.net/bb;
+    homepage    = "http://aa-project.sourceforge.net/bb";
     description = "AA-lib demo";
     license     = licenses.gpl2;
     maintainers = [ maintainers.rnhmjoj ];
diff --git a/pkgs/applications/misc/bibletime/default.nix b/pkgs/applications/misc/bibletime/default.nix
index d0af940ac92a..cfac79bef4bd 100644
--- a/pkgs/applications/misc/bibletime/default.nix
+++ b/pkgs/applications/misc/bibletime/default.nix
@@ -1,8 +1,8 @@
-{ stdenv, fetchurl, cmake, pkgconfig, sword, boost, clucene_core
+{ mkDerivation, stdenv, fetchurl, cmake, pkgconfig, sword, boost, clucene_core
 , qtbase, qttools, qtsvg, qtwebkit
 }:
 
-stdenv.mkDerivation rec {
+mkDerivation rec {
 
   version = "2.11.2";
 
@@ -28,7 +28,7 @@ stdenv.mkDerivation rec {
 
   meta = {
     description = "A Qt4 Bible study tool";
-    homepage = http://www.bibletime.info/;
+    homepage = "http://www.bibletime.info/";
     platforms = stdenv.lib.platforms.linux;
     license = stdenv.lib.licenses.gpl2;
     maintainers = [ stdenv.lib.maintainers.piotr ];
diff --git a/pkgs/applications/misc/bicon/default.nix b/pkgs/applications/misc/bicon/default.nix
index 22eb3e3d8594..41b0d3c13a80 100644
--- a/pkgs/applications/misc/bicon/default.nix
+++ b/pkgs/applications/misc/bicon/default.nix
@@ -28,7 +28,7 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "A bidirectional console";
-    homepage =  https://github.com/behdad/bicon;
+    homepage =  "https://github.com/behdad/bicon";
     license = [ licenses.lgpl21 licenses.psfl licenses.bsd0 ];
     maintainers = [ maintainers.linarcx ];
     platforms = platforms.linux;
diff --git a/pkgs/applications/misc/birdtray/default.nix b/pkgs/applications/misc/birdtray/default.nix
index 39ecaa995d14..5385cf67884d 100644
--- a/pkgs/applications/misc/birdtray/default.nix
+++ b/pkgs/applications/misc/birdtray/default.nix
@@ -7,32 +7,27 @@
   , qtbase
   , qttools
   , qtx11extras
-  , sqlite
 }:
 
 mkDerivation rec {
   pname = "birdtray";
-  version = "1.7.0";
+  version = "1.8.1";
 
   src = fetchFromGitHub {
     owner = "gyunaev";
     repo = pname;
-    rev = "RELEASE_${version}";
-    sha256 = "0wj2lq5bz1p0cf6yj43v3ifxschcrh5amwx30wqw2m4bb8syzjw1";
+    rev = version;
+    sha256 = "15l8drdmamq1dpqpj0h9ajj2r5vcs23cx421drvhfgs6bqlzd1hl";
   };
 
   nativeBuildInputs = [ cmake pkgconfig ];
   buildInputs = [
-    qtbase qtx11extras sqlite
+    qtbase qttools qtx11extras
   ];
 
-  installPhase = ''
-    install -Dm755 birdtray $out/bin/birdtray
-  '';
-
   meta = with lib; {
     description = "Mail system tray notification icon for Thunderbird";
-    homepage = https://github.com/gyunaev/birdtray;
+    homepage = "https://github.com/gyunaev/birdtray";
     license = licenses.gpl3Plus;
     maintainers = with maintainers; [ Flakebi ];
     platforms = platforms.linux;
diff --git a/pkgs/applications/misc/bitcoinarmory/default.nix b/pkgs/applications/misc/bitcoinarmory/default.nix
deleted file mode 100644
index 090cb2f519e1..000000000000
--- a/pkgs/applications/misc/bitcoinarmory/default.nix
+++ /dev/null
@@ -1,92 +0,0 @@
-{ stdenv, fetchFromGitHub, pythonPackages
-, pkgconfig, autoreconfHook, rsync
-, swig, qt48Full, fcgi
-, bitcoin, procps, utillinux
-}:
-let
-
-  version = "0.96.1";
-  inherit (pythonPackages) buildPythonApplication pyqt4 psutil twisted;
-
-in buildPythonApplication {
-
-  pname = "bitcoinarmory";
-  inherit version;
-
-  src = fetchFromGitHub {
-    owner = "goatpig";
-    repo = "BitcoinArmory";
-    rev = "v${version}";
-    sha256 = "0pjk5qx16n3kvs9py62666qkwp2awkgd87by4karbj7vk6p1l14h"; fetchSubmodules = true;
-  };
-
-  format = "other";
-
-  # FIXME bitcoind doesn't die on shutdown. Need some sort of patch to fix that.
-  #patches = [ ./shutdown-fix.patch ];
-
-  nativeBuildInputs = [
-    autoreconfHook
-    pkgconfig
-    swig
-    pyqt4
-    qt48Full
-    rsync # used by silly install script (TODO patch upstream)
-  ];
-  buildInputs = [
-    qt48Full
-    fcgi
-  ];
-
-  propagatedBuildInputs = [
-    pyqt4
-    psutil
-    twisted
-  ];
-
-  makeFlags = [ "PREFIX=$(out)" ];
-
-  makeWrapperArgs = [
-    "--prefix            PATH : ${bitcoin}/bin"   # for `bitcoind`
-    "--prefix            PATH : ${procps}/bin"    # for `free`
-    "--prefix            PATH : ${utillinux}/bin" # for `whereis`
-    "--suffix LD_LIBRARY_PATH : $out/lib"         # for python bindings built as .so files
-    "--run    cd\\ $out/lib/armory"               # so that GUI resources can be loaded
-  ];
-
-  # auditTmpdir runs during fixupPhase, so patchelf before that
-  preFixup = ''
-    newRpath=$(patchelf --print-rpath $out/bin/ArmoryDB | sed -r 's|(.*)(/tmp/nix-build-.*libfcgi/.libs:?)(.*)|\1\3|')
-    patchelf --set-rpath $out/lib:$newRpath $out/bin/ArmoryDB
-  '';
-
-  # fixupPhase of mkPythonDerivation wraps $out/bin/*, so this needs to come after
-  postFixup = ''
-    wrapPythonProgramsIn $out/lib/armory "$out $pythonPath"
-    ln -sf $out/lib/armory/ArmoryQt.py $out/bin/armory
-  '';
-
-  meta = {
-    description = "Bitcoin wallet with cold storage and multi-signature support";
-    longDescription = ''
-      Armory is the most secure and full featured solution available for users
-      and institutions to generate and store Bitcoin private keys. This means
-      users never have to trust the Armory team and can use it with the Glacier
-      Protocol. Satoshi would be proud!
-
-      Users are empowered with multiple encrypted Bitcoin wallets and permanent
-      one-time ‘paper backups’. Armory pioneered cold storage and distributed
-      multi-signature. Bitcoin cold storage is a system for securely storing
-      Bitcoins on a completely air-gapped offline computer.
-
-      Maintainer's note: The original authors at https://bitcoinarmory.com/
-      discontinued development. I elected instead to package GitHub user
-      @goatpig's fork, as it's the most active, at time of this writing.
-    '';
-    homepage = https://github.com/goatpig/BitcoinArmory;
-    license = stdenv.lib.licenses.agpl3Plus;
-    maintainers = with stdenv.lib.maintainers; [ elitak ];
-    platforms = [ "i686-linux" "x86_64-linux" ];
-  };
-
-}
diff --git a/pkgs/applications/misc/bleachbit/default.nix b/pkgs/applications/misc/bleachbit/default.nix
index 4b2e1c667612..0111f8519e7c 100644
--- a/pkgs/applications/misc/bleachbit/default.nix
+++ b/pkgs/applications/misc/bleachbit/default.nix
@@ -54,7 +54,7 @@ pythonPackages.buildPythonApplication rec {
   strictDeps = false;
 
   meta = with stdenv.lib; {
-    homepage = http://bleachbit.sourceforge.net;
+    homepage = "http://bleachbit.sourceforge.net";
     description = "A program to clean your computer";
     longDescription = "BleachBit helps you easily clean your computer to free space and maintain privacy.";
     license = licenses.gpl3;
diff --git a/pkgs/applications/misc/blender/default.nix b/pkgs/applications/misc/blender/default.nix
index 75f5b8302e6f..e27aca4fc3d1 100644
--- a/pkgs/applications/misc/blender/default.nix
+++ b/pkgs/applications/misc/blender/default.nix
@@ -1,7 +1,7 @@
 { config, stdenv, lib, fetchurl, boost, cmake, ffmpeg, gettext, glew
 , ilmbase, libXi, libX11, libXext, libXrender
 , libjpeg, libpng, libsamplerate, libsndfile
-, libtiff, libGLU, libGL, openal, opencolorio, openexr, openimageio2, openjpeg, python3Packages
+, libtiff, libGLU, libGL, openal, opencolorio, openexr, openimagedenoise, openimageio2, openjpeg, python3Packages
 , openvdb, libXxf86vm, tbb, alembic
 , zlib, fftw, opensubdiv, freetype, jemalloc, ocl-icd, addOpenGLRunpath
 , jackaudioSupport ? false, libjack2
@@ -17,11 +17,11 @@ let python = python3Packages.python; in
 
 stdenv.mkDerivation rec {
   pname = "blender";
-  version = "2.82";
+  version = "2.82a";
 
   src = fetchurl {
     url = "https://download.blender.org/source/${pname}-${version}.tar.xz";
-    sha256 = "0rgw8nilvn6k6r7p28y2l1rwpami1cc8xz473jaahn7wa4ndyah0";
+    sha256 = "18zbdgas6qf2kmvvlimxgnq7y9kj7hdxcgixrs6fj50x40q01q2d";
   };
 
   patches = lib.optional stdenv.isDarwin ./darwin.patch;
@@ -30,7 +30,7 @@ stdenv.mkDerivation rec {
   buildInputs =
     [ boost ffmpeg gettext glew ilmbase
       freetype libjpeg libpng libsamplerate libsndfile libtiff
-      opencolorio openexr openimageio2 openjpeg python zlib fftw jemalloc
+      opencolorio openexr openimagedenoise openimageio2 openjpeg python zlib fftw jemalloc
       alembic
       (opensubdiv.override { inherit cudaSupport; })
       tbb
@@ -122,7 +122,8 @@ stdenv.mkDerivation rec {
   # --python-expr is used to workaround https://developer.blender.org/T74304
   postInstall = ''
     wrapProgram $blenderExecutable \
-      --add-flags '--python-expr "import sys; sys.path.append(\"${python3Packages.numpy}/${python.sitePackages}\")"'
+      --prefix PYTHONPATH : ${python3Packages.numpy}/${python.sitePackages} \
+      --add-flags '--python-use-system-env'
   '';
 
   # Set RUNPATH so that libcuda and libnvrtc in /run/opengl-driver(-32)/lib can be
@@ -136,7 +137,7 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "3D Creation/Animation/Publishing System";
-    homepage = https://www.blender.org;
+    homepage = "https://www.blender.org";
     # They comment two licenses: GPLv2 and Blender License, but they
     # say: "We've decided to cancel the BL offering for an indefinite period."
     license = licenses.gpl2Plus;
diff --git a/pkgs/applications/misc/blugon/default.nix b/pkgs/applications/misc/blugon/default.nix
index cdb317749efe..896daa27f7cb 100644
--- a/pkgs/applications/misc/blugon/default.nix
+++ b/pkgs/applications/misc/blugon/default.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation rec {
   pname = "blugon";
-  version = "1.12.0";
+  version = "1.12.1";
 
   src = fetchFromGitHub {
     owner = "jumper149";
     repo = pname;
     rev = version;
-    sha256 = "0vdhq8v011awhpkccbcmigj9c46widyzh0m5knafapanai3kv7ii";
+    sha256 = "1i67v8jxvavgax3dwvns200iwwdcvgki04liq0x64q52lg0vrh7m";
   };
 
   buildInputs = [ python3 libX11 libXrandr ];
diff --git a/pkgs/applications/misc/buku/default.nix b/pkgs/applications/misc/buku/default.nix
index 98f6e2895d18..f4018cff5f43 100644
--- a/pkgs/applications/misc/buku/default.nix
+++ b/pkgs/applications/misc/buku/default.nix
@@ -1,14 +1,14 @@
 { stdenv, python3, fetchFromGitHub }:
 
 with python3.pkgs; buildPythonApplication rec {
-  version = "4.2.2";
+  version = "4.3";
   pname = "buku";
 
   src = fetchFromGitHub {
     owner = "jarun";
     repo = "buku";
     rev = "v${version}";
-    sha256 = "1wy5i1av1s98yr56ybiq66kv0vg48zci3fp91zfgj04nh2966w1w";
+    sha256 = "1cq508ymak3g5fhi1n4bdiiqkc86s2l3k4dvzw842vv2x0441cac";
   };
 
   checkInputs = [
@@ -31,6 +31,7 @@ with python3.pkgs; buildPythonApplication rec {
     flask-api
     flask-bootstrap
     flask-paginate
+    flask-reverse-proxy-fix
     flask_wtf
     arrow
     werkzeug
@@ -70,7 +71,7 @@ with python3.pkgs; buildPythonApplication rec {
 
   meta = with stdenv.lib; {
     description = "Private cmdline bookmark manager";
-    homepage = https://github.com/jarun/Buku;
+    homepage = "https://github.com/jarun/Buku";
     license = licenses.gpl3;
     platforms = platforms.linux;
     maintainers = with maintainers; [ matthiasbeyer infinisil ];
diff --git a/pkgs/applications/misc/calcurse/default.nix b/pkgs/applications/misc/calcurse/default.nix
index 8f8934cb084b..ce3a2c0a271f 100644
--- a/pkgs/applications/misc/calcurse/default.nix
+++ b/pkgs/applications/misc/calcurse/default.nix
@@ -2,11 +2,11 @@
 
 stdenv.mkDerivation rec {
   pname = "calcurse";
-  version = "4.5.1";
+  version = "4.6.0";
 
   src = fetchurl {
     url = "https://calcurse.org/files/${pname}-${version}.tar.gz";
-    sha256 = "0cgkd285x5pk62lmdx9fjxl46c5lj8wj2cqbxq7d99yb4il5fdjk";
+    sha256 = "0hzhdpkkn75jlymanwzl69hrrf1pw29hrchr11wlxqjpl43h62gs";
   };
 
   buildInputs = [ ncurses gettext python3 python3Packages.wrapPython ];
@@ -27,7 +27,7 @@ stdenv.mkDerivation rec {
       customized to suit user needs and a very powerful set of command line options can
       be used to filter and format appointments, making it suitable for use in scripts.
     '';
-    homepage = http://calcurse.org/;
+    homepage = "http://calcurse.org/";
     license = licenses.bsd2;
     platforms = platforms.linux;
   };
diff --git a/pkgs/applications/misc/calibre/default.nix b/pkgs/applications/misc/calibre/default.nix
index 07612c96beef..869785ef82a0 100644
--- a/pkgs/applications/misc/calibre/default.nix
+++ b/pkgs/applications/misc/calibre/default.nix
@@ -30,11 +30,11 @@ let
 in
 mkDerivation rec {
   pname = "calibre";
-  version = "4.11.2";
+  version = "4.15.0";
 
   src = fetchurl {
     url = "https://download.calibre-ebook.com/${version}/${pname}-${version}.tar.xz";
-    sha256 = "0fxmpygc2ybx8skwhp9j6gnk9drlfiz2cl9g55h10zgxkfzqzqgv";
+    sha256 = "0m8mvyw5c1khd54jx896w6nfwaydmpi3cb6wi5p2a0hxdksqgrkm";
   };
 
   patches = [
@@ -122,7 +122,16 @@ mkDerivation rec {
     export PODOFO_INC_DIR=${podofo.dev}/include/podofo
     export PODOFO_LIB_DIR=${podofo.lib}/lib
     export SIP_BIN=${pypkgs.sip}/bin/sip
-    ${pypkgs.python.interpreter} setup.py install --prefix=$out
+    export XDG_DATA_HOME=$out/share
+    export XDG_UTILS_INSTALL_MODE="user"
+
+    ${pypkgs.python.interpreter} setup.py install --root=$out \
+      --prefix=$out \
+      --libdir=$out/lib \
+      --staging-root=$out \
+      --staging-libdir=$out/lib \
+      --staging-sharedir=$out/share
+
 
     PYFILES="$out/bin/* $out/lib/calibre/calibre/web/feeds/*.py
       $out/lib/calibre/calibre/ebooks/metadata/*.py
@@ -131,13 +140,6 @@ mkDerivation rec {
     sed -i "s/env python[0-9.]*/python/" $PYFILES
     sed -i "2i import sys; sys.argv[0] = 'calibre'" $out/bin/calibre
 
-    # Replace @out@ by the output path.
-    mkdir -p $out/share/applications/
-    cp {$calibreDesktopItem,$ebookEditDesktopItem,$ebookViewerDesktopItem}/share/applications/* $out/share/applications/
-    for entry in $out/share/applications/*.desktop; do
-      substituteAllInPlace $entry
-    done
-
     mkdir -p $out/share
     cp -a man-pages $out/share/man
 
@@ -165,76 +167,6 @@ mkDerivation rec {
 
   disallowedReferences = [ podofo.dev ];
 
-  calibreDesktopItem = makeDesktopItem {
-    name = "calibre-gui";
-    desktopName = "calibre";
-    exec = "@out@/bin/calibre --detach %F";
-    genericName = "E-book library management";
-    icon = "@out@/share/calibre/images/library.png";
-    comment = "Manage, convert, edit, and read e-books";
-    mimeType = lib.concatStringsSep ";" [
-      "application/x-mobipocket-subscription"
-      "application/vnd.openxmlformats-officedocument.wordprocessingml.document"
-      "text/html"
-      "application/x-cbc"
-      "application/ereader"
-      "application/oebps-package+xml"
-      "image/vnd.djvu"
-      "application/x-sony-bbeb"
-      "application/vnd.ms-word.document.macroenabled.12"
-      "text/rtf"
-      "text/x-markdown"
-      "application/pdf"
-      "application/x-cbz"
-      "application/x-mobipocket-ebook"
-      "application/x-cbr"
-      "application/x-mobi8-ebook"
-      "text/fb2+xml"
-      "application/vnd.oasis.opendocument.text"
-      "application/epub+zip"
-      "text/plain"
-      "application/xhtml+xml"
-    ];
-    categories = "Office";
-    extraEntries = ''
-      Actions=Edit;Viewer;
-
-      [Desktop Action Edit]
-      Name=Edit E-book
-      Icon=@out@/share/calibre/images/tweak.png
-      Exec=@out@/bin/ebook-edit --detach %F
-
-      [Desktop Action Viewer]
-      Name=E-book Viewer
-      Icon=@out@/share/calibre/images/viewer.png
-      Exec=@out@/bin/ebook-viewer --detach %F
-    '';
-  };
-
-  ebookEditDesktopItem = makeDesktopItem {
-    name = "calibre-edit-book";
-    desktopName = "Edit E-book";
-    genericName = "E-book Editor";
-    comment = "Edit e-books";
-    icon = "@out@/share/calibre/images/tweak.png";
-    exec = "@out@/bin/ebook-edit --detach %F";
-    categories = "Office;Publishing";
-    mimeType = "application/epub+zip";
-    extraEntries = "NoDisplay=true";
-  };
-
-  ebookViewerDesktopItem = makeDesktopItem {
-    name = "calibre-ebook-viewer";
-    desktopName = "E-book Viewer";
-    genericName = "E-book Viewer";
-    comment = "Read e-books in all the major formats";
-    icon = "@out@/share/calibre/images/viewer.png";
-    exec = "@out@/bin/ebook-viewer --detach %F";
-    categories = "Office;Viewer";
-    mimeType = "application/epub+zip";
-    extraEntries = "NoDisplay=true";
-  };
-
   meta = with lib; {
     description = "Comprehensive e-book software";
     homepage = "https://calibre-ebook.com";
diff --git a/pkgs/applications/misc/candle/default.nix b/pkgs/applications/misc/candle/default.nix
index 77cabc409c74..842ef2262d9f 100644
--- a/pkgs/applications/misc/candle/default.nix
+++ b/pkgs/applications/misc/candle/default.nix
@@ -1,6 +1,6 @@
-{ stdenv, fetchFromGitHub, qtbase, qtserialport, qmake }:
+{ mkDerivation, stdenv, fetchFromGitHub, qtbase, qtserialport, qmake }:
 
-stdenv.mkDerivation rec {
+mkDerivation rec {
   pname = "candle";
   version = "1.1";
 
@@ -25,7 +25,7 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "GRBL controller application with G-Code visualizer written in Qt";
-    homepage = https://github.com/Denvi/Candle;
+    homepage = "https://github.com/Denvi/Candle";
     license = licenses.gpl3;
     maintainers = with maintainers; [ matti-kariluoma ];
   };
diff --git a/pkgs/applications/misc/cardpeek/default.nix b/pkgs/applications/misc/cardpeek/default.nix
index 40dbfea9801b..83340f78dd48 100644
--- a/pkgs/applications/misc/cardpeek/default.nix
+++ b/pkgs/applications/misc/cardpeek/default.nix
@@ -20,7 +20,7 @@ in
     enableParallelBuilding = true;
 
     meta = with stdenv.lib; {
-      homepage = https://github.com/L1L1/cardpeek;
+      homepage = "https://github.com/L1L1/cardpeek";
       description = "A tool to read the contents of ISO7816 smart cards";
       license = licenses.gpl3Plus;
       platforms = with platforms; linux ++ darwin;
diff --git a/pkgs/applications/misc/catclock/default.nix b/pkgs/applications/misc/catclock/default.nix
index 09c36f9eb2f1..6b4ab1f3a8bf 100644
--- a/pkgs/applications/misc/catclock/default.nix
+++ b/pkgs/applications/misc/catclock/default.nix
@@ -23,7 +23,7 @@ stdenv.mkDerivation {
   buildInputs = [ xlibsWrapper motif ];
 
   meta = with stdenv.lib; {
-    homepage = http://codefromabove.com/2014/05/catclock/;
+    homepage = "http://codefromabove.com/2014/05/catclock/";
     license = with licenses; mit;
     maintainers = with maintainers; [ ramkromberg ];
     platforms = with platforms; linux ++ darwin;
diff --git a/pkgs/applications/misc/cbatticon/default.nix b/pkgs/applications/misc/cbatticon/default.nix
index ac2948c2d6ef..e7664244db7b 100644
--- a/pkgs/applications/misc/cbatticon/default.nix
+++ b/pkgs/applications/misc/cbatticon/default.nix
@@ -23,7 +23,7 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "Lightweight and fast battery icon that sits in the system tray";
-    homepage = https://github.com/valr/cbatticon;
+    homepage = "https://github.com/valr/cbatticon";
     license = licenses.gpl2;
     platforms = platforms.linux;
     maintainers = [ maintainers.domenkozar ];
diff --git a/pkgs/applications/misc/cgminer/default.nix b/pkgs/applications/misc/cgminer/default.nix
index c05c7423d9a5..09236565d598 100644
--- a/pkgs/applications/misc/cgminer/default.nix
+++ b/pkgs/applications/misc/cgminer/default.nix
@@ -36,7 +36,7 @@ stdenv.mkDerivation {
       monitoring, (over)clocking and fanspeed support for bitcoin and derivative
       coins. Do not use on multiple block chains at the same time!
     '';
-    homepage = https://github.com/ckolivas/cgminer;
+    homepage = "https://github.com/ckolivas/cgminer";
     license = licenses.gpl3;
     maintainers = [ maintainers.offline ];
     platforms = stdenv.lib.platforms.linux;
diff --git a/pkgs/applications/misc/cheat/default.nix b/pkgs/applications/misc/cheat/default.nix
index a86c1e8bc055..b4765c0aae32 100644
--- a/pkgs/applications/misc/cheat/default.nix
+++ b/pkgs/applications/misc/cheat/default.nix
@@ -1,24 +1,31 @@
-{ stdenv, fetchFromGitHub, buildGoModule }:
+{ stdenv, fetchFromGitHub
+, buildGoModule, installShellFiles }:
 
 buildGoModule rec {
   pname = "cheat";
-  version = "3.0.3";
+  version = "3.9.0";
 
   src = fetchFromGitHub {
-    owner = "chrisallenlane";
+    owner = "cheat";
     repo = "cheat";
     rev = version;
-    sha256 = "19w1admdcgld9vlc4fsyc5d9bi6rmwhr2x2ji43za2vjlk34hnnx";
+    sha256 = "0jbqflkcfdrinx1lk45klm8ml0n4cgp43nzls1376cd3hfayby1y";
   };
 
   subPackages = [ "cmd/cheat" ];
 
-  modSha256 = "189cqnfl403f4lk7g9v68mwk93ciglqli639dk4x9091lvn5gq5q";
+  nativeBuildInputs = [ installShellFiles ];
+
+  postInstall = ''
+    installShellCompletion scripts/cheat.{bash,fish,zsh}
+  '';
+
+  modSha256 = "1is19qca5wgzya332rmpk862nnivxzgxchkllv629f5fwwdvdgmg";
 
   meta = with stdenv.lib; {
     description = "Create and view interactive cheatsheets on the command-line";
     maintainers = with maintainers; [ mic92 ];
     license = with licenses; [ gpl3 mit ];
-    homepage = "https://github.com/chrisallenlane/cheat";
+    inherit (src.meta) homepage;
   };
 }
diff --git a/pkgs/applications/misc/cherrytree/default.nix b/pkgs/applications/misc/cherrytree/default.nix
index 3cb5738cd426..d2ade055d6fd 100644
--- a/pkgs/applications/misc/cherrytree/default.nix
+++ b/pkgs/applications/misc/cherrytree/default.nix
@@ -1,12 +1,15 @@
-{ lib, fetchurl, pythonPackages, gettext }:
+{ lib, fetchFromGitHub, pythonPackages, gettext }:
 
 pythonPackages.buildPythonApplication rec {
   pname = "cherrytree";
-  version = "0.38.11";
+  version = "0.39.3";
+
+  src = fetchFromGitHub {
+    owner = "giuspen";
+    repo = "cherrytree";
+    rev = version;
+    sha256 = "1k9i7acpphx0if6ij2p9fkmj638ry6hcyr1rdr039a8zi8hq98gz";
 
-  src = fetchurl {
-    url = "https://www.giuspen.com/software/${pname}-${version}.tar.xz";
-    sha256 = "1awrrfyawa7d8qaipvikxm1p0961060az2qvmv9wwpl47zcnk1dn";
   };
 
   nativeBuildInputs = [ gettext ];
@@ -20,17 +23,16 @@ pythonPackages.buildPythonApplication rec {
   meta = with lib; {
     description = "An hierarchical note taking application";
     longDescription = ''
-      Cherrytree is an hierarchical note taking application,
-      featuring rich text, syntax highlighting and powerful search
-      capabilities. It organizes all information in units called
-      "nodes", as in a tree, and can be very useful to store any piece
-      of information, from tables and links to pictures and even entire
-      documents. All those little bits of information you have scattered
-      around your hard drive can be conveniently placed into a
-      Cherrytree document where you can easily find it.
+      Cherrytree is an hierarchical note taking application, featuring rich
+      text, syntax highlighting and powerful search capabilities. It organizes
+      all information in units called "nodes", as in a tree, and can be very
+      useful to store any piece of information, from tables and links to
+      pictures and even entire documents. All those little bits of information
+      you have scattered around your hard drive can be conveniently placed into
+      a Cherrytree document where you can easily find it.
     '';
     homepage = "http://www.giuspen.com/cherrytree";
     license = licenses.gpl3;
-    maintainers = with maintainers; [ AndersonTorres ];
+    maintainers = with maintainers; [ ];
   };
 }
diff --git a/pkgs/applications/misc/cli-visualizer/default.nix b/pkgs/applications/misc/cli-visualizer/default.nix
index 4986661e2f63..112341dcd4f0 100644
--- a/pkgs/applications/misc/cli-visualizer/default.nix
+++ b/pkgs/applications/misc/cli-visualizer/default.nix
@@ -27,7 +27,7 @@ stdenv.mkDerivation rec {
   '';
 
   meta = {
-    homepage = https://github.com/dpayne/cli-visualizer;
+    homepage = "https://github.com/dpayne/cli-visualizer";
     description = "CLI based audio visualizer";
     license = stdenv.lib.licenses.mit;
     maintainers = [ stdenv.lib.maintainers.matthiasbeyer ];
diff --git a/pkgs/applications/misc/clight/clightd.nix b/pkgs/applications/misc/clight/clightd.nix
index f9c08d1f00a1..bfa6f2ea8555 100644
--- a/pkgs/applications/misc/clight/clightd.nix
+++ b/pkgs/applications/misc/clight/clightd.nix
@@ -65,7 +65,7 @@ stdenv.mkDerivation rec {
 
   meta = with lib; {
     description = "Linux bus interface that changes screen brightness/temperature";
-    homepage = https://github.com/FedeDP/Clightd;
+    homepage = "https://github.com/FedeDP/Clightd";
     platforms = platforms.linux;
     license = licenses.gpl3;
     maintainers = with maintainers; [
diff --git a/pkgs/applications/misc/clight/default.nix b/pkgs/applications/misc/clight/default.nix
index a2e452562698..ed8767419d4d 100644
--- a/pkgs/applications/misc/clight/default.nix
+++ b/pkgs/applications/misc/clight/default.nix
@@ -48,7 +48,7 @@ stdenv.mkDerivation rec {
 
   meta = with lib; {
     description = "A C daemon that turns your webcam into a light sensor";
-    homepage = https://github.com/FedeDP/Clight;
+    homepage = "https://github.com/FedeDP/Clight";
     platforms = platforms.linux;
     license = licenses.gpl3;
     maintainers = with maintainers; [
diff --git a/pkgs/applications/misc/clipit/default.nix b/pkgs/applications/misc/clipit/default.nix
index 129516a44982..02207fb95806 100644
--- a/pkgs/applications/misc/clipit/default.nix
+++ b/pkgs/applications/misc/clipit/default.nix
@@ -1,21 +1,35 @@
-{ fetchurl, stdenv, intltool, pkgconfig, gtk2, xdotool }:
+{ fetchFromGitHub, fetchpatch, stdenv
+, autoreconfHook, intltool, pkgconfig
+, gtk3, xdotool, which, wrapGAppsHook }:
 
 stdenv.mkDerivation rec {
   pname = "clipit";
-  version = "1.4.2";
+  version = "1.4.5";
 
-  src = fetchurl {
-    url = "https://github.com/downloads/shantzu/ClipIt/${pname}-${version}.tar.gz";
-    sha256 = "0jrwn8qfgb15rwspdp1p8hb1nc0ngmpvgr87d4k3lhlvqg2cfqva";
+  src = fetchFromGitHub {
+    owner = "CristianHenzel";
+    repo = "ClipIt";
+    rev = "45e2ea386d04dbfc411ea370299502450d589d0c";
+    sha256 = "0byqz9hanwmdc7i55xszdby2iqrk93lws7hmjda2kv17g34apwl7";
   };
 
-  nativeBuildInputs = [ pkgconfig ];
-  buildInputs = [ intltool gtk2 xdotool ];
+  preConfigure = ''
+    intltoolize --copy --force --automake
+  '';
+
+  nativeBuildInputs = [ pkgconfig wrapGAppsHook autoreconfHook intltool ];
+  configureFlags = [ "--with-gtk3" ];
+  buildInputs = [ gtk3 ];
+
+  gappsWrapperArgs = [
+    "--prefix" "PATH" ":" "${stdenv.lib.makeBinPath [ xdotool which ]}"
+  ];
 
   meta = with stdenv.lib; {
     description = "Lightweight GTK Clipboard Manager";
-    homepage    = "http://clipit.rspwn.com";
+    inherit (src.meta) homepage;
     license     = licenses.gpl3;
     platforms   = platforms.linux;
+    maintainers = with maintainers; [ kamilchm ];
   };
 }
diff --git a/pkgs/applications/misc/clipmenu/default.nix b/pkgs/applications/misc/clipmenu/default.nix
index 7577c0a3db99..4bc56f0c4526 100644
--- a/pkgs/applications/misc/clipmenu/default.nix
+++ b/pkgs/applications/misc/clipmenu/default.nix
@@ -4,13 +4,13 @@ let
 in
 stdenv.mkDerivation rec {
   pname = "clipmenu";
-  version = "5.6.0";
+  version = "6.0.1";
 
   src = fetchFromGitHub {
     owner  = "cdown";
     repo   = "clipmenu";
     rev    = version;
-    sha256 = "13hyarzazh6j33d808h3s5yk320wqzivc0ni9xm8kalvn4k3a0bq";
+    sha256 = "0053j4i14lz5m2bzc5sch5id5ilr1bl196mp8fp0q8x74w3vavs9";
   };
 
   buildInputs = [ makeWrapper ];
diff --git a/pkgs/applications/misc/cmatrix/default.nix b/pkgs/applications/misc/cmatrix/default.nix
index 9f86ec94f184..fa0e10f9eef8 100644
--- a/pkgs/applications/misc/cmatrix/default.nix
+++ b/pkgs/applications/misc/cmatrix/default.nix
@@ -21,7 +21,7 @@ stdenv.mkDerivation rec {
       CMatrix simulates the display from "The Matrix" and is based
       on the screensaver from the movie's website.
     '';
-    homepage = https://github.com/abishekvashok/cmatrix;
+    homepage = "https://github.com/abishekvashok/cmatrix";
     platforms = ncurses.meta.platforms;
     maintainers = [ maintainers.AndersonTorres ];
   };
diff --git a/pkgs/applications/misc/colort/default.nix b/pkgs/applications/misc/colort/default.nix
index 554c7d8c78bb..1eda11890e79 100644
--- a/pkgs/applications/misc/colort/default.nix
+++ b/pkgs/applications/misc/colort/default.nix
@@ -14,7 +14,7 @@ stdenv.mkDerivation {
 
   meta = with stdenv.lib; {
     description = "A program for 'tinting' color values";
-    homepage = https://github.com/neeasade/colort;
+    homepage = "https://github.com/neeasade/colort";
     license = licenses.mit;
     platforms = platforms.all;
     maintainers = [ maintainers.neeasade ];
diff --git a/pkgs/applications/misc/confclerk/default.nix b/pkgs/applications/misc/confclerk/default.nix
index b07e0fb8c520..bb1aacc2069b 100644
--- a/pkgs/applications/misc/confclerk/default.nix
+++ b/pkgs/applications/misc/confclerk/default.nix
@@ -21,7 +21,7 @@ stdenv.mkDerivation {
 
   meta = {
     description = "Offline conference schedule viewer";
-    homepage = http://www.toastfreeware.priv.at/confclerk;
+    homepage = "http://www.toastfreeware.priv.at/confclerk";
     license = stdenv.lib.licenses.gpl2;
     maintainers = with stdenv.lib.maintainers; [ ehmry ];
     platforms = stdenv.lib.platforms.linux;
diff --git a/pkgs/applications/misc/cool-retro-term/default.nix b/pkgs/applications/misc/cool-retro-term/default.nix
index c9dcc97d5cd1..739ad07adbf3 100644
--- a/pkgs/applications/misc/cool-retro-term/default.nix
+++ b/pkgs/applications/misc/cool-retro-term/default.nix
@@ -38,7 +38,7 @@ mkDerivation rec {
       feel of the old cathode tube screens. It has been designed to be
       eye-candy, customizable, and reasonably lightweight.
     '';
-    homepage = https://github.com/Swordfish90/cool-retro-term;
+    homepage = "https://github.com/Swordfish90/cool-retro-term";
     license = stdenv.lib.licenses.gpl3Plus;
     platforms = with stdenv.lib.platforms; linux ++ darwin;
     maintainers = with stdenv.lib.maintainers; [ skeidel ];
diff --git a/pkgs/applications/misc/copyq/default.nix b/pkgs/applications/misc/copyq/default.nix
index 16be8e06b686..ec2bd6b32c07 100644
--- a/pkgs/applications/misc/copyq/default.nix
+++ b/pkgs/applications/misc/copyq/default.nix
@@ -5,13 +5,13 @@
 
 mkDerivation rec {
   pname = "CopyQ";
-  version = "3.10.0";
+  version = "3.11.0";
 
   src  = fetchFromGitHub {
     owner = "hluk";
     repo = "CopyQ";
     rev = "v${version}";
-    sha256 = "05nhgndiq0sm1bvb80sf5fgnm38249dclwzmfm7hzrablmkwgv3c";
+    sha256 = "1wx6nqcyzknbw71sliwq4cb5qq1gy6pr9867s6x3vpg3n8g2czkf";
   };
 
   nativeBuildInputs = [ cmake ];
@@ -21,7 +21,7 @@ mkDerivation rec {
   ] ++ lib.optional webkitSupport qtwebkit;
 
   meta = with lib; {
-    homepage    = https://hluk.github.io/CopyQ;
+    homepage    = "https://hluk.github.io/CopyQ";
     description = "Clipboard Manager with Advanced Features";
     license     = licenses.gpl3;
     maintainers = [ maintainers.willtim ];
diff --git a/pkgs/applications/misc/coursera-dl/default.nix b/pkgs/applications/misc/coursera-dl/default.nix
index c09457d2c656..bbb7c53b61f6 100644
--- a/pkgs/applications/misc/coursera-dl/default.nix
+++ b/pkgs/applications/misc/coursera-dl/default.nix
@@ -38,7 +38,7 @@ in pythonPackages.buildPythonApplication rec {
 
   meta = with stdenv.lib; {
     description = "CLI for downloading Coursera.org videos and naming them";
-    homepage = https://github.com/coursera-dl/coursera-dl;
+    homepage = "https://github.com/coursera-dl/coursera-dl";
     license = licenses.lgpl3Plus;
     maintainers = with maintainers; [ alexfmpe ];
     platforms = platforms.darwin ++ platforms.linux;
diff --git a/pkgs/applications/misc/cpp-ethereum/default.nix b/pkgs/applications/misc/cpp-ethereum/default.nix
index dae25f6b8176..aed44d1213ce 100644
--- a/pkgs/applications/misc/cpp-ethereum/default.nix
+++ b/pkgs/applications/misc/cpp-ethereum/default.nix
@@ -76,7 +76,7 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "Ethereum C++ client";
-    homepage = https://github.com/ethereum/cpp-ethereum;
+    homepage = "https://github.com/ethereum/cpp-ethereum";
     license = licenses.gpl3;
     maintainers = with maintainers; [ artuuge ];
     platforms = platforms.linux;
diff --git a/pkgs/applications/misc/crumbs/default.nix b/pkgs/applications/misc/crumbs/default.nix
index 2d612c16fef3..889c17e6988d 100644
--- a/pkgs/applications/misc/crumbs/default.nix
+++ b/pkgs/applications/misc/crumbs/default.nix
@@ -25,7 +25,7 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib;
     { description = "Bookmarks for the command line";
-      homepage    = https://github.com/fasseg/crumbs;
+      homepage    = "https://github.com/fasseg/crumbs";
       license     = licenses.wtfpl;
       platforms   = platforms.all;
       maintainers = with maintainers; [ thesola10 ];
diff --git a/pkgs/applications/misc/ctodo/default.nix b/pkgs/applications/misc/ctodo/default.nix
index 72918a40733b..602fe4308160 100644
--- a/pkgs/applications/misc/ctodo/default.nix
+++ b/pkgs/applications/misc/ctodo/default.nix
@@ -16,7 +16,7 @@ stdenv.mkDerivation rec {
   '';
 
   meta = {
-    homepage = http://ctodo.apakoh.dk/;
+    homepage = "http://ctodo.apakoh.dk/";
     description = "A simple ncurses-based task list manager";
     license = stdenv.lib.licenses.mit;
     maintainers = [ stdenv.lib.maintainers.matthiasbeyer ];
diff --git a/pkgs/applications/misc/cura/default.nix b/pkgs/applications/misc/cura/default.nix
index 7187b8c00991..4c4fe9b1abdd 100644
--- a/pkgs/applications/misc/cura/default.nix
+++ b/pkgs/applications/misc/cura/default.nix
@@ -2,20 +2,20 @@
 
 mkDerivation rec {
   pname = "cura";
-  version = "4.4.0";
+  version = "4.5.0";
 
   src = fetchFromGitHub {
     owner = "Ultimaker";
     repo = "Cura";
-    rev = "v${version}";
-    sha256 = "131n36qhdfky584wr3zv73ckjjprwaqb5fih8yln2syf8b7ziwlz";
+    rev = version;
+    sha256 = "0fm04s912sgmr66wyb55ly4jh39ijsj6lx4fx9wn7hchlqmw5jxi";
   };
 
   materials = fetchFromGitHub {
     owner = "Ultimaker";
     repo = "fdm_materials";
     rev = version;
-    sha256 = "141cv1f2pv2pznhgj32zg8bw3kmw9002g6rx16jq7lhclr0x3xls";
+    sha256 = "0fgkwz1anw49macq1jxjhjr79slhmx7g3zwij7g9fqyzzhrrmwqn";
   };
 
   buildInputs = [ qtbase qtquickcontrols2 qtgraphicaleffects ];
@@ -55,7 +55,7 @@ mkDerivation rec {
 
   meta = with lib; {
     description = "3D printer / slicing GUI built on top of the Uranium framework";
-    homepage = https://github.com/Ultimaker/Cura;
+    homepage = "https://github.com/Ultimaker/Cura";
     license = licenses.lgpl3Plus;
     platforms = platforms.linux;
     maintainers = with maintainers; [ abbradar gebner ];
diff --git a/pkgs/applications/misc/cura/lulzbot/curaengine-openmp-compat.patch b/pkgs/applications/misc/cura/lulzbot/curaengine-openmp-compat.patch
new file mode 100644
index 000000000000..3826e92440f0
--- /dev/null
+++ b/pkgs/applications/misc/cura/lulzbot/curaengine-openmp-compat.patch
@@ -0,0 +1,47 @@
+# Notes by Charles Duffy <charles@dyfis.net> --
+#
+# - The new version of OpenMP does not allow outside variables to be referenced
+#   *at all* without an explicit declaration of how they're supposed to be
+#   handled. Thus, this was an outright build failure beforehand. The new
+#   pragmas copy the initial value from the outer scope into each parallel
+#   thread. Since these variables are all constant within the loops, this is
+#   clearly correct. (Not sure it's *optimal*, but quite sure it isn't
+#   *wrong*).
+# - Upstream has been contacted -- I'm a Lulzbot customer with an active
+#   support contract and sent them the patch. That said, they're in the middle
+#   of some major corporate churn (sold themselves out of near-bankruptcy to an
+#   out-of-state business entity formed as a holding company; moved to that
+#   state; have been slowly restaffing after), so a response may take a while.
+# - The patch is purely my own work.
+
+--- curaengine/src/support.cpp.orig	2020-03-28 10:38:01.953912363 -0500
++++ curaengine/src/support.cpp	2020-03-28 10:45:28.999791908 -0500
+@@ -854,7 +854,7 @@
+     const double tan_angle = tan(angle) - 0.01;  // the XY-component of the supportAngle
+     xy_disallowed_per_layer[0] = storage.getLayerOutlines(0, false).offset(xy_distance);
+     // for all other layers (of non support meshes) compute the overhang area and possibly use that when calculating the support disallowed area
+-    #pragma omp parallel for default(none) shared(xy_disallowed_per_layer, storage, mesh) schedule(dynamic)
++    #pragma omp parallel for default(none) firstprivate(layer_count, is_support_mesh_place_holder, use_xy_distance_overhang, z_distance_top, tan_angle, xy_distance, xy_distance_overhang) shared(xy_disallowed_per_layer, storage, mesh) schedule(dynamic)
+     for (unsigned int layer_idx = 1; layer_idx < layer_count; layer_idx++)
+     {
+         Polygons outlines = storage.getLayerOutlines(layer_idx, false);
+@@ -1054,7 +1054,7 @@
+         const int max_checking_layer_idx = std::min(static_cast<int>(storage.support.supportLayers.size())
+                                                   , static_cast<int>(layer_count - (layer_z_distance_top - 1)));
+         const size_t max_checking_idx_size_t = std::max(0, max_checking_layer_idx);
+-#pragma omp parallel for default(none) shared(support_areas, storage) schedule(dynamic)
++#pragma omp parallel for default(none) firstprivate(max_checking_idx_size_t, layer_z_distance_top) shared(support_areas, storage) schedule(dynamic)
+         for (size_t layer_idx = 0; layer_idx < max_checking_idx_size_t; layer_idx++)
+         {
+             support_areas[layer_idx] = support_areas[layer_idx].difference(storage.getLayerOutlines(layer_idx + layer_z_distance_top - 1, false));
+--- curaengine/src/layerPart.cpp.orig	2020-03-28 10:36:40.381023651 -0500
++++ curaengine/src/layerPart.cpp	2020-03-28 10:39:54.584140465 -0500
+@@ -49,7 +49,7 @@
+ {
+     const auto total_layers = slicer->layers.size();
+     assert(mesh.layers.size() == total_layers);
+-#pragma omp parallel for default(none) shared(mesh, slicer) schedule(dynamic)
++#pragma omp parallel for default(none) firstprivate(total_layers) shared(mesh, slicer) schedule(dynamic)
+     for (unsigned int layer_nr = 0; layer_nr < total_layers; layer_nr++)
+     {
+         SliceLayer& layer_storage = mesh.layers[layer_nr];
diff --git a/pkgs/applications/misc/cura/lulzbot/curaengine.nix b/pkgs/applications/misc/cura/lulzbot/curaengine.nix
index aad9b9bee89f..a5cfa937fd8d 100644
--- a/pkgs/applications/misc/cura/lulzbot/curaengine.nix
+++ b/pkgs/applications/misc/cura/lulzbot/curaengine.nix
@@ -1,26 +1,27 @@
-{ stdenv, callPackage, fetchgit, fetchpatch, cmake, libarcusLulzbot, stb, protobuf }:
+{ gcc8Stdenv, callPackage, fetchgit, fetchpatch, cmake, libarcusLulzbot, stb, protobuf }:
 
-stdenv.mkDerivation rec {
+gcc8Stdenv.mkDerivation rec {
   pname = "curaengine-lulzBot";
   version = "3.6.21";
 
   src = fetchgit {
-    url = https://code.alephobjects.com/source/curaengine-lulzbot.git;
+    url = "https://code.alephobjects.com/source/curaengine-lulzbot.git";
     rev = "ec6a1a0f0aa387ef97e5c106633cf8d7fb9cd00d";
     sha256 = "0wdkvg1hmqp1gaym804lw09x4ngf5ffasd861jhflpy7djbmkfn8";
   };
 
+  patches = [ ./curaengine-openmp-compat.patch ];
+
   nativeBuildInputs = [ cmake ];
   buildInputs = [ libarcusLulzbot stb protobuf ];
 
   cmakeFlags = [ "-DCURA_ENGINE_VERSION=${version}" ];
 
-  meta = with stdenv.lib; {
+  meta = with gcc8Stdenv.lib; {
     description = "A powerful, fast and robust engine for processing 3D models into 3D printing instruction";
-    homepage = https://code.alephobjects.com/source/curaengine-lulzbot/;
+    homepage = "https://code.alephobjects.com/source/curaengine-lulzbot/";
     license = licenses.agpl3;
     platforms = platforms.linux;
     maintainers = with maintainers; [ chaduffy ];
   };
 }
-
diff --git a/pkgs/applications/misc/cura/lulzbot/default.nix b/pkgs/applications/misc/cura/lulzbot/default.nix
index c67fcb74047d..229966561c6d 100644
--- a/pkgs/applications/misc/cura/lulzbot/default.nix
+++ b/pkgs/applications/misc/cura/lulzbot/default.nix
@@ -4,7 +4,7 @@ let
   # admittedly, we're using (printer firmware) blobs when we could compile them ourselves.
   curaBinaryDataVersion = "3.6.21"; # Marlin v2.0.0.174 for Bio, v2.0.0.144 for others.
   curaBinaryData = fetchgit {
-    url = https://code.alephobjects.com/diffusion/CBD/cura-binary-data.git;
+    url = "https://code.alephobjects.com/diffusion/CBD/cura-binary-data.git";
     rev = "5c75d0f6c10d8b7a903e2072a48cd1f08059509e";
     sha256 = "1qdsj6rczwzdwzyr7nz7fnypbphckjrnwl8c9dr6izsxyzs465c4";
   };
@@ -30,7 +30,7 @@ mkDerivation rec {
   version = "3.6.21";
 
   src = fetchgit {
-    url = https://code.alephobjects.com/source/cura-lulzbot.git;
+    url = "https://code.alephobjects.com/source/cura-lulzbot.git";
     rev = "7faeb18604c83004846a02c60cb240708db0034f";
     sha256 = "10q38s8c8x6xkh1vns4p3iqa5y267vrjh5vq8h55mg1q5001scyq";
   };
@@ -74,7 +74,7 @@ mkDerivation rec {
 
   meta = with lib; {
     description = "3D printer / slicing GUI built on top of the Uranium framework";
-    homepage = https://code.alephobjects.com/diffusion/CURA/;
+    homepage = "https://code.alephobjects.com/diffusion/CURA/";
     license = licenses.agpl3;  # a partial relicense to LGPL has happened, but not certain that all AGPL bits are expunged
     platforms = platforms.linux;
     maintainers = with maintainers; [ chaduffy ];
diff --git a/pkgs/applications/misc/cura/lulzbot/libarcus.nix b/pkgs/applications/misc/cura/lulzbot/libarcus.nix
index 733aa27da854..5edaabbacb0f 100644
--- a/pkgs/applications/misc/cura/lulzbot/libarcus.nix
+++ b/pkgs/applications/misc/cura/lulzbot/libarcus.nix
@@ -6,7 +6,7 @@ buildPythonPackage {
   format = "other";
 
   src = fetchgit {
-    url = https://code.alephobjects.com/source/arcus.git;
+    url = "https://code.alephobjects.com/source/arcus.git";
     rev = "aeda02d7727f45b657afb72cef203283fbf09325";
     sha256 = "1ak0d4k745sx7paic27was3s4987z9h3czscjs21hxbi6qy83g99";
   };
@@ -24,7 +24,7 @@ buildPythonPackage {
 
   meta = with stdenv.lib; {
     description = "Communication library between internal components for Ultimaker software";
-    homepage = https://code.alephobjects.com/source/arcus/;
+    homepage = "https://code.alephobjects.com/source/arcus/";
     license = licenses.lgpl3Plus;
     platforms = platforms.linux;
     maintainers = with maintainers; [ chaduffy ];
diff --git a/pkgs/applications/misc/cura/lulzbot/libsavitar.nix b/pkgs/applications/misc/cura/lulzbot/libsavitar.nix
index e6c277959e03..e32117a103ee 100644
--- a/pkgs/applications/misc/cura/lulzbot/libsavitar.nix
+++ b/pkgs/applications/misc/cura/lulzbot/libsavitar.nix
@@ -7,7 +7,7 @@ buildPythonPackage {
   format = "other";
 
   src = fetchgit {
-    url = https://code.alephobjects.com/source/savitar.git;
+    url = "https://code.alephobjects.com/source/savitar.git";
     rev = "ee8ada42c55f54727ce4d275c294ba426d3d8234";
     sha256 = "1wm5ii3cmni8dk3c65kw4wglpypkdsfpgd480d3hc1r5bqpq0d6j";
   };
@@ -25,7 +25,7 @@ buildPythonPackage {
 
   meta = with stdenv.lib; {
     description = "C++ implementation of 3mf loading with SIP python bindings";
-    homepage = https://github.com/Ultimaker/libSavitar;
+    homepage = "https://github.com/Ultimaker/libSavitar";
     license = licenses.lgpl3Plus;
     platforms = platforms.unix;
     maintainers = with maintainers; [ chaduffy ];
diff --git a/pkgs/applications/misc/cura/lulzbot/uranium.nix b/pkgs/applications/misc/cura/lulzbot/uranium.nix
index acffc741d578..2ce0fab170ea 100644
--- a/pkgs/applications/misc/cura/lulzbot/uranium.nix
+++ b/pkgs/applications/misc/cura/lulzbot/uranium.nix
@@ -8,7 +8,7 @@ buildPythonPackage {
   format = "other";
 
   src = fetchgit {
-    url = https://code.alephobjects.com/diffusion/U/uranium.git;
+    url = "https://code.alephobjects.com/diffusion/U/uranium.git";
     rev = "54d911edd2551c5875c554928896122835a0dd6c";
     sha256 = "04bym3vwikaxw8ab0mymv9sc9n8i7yw5kfsv99ic811g9lzz3j1i";
   };
@@ -29,7 +29,7 @@ buildPythonPackage {
 
   meta = with stdenv.lib; {
     description = "A Python framework for building Desktop applications";
-    homepage = https://code.alephobjects.com/diffusion/U/;
+    homepage = "https://code.alephobjects.com/diffusion/U/";
     license = licenses.lgpl3Plus;
     platforms = platforms.linux;
     maintainers = with maintainers; [ chaduffy ];
diff --git a/pkgs/applications/misc/cura/stable.nix b/pkgs/applications/misc/cura/stable.nix
index 1972042f805e..1191be09f76e 100644
--- a/pkgs/applications/misc/cura/stable.nix
+++ b/pkgs/applications/misc/cura/stable.nix
@@ -66,7 +66,7 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "3D printing host software";
-    homepage = https://github.com/daid/Cura;
+    homepage = "https://github.com/daid/Cura";
     license = licenses.agpl3;
     platforms = platforms.linux;
     maintainers = with stdenv.lib.maintainers; [ the-kenny ];
diff --git a/pkgs/applications/misc/curabydagoma/default.nix b/pkgs/applications/misc/curabydagoma/default.nix
index a367efaaef38..821b88f9b20d 100644
--- a/pkgs/applications/misc/curabydagoma/default.nix
+++ b/pkgs/applications/misc/curabydagoma/default.nix
@@ -68,7 +68,7 @@ stdenv.mkDerivation rec {
 
   meta = with lib; {
     description = "Slicer for 3D printers built by Dagoma";
-    homepage = https://dagoma.fr/cura-by-dagoma.html;
+    homepage = "https://dagoma.fr/cura-by-dagoma.html";
     license = licenses.agpl3;
     platforms = [ "x86_64-linux" ];
     maintainers = with maintainers; [ tiramiseb ];
diff --git a/pkgs/applications/misc/curaengine/default.nix b/pkgs/applications/misc/curaengine/default.nix
index 6594deb84a5a..0a4ec62ca786 100644
--- a/pkgs/applications/misc/curaengine/default.nix
+++ b/pkgs/applications/misc/curaengine/default.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation rec {
   pname = "curaengine";
-  version = "4.4.0";
+  version = "4.6.1";
 
   src = fetchFromGitHub {
     owner = "Ultimaker";
     repo = "CuraEngine";
     rev = version;
-    sha256 = "1m89bp4g0dldh7vv1clj110m29ajiaghdq7b49mb3y8ifgrf8rdi";
+    sha256 = "1fr151hmdg2lhk9pbpan1hb1pafj784nijr4pz646ljmjh12vfk2";
   };
 
   nativeBuildInputs = [ cmake ];
@@ -18,7 +18,7 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "A powerful, fast and robust engine for processing 3D models into 3D printing instruction";
-    homepage = https://github.com/Ultimaker/CuraEngine;
+    homepage = "https://github.com/Ultimaker/CuraEngine";
     license = licenses.agpl3;
     platforms = platforms.linux;
     maintainers = with maintainers; [ abbradar gebner ];
diff --git a/pkgs/applications/misc/curaengine/stable.nix b/pkgs/applications/misc/curaengine/stable.nix
index 41f110e9ee10..d353fff87efe 100644
--- a/pkgs/applications/misc/curaengine/stable.nix
+++ b/pkgs/applications/misc/curaengine/stable.nix
@@ -22,7 +22,7 @@ stdenv.mkDerivation {
 
   meta = with stdenv.lib; {
     description = "Engine for processing 3D models into 3D printing instructions";
-    homepage = https://github.com/Ultimaker/CuraEngine;
+    homepage = "https://github.com/Ultimaker/CuraEngine";
     license = licenses.agpl3;
     platforms = platforms.linux;
     maintainers = with stdenv.lib.maintainers; [ the-kenny ];
diff --git a/pkgs/applications/misc/dbeaver/default.nix b/pkgs/applications/misc/dbeaver/default.nix
index e5590bfe8556..8aaa7faa54d8 100644
--- a/pkgs/applications/misc/dbeaver/default.nix
+++ b/pkgs/applications/misc/dbeaver/default.nix
@@ -7,7 +7,7 @@
 
 stdenv.mkDerivation rec {
   pname = "dbeaver-ce";
-  version = "6.3.5";
+  version = "7.0.4";
 
   desktopItem = makeDesktopItem {
     name = "dbeaver";
@@ -30,7 +30,7 @@ stdenv.mkDerivation rec {
 
   src = fetchurl {
     url = "https://dbeaver.io/files/${version}/dbeaver-ce-${version}-linux.gtk.x86_64.tar.gz";
-    sha256 = "1ssxgnd23cy6br7sbfszvx283c5vz9hgfhx0vqyvm13wyr67hk45";
+    sha256 = "1d36d2rzsr8c048w0jyacvmgh46jamr9nzs22rmpm7xbzlnvdg4k";
   };
 
   installPhase = ''
@@ -55,7 +55,7 @@ stdenv.mkDerivation rec {
   '';
 
   meta = with stdenv.lib; {
-    homepage = https://dbeaver.io/;
+    homepage = "https://dbeaver.io/";
     description = "Universal SQL Client for developers, DBA and analysts. Supports MySQL, PostgreSQL, MariaDB, SQLite, and more";
     longDescription = ''
       Free multi-platform database tool for developers, SQL programmers, database
diff --git a/pkgs/applications/misc/dbvisualizer/default.nix b/pkgs/applications/misc/dbvisualizer/default.nix
index fbeb965df380..7612c00393fa 100644
--- a/pkgs/applications/misc/dbvisualizer/default.nix
+++ b/pkgs/applications/misc/dbvisualizer/default.nix
@@ -4,7 +4,7 @@ stdenv.mkDerivation {
   name = "dbvisualizer-9.5.7";
 
   src = fetchurl {
-    url = https://www.dbvis.com/product_download/dbvis-9.5.7/media/dbvis_unix_9_5_7.tar.gz;
+    url = "https://www.dbvis.com/product_download/dbvis-9.5.7/media/dbvis_unix_9_5_7.tar.gz";
     sha256 = "1xv4fw7cji2ffvv7z8vjl5lap512pj60s2ynihirrqld7pmklnyr";
   };
 
@@ -19,7 +19,7 @@ stdenv.mkDerivation {
 
   meta = {
     description = "The universal database tool";
-    homepage = https://www.dbvis.com/;
+    homepage = "https://www.dbvis.com/";
     license = stdenv.lib.licenses.unfree;
   };
 }
diff --git a/pkgs/applications/misc/ddgr/default.nix b/pkgs/applications/misc/ddgr/default.nix
index 7d211b26a422..82730842baca 100644
--- a/pkgs/applications/misc/ddgr/default.nix
+++ b/pkgs/applications/misc/ddgr/default.nix
@@ -1,40 +1,33 @@
-{stdenv, fetchFromGitHub, python3}:
+{ stdenv, fetchFromGitHub, python3, installShellFiles }:
 
 stdenv.mkDerivation rec {
-  version = "1.7";
+  version = "1.8.1";
   pname = "ddgr";
 
   src = fetchFromGitHub {
     owner = "jarun";
     repo = "ddgr";
     rev = "v${version}";
-    sha256 = "0kcl8z9w8iwn3pxay1pfahhw6vs2l1dp60yfv3i19in4ac9va7m0";
+    sha256 = "0668wzh1gqin0xscy3fly9hz370n2ny175f3kya9bsld0x0jkd5p";
   };
 
+  nativeBuildInputs = [ installShellFiles ];
+
   buildInputs = [ python3 ];
 
   makeFlags = [ "PREFIX=$(out)" ];
 
-  preBuild = ''
-    # Version 1.7 was released as 1.6
-    # https://github.com/jarun/ddgr/pull/95
-    sed -i "s/_VERSION_ = '1.6'/_VERSION_ = '1.7'/" ddgr
-  '';
-
   postInstall = ''
-    mkdir -p "$out/share/bash-completion/completions/"
-    cp "auto-completion/bash/ddgr-completion.bash" "$out/share/bash-completion/completions/"
-    mkdir -p "$out/share/fish/vendor_completions.d/"
-    cp "auto-completion/fish/ddgr.fish" "$out/share/fish/vendor_completions.d/"
-    mkdir -p "$out/share/zsh/site-functions/"
-    cp "auto-completion/zsh/_ddgr" "$out/share/zsh/site-functions/"
+    installShellCompletion --bash --name ddgr.bash auto-completion/bash/ddgr-completion.bash
+    installShellCompletion --fish auto-completion/fish/ddgr.fish
+    installShellCompletion --zsh auto-completion/zsh/_ddgr
   '';
 
   meta = with stdenv.lib; {
-    homepage = https://github.com/jarun/ddgr;
+    homepage = "https://github.com/jarun/ddgr";
     description = "Search DuckDuckGo from the terminal";
     license = licenses.gpl3;
     maintainers = with maintainers; [ ceedubs markus1189 ];
-    platforms = platforms.unix;
+    platforms = python3.meta.platforms;
   };
 }
diff --git a/pkgs/applications/misc/deco/default.nix b/pkgs/applications/misc/deco/default.nix
index a1fdabd8ccb1..ad8b56e830fa 100644
--- a/pkgs/applications/misc/deco/default.nix
+++ b/pkgs/applications/misc/deco/default.nix
@@ -24,7 +24,7 @@ stdenv.mkDerivation rec {
   '';
 
   meta = with stdenv.lib; {
-    homepage = https://github.com/ebzzry/deco;
+    homepage = "https://github.com/ebzzry/deco";
     description = "A simple root image setter";
     license = licenses.mit;
     maintainers = [ maintainers.ebzzry ];
diff --git a/pkgs/applications/misc/devilspie2/default.nix b/pkgs/applications/misc/devilspie2/default.nix
index 5699396a0840..2961baee1024 100644
--- a/pkgs/applications/misc/devilspie2/default.nix
+++ b/pkgs/applications/misc/devilspie2/default.nix
@@ -27,7 +27,7 @@ stdenv.mkDerivation rec {
       positioned at a specific screen position, or position a window
       on a specific workspace.
     '';
-    homepage = http://www.gusnan.se/devilspie2/;
+    homepage = "https://www.gusnan.se/devilspie2/";
     license = licenses.gpl3;
     maintainers = [ maintainers.ebzzry ];
     platforms = platforms.linux;
diff --git a/pkgs/applications/misc/dfilemanager/default.nix b/pkgs/applications/misc/dfilemanager/default.nix
index 1bfb6bbfeaf3..69c7f0dc17fb 100644
--- a/pkgs/applications/misc/dfilemanager/default.nix
+++ b/pkgs/applications/misc/dfilemanager/default.nix
@@ -17,7 +17,7 @@ mkDerivation {
   cmakeFlags = [ "-DQT5BUILD=true" ];
 
   meta = {
-    homepage = http://dfilemanager.sourceforge.net/;
+    homepage = "http://dfilemanager.sourceforge.net/";
     description = "File manager written in Qt/C++";
     license = stdenv.lib.licenses.gpl2;
     platforms = stdenv.lib.platforms.unix;
diff --git a/pkgs/applications/misc/diffpdf/default.nix b/pkgs/applications/misc/diffpdf/default.nix
index 957d3ee72bbb..17dfd08f90b2 100644
--- a/pkgs/applications/misc/diffpdf/default.nix
+++ b/pkgs/applications/misc/diffpdf/default.nix
@@ -11,7 +11,7 @@ mkDerivation rec {
 
   patches = [
     (fetchpatch {
-      url = https://raw.githubusercontent.com/gentoo/gentoo/9b971631588ff46e7c2d501bc35cd0d9ce2d98e2/app-text/diffpdf/files/diffpdf-2.1.3-qt5.patch;
+      url = "https://raw.githubusercontent.com/gentoo/gentoo/9b971631588ff46e7c2d501bc35cd0d9ce2d98e2/app-text/diffpdf/files/diffpdf-2.1.3-qt5.patch";
       sha256 = "0sax8gcqcmzf74hmdr3rarqs4nsxmml9qmh6pqyjmgl3lypxhafg";
     })
     ./fix_path_poppler_qt5.patch
@@ -50,7 +50,7 @@ mkDerivation rec {
     '';
 
   meta = {
-    homepage = http://www.qtrac.eu/diffpdfc.html;
+    homepage = "http://www.qtrac.eu/diffpdfc.html";
     description = "Tool for diffing pdf files visually or textually";
     license = stdenv.lib.licenses.gpl2Plus;
     maintainers = with stdenv.lib.maintainers; [ tstrobel ];
diff --git a/pkgs/applications/misc/digitalbitbox/default.nix b/pkgs/applications/misc/digitalbitbox/default.nix
index a6ae45306552..95159d1927ab 100644
--- a/pkgs/applications/misc/digitalbitbox/default.nix
+++ b/pkgs/applications/misc/digitalbitbox/default.nix
@@ -7,7 +7,7 @@
 , libtool
 , qrencode
 , udev
-, libusb
+, libusb-compat-0_1
 , makeWrapper
 , pkgconfig
 , qtbase
@@ -70,7 +70,7 @@ in stdenv.mkDerivation rec {
     libevent
     libtool
     udev
-    libusb
+    libusb-compat-0_1
     qrencode
 
     qtbase
diff --git a/pkgs/applications/misc/ding/default.nix b/pkgs/applications/misc/ding/default.nix
index e76f95b6a50d..374c4cf66487 100644
--- a/pkgs/applications/misc/ding/default.nix
+++ b/pkgs/applications/misc/ding/default.nix
@@ -47,7 +47,7 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "Simple and fast dictionary lookup tool";
-    homepage = https://www-user.tu-chemnitz.de/~fri/ding/;
+    homepage = "https://www-user.tu-chemnitz.de/~fri/ding/";
     license = licenses.gpl2Plus;
     platforms = platforms.linux; # homepage says: unix-like except darwin
     maintainers = [ maintainers.exi ];
diff --git a/pkgs/applications/misc/direwolf/default.nix b/pkgs/applications/misc/direwolf/default.nix
index 8f7dbd2d2eda..038df41875f5 100644
--- a/pkgs/applications/misc/direwolf/default.nix
+++ b/pkgs/applications/misc/direwolf/default.nix
@@ -36,7 +36,7 @@ stdenv.mkDerivation rec {
 
   meta = {
     description = "A Soundcard Packet TNC, APRS Digipeater, IGate, APRStt gateway";
-    homepage = https://github.com/wb2osz/direwolf/;
+    homepage = "https://github.com/wb2osz/direwolf/";
     license = licenses.gpl2;
     platforms = platforms.unix;
     maintainers = [ maintainers.the-kenny ];
diff --git a/pkgs/applications/misc/dmensamenu/default.nix b/pkgs/applications/misc/dmensamenu/default.nix
index 1c3b41338674..cf02efdcece5 100644
--- a/pkgs/applications/misc/dmensamenu/default.nix
+++ b/pkgs/applications/misc/dmensamenu/default.nix
@@ -26,7 +26,7 @@ buildPythonApplication rec {
   doCheck = false;
 
   meta = with stdenv.lib; {
-    homepage = https://github.com/dotlambda/dmensamenu;
+    homepage = "https://github.com/dotlambda/dmensamenu";
     description = "Print German canteen menus using dmenu and OpenMensa";
     license = licenses.mit;
     maintainers = with maintainers; [ dotlambda ];
diff --git a/pkgs/applications/misc/dmenu/default.nix b/pkgs/applications/misc/dmenu/default.nix
index 8d13ac42e1fc..e4d0c82c4176 100644
--- a/pkgs/applications/misc/dmenu/default.nix
+++ b/pkgs/applications/misc/dmenu/default.nix
@@ -25,7 +25,7 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
       description = "A generic, highly customizable, and efficient menu for the X Window System";
-      homepage = https://tools.suckless.org/dmenu;
+      homepage = "https://tools.suckless.org/dmenu";
       license = licenses.mit;
       maintainers = with maintainers; [ pSub globin ];
       platforms = platforms.all;
diff --git a/pkgs/applications/misc/dmenu/wayland.nix b/pkgs/applications/misc/dmenu/wayland.nix
index 7b17d4847718..ca2e6f56e841 100644
--- a/pkgs/applications/misc/dmenu/wayland.nix
+++ b/pkgs/applications/misc/dmenu/wayland.nix
@@ -4,13 +4,13 @@
 
 stdenv.mkDerivation rec {
   pname = "dmenu-wayland-unstable";
-  version = "2020-02-28";
+  version = "2020-04-03";
 
   src = fetchFromGitHub {
     owner = "nyyManni";
     repo = "dmenu-wayland";
-    rev = "68e08e8bcde10a10ac3290431f173c6c7fce4238";
-    sha256 = "10b1v2brgpgb6wkzn62haj56zmkf3aq6fs3p9rp6bxiw8bs2nvlm";
+    rev = "550a7c39f3f925b803d51c616609c8cb6c0ea543";
+    sha256 = "0az3w1csn4x6mjyacg6lf70kykdfqamic3hbr57mj83i5jjv0jlv";
   };
 
   outputs = [ "out" "man" ];
diff --git a/pkgs/applications/misc/dockbarx/default.nix b/pkgs/applications/misc/dockbarx/default.nix
index 3888c4ce0a0d..97510bc3b457 100644
--- a/pkgs/applications/misc/dockbarx/default.nix
+++ b/pkgs/applications/misc/dockbarx/default.nix
@@ -29,7 +29,7 @@ pythonPackages.buildPythonApplication rec {
     ++ [ keybinder ];
 
   meta = with stdenv.lib; {
-    homepage = https://launchpad.net/dockbar/;
+    homepage = "https://launchpad.net/dockbar/";
     description = "DockBarX is a lightweight taskbar / panel replacement for Linux which works as a stand-alone dock";
     license = licenses.gpl3;
     platforms = platforms.linux;
diff --git a/pkgs/applications/misc/doing/Gemfile.lock b/pkgs/applications/misc/doing/Gemfile.lock
index 4d266827415f..1b969869f76c 100644
--- a/pkgs/applications/misc/doing/Gemfile.lock
+++ b/pkgs/applications/misc/doing/Gemfile.lock
@@ -22,4 +22,4 @@ DEPENDENCIES
   doing (= 1.0.10pre)
 
 BUNDLED WITH
-   1.14.6
+   2.1.4
diff --git a/pkgs/applications/misc/doing/default.nix b/pkgs/applications/misc/doing/default.nix
index d72a5b848261..48e45328f67b 100644
--- a/pkgs/applications/misc/doing/default.nix
+++ b/pkgs/applications/misc/doing/default.nix
@@ -17,7 +17,7 @@ bundlerEnv {
       in a TaskPaper-formatted text file. It allows for multiple
       sections/categories and flexible output formatting.
     '';
-    homepage    = https://brettterpstra.com/projects/doing/;
+    homepage    = "https://brettterpstra.com/projects/doing/";
     license     = licenses.mit;
     maintainers = with maintainers; [ ktf nicknovitski ];
     platforms   = platforms.unix;
diff --git a/pkgs/applications/misc/doomseeker/default.nix b/pkgs/applications/misc/doomseeker/default.nix
index da36e89db1fa..999904a21d3c 100644
--- a/pkgs/applications/misc/doomseeker/default.nix
+++ b/pkgs/applications/misc/doomseeker/default.nix
@@ -19,7 +19,7 @@ mkDerivation {
   hardeningDisable = stdenv.lib.optional stdenv.isDarwin "format";
 
   meta = with stdenv.lib; {
-    homepage = http://doomseeker.drdteam.org/;
+    homepage = "http://doomseeker.drdteam.org/";
     description = "Multiplayer server browser for many Doom source ports";
     license = licenses.gpl2;
     platforms = platforms.unix;
diff --git a/pkgs/applications/misc/dotfiles/default.nix b/pkgs/applications/misc/dotfiles/default.nix
index 5150f13fb80c..b515074fd475 100644
--- a/pkgs/applications/misc/dotfiles/default.nix
+++ b/pkgs/applications/misc/dotfiles/default.nix
@@ -17,7 +17,7 @@ pythonPackages.buildPythonApplication rec {
 
   meta = with stdenv.lib; {
     description = "Easily manage your dotfiles";
-    homepage = https://github.com/jbernard/dotfiles;
+    homepage = "https://github.com/jbernard/dotfiles";
     license = licenses.isc;
   };
 }
diff --git a/pkgs/applications/misc/dozenal/default.nix b/pkgs/applications/misc/dozenal/default.nix
index 226bdea03013..05d3ddb7cfba 100644
--- a/pkgs/applications/misc/dozenal/default.nix
+++ b/pkgs/applications/misc/dozenal/default.nix
@@ -54,7 +54,7 @@ stdenv.mkDerivation rec {
          Roman numerals.  Arbitrary ranks and symbols may be used.
          Defaults to dozenal Roman numerals.
     '';
-    homepage = https://github.com/dgoodmaniii/dozenal/;
+    homepage = "https://github.com/dgoodmaniii/dozenal/";
     maintainers = with stdenv.lib.maintainers; [ CharlesHD ];
     license = stdenv.lib.licenses.gpl3;
   };
diff --git a/pkgs/applications/misc/eaglemode/default.nix b/pkgs/applications/misc/eaglemode/default.nix
index 5d99cbaa988c..052e290120d7 100644
--- a/pkgs/applications/misc/eaglemode/default.nix
+++ b/pkgs/applications/misc/eaglemode/default.nix
@@ -34,7 +34,7 @@ stdenv.mkDerivation rec {
   '';
 
   meta = with stdenv.lib; {
-    homepage = http://eaglemode.sourceforge.net;
+    homepage = "http://eaglemode.sourceforge.net";
     description = "Zoomable User Interface";
     license = licenses.gpl3;
     maintainers = with maintainers; [ ];
diff --git a/pkgs/applications/misc/electron-cash/default.nix b/pkgs/applications/misc/electron-cash/default.nix
index e6cfca5667e1..1616c082c017 100644
--- a/pkgs/applications/misc/electron-cash/default.nix
+++ b/pkgs/applications/misc/electron-cash/default.nix
@@ -1,14 +1,14 @@
-{ lib, fetchFromGitHub, python3Packages, qtbase, wrapQtAppsHook }:
+{ lib, fetchFromGitHub, python3Packages, qtbase, wrapQtAppsHook, secp256k1 }:
 
 python3Packages.buildPythonApplication rec {
   pname = "electron-cash";
-  version = "4.0.11";
+  version = "4.0.14";
 
   src = fetchFromGitHub {
     owner = "Electron-Cash";
     repo = "Electron-Cash";
     rev = version;
-    sha256 = "1k4zbaj0g8bgk1l5vrb835a8bqfay2707bcb4ql2vx4igcwpb680";
+    sha256 = "1dp7cj1185h6xfz6jzh0iq58zvg3wq9hl96bkgxkf5h4ygni2vm6";
   };
 
   propagatedBuildInputs = with python3Packages; [
@@ -25,6 +25,7 @@ python3Packages.buildPythonApplication rec {
     requests
     tlslite-ng
     qdarkstyle
+    stem
 
     # plugins
     keepkey
@@ -36,7 +37,7 @@ python3Packages.buildPythonApplication rec {
 
   postPatch = ''
     substituteInPlace contrib/requirements/requirements.txt \
-      --replace "qdarkstyle<2.6" "qdarkstyle<3"
+      --replace "qdarkstyle==2.6.8" "qdarkstyle<3"
 
     substituteInPlace setup.py \
       --replace "(share_dir" "(\"share\""
@@ -56,8 +57,14 @@ python3Packages.buildPythonApplication rec {
       --replace "Exec=electron-cash" "Exec=$out/bin/electron-cash"
   '';
 
+  # If secp256k1 wasn't added to the library path, the following warning is given:
+  #
+  #   Electron Cash was unable to find the secp256k1 library on this system.
+  #   Elliptic curve cryptography operations will be performed in slow
+  #   Python-only mode.
   postFixup = ''
-    wrapQtApp $out/bin/electron-cash
+    wrapQtApp $out/bin/electron-cash \
+      --prefix LD_LIBRARY_PATH : ${secp256k1}/lib
   '';
 
   doInstallCheck = true;
@@ -73,7 +80,7 @@ python3Packages.buildPythonApplication rec {
       and the ability to perform transactions without downloading a copy
       of the blockchain.
     '';
-    homepage = https://www.electroncash.org/;
+    homepage = "https://www.electroncash.org/";
     platforms = platforms.linux;
     maintainers = with maintainers; [ lassulus nyanloutre ];
     license = licenses.mit;
diff --git a/pkgs/applications/misc/electrum/dash.nix b/pkgs/applications/misc/electrum/dash.nix
index fc5192bb5e47..33a8284744e5 100644
--- a/pkgs/applications/misc/electrum/dash.nix
+++ b/pkgs/applications/misc/electrum/dash.nix
@@ -39,7 +39,7 @@ python2Packages.buildPythonApplication rec {
 
   meta = with stdenv.lib; {
     description = "Electrum DASH";
-    homepage = https://github.com/dashpay/electrum-dash;
+    homepage = "https://github.com/dashpay/electrum-dash";
     license = licenses.gpl3;
     maintainers = with maintainers; [ np ];
     knownVulnerabilities = [ "CVE-2018-1000022" ];
diff --git a/pkgs/applications/misc/electrum/default.nix b/pkgs/applications/misc/electrum/default.nix
index 924d4dc9e0b5..d1011548b2a6 100644
--- a/pkgs/applications/misc/electrum/default.nix
+++ b/pkgs/applications/misc/electrum/default.nix
@@ -143,7 +143,7 @@ python3Packages.buildPythonApplication {
       and the ability to perform transactions without downloading a copy
       of the blockchain.
     '';
-    homepage = https://electrum.org/;
+    homepage = "https://electrum.org/";
     license = licenses.mit;
     platforms = platforms.all;
     maintainers = with maintainers; [ ehmry joachifm np ];
diff --git a/pkgs/applications/misc/electrum/ltc.nix b/pkgs/applications/misc/electrum/ltc.nix
index 88f44c6cc853..b7c655caaaf4 100644
--- a/pkgs/applications/misc/electrum/ltc.nix
+++ b/pkgs/applications/misc/electrum/ltc.nix
@@ -48,7 +48,7 @@ python3Packages.buildPythonApplication rec {
       about losing your litecoins to theft or hardware failure. No waiting, no
       lengthy blockchain downloads and no syncing to the network.
     '';
-    homepage = https://electrum-ltc.org/;
+    homepage = "https://electrum-ltc.org/";
     license = licenses.mit;
     platforms = platforms.linux;
     maintainers = with maintainers; [ ];
diff --git a/pkgs/applications/misc/elogind/default.nix b/pkgs/applications/misc/elogind/default.nix
index 9565e7213dcd..78dc54497dd9 100644
--- a/pkgs/applications/misc/elogind/default.nix
+++ b/pkgs/applications/misc/elogind/default.nix
@@ -29,13 +29,13 @@ with stdenv.lib;
 
 stdenv.mkDerivation rec {
   pname = "elogind";
-  version = "243.4";
+  version = "243.7";
 
   src = fetchFromGitHub {
     owner = "elogind";
     repo = pname;
     rev = "v${version}";
-    sha256 = "141frvgyk4fafcxsix94qc0d9ffrwksld8lqq4hq6xsgjlvv0mrs";
+    sha256 = "0cihdf7blhncm2359qxli24j9l3dkn15gjys5vpjwny80zlym5ma";
   };
 
   nativeBuildInputs = [
@@ -73,7 +73,7 @@ stdenv.mkDerivation rec {
   ];
 
   meta = {
-    homepage = https://github.com/elogind/elogind;
+    homepage = "https://github.com/elogind/elogind";
     description = ''The systemd project's "logind", extracted to a standalone package'';
     platforms = platforms.linux; # probably more
     license = licenses.lgpl21Plus;
diff --git a/pkgs/applications/misc/emem/default.nix b/pkgs/applications/misc/emem/default.nix
index 62358d41cc53..e0fcc221100e 100644
--- a/pkgs/applications/misc/emem/default.nix
+++ b/pkgs/applications/misc/emem/default.nix
@@ -29,7 +29,7 @@ EOF
   '';
 
   meta = with stdenv.lib; {
-    homepage = https://github.com/ebzzry/emem;
+    homepage = "https://github.com/ebzzry/emem";
     description = "A trivial Markdown to HTML converter";
     license = licenses.epl10;
     maintainers = [ maintainers.ebzzry ];
diff --git a/pkgs/applications/misc/epdfview/default.nix b/pkgs/applications/misc/epdfview/default.nix
index de922bb39900..7cbae2271aea 100644
--- a/pkgs/applications/misc/epdfview/default.nix
+++ b/pkgs/applications/misc/epdfview/default.nix
@@ -27,7 +27,7 @@ stdenv.mkDerivation rec {
             ];
 
   meta = with stdenv.lib; {
-    homepage = https://packages.debian.org/wheezy/epdfview;
+    homepage = "https://packages.debian.org/wheezy/epdfview";
     description = "A lightweight PDF document viewer using Poppler and GTK";
     longDescription = ''
       ePDFView is a free lightweight PDF document viewer using Poppler and
diff --git a/pkgs/applications/misc/eterm/default.nix b/pkgs/applications/misc/eterm/default.nix
index 56cac7ca9185..b51acd9fa728 100644
--- a/pkgs/applications/misc/eterm/default.nix
+++ b/pkgs/applications/misc/eterm/default.nix
@@ -18,7 +18,7 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "Terminal emulator";
-    homepage = http://www.eterm.org;
+    homepage = "http://www.eterm.org";
     license = licenses.bsd2;
     maintainers = [ maintainers.AndersonTorres ];
     platforms = platforms.linux;
diff --git a/pkgs/applications/misc/etesync-dav/default.nix b/pkgs/applications/misc/etesync-dav/default.nix
index d99d1890563e..69e2d3d55981 100644
--- a/pkgs/applications/misc/etesync-dav/default.nix
+++ b/pkgs/applications/misc/etesync-dav/default.nix
@@ -2,11 +2,11 @@
 
 python3Packages.buildPythonApplication rec {
   pname = "etesync-dav";
-  version = "0.14.2";
+  version = "0.16.0";
 
   src = python3Packages.fetchPypi {
     inherit pname version;
-    sha256 = "05kzy74r2hd44sqjgd0bc588ganrzbz5brpiginb8sh8z38igb60";
+    sha256 = "1r0d52rlhg7dz6hziplzy7ypsfx9lgbs76j3ylinh2csplwkzv69";
   };
 
   propagatedBuildInputs = with python3Packages; [
diff --git a/pkgs/applications/misc/eureka-editor/default.nix b/pkgs/applications/misc/eureka-editor/default.nix
index e9d1317390ed..d72aeb629c38 100644
--- a/pkgs/applications/misc/eureka-editor/default.nix
+++ b/pkgs/applications/misc/eureka-editor/default.nix
@@ -30,7 +30,7 @@ stdenv.mkDerivation rec {
   '';
 
   meta = with stdenv.lib; {
-    homepage = http://eureka-editor.sourceforge.net;
+    homepage = "http://eureka-editor.sourceforge.net";
     description = "A map editor for the classic DOOM games, and a few related games such as Heretic and Hexen";
     license = licenses.gpl2;
     platforms = platforms.all;
diff --git a/pkgs/applications/misc/evilvte/default.nix b/pkgs/applications/misc/evilvte/default.nix
index 984ade077a8a..7a5284a527a6 100644
--- a/pkgs/applications/misc/evilvte/default.nix
+++ b/pkgs/applications/misc/evilvte/default.nix
@@ -8,7 +8,7 @@ stdenv.mkDerivation {
   version = "0.5.2-20140827";
 
   src = fetchgit {
-    url = https://github.com/caleb-/evilvte.git;
+    url = "https://github.com/caleb-/evilvte.git";
     rev = "8dfa41e26bc640dd8d8c7317ff7d04e3c01ded8a";
     sha256 = "70f1d4234d077121e2223a735d749d1b53f0b84393507b635b8a37c3716e94d3";
   };
@@ -27,7 +27,7 @@ stdenv.mkDerivation {
 
   meta = with stdenv.lib; {
     description = "VTE based, highly customizable terminal emulator";
-    homepage = http://www.calno.com/evilvte;
+    homepage = "http://www.calno.com/evilvte";
     license = licenses.gpl2;
     maintainers = [ maintainers.bodil ];
     platforms = platforms.linux;
diff --git a/pkgs/applications/misc/extract_url/default.nix b/pkgs/applications/misc/extract_url/default.nix
index f96d3f0f57c7..9daaf7268c39 100644
--- a/pkgs/applications/misc/extract_url/default.nix
+++ b/pkgs/applications/misc/extract_url/default.nix
@@ -32,7 +32,7 @@ in stdenv.mkDerivation rec {
   '';
 
   meta = with lib; {
-    homepage = https://www.memoryhole.net/~kyle/extract_url/;
+    homepage = "https://www.memoryhole.net/~kyle/extract_url/";
     description = "Extracts URLs from MIME messages or plain text";
     license = licenses.bsd2;
     maintainers = [ maintainers.qyliss ];
diff --git a/pkgs/applications/misc/far2l/default.nix b/pkgs/applications/misc/far2l/default.nix
index 7c6573630a15..de2ed0d15964 100644
--- a/pkgs/applications/misc/far2l/default.nix
+++ b/pkgs/applications/misc/far2l/default.nix
@@ -74,13 +74,13 @@ stdenv.mkDerivation rec {
     wrapProgram $out/bin/far2l --argv0 $out/bin/far2l
   '';
 
-  stripDebugList = "bin share";
+  stripDebugList = [ "bin" "share" ];
 
   enableParallelBuilding = true;
 
   meta = with stdenv.lib; {
     description = "An orthodox file manager";
-    homepage = https://github.com/elfmz/far2l;
+    homepage = "https://github.com/elfmz/far2l";
     license = licenses.gpl2;
     maintainers = [ maintainers.volth ];
     platforms = platforms.all;
diff --git a/pkgs/applications/misc/fbreader/default.nix b/pkgs/applications/misc/fbreader/default.nix
index 857ef9ac27bb..187988077435 100644
--- a/pkgs/applications/misc/fbreader/default.nix
+++ b/pkgs/applications/misc/fbreader/default.nix
@@ -65,7 +65,7 @@ stdenv.mkDerivation {
 
   meta = with stdenv.lib; {
     description = "An e-book reader for Linux";
-    homepage = http://www.fbreader.org/;
+    homepage = "http://www.fbreader.org/";
     license = licenses.gpl3;
     broken = stdenv.isDarwin  # untested, might work
           || uiType == "gtk"; # builds, but the result is unusable, hangs a lot
diff --git a/pkgs/applications/misc/fehlstart/default.nix b/pkgs/applications/misc/fehlstart/default.nix
index db78f2ec9204..cae637c2c4a4 100644
--- a/pkgs/applications/misc/fehlstart/default.nix
+++ b/pkgs/applications/misc/fehlstart/default.nix
@@ -20,7 +20,7 @@ stdenv.mkDerivation {
 
   meta = with stdenv.lib; {
     description = "Small desktop application launcher with reasonable memory footprint";
-    homepage = https://gitlab.com/fehlstart/fehlstart;
+    homepage = "https://gitlab.com/fehlstart/fehlstart";
     license = licenses.gpl3;
     maintainers = [ maintainers.mounium ];
     platforms = platforms.all;
diff --git a/pkgs/applications/misc/fetchmail/default.nix b/pkgs/applications/misc/fetchmail/default.nix
index 6c4ecf6fa392..1b892c7f536c 100644
--- a/pkgs/applications/misc/fetchmail/default.nix
+++ b/pkgs/applications/misc/fetchmail/default.nix
@@ -1,15 +1,15 @@
 { stdenv, fetchurl, openssl }:
 
 let
-  version = "6.3.26";
+  version = "6.4.4";
 in
 stdenv.mkDerivation {
   pname = "fetchmail";
   inherit version;
 
   src = fetchurl {
-    url = "mirror://sourceforge/fetchmail.berlios/fetchmail-${version}.tar.bz2";
-    sha256 = "08rafrs1dlr11myr0p99kg4k80qyy0fa63gg3ac88zn49174lwhw";
+    url = "mirror://sourceforge/fetchmail/fetchmail-${version}.tar.xz";
+    sha256 = "1smbydwfjq29a2l44g6mgj0cd412fz40gbq6vq0klm7pmgd606si";
   };
 
   buildInputs = [ openssl ];
@@ -17,7 +17,7 @@ stdenv.mkDerivation {
   configureFlags = [ "--with-ssl=${openssl.dev}" ];
 
   meta = {
-    homepage = https://www.fetchmail.info/;
+    homepage = "https://www.fetchmail.info/";
     description = "A full-featured remote-mail retrieval and forwarding utility";
     longDescription = ''
       A full-featured, robust, well-documented remote-mail retrieval and
diff --git a/pkgs/applications/misc/fff/default.nix b/pkgs/applications/misc/fff/default.nix
index e87c86f1b4b3..1397f0a057da 100644
--- a/pkgs/applications/misc/fff/default.nix
+++ b/pkgs/applications/misc/fff/default.nix
@@ -25,7 +25,7 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "Fucking Fast File-Manager";
-    homepage = https://github.com/dylanaraps/fff;
+    homepage = "https://github.com/dylanaraps/fff";
     license = licenses.mit;
     maintainers = [ maintainers.tadeokondrak ];
     platforms = platforms.all;
diff --git a/pkgs/applications/misc/filet/default.nix b/pkgs/applications/misc/filet/default.nix
index edee9ab33e9e..ee4b05fa689f 100644
--- a/pkgs/applications/misc/filet/default.nix
+++ b/pkgs/applications/misc/filet/default.nix
@@ -15,7 +15,7 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "A fucking fucking fast file fucker (afffff)";
-    homepage = https://github.com/buffet/filet;
+    homepage = "https://github.com/buffet/filet";
     license = licenses.mpl20;
     platforms = platforms.all;
     maintainers = with maintainers; [ buffet ];
diff --git a/pkgs/applications/misc/firestarter/default.nix b/pkgs/applications/misc/firestarter/default.nix
index 82bcf5a4aa07..05c535e62c0e 100644
--- a/pkgs/applications/misc/firestarter/default.nix
+++ b/pkgs/applications/misc/firestarter/default.nix
@@ -30,7 +30,7 @@ stdenv.mkDerivation rec {
   '';
 
   meta = with stdenv.lib; {
-    homepage = https://tu-dresden.de/zih/forschung/projekte/firestarter;
+    homepage = "https://tu-dresden.de/zih/forschung/projekte/firestarter";
     description = "Processor Stress Test Utility";
     platforms = platforms.linux;
     maintainers = with maintainers; [ astro ];
diff --git a/pkgs/applications/misc/fitnesstrax/default.nix b/pkgs/applications/misc/fitnesstrax/default.nix
new file mode 100644
index 000000000000..f0081c39102e
--- /dev/null
+++ b/pkgs/applications/misc/fitnesstrax/default.nix
@@ -0,0 +1,43 @@
+{ fetchFromGitHub
+, glib
+, gtk3
+, lib
+, rustPlatform
+, wrapGAppsHook
+}:
+
+rustPlatform.buildRustPackage rec {
+  pname = "fitnesstrax";
+  version = "0.1.0";
+
+  src = fetchFromGitHub {
+    owner = "luminescent-dreams";
+    repo = "fitnesstrax";
+    rev = "${pname}-${version}";
+    sha256 = "1k6zhnbs0ggx7q0ig2abcnzprsgrychlpvsh6d36dw6mr8zpfkp7";
+  };
+
+  nativeBuildInputs = [
+    wrapGAppsHook
+  ];
+
+  buildInputs = [
+    glib
+    gtk3
+  ];
+
+  cargoSha256 = "1xgyyxd2kz21xan0pk7rbxiym90s7m2qrzg2ddilcszva60bxdd9";
+
+  postInstall = ''
+    mkdir -p $out/share/glib-2.0/schemas
+    cp -r $src/share/* $out/share/
+    glib-compile-schemas $out/share/glib-2.0/schemas
+  '';
+
+  meta = with lib; {
+    description = "Privacy-first fitness tracking";
+    homepage = "https://github.com/luminescent-dreams/fitnesstrax";
+    license = licenses.bsd3;
+    maintainers = with maintainers; [ savannidgerinel ];
+  };
+}
diff --git a/pkgs/applications/misc/flamerobin/default.nix b/pkgs/applications/misc/flamerobin/default.nix
index 06cf3c06ffa6..2e389c753e2e 100644
--- a/pkgs/applications/misc/flamerobin/default.nix
+++ b/pkgs/applications/misc/flamerobin/default.nix
@@ -25,7 +25,7 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "Database administration tool for Firebird RDBMS";
-    homepage = https://github.com/mariuz/flamerobin;
+    homepage = "https://github.com/mariuz/flamerobin";
     license = licenses.bsdOriginal;
     maintainers = with maintainers; [ uralbash ];
     platforms = platforms.unix;
diff --git a/pkgs/applications/misc/fluxboxlauncher/default.nix b/pkgs/applications/misc/fluxboxlauncher/default.nix
new file mode 100755
index 000000000000..4794e14b4698
--- /dev/null
+++ b/pkgs/applications/misc/fluxboxlauncher/default.nix
@@ -0,0 +1,56 @@
+{ lib
+, fetchFromGitHub
+, python3
+, gtk3
+, wrapGAppsHook
+, glibcLocales
+, gobject-introspection
+, gettext
+, pango
+, gdk-pixbuf
+, atk
+, fluxbox
+}:
+
+python3.pkgs.buildPythonApplication rec {
+  pname = "fluxboxlauncher";
+  version = "0.2.1";
+
+  src = fetchFromGitHub {
+    owner = "mothsart";
+    repo = "fluxboxlauncher";
+    rev = "0.2.1";
+    sha256 = "024h1dk0bhc5s4dldr6pqabrgcqih9p8cys5lqgkgz406y4vyzvf";
+  };
+
+  nativeBuildInputs = [
+    wrapGAppsHook
+    gobject-introspection
+    pango
+    gdk-pixbuf
+    atk
+    gettext
+  ];
+
+  buildInputs = [
+    glibcLocales
+    gtk3
+    python3
+    fluxbox
+  ];
+
+  makeWrapperArgs = [ "--set LOCALE_ARCHIVE ${glibcLocales}/lib/locale/locale-archive"
+                      "--set CHARSET en_us.UTF-8" ];
+
+  propagatedBuildInputs = with python3.pkgs; [
+    pygobject3
+  ];
+
+  meta = with lib; {
+    description = "A Gui editor (gtk) to configure applications launching on a fluxbox session";
+    homepage = "https://github.com/mothsART/fluxboxlauncher";
+    maintainers = with maintainers; [ mothsart ];
+    license = licenses.bsdOriginal;
+    platforms = platforms.linux;
+  };
+}
diff --git a/pkgs/applications/misc/fme/default.nix b/pkgs/applications/misc/fme/default.nix
index 2ca059820ef0..cf93729eddd3 100644
--- a/pkgs/applications/misc/fme/default.nix
+++ b/pkgs/applications/misc/fme/default.nix
@@ -26,7 +26,7 @@ stdenv.mkDerivation rec{
       Its user-friendly interface will help you to edit, delete, move (Drag and Drop)
       a row, a submenu, etc very easily.
     '';
-    homepage = https://github.com/rdehouss/fme/;
+    homepage = "https://github.com/rdehouss/fme/";
     license = licenses.gpl2;
     maintainers = [ maintainers.AndersonTorres ];
     platforms = platforms.linux;
diff --git a/pkgs/applications/misc/font-manager/default.nix b/pkgs/applications/misc/font-manager/default.nix
index afa0a06d33fc..008e59eebee6 100644
--- a/pkgs/applications/misc/font-manager/default.nix
+++ b/pkgs/applications/misc/font-manager/default.nix
@@ -44,7 +44,7 @@ stdenv.mkDerivation rec {
   '';
 
   meta = with stdenv.lib; {
-    homepage = https://fontmanager.github.io/;
+    homepage = "https://fontmanager.github.io/";
     description = "Simple font management for GTK desktop environments";
     longDescription = ''
       Font Manager is intended to provide a way for average users to
diff --git a/pkgs/applications/misc/freemind/default.nix b/pkgs/applications/misc/freemind/default.nix
index aee3937689b3..5774320220a1 100644
--- a/pkgs/applications/misc/freemind/default.nix
+++ b/pkgs/applications/misc/freemind/default.nix
@@ -35,7 +35,7 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "Mind-mapping software";
-    homepage = http://freemind.sourceforge.net/wiki/index.php/Main_Page;
+    homepage = "http://freemind.sourceforge.net/wiki/index.php/Main_Page";
     license = licenses.gpl2Plus;
     platforms = platforms.linux;
   };
diff --git a/pkgs/applications/misc/fsv/default.nix b/pkgs/applications/misc/fsv/default.nix
index bbc78efe5cd2..8b6898958d3c 100644
--- a/pkgs/applications/misc/fsv/default.nix
+++ b/pkgs/applications/misc/fsv/default.nix
@@ -44,7 +44,7 @@ in stdenv.mkDerivation rec {
       hard drive, or any arbitrarily large collection of files, limited only
       by the host computer's memory and graphics hardware.
     '';
-    homepage    = https://github.com/mcuelenaere/fsv;
+    homepage    = "https://github.com/mcuelenaere/fsv";
     license     = licenses.lgpl2;
     platforms   = platforms.linux;
     maintainers = with maintainers; [ rnhmjoj ];
diff --git a/pkgs/applications/misc/fusee-interfacee-tk/default.nix b/pkgs/applications/misc/fusee-interfacee-tk/default.nix
new file mode 100644
index 000000000000..91a7b0ed37fd
--- /dev/null
+++ b/pkgs/applications/misc/fusee-interfacee-tk/default.nix
@@ -0,0 +1,40 @@
+{ stdenv , fetchFromGitHub , python3 , makeWrapper }: 
+
+let pythonEnv = python3.withPackages(ps: [ ps.tkinter ps.pyusb ]); 
+in stdenv.mkDerivation rec { 
+  pname = "fusee-interfacee-tk";
+  version = "1.0.1";
+
+  src = fetchFromGitHub { 
+    owner = "nh-server";
+    repo = pname;
+    rev = "V${version}"; 
+    sha256 = "0ngwbwsj999flprv14xvhk7lp51nprrvcnlbnbk6y4qx5casm5md";
+  };
+
+  nativeBuildInputs = [ makeWrapper ];
+  buildInputs = [ pythonEnv ];
+
+  installPhase = '' 
+    mkdir -p $out/bin
+			      
+    # The program isn't just called app, so I'm renaming it based on the repo name 
+    # It also isn't a standard program, so we need to append the shebang to the top
+    echo "#!${pythonEnv.interpreter}" > $out/bin/fusee-interfacee-tk 
+    cat app.py >> $out/bin/fusee-interfacee-tk
+    chmod +x $out/bin/fusee-interfacee-tk 
+							      
+    # app.py depends on these to run 
+    cp *.py $out/bin/ 
+    cp intermezzo.bin $out/bin/intermezzo.bin
+  '';
+
+  meta = with stdenv.lib; { 
+    homepage = "https://github.com/nh-server/fusee-interfacee-tk";
+    description = "A tool to send .bin files to a Nintendo Switch in RCM mode";
+    longDescription = "A mod of falquinhos Fusée Launcher for use with Nintendo Homebrew Switch Guide. It also adds the ability to mount SD while in RCM. 
+    Must be run as sudo.";
+    maintainers = with maintainers; [ kristian-brucaj ];
+    license = licenses.gpl2;
+  };
+} 
diff --git a/pkgs/applications/misc/gImageReader/default.nix b/pkgs/applications/misc/gImageReader/default.nix
index 67d4bd65a9f9..2884fca62398 100644
--- a/pkgs/applications/misc/gImageReader/default.nix
+++ b/pkgs/applications/misc/gImageReader/default.nix
@@ -62,7 +62,7 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "A simple Gtk/Qt front-end to tesseract-ocr";
-    homepage = https://github.com/manisandro/gImageReader;
+    homepage = "https://github.com/manisandro/gImageReader";
     license = licenses.gpl3Plus;
     maintainers = with maintainers; [teto];
     platforms = platforms.linux;
diff --git a/pkgs/applications/misc/galculator/default.nix b/pkgs/applications/misc/galculator/default.nix
index ecf8ae9da8d4..1964ba6aaf73 100644
--- a/pkgs/applications/misc/galculator/default.nix
+++ b/pkgs/applications/misc/galculator/default.nix
@@ -30,7 +30,7 @@ stdenv.mkDerivation rec {
       - Binary arithmetic of configurable bit length and signedness
       - Quad-precision floating point arithmetic, and 112-bit binary arithmetic
     '';
-    homepage = http://galculator.sourceforge.net/;
+    homepage = "http://galculator.sourceforge.net/";
     license = licenses.gpl2Plus;
     maintainers = [ maintainers.AndersonTorres ];
     platforms = platforms.linux;
diff --git a/pkgs/applications/misc/gallery-dl/default.nix b/pkgs/applications/misc/gallery-dl/default.nix
index 941b6050a1ac..6845cbcb59db 100644
--- a/pkgs/applications/misc/gallery-dl/default.nix
+++ b/pkgs/applications/misc/gallery-dl/default.nix
@@ -2,11 +2,11 @@
 
 python3Packages.buildPythonApplication rec {
   pname = "gallery_dl";
-  version = "1.12.3";
+  version = "1.13.6";
 
   src = python3Packages.fetchPypi {
     inherit pname version;
-    sha256 = "06q6vmbliy935zlf4bbnfgiqyrx9vskz3fsks4jpxi47xs80rqkz";
+    sha256 = "17hgryj8qsxcx3c96ir25q0wsh5q0s6c6fb33lqfdbrfxrjcixbk";
   };
 
   doCheck = false;
@@ -14,7 +14,7 @@ python3Packages.buildPythonApplication rec {
 
   meta = {
     description = "Command-line program to download image-galleries and -collections from several image hosting sites";
-    homepage = https://github.com/mikf/gallery-dl;
+    homepage = "https://github.com/mikf/gallery-dl";
     license = lib.licenses.gpl2;
     maintainers = with lib.maintainers; [ dawidsowa ];
   };
diff --git a/pkgs/applications/misc/gammu/default.nix b/pkgs/applications/misc/gammu/default.nix
index fb6902634da8..ff3408eb8dd2 100644
--- a/pkgs/applications/misc/gammu/default.nix
+++ b/pkgs/applications/misc/gammu/default.nix
@@ -28,7 +28,7 @@ stdenv.mkDerivation rec {
   enableParallelBuilding = true;
 
   meta = {
-    homepage = https://wammu.eu/gammu/;
+    homepage = "https://wammu.eu/gammu/";
     description = "Command line utility and library to control mobile phones";
     license = licenses.gpl2;
     platforms = platforms.linux;
diff --git a/pkgs/applications/misc/ganttproject-bin/default.nix b/pkgs/applications/misc/ganttproject-bin/default.nix
index 96d3d34046e1..2e8478f41d3d 100644
--- a/pkgs/applications/misc/ganttproject-bin/default.nix
+++ b/pkgs/applications/misc/ganttproject-bin/default.nix
@@ -49,8 +49,8 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "Project scheduling and management";
-    homepage = https://www.ganttproject.biz/;
-    downloadPage = https://www.ganttproject.biz/download;
+    homepage = "https://www.ganttproject.biz/";
+    downloadPage = "https://www.ganttproject.biz/download";
     # GanttProject itself is GPL3+. All bundled libraries are declared
     # ‘GPL3-compatible’. See ${downloadPage} for detailed information.
     license = licenses.gpl3Plus;
diff --git a/pkgs/applications/misc/garmin-plugin/default.nix b/pkgs/applications/misc/garmin-plugin/default.nix
index b97b079ab663..95cbdd9c19b5 100644
--- a/pkgs/applications/misc/garmin-plugin/default.nix
+++ b/pkgs/applications/misc/garmin-plugin/default.nix
@@ -1,13 +1,13 @@
-{ stdenv, fetchurl, garmintools, libgcrypt, libusb, pkgconfig, tinyxml, zlib }:
+{ stdenv, fetchurl, garmintools, libgcrypt, libusb-compat-0_1, pkgconfig, tinyxml, zlib }:
 stdenv.mkDerivation {
   name = "garmin-plugin-0.3.26";
   src = fetchurl {
-    url = https://github.com/adiesner/GarminPlugin/archive/V0.3.26.tar.gz;
+    url = "https://github.com/adiesner/GarminPlugin/archive/V0.3.26.tar.gz";
     sha256 = "15gads1fj4sj970m5960dgnhys41ksi4cm53ldkf67wn8dc9i4k0";
   };
   sourceRoot = "GarminPlugin-0.3.26/src";
   nativeBuildInputs = [ pkgconfig ];
-  buildInputs = [ garmintools libusb libgcrypt tinyxml zlib ];
+  buildInputs = [ garmintools libusb-compat-0_1 libgcrypt tinyxml zlib ];
   configureFlags = [
     "--with-libgcrypt-prefix=${libgcrypt.dev}"
     "--with-garmintools-incdir=${garmintools}/include"
@@ -18,7 +18,7 @@ stdenv.mkDerivation {
     cp npGarminPlugin.so $out/lib/mozilla/plugins
   '';
   meta = {
-    homepage = http://www.andreas-diesner.de/garminplugin;
+    homepage = "http://www.andreas-diesner.de/garminplugin";
     license = stdenv.lib.licenses.gpl3;
     maintainers = [ stdenv.lib.maintainers.ocharles ];
     platforms = stdenv.lib.platforms.linux;
diff --git a/pkgs/applications/misc/gcal/default.nix b/pkgs/applications/misc/gcal/default.nix
index 713000d3f69a..24906b11dd59 100644
--- a/pkgs/applications/misc/gcal/default.nix
+++ b/pkgs/applications/misc/gcal/default.nix
@@ -28,7 +28,7 @@ stdenv.mkDerivation rec {
       hybrid and proleptic Julian and Gregorian calendar sheets.  It
       also displays holiday lists for many countries around the globe.
     '';
-    homepage = https://www.gnu.org/software/gcal/;
+    homepage = "https://www.gnu.org/software/gcal/";
     license = stdenv.lib.licenses.gpl3Plus;
     platforms = stdenv.lib.platforms.unix;
     maintainers = [ stdenv.lib.maintainers.romildo ];
diff --git a/pkgs/applications/misc/gcalcli/default.nix b/pkgs/applications/misc/gcalcli/default.nix
index 8381f182e5d3..d7d6ad5302d3 100644
--- a/pkgs/applications/misc/gcalcli/default.nix
+++ b/pkgs/applications/misc/gcalcli/default.nix
@@ -5,13 +5,13 @@ with python3.pkgs;
 
 buildPythonApplication rec {
   pname = "gcalcli";
-  version = "4.2.0";
+  version = "4.2.1";
 
   src = fetchFromGitHub {
     owner  = "insanum";
     repo   = pname;
     rev    = "v${version}";
-    sha256 = "0746vmhfclkpkqnyaidxid2z20mlv86hv0pjxy1qglrja91vkd72";
+    sha256 = "1xwrgmy2azvr99b7df92m2imj0wy4fh53bn7lvcrnghjbnh7n0l0";
   };
 
   postPatch = lib.optionalString stdenv.isLinux ''
@@ -30,7 +30,7 @@ buildPythonApplication rec {
 
   meta = with lib; {
     description = "CLI for Google Calendar";
-    homepage = https://github.com/insanum/gcalcli;
+    homepage = "https://github.com/insanum/gcalcli";
     license = licenses.mit;
     maintainers = with maintainers; [ nocoolnametom ];
     inherit version;
diff --git a/pkgs/applications/misc/geoipupdate/default.nix b/pkgs/applications/misc/geoipupdate/default.nix
index 57060179473f..b7b90448e4bc 100644
--- a/pkgs/applications/misc/geoipupdate/default.nix
+++ b/pkgs/applications/misc/geoipupdate/default.nix
@@ -2,16 +2,16 @@
 
 buildGoModule rec {
   pname = "geoipupdate";
-  version = "4.1.5";
+  version = "4.2.2";
 
   src = fetchFromGitHub {
     owner = "maxmind";
     repo = "geoipupdate";
     rev = "v${version}";
-    sha256 = "1k0bmsqgw35sdmaafinlr4qd5910fi598i8irxrz11394d3c8giv";
+    sha256 = "057f9kp8g3wixjh9dm58g0qvzfcmhwbk1d573ldly4g5404r9bvf";
   };
 
-  modSha256 = "0mk6zp6byq3jc6wipx53bg5igry114klq5w8isc0z6r63zjsk6f6";
+  modSha256 = "1bypanvrkcqp8rk84cv2569671irgaf3cy27lcrknyina4pdvir5";
 
   meta = with stdenv.lib; {
     description = "Automatic GeoIP database updater";
diff --git a/pkgs/applications/misc/get_iplayer/default.nix b/pkgs/applications/misc/get_iplayer/default.nix
index 5db328072e43..9c05e9847202 100644
--- a/pkgs/applications/misc/get_iplayer/default.nix
+++ b/pkgs/applications/misc/get_iplayer/default.nix
@@ -33,7 +33,7 @@ perlPackages.buildPerlPackage rec {
   meta = {
     description = "Downloads TV and radio from BBC iPlayer";
     license = licenses.gpl3Plus;
-    homepage = https://squarepenguin.co.uk/;
+    homepage = "https://squarepenguin.co.uk/";
     platforms = platforms.all;
     maintainers = with maintainers; [ rika ];
   };
diff --git a/pkgs/applications/misc/getxbook/default.nix b/pkgs/applications/misc/getxbook/default.nix
index aa901a7ba513..8ac0b000c46d 100644
--- a/pkgs/applications/misc/getxbook/default.nix
+++ b/pkgs/applications/misc/getxbook/default.nix
@@ -21,7 +21,7 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "A collection of tools to download books from Google Books";
-    homepage    = https://njw.me.uk/getxbook/;
+    homepage    = "https://njw.me.uk/getxbook/";
     license     = licenses.isc;
     maintainers = with maintainers; [ obadz ];
     platforms   = platforms.all;
diff --git a/pkgs/applications/misc/gkrellm/default.nix b/pkgs/applications/misc/gkrellm/default.nix
index f44cdd0bad72..bc7c66ee5310 100644
--- a/pkgs/applications/misc/gkrellm/default.nix
+++ b/pkgs/applications/misc/gkrellm/default.nix
@@ -38,7 +38,7 @@ stdenv.mkDerivation rec {
       manager, Gtk, or any other theme.
     '';
 
-    homepage = http://gkrellm.srcbox.net;
+    homepage = "http://gkrellm.srcbox.net";
     license = licenses.gpl3Plus;
     maintainers = [ ];
     platforms = platforms.linux;
diff --git a/pkgs/applications/misc/gksu/default.nix b/pkgs/applications/misc/gksu/default.nix
index 4a806cbb183d..bfa504477616 100644
--- a/pkgs/applications/misc/gksu/default.nix
+++ b/pkgs/applications/misc/gksu/default.nix
@@ -45,7 +45,7 @@ stdenv.mkDerivation rec {
       programs that need to ask a user's password to run another program
       as another user.
     '';
-    homepage = https://www.nongnu.org/gksu/;
+    homepage = "https://www.nongnu.org/gksu/";
     license = stdenv.lib.licenses.gpl2;
     maintainers = [ stdenv.lib.maintainers.romildo ];
     platforms = stdenv.lib.platforms.linux;
diff --git a/pkgs/applications/misc/glava/default.nix b/pkgs/applications/misc/glava/default.nix
index 519df42c789a..88991bb40a19 100644
--- a/pkgs/applications/misc/glava/default.nix
+++ b/pkgs/applications/misc/glava/default.nix
@@ -82,7 +82,7 @@ in
       description = ''
         OpenGL audio spectrum visualizer
       '';
-      homepage = https://github.com/wacossusca34/glava;
+      homepage = "https://github.com/wacossusca34/glava";
       platforms = platforms.linux;
       license = licenses.gpl3;
       maintainers = with maintainers; [
diff --git a/pkgs/applications/misc/glom/default.nix b/pkgs/applications/misc/glom/default.nix
index b8f13d01424c..d576d2b5b476 100644
--- a/pkgs/applications/misc/glom/default.nix
+++ b/pkgs/applications/misc/glom/default.nix
@@ -28,7 +28,6 @@
 , isocodes
 , gtksourceviewmm4
 , postgresql
-, gnome3
 , gobject-introspection
 , yelp-tools
 , wrapGAppsHook
@@ -125,9 +124,9 @@ in stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "An easy-to-use database designer and user interface";
-    homepage = http://www.glom.org/;
+    homepage = "http://www.glom.org/";
     license = [ licenses.lgpl2 licenses.gpl2 ];
-    maintainers = gnome3.maintainers;
+    maintainers = teams.gnome.members;
     platforms = platforms.linux;
   };
 }
diff --git a/pkgs/applications/misc/gmrun/default.nix b/pkgs/applications/misc/gmrun/default.nix
index 50dda9510b91..eaee8fb5fb37 100644
--- a/pkgs/applications/misc/gmrun/default.nix
+++ b/pkgs/applications/misc/gmrun/default.nix
@@ -34,7 +34,7 @@ stdenv.mkDerivation rec {
       Also, supports CTRL-R / CTRL-S / "!" for searching through history.
       Running commands in a terminal with CTRL-Enter. URL handlers.
     '';
-    homepage = https://sourceforge.net/projects/gmrun/;
+    homepage = "https://sourceforge.net/projects/gmrun/";
     license = "GPL";
     maintainers = [];
     platforms = stdenv.lib.platforms.all;
diff --git a/pkgs/applications/misc/gmtp/default.nix b/pkgs/applications/misc/gmtp/default.nix
index db2193dbd3d7..5ed69e7bc69e 100644
--- a/pkgs/applications/misc/gmtp/default.nix
+++ b/pkgs/applications/misc/gmtp/default.nix
@@ -24,7 +24,7 @@ stdenv.mkDerivation {
 
   meta = {
     description = "A simple MP3 and Media player client for UNIX and UNIX like systems.";
-    homepage = https://gmtp.sourceforge.io;
+    homepage = "https://gmtp.sourceforge.io";
     platforms = stdenv.lib.platforms.linux;
     maintainers = [ ];
     license = stdenv.lib.licenses.bsd3;
diff --git a/pkgs/applications/misc/gnome-firmware-updater/default.nix b/pkgs/applications/misc/gnome-firmware-updater/default.nix
index f05c5fd210c4..f007f0ae52e1 100644
--- a/pkgs/applications/misc/gnome-firmware-updater/default.nix
+++ b/pkgs/applications/misc/gnome-firmware-updater/default.nix
@@ -6,7 +6,6 @@
 , fwupd
 , gettext
 , glib
-, gnome3
 , gtk3
 , libsoup
 , libxmlb
@@ -70,7 +69,7 @@ stdenv.mkDerivation rec {
     homepage = "https://gitlab.gnome.org/hughsie/gnome-firmware-updater";
     description = "Tool for installing firmware on devices";
     license = licenses.gpl2Plus;
-    maintainers = gnome3.maintainers;
+    maintainers = teams.gnome.members;
     platforms = platforms.linux;
   };
 }
diff --git a/pkgs/applications/misc/gnome-multi-writer/default.nix b/pkgs/applications/misc/gnome-multi-writer/default.nix
index 11bfbaaacd07..06bc0024995d 100644
--- a/pkgs/applications/misc/gnome-multi-writer/default.nix
+++ b/pkgs/applications/misc/gnome-multi-writer/default.nix
@@ -54,9 +54,9 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "Tool for writing an ISO file to multiple USB devices at once";
-    homepage = https://wiki.gnome.org/Apps/MultiWriter;
+    homepage = "https://wiki.gnome.org/Apps/MultiWriter";
     license = licenses.gpl2Plus;
-    maintainers = gnome3.maintainers;
+    maintainers = teams.gnome.members;
     platforms = platforms.linux;
   };
 }
diff --git a/pkgs/applications/misc/gnome-recipes/default.nix b/pkgs/applications/misc/gnome-recipes/default.nix
index 01f5af339ff0..cb9d10377cb8 100644
--- a/pkgs/applications/misc/gnome-recipes/default.nix
+++ b/pkgs/applications/misc/gnome-recipes/default.nix
@@ -71,8 +71,8 @@ in stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "Recipe management application for GNOME";
-    homepage = https://wiki.gnome.org/Apps/Recipes;
-    maintainers = gnome3.maintainers;
+    homepage = "https://wiki.gnome.org/Apps/Recipes";
+    maintainers = teams.gnome.members;
     license = licenses.gpl3;
     platforms = platforms.unix;
   };
diff --git a/pkgs/applications/misc/gnome-usage/default.nix b/pkgs/applications/misc/gnome-usage/default.nix
index 7484998ab205..17aa7e9aa060 100644
--- a/pkgs/applications/misc/gnome-usage/default.nix
+++ b/pkgs/applications/misc/gnome-usage/default.nix
@@ -60,6 +60,6 @@ stdenv.mkDerivation rec {
     description = "A nice way to view information about use of system resources, like memory and disk space";
     license = licenses.gpl3;
     platforms = platforms.linux;
-    maintainers = gnome3.maintainers;
+    maintainers = teams.gnome.members;
   };
 }
diff --git a/pkgs/applications/misc/golden-cheetah/default.nix b/pkgs/applications/misc/golden-cheetah/default.nix
index 3dffc5c77c2a..761d05e5f9f8 100644
--- a/pkgs/applications/misc/golden-cheetah/default.nix
+++ b/pkgs/applications/misc/golden-cheetah/default.nix
@@ -1,6 +1,6 @@
 { stdenv, fetchFromGitHub, mkDerivation
 , qtbase, qtsvg, qtserialport, qtwebengine, qtmultimedia, qttools
-, qtconnectivity, qtcharts, libusb
+, qtconnectivity, qtcharts, libusb-compat-0_1
 , yacc, flex, zlib, qmake, makeDesktopItem, makeWrapper
 }:
 
@@ -27,7 +27,7 @@ in mkDerivation rec {
 
   buildInputs = [
     qtbase qtsvg qtserialport qtwebengine qtmultimedia qttools zlib
-    qtconnectivity qtcharts libusb
+    qtconnectivity qtcharts libusb-compat-0_1
   ];
   nativeBuildInputs = [ flex makeWrapper qmake yacc ];
 
@@ -39,9 +39,9 @@ in mkDerivation rec {
     cp src/gcconfig.pri.in src/gcconfig.pri
     cp qwt/qwtconfig.pri.in qwt/qwtconfig.pri
     echo 'QMAKE_LRELEASE = ${qttools.dev}/bin/lrelease' >> src/gcconfig.pri
-    echo 'LIBUSB_INSTALL = ${libusb}' >> src/gcconfig.pri
-    echo 'LIBUSB_INCLUDE = ${libusb.dev}/include' >> src/gcconfig.pri
-    echo 'LIBUSB_LIBS = -L${libusb}/lib -lusb' >> src/gcconfig.pri
+    echo 'LIBUSB_INSTALL = ${libusb-compat-0_1}' >> src/gcconfig.pri
+    echo 'LIBUSB_INCLUDE = ${libusb-compat-0_1.dev}/include' >> src/gcconfig.pri
+    echo 'LIBUSB_LIBS = -L${libusb-compat-0_1}/lib -lusb' >> src/gcconfig.pri
     sed -i -e '21,23d' qwt/qwtconfig.pri # Removed forced installation to /usr/local
 
     # Use qtwebengine instead of qtwebkit
diff --git a/pkgs/applications/misc/gollum/Gemfile.lock b/pkgs/applications/misc/gollum/Gemfile.lock
index 6a705b6a9d82..4759cdcf5737 100644
--- a/pkgs/applications/misc/gollum/Gemfile.lock
+++ b/pkgs/applications/misc/gollum/Gemfile.lock
@@ -1,59 +1,106 @@
 GEM
   remote: https://rubygems.org/
   specs:
-    charlock_holmes (0.7.7)
-    diff-lcs (1.3)
-    gemojione (3.3.0)
+    backports (3.17.0)
+    concurrent-ruby (1.1.6)
+    crass (1.0.6)
+    execjs (2.7.0)
+    ffi (1.12.2)
+    gemojione (4.3.2)
       json
-    github-markup (1.7.0)
-    gitlab-grit (2.8.3)
-      charlock_holmes (~> 0.7)
-      diff-lcs (~> 1.1)
-      mime-types (>= 1.16, < 3)
-      posix-spawn (~> 0.3)
-    gollum (4.1.4)
-      gemojione (~> 3.2)
-      gollum-lib (~> 4.2, >= 4.2.10)
-      kramdown (~> 1.9.0)
+    github-markup (3.0.4)
+    gollum (5.0.1)
+      gemojione (~> 4.1)
+      gollum-lib (~> 5.0)
+      kramdown (~> 2.1.0)
+      kramdown-parser-gfm (~> 1.0.0)
       mustache (>= 0.99.5, < 1.0.0)
-      sinatra (~> 1.4, >= 1.4.4)
+      octicons (~> 8.5)
+      rss (~> 0.2.9)
+      sass (~> 3.5)
+      sinatra (~> 2.0)
+      sinatra-contrib (~> 2.0)
+      sprockets (~> 3.7)
+      sprockets-helpers (~> 1.2)
+      therubyrhino (~> 2.1.0)
+      uglifier (~> 3.2)
       useragent (~> 0.16.2)
-    gollum-grit_adapter (1.0.1)
-      gitlab-grit (~> 2.7, >= 2.7.1)
-    gollum-lib (4.2.10)
-      gemojione (~> 3.2)
-      github-markup (~> 1.6)
-      gollum-grit_adapter (~> 1.0)
-      nokogiri (>= 1.6.1, < 2.0)
-      rouge (~> 2.1)
-      sanitize (~> 2.1.1, >= 2.1.1)
-      stringex (~> 2.6)
+    gollum-lib (5.0.3)
+      gemojione (~> 4.1)
+      github-markup (~> 3.0)
+      gollum-rugged_adapter (~> 0.99.4, >= 0.99.4)
+      loofah (~> 2.3)
+      nokogiri (~> 1.8)
+      octicons (~> 8.5)
+      rouge (~> 3.1)
       twitter-text (= 1.14.7)
+    gollum-rugged_adapter (0.99.4)
+      mime-types (>= 1.15)
+      rugged (~> 0.99)
     json (2.3.0)
-    kramdown (1.9.0)
-    mime-types (2.99.3)
+    kramdown (2.1.0)
+    kramdown-parser-gfm (1.0.1)
+      kramdown (~> 2.0)
+    loofah (2.5.0)
+      crass (~> 1.0.2)
+      nokogiri (>= 1.5.9)
+    mime-types (3.3.1)
+      mime-types-data (~> 3.2015)
+    mime-types-data (3.2019.1009)
     mini_portile2 (2.4.0)
+    multi_json (1.14.1)
     mustache (0.99.8)
-    nokogiri (1.10.8)
+    mustermann (1.1.1)
+      ruby2_keywords (~> 0.0.1)
+    nokogiri (1.10.9)
       mini_portile2 (~> 2.4.0)
-    posix-spawn (0.3.13)
-    rack (1.6.13)
-    rack-protection (1.5.5)
+    octicons (8.5.0)
+      nokogiri (>= 1.6.3.1)
+    rack (2.2.2)
+    rack-protection (2.0.8.1)
       rack
-    rouge (2.2.1)
-    sanitize (2.1.1)
-      nokogiri (>= 1.4.4)
-    sinatra (1.4.8)
-      rack (~> 1.5)
-      rack-protection (~> 1.4)
-      tilt (>= 1.3, < 3)
-    stringex (2.8.5)
+    rb-fsevent (0.10.3)
+    rb-inotify (0.10.1)
+      ffi (~> 1.0)
+    rexml (3.2.4)
+    rouge (3.17.0)
+    rss (0.2.9)
+      rexml
+    ruby2_keywords (0.0.2)
+    rugged (0.99.0)
+    sass (3.7.4)
+      sass-listen (~> 4.0.0)
+    sass-listen (4.0.0)
+      rb-fsevent (~> 0.9, >= 0.9.4)
+      rb-inotify (~> 0.9, >= 0.9.7)
+    sinatra (2.0.8.1)
+      mustermann (~> 1.0)
+      rack (~> 2.0)
+      rack-protection (= 2.0.8.1)
+      tilt (~> 2.0)
+    sinatra-contrib (2.0.8.1)
+      backports (>= 2.8.2)
+      multi_json
+      mustermann (~> 1.0)
+      rack-protection (= 2.0.8.1)
+      sinatra (= 2.0.8.1)
+      tilt (~> 2.0)
+    sprockets (3.7.2)
+      concurrent-ruby (~> 1.0)
+      rack (> 1, < 3)
+    sprockets-helpers (1.2.3)
+      sprockets (>= 2.2)
+    therubyrhino (2.1.2)
+      therubyrhino_jar (>= 1.7.4, < 1.7.9)
+    therubyrhino_jar (1.7.8)
     tilt (2.0.10)
     twitter-text (1.14.7)
       unf (~> 0.1.0)
+    uglifier (3.2.0)
+      execjs (>= 0.3.0, < 3)
     unf (0.1.4)
       unf_ext
-    unf_ext (0.0.7.6)
+    unf_ext (0.0.7.7)
     useragent (0.16.10)
 
 PLATFORMS
@@ -63,4 +110,4 @@ DEPENDENCIES
   gollum
 
 BUNDLED WITH
-   1.17.3
+   2.1.4
diff --git a/pkgs/applications/misc/gollum/default.nix b/pkgs/applications/misc/gollum/default.nix
index 251e84f04c36..9005f38f563b 100644
--- a/pkgs/applications/misc/gollum/default.nix
+++ b/pkgs/applications/misc/gollum/default.nix
@@ -3,7 +3,7 @@
 
 stdenv.mkDerivation rec {
   pname = "gollum";
-  # nix-shell -p bundix icu zlib
+  # nix-shell -p bundix icu zlib cmake pkg-config openssl
   version = (import ./gemset.nix).gollum.version;
 
   nativeBuildInputs = [ makeWrapper ];
@@ -20,13 +20,16 @@ stdenv.mkDerivation rec {
     mkdir -p $out/bin
     makeWrapper ${env}/bin/gollum $out/bin/gollum \
       --prefix PATH ":" ${stdenv.lib.makeBinPath [ git ]}
+    makeWrapper ${env}/bin/gollum-migrate-tags $out/bin/gollum-migrate-tags \
+      --prefix PATH ":" ${stdenv.lib.makeBinPath [ git ]}
   '';
 
   passthru.updateScript = bundlerUpdateScript "gollum";
 
   meta = with stdenv.lib; {
-    description = "A simple, Git-powered wiki";
-    homepage = https://github.com/gollum/gollum;
+    description = "A simple, Git-powered wiki with a sweet API and local frontend";
+    homepage = "https://github.com/gollum/gollum";
+    changelog = "https://github.com/gollum/gollum/blob/v${version}/HISTORY.md";
     license = licenses.mit;
     maintainers = with maintainers; [ jgillich primeos nicknovitski ];
     platforms = platforms.unix;
diff --git a/pkgs/applications/misc/gollum/gemset.nix b/pkgs/applications/misc/gollum/gemset.nix
index 7ce1d853f368..3febcea2f9a6 100644
--- a/pkgs/applications/misc/gollum/gemset.nix
+++ b/pkgs/applications/misc/gollum/gemset.nix
@@ -1,88 +1,107 @@
 {
-  charlock_holmes = {
+  backports = {
     groups = ["default"];
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "0hybw8jw9ryvz5zrki3gc9r88jqy373m6v46ynxsdzv1ysiyr40p";
+      sha256 = "13ywgyyxzlgks7nb17gwqjmdqjjmhc8si3iliv8jhf51lb3s865v";
       type = "gem";
     };
-    version = "0.7.7";
+    version = "3.17.0";
   };
-  diff-lcs = {
+  concurrent-ruby = {
     groups = ["default"];
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "18w22bjz424gzafv6nzv98h0aqkwz3d9xhm7cbr1wfbyas8zayza";
+      sha256 = "094387x4yasb797mv07cs3g6f08y56virc2rjcpb1k79rzaj3nhl";
       type = "gem";
     };
-    version = "1.3";
+    version = "1.1.6";
   };
-  gemojione = {
-    dependencies = ["json"];
+  crass = {
     groups = ["default"];
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "0ayk8r147k1s38nj18pwk76npx1p7jhi86silk800nj913pjvrhj";
+      sha256 = "0pfl5c0pyqaparxaqxi6s4gfl21bdldwiawrc0aknyvflli60lfw";
       type = "gem";
     };
-    version = "3.3.0";
+    version = "1.0.6";
   };
-  github-markup = {
+  execjs = {
     groups = ["default"];
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "17g6g18gdjg63k75sfwiskjzl9i0hfcnrkcpb4fwrnb20v3jgswp";
+      sha256 = "1yz55sf2nd3l666ms6xr18sm2aggcvmb8qr3v53lr4rir32y1yp1";
       type = "gem";
     };
-    version = "1.7.0";
+    version = "2.7.0";
   };
-  gitlab-grit = {
-    dependencies = ["charlock_holmes" "diff-lcs" "mime-types" "posix-spawn"];
+  ffi = {
     groups = ["default"];
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "0xvcizc4856xlvara1zzwl6j61vxxshzcrdagp58xzfl68vbi63p";
+      sha256 = "10lfhahnnc91v63xpvk65apn61pib086zha3z5sp1xk9acfx12h4";
       type = "gem";
     };
-    version = "2.8.3";
+    version = "1.12.2";
   };
-  gollum = {
-    dependencies = ["gemojione" "gollum-lib" "kramdown" "mustache" "sinatra" "useragent"];
+  gemojione = {
+    dependencies = ["json"];
     groups = ["default"];
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "0ik1b0f73lcxfwfml1h84dp6br79g0z9v6x54wvl46n9d1ndrhl7";
+      sha256 = "097mrsahv1h67kjrk1cpiqc1cbrfgvlp2rqwmzdzxrq0kx50461w";
       type = "gem";
     };
-    version = "4.1.4";
+    version = "4.3.2";
   };
-  gollum-grit_adapter = {
-    dependencies = ["gitlab-grit"];
+  github-markup = {
     groups = ["default"];
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "0fcibm63v1afc0fj5rki0mm51m7nndil4cjcjjvkh3yigfn4nr4b";
+      sha256 = "14991x92v8s60hfqv7162jfmdqa20fifn2bz0km3k5cgi01pf9rs";
       type = "gem";
     };
-    version = "1.0.1";
+    version = "3.0.4";
+  };
+  gollum = {
+    dependencies = ["gemojione" "gollum-lib" "kramdown" "kramdown-parser-gfm" "mustache" "octicons" "rss" "sass" "sinatra" "sinatra-contrib" "sprockets" "sprockets-helpers" "therubyrhino" "uglifier" "useragent"];
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1f9p1230xmrvcb7ii2gkcvhpgcaqvvd47gy3c58nn730jkv471dr";
+      type = "gem";
+    };
+    version = "5.0.1";
   };
   gollum-lib = {
-    dependencies = ["gemojione" "github-markup" "gollum-grit_adapter" "nokogiri" "rouge" "sanitize" "stringex" "twitter-text"];
+    dependencies = ["gemojione" "github-markup" "gollum-rugged_adapter" "loofah" "nokogiri" "octicons" "rouge" "twitter-text"];
     groups = ["default"];
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "1699wiir6f2a8yawk3qg0xn3zdc10mz783v53ri1ivfnzdrm3dvf";
+      sha256 = "0r59fyf7i4rlp6wj9ilnqd9pmgpkafv0yl4jmrxa6hr2p4cmnf1g";
       type = "gem";
     };
-    version = "4.2.10";
+    version = "5.0.3";
+  };
+  gollum-rugged_adapter = {
+    dependencies = ["mime-types" "rugged"];
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0016yfac3b3sy34k9wrqg422mjm8cpd1jd1m4gdn4x2d4jxhxkzq";
+      type = "gem";
+    };
+    version = "0.99.4";
   };
   json = {
     groups = ["default"];
@@ -99,20 +118,53 @@
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "12sral2xli39mnr4b9m2sxdlgam4ni0a1mkxawc5311z107zj3p0";
+      sha256 = "1dl840bvx8d9nq6lg3mxqyvbiqnr6lk3jfsm6r8zhz7p5srmd688";
+      type = "gem";
+    };
+    version = "2.1.0";
+  };
+  kramdown-parser-gfm = {
+    dependencies = ["kramdown"];
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0ykna2apphld9llmjnz0210fipp4fkmj2ja18l7iz9xikg0h0ihi";
       type = "gem";
     };
-    version = "1.9.0";
+    version = "1.0.1";
+  };
+  loofah = {
+    dependencies = ["crass" "nokogiri"];
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0jk9fgn5ayzbqvzqm11gbkqvas77zdbpkvynlylyiwynclgrn040";
+      type = "gem";
+    };
+    version = "2.5.0";
   };
   mime-types = {
+    dependencies = ["mime-types-data"];
     groups = ["default"];
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "03j98xr0qw2p2jkclpmk7pm29yvmmh0073d8d43ajmr0h3w7i5l9";
+      sha256 = "1zj12l9qk62anvk9bjvandpa6vy4xslil15wl6wlivyf51z773vh";
       type = "gem";
     };
-    version = "2.99.3";
+    version = "3.3.1";
+  };
+  mime-types-data = {
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "18x61fc36951vw7f74gq8cyybdpxvyg5d0azvqhrs82ddw3v16xh";
+      type = "gem";
+    };
+    version = "3.2019.1009";
   };
   mini_portile2 = {
     groups = ["default"];
@@ -124,6 +176,16 @@
     };
     version = "2.4.0";
   };
+  multi_json = {
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0xy54mjf7xg41l8qrg1bqri75agdqmxap9z466fjismc1rn2jwfr";
+      type = "gem";
+    };
+    version = "1.14.1";
+  };
   mustache = {
     groups = ["default"];
     platforms = [];
@@ -134,36 +196,48 @@
     };
     version = "0.99.8";
   };
+  mustermann = {
+    dependencies = ["ruby2_keywords"];
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0ccm54qgshr1lq3pr1dfh7gphkilc19dp63rw6fcx7460pjwy88a";
+      type = "gem";
+    };
+    version = "1.1.1";
+  };
   nokogiri = {
     dependencies = ["mini_portile2"];
     groups = ["default"];
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "1yi8j8hwrlc3rg5v3w52gxndmwifyk7m732q9yfbal0qajqbh1h8";
+      sha256 = "12j76d0bp608932xkzmfi638c7aqah57l437q8494znzbj610qnm";
       type = "gem";
     };
-    version = "1.10.8";
+    version = "1.10.9";
   };
-  posix-spawn = {
+  octicons = {
+    dependencies = ["nokogiri"];
     groups = ["default"];
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "1pmxmpins57qrbr31bs3bm7gidhaacmrp4md6i962gvpq4gyfcjw";
+      sha256 = "0fy6shpfmla58dxx3kb2zi1hs7vmdw6pqrksaa8yrva05s4l3y75";
       type = "gem";
     };
-    version = "0.3.13";
+    version = "8.5.0";
   };
   rack = {
     groups = ["default"];
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "0wr1f3g9rc9i8svfxa9cijajl1661d817s56b2w7rd572zwn0zi0";
+      sha256 = "10mp9s48ssnw004aksq90gvhdvwczh8j6q82q2kqiqq92jd1zxbp";
       type = "gem";
     };
-    version = "1.6.13";
+    version = "2.2.2";
   };
   rack-protection = {
     dependencies = ["rack"];
@@ -171,52 +245,169 @@
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "0my0wlw4a5l3hs79jkx2xzv7djhajgf8d28k8ai1ddlnxxb0v7ss";
+      sha256 = "1zyj97bfr1shfgwk4ddmdbw0mdkm4qdyh9s1hl0k7accf3kxx1yi";
+      type = "gem";
+    };
+    version = "2.0.8.1";
+  };
+  rb-fsevent = {
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1lm1k7wpz69jx7jrc92w3ggczkjyjbfziq5mg62vjnxmzs383xx8";
       type = "gem";
     };
-    version = "1.5.5";
+    version = "0.10.3";
+  };
+  rb-inotify = {
+    dependencies = ["ffi"];
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1jm76h8f8hji38z3ggf4bzi8vps6p7sagxn3ab57qc0xyga64005";
+      type = "gem";
+    };
+    version = "0.10.1";
+  };
+  rexml = {
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1mkvkcw9fhpaizrhca0pdgjcrbns48rlz4g6lavl5gjjq3rk2sq3";
+      type = "gem";
+    };
+    version = "3.2.4";
   };
   rouge = {
     groups = ["default"];
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "02kpahk5nkc33yxnn75649kzxaz073wvazr2zyg491nndykgnvcs";
+      sha256 = "0xl7k5paf66p57sphm4nfa4k86yf93lhdzzr0cv0l4divq12g2pr";
       type = "gem";
     };
-    version = "2.2.1";
+    version = "3.17.0";
   };
-  sanitize = {
-    dependencies = ["nokogiri"];
+  rss = {
+    dependencies = ["rexml"];
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1b1zx07kr64kkpm4lssd4r1a1qyr829ppmfl85i4adcvx9mqfid0";
+      type = "gem";
+    };
+    version = "0.2.9";
+  };
+  ruby2_keywords = {
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "17pcc0wgvh3ikrkr7bm3nx0qhyiqwidd13ij0fa50k7gsbnr2p0l";
+      type = "gem";
+    };
+    version = "0.0.2";
+  };
+  rugged = {
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "04rkxwzaa6897da3mnm70g720gpxwyh71krfn6ag1dkk80x8a8yz";
+      type = "gem";
+    };
+    version = "0.99.0";
+  };
+  sass = {
+    dependencies = ["sass-listen"];
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0p95lhs0jza5l7hqci1isflxakz83xkj97lkvxl919is0lwhv2w0";
+      type = "gem";
+    };
+    version = "3.7.4";
+  };
+  sass-listen = {
+    dependencies = ["rb-fsevent" "rb-inotify"];
     groups = ["default"];
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "12ip1d80r0dgc621qn7c32bk12xxgkkg3w6q21s1ckxivcd7r898";
+      sha256 = "0xw3q46cmahkgyldid5hwyiwacp590zj2vmswlll68ryvmvcp7df";
       type = "gem";
     };
-    version = "2.1.1";
+    version = "4.0.0";
   };
   sinatra = {
-    dependencies = ["rack" "rack-protection" "tilt"];
+    dependencies = ["mustermann" "rack" "rack-protection" "tilt"];
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0riy3hwjab1mr73jcqx3brmbmwspnw3d193j06a5f0fy1w35z15q";
+      type = "gem";
+    };
+    version = "2.0.8.1";
+  };
+  sinatra-contrib = {
+    dependencies = ["backports" "multi_json" "mustermann" "rack-protection" "sinatra" "tilt"];
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1mmrfm4pqh98f3irjpkvfpazhcx6q42bnx6bbms9dqvmck3mid28";
+      type = "gem";
+    };
+    version = "2.0.8.1";
+  };
+  sprockets = {
+    dependencies = ["concurrent-ruby" "rack"];
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "182jw5a0fbqah5w9jancvfmjbk88h8bxdbwnl4d3q809rpxdg8ay";
+      type = "gem";
+    };
+    version = "3.7.2";
+  };
+  sprockets-helpers = {
+    dependencies = ["sprockets"];
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1hy67dwz76n5db00d9n3qy59ici96c2g25c9xpmp2nh8ilvha338";
+      type = "gem";
+    };
+    version = "1.2.3";
+  };
+  therubyrhino = {
+    dependencies = ["therubyrhino_jar"];
     groups = ["default"];
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "0byxzl7rx3ki0xd7aiv1x8mbah7hzd8f81l65nq8857kmgzj1jqq";
+      sha256 = "034mzpkxm3zjsi4rwa45dhhgq2b9vkabs5bnzbl1d3ka7210b3fc";
       type = "gem";
     };
-    version = "1.4.8";
+    version = "2.1.2";
   };
-  stringex = {
+  therubyrhino_jar = {
     groups = ["default"];
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "15ns7j5smw04w6w7bqd5mm2qcl7w9lhwykyb974i4isgg9yc23ys";
+      sha256 = "149a5lsvn2n7k7vcfs77n836q1alv8yjh0503sf9cs65p974ah25";
       type = "gem";
     };
-    version = "2.8.5";
+    version = "1.7.8";
   };
   tilt = {
     groups = ["default"];
@@ -239,6 +430,17 @@
     };
     version = "1.14.7";
   };
+  uglifier = {
+    dependencies = ["execjs"];
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0wmqvn4xncw6h3d5gp2a44170zwxfyj3iq4rsjp16zarvzbdmgnz";
+      type = "gem";
+    };
+    version = "3.2.0";
+  };
   unf = {
     dependencies = ["unf_ext"];
     groups = ["default"];
@@ -255,10 +457,10 @@
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "1ll6w64ibh81qwvjx19h8nj7mngxgffg7aigjx11klvf5k2g4nxf";
+      sha256 = "0wc47r23h063l8ysws8sy24gzh74mks81cak3lkzlrw4qkqb3sg4";
       type = "gem";
     };
-    version = "0.0.7.6";
+    version = "0.0.7.7";
   };
   useragent = {
     groups = ["default"];
diff --git a/pkgs/applications/misc/gomatrix/default.nix b/pkgs/applications/misc/gomatrix/default.nix
new file mode 100644
index 000000000000..5d412469617f
--- /dev/null
+++ b/pkgs/applications/misc/gomatrix/default.nix
@@ -0,0 +1,22 @@
+{ lib, buildGoModule, fetchFromGitHub }:
+
+buildGoModule rec {
+  pname = "gomatrix";
+  version = "101.0.0";
+
+  src = fetchFromGitHub {
+    owner = "GeertJohan";
+    repo = "gomatrix";
+    rev = "v${version}";
+    sha256 = "1wq55rvpyz0gjn8kiwwj49awsmi86zy1fdjcphzgb7883xalgr2m";
+  };
+
+  modSha256 = "13higizadnf4ypk8qn1b5s6mdg7n6l3indb43mjp1b4cfzjsyl91";
+
+  meta = with lib; {
+    description = ''Displays "The Matrix" in a terminal'';
+    license = licenses.bsd2;
+    maintainers = with maintainers; [ skykanin ];
+    homepage = "https://github.com/GeertJohan/gomatrix";
+  };
+}
diff --git a/pkgs/applications/misc/googleearth/default.nix b/pkgs/applications/misc/googleearth/default.nix
index 181273752ea8..dff69130c18a 100644
--- a/pkgs/applications/misc/googleearth/default.nix
+++ b/pkgs/applications/misc/googleearth/default.nix
@@ -99,7 +99,7 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "A world sphere viewer";
-    homepage = http://earth.google.com;
+    homepage = "http://earth.google.com";
     license = licenses.unfree;
     maintainers = with maintainers; [ markus1189 ];
     platforms = platforms.linux;
diff --git a/pkgs/applications/misc/googler/default.nix b/pkgs/applications/misc/googler/default.nix
index 3e4c9828edec..fba36f5e8ac7 100644
--- a/pkgs/applications/misc/googler/default.nix
+++ b/pkgs/applications/misc/googler/default.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation rec {
   pname = "googler";
-  version = "4.0";
+  version = "4.1";
 
   src = fetchFromGitHub {
     owner = "jarun";
     repo = pname;
     rev = "v${version}";
-    sha256 = "13jj15ph0vmbyxjslzl6z4h5b7wyllvhwgsrb6zf7qlkcmkd4vwy";
+    sha256 = "04d7n2l159s7c9xzvyvbnbii1k3zdbajagpx09x1l692cwjbvpxw";
   };
 
   propagatedBuildInputs = [ python ];
diff --git a/pkgs/applications/misc/gosmore/default.nix b/pkgs/applications/misc/gosmore/default.nix
index 41cdf267f5de..350cb56695f9 100644
--- a/pkgs/applications/misc/gosmore/default.nix
+++ b/pkgs/applications/misc/gosmore/default.nix
@@ -9,7 +9,7 @@ stdenv.mkDerivation {
   # so we explicitly disable them to avoid breaking the hash
   # especially as the externals appear to be unused
   src = fetchsvn {
-    url = http://svn.openstreetmap.org/applications/rendering/gosmore;
+    url = "http://svn.openstreetmap.org/applications/rendering/gosmore";
     sha256 = "0qsckpqx7i7f8gkqhkzdamr65250afk1rpnh3nbman35kdv3dsxi";
     rev = version;
     ignoreExternals = true;
@@ -28,7 +28,7 @@ stdenv.mkDerivation {
       
   meta = with stdenv.lib; {
     description = "Open Street Map viewer";
-    homepage = https://sourceforge.net/projects/gosmore/;
+    homepage = "https://sourceforge.net/projects/gosmore/";
     maintainers = with maintainers; [
       raskin
     ];
diff --git a/pkgs/applications/misc/gpa/default.nix b/pkgs/applications/misc/gpa/default.nix
index a48890144127..cd7b724a1d78 100644
--- a/pkgs/applications/misc/gpa/default.nix
+++ b/pkgs/applications/misc/gpa/default.nix
@@ -13,7 +13,7 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "Graphical user interface for the GnuPG";
-    homepage = https://www.gnupg.org/related_software/gpa/;
+    homepage = "https://www.gnupg.org/related_software/gpa/";
     license = licenses.gpl3Plus;
     platforms = platforms.unix;
   };
diff --git a/pkgs/applications/misc/gpg-mdp/default.nix b/pkgs/applications/misc/gpg-mdp/default.nix
index 9954ff660adc..cf3d6fe9e93e 100644
--- a/pkgs/applications/misc/gpg-mdp/default.nix
+++ b/pkgs/applications/misc/gpg-mdp/default.nix
@@ -6,7 +6,7 @@ in stdenv.mkDerivation {
   pname = "gpg-mdp";
   inherit version;
   meta = {
-    homepage = https://tamentis.com/projects/mdp/;
+    homepage = "https://tamentis.com/projects/mdp/";
     license = [stdenv.lib.licenses.isc];
     description = "Manage your passwords with GnuPG and a text editor";
   };
diff --git a/pkgs/applications/misc/gphoto2/default.nix b/pkgs/applications/misc/gphoto2/default.nix
index d06970e8d07c..1235a41ffc7b 100644
--- a/pkgs/applications/misc/gphoto2/default.nix
+++ b/pkgs/applications/misc/gphoto2/default.nix
@@ -21,7 +21,7 @@ stdenv.mkDerivation rec {
       digital cameras. Through libgphoto2, it supports PTP, MTP, and much more..
 
     '';
-    homepage = http://www.gphoto.org/;
+    homepage = "http://www.gphoto.org/";
     license = licenses.gpl2Plus;
     platforms = platforms.unix;
     maintainers = [ maintainers.jcumming ];
diff --git a/pkgs/applications/misc/gphoto2/gphotofs.nix b/pkgs/applications/misc/gphoto2/gphotofs.nix
index c1c2a44bd7f2..668706ca3895 100644
--- a/pkgs/applications/misc/gphoto2/gphotofs.nix
+++ b/pkgs/applications/misc/gphoto2/gphotofs.nix
@@ -15,7 +15,7 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "Fuse FS to mount a digital camera";
-    homepage = http://www.gphoto.org/;
+    homepage = "http://www.gphoto.org/";
     maintainers = [ maintainers.raskin ];
     platforms = platforms.linux;
     license = with licenses; [ lgpl2 gpl2 ];
diff --git a/pkgs/applications/misc/gpsbabel/default.nix b/pkgs/applications/misc/gpsbabel/default.nix
index 9d244ca18f32..ef4c732ef521 100644
--- a/pkgs/applications/misc/gpsbabel/default.nix
+++ b/pkgs/applications/misc/gpsbabel/default.nix
@@ -13,7 +13,7 @@ stdenv.mkDerivation rec {
 
   patches = [
     (fetchpatch {
-      url = https://sources.debian.net/data/main/g/gpsbabel/1.5.3-2/debian/patches/use_minizip;
+      url = "https://sources.debian.net/data/main/g/gpsbabel/1.5.3-2/debian/patches/use_minizip";
       sha256 = "03fpsmlx1wc48d1j405zkzp8j64hcp0z72islf4mk1immql3ibcr";
     })
   ];
@@ -69,7 +69,7 @@ stdenv.mkDerivation rec {
       process data that may (or may not be) placed on a map, such as
       waypoints, tracks, and routes.
     '';
-    homepage = http://www.gpsbabel.org/;
+    homepage = "http://www.gpsbabel.org/";
     license = licenses.gpl2Plus;
     maintainers = [ maintainers.rycee ];
     platforms = platforms.all;
diff --git a/pkgs/applications/misc/gpsbabel/gui.nix b/pkgs/applications/misc/gpsbabel/gui.nix
new file mode 100644
index 000000000000..57eca9f47a58
--- /dev/null
+++ b/pkgs/applications/misc/gpsbabel/gui.nix
@@ -0,0 +1,49 @@
+{ stdenv, mkDerivation, qmake, qttools, qtwebkit, qttranslations, gpsbabel }:
+
+mkDerivation {
+  pname = "gpsbabel-gui";
+
+  inherit (gpsbabel) src version;
+
+  sourceRoot = "source/gui";
+
+  nativeBuildInputs = [ qmake qttools ];
+  buildInputs = [ qtwebkit ];
+
+  postPatch = ''
+    substituteInPlace mainwindow.cc \
+      --replace "QApplication::applicationDirPath() + \"/" "\"" \
+      --replace "QApplication::applicationDirPath() + '/' + " "" \
+      --replace "translator.load(full_filename)" "translator.load(filename)" \
+      --replace "gpsbabelfe_%1.qm" "$out/share/gpsbabel/translations/gpsbabelfe_%1.qm" \
+      --replace "gpsbabel_%1.qm" "$out/share/gpsbabel/translations/gpsbabel_%1.qm" \
+      --replace "qt_%1.qm" "${qttranslations}/translations/qt_%1.qm"
+    substituteInPlace formatload.cc \
+      --replace "QApplication::applicationDirPath() + \"/" "\""
+    substituteInPlace gpsbabel.desktop \
+      --replace "gpsbabelfe-bin" "gpsbabelfe"
+  '';
+
+  preConfigure = ''
+    lrelease *.ts coretool/*.ts
+  '';
+
+  qtWrapperArgs = [
+    "--prefix PATH : ${stdenv.lib.makeBinPath [ gpsbabel ]}"
+  ];
+
+  postInstall = ''
+    install -Dm755 objects/gpsbabelfe -t $out/bin
+    install -Dm644 gpsbabel.desktop -t $out/share/applications
+    install -Dm644 images/appicon.png $out/share/icons/hicolor/512x512/apps/gpsbabel.png
+    install -Dm644 *.qm coretool/*.qm -t $out/share/gpsbabel/translations
+  '';
+
+  meta = with stdenv.lib; {
+    description = "Qt-based GUI for gpsbabel";
+    homepage = "http://www.gpsbabel.org/";
+    license = licenses.gpl2;
+    maintainers = with maintainers; [ sikmir ];
+    platforms = with platforms; linux;
+  };
+}
diff --git a/pkgs/applications/misc/gpsprune/default.nix b/pkgs/applications/misc/gpsprune/default.nix
index 9c0dc48d42ee..63ca213c2c42 100644
--- a/pkgs/applications/misc/gpsprune/default.nix
+++ b/pkgs/applications/misc/gpsprune/default.nix
@@ -1,16 +1,16 @@
-{ fetchurl, stdenv, makeDesktopItem, makeWrapper, unzip, jre8 }:
+{ fetchurl, stdenv, makeDesktopItem, makeWrapper, unzip, jdk11 }:
 
 stdenv.mkDerivation rec {
   pname = "gpsprune";
-  version = "19.2";
+  version = "20";
 
   src = fetchurl {
     url = "https://activityworkshop.net/software/gpsprune/gpsprune_${version}.jar";
-    sha256 = "1q2kpkkh75b9l1x7fkmv88s8k84gzcdnrg5sgf8ih0zrp49lawg9";
+    sha256 = "1i9p6h98azgradrrkcwx18zwz4c6zkxp4bfykpa2imi1z3ry5q2b";
   };
 
   nativeBuildInputs = [ makeWrapper ];
-  buildInputs = [ jre8 ];
+  buildInputs = [ jdk11 ];
 
   desktopItem = makeDesktopItem {
     name = "gpsprune";
@@ -25,7 +25,7 @@ stdenv.mkDerivation rec {
   buildCommand = ''
     mkdir -p $out/bin $out/share/java
     cp -v $src $out/share/java/gpsprune.jar
-    makeWrapper ${jre8}/bin/java $out/bin/gpsprune \
+    makeWrapper ${jdk11}/bin/java $out/bin/gpsprune \
       --add-flags "-jar $out/share/java/gpsprune.jar"
     mkdir -p $out/share/applications
     cp $desktopItem/share/applications"/"* $out/share/applications
@@ -35,7 +35,7 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "Application for viewing, editing and converting GPS coordinate data";
-    homepage = https://activityworkshop.net/software/gpsprune/;
+    homepage = "https://activityworkshop.net/software/gpsprune/";
     license = licenses.gpl2Plus;
     maintainers = [ maintainers.rycee ];
     platforms = platforms.all;
diff --git a/pkgs/applications/misc/gpx-viewer/default.nix b/pkgs/applications/misc/gpx-viewer/default.nix
index 04ab062c1a1b..64296688c93e 100644
--- a/pkgs/applications/misc/gpx-viewer/default.nix
+++ b/pkgs/applications/misc/gpx-viewer/default.nix
@@ -24,7 +24,7 @@ stdenv.mkDerivation rec {
   buildInputs = [ gdl libchamplain gnome3.adwaita-icon-theme libxml2 ];
 
   meta = with stdenv.lib; {
-    homepage = https://blog.sarine.nl/tag/gpxviewer/;
+    homepage = "https://blog.sarine.nl/tag/gpxviewer/";
     description = "Simple tool to visualize tracks and waypoints stored in a gpx file";
     platforms = with platforms; linux;
     license = licenses.gpl2Plus;
diff --git a/pkgs/applications/misc/gpx/default.nix b/pkgs/applications/misc/gpx/default.nix
index a341a212a37f..dcf022fc4453 100644
--- a/pkgs/applications/misc/gpx/default.nix
+++ b/pkgs/applications/misc/gpx/default.nix
@@ -15,7 +15,7 @@ stdenv.mkDerivation rec {
 
   meta = {
     description = "Gcode to x3g conversion postprocessor";
-    homepage = https://github.com/markwal/GPX/;
+    homepage = "https://github.com/markwal/GPX/";
     license = stdenv.lib.licenses.gpl2;
     platforms = stdenv.lib.platforms.unix;
     maintainers = [ stdenv.lib.maintainers.leo60228 ];
diff --git a/pkgs/applications/misc/gpxsee/default.nix b/pkgs/applications/misc/gpxsee/default.nix
index 2f314508b749..c519bf63e093 100644
--- a/pkgs/applications/misc/gpxsee/default.nix
+++ b/pkgs/applications/misc/gpxsee/default.nix
@@ -1,24 +1,23 @@
-{ stdenv, mkDerivation, lib, fetchFromGitHub, qmake, qttools }:
+{ stdenv, mkDerivation, fetchFromGitHub, qmake, qttools }:
 
 mkDerivation rec {
   pname = "gpxsee";
-  version = "7.22";
+  version = "7.29";
 
   src = fetchFromGitHub {
     owner = "tumic0";
     repo = "GPXSee";
     rev = version;
-    sha256 = "0gxkx255d8cn5076ync731cdygwvi95rxv463pd4rdw5srbr0gm5";
+    sha256 = "sha256-OTKyxEu7RZZy3JBHTM7YoH+G4lhoRfb1INLtQEKC5p4=";
   };
 
-  nativeBuildInputs = [ qmake ];
-  buildInputs = [ qttools ];
+  nativeBuildInputs = [ qmake qttools ];
 
   preConfigure = ''
-    lrelease lang/*.ts
+    lrelease gpxsee.pro
   '';
 
-  postInstall = lib.optionalString stdenv.isDarwin ''
+  postInstall = with stdenv; lib.optionalString isDarwin ''
     mkdir -p $out/Applications
     mv GPXSee.app $out/Applications
     wrapQtApp $out/Applications/GPXSee.app/Contents/MacOS/GPXSee
@@ -26,8 +25,8 @@ mkDerivation rec {
 
   enableParallelBuilding = true;
 
-  meta = with lib; {
-    homepage = https://www.gpxsee.org/;
+  meta = with stdenv.lib; {
+    homepage = "https://www.gpxsee.org/";
     description = "GPS log file viewer and analyzer";
     longDescription = ''
       GPXSee is a Qt-based GPS log file viewer and analyzer that supports
diff --git a/pkgs/applications/misc/gramps/default.nix b/pkgs/applications/misc/gramps/default.nix
index 84be50ccb5e5..e5a2b87f16ef 100644
--- a/pkgs/applications/misc/gramps/default.nix
+++ b/pkgs/applications/misc/gramps/default.nix
@@ -58,7 +58,7 @@ in buildPythonApplication rec {
 
   meta = with stdenv.lib; {
     description = "Genealogy software";
-    homepage = https://gramps-project.org;
+    homepage = "https://gramps-project.org";
     license = licenses.gpl2;
     maintainers = with maintainers; [ joncojonathan ];
   };
diff --git a/pkgs/applications/misc/green-pdfviewer/default.nix b/pkgs/applications/misc/green-pdfviewer/default.nix
index d86db7adb9d0..4e888f4faac8 100644
--- a/pkgs/applications/misc/green-pdfviewer/default.nix
+++ b/pkgs/applications/misc/green-pdfviewer/default.nix
@@ -28,7 +28,7 @@ stdenv.mkDerivation {
   '';
 
   meta = with stdenv.lib; {
-    homepage = https://github.com/schandinat/green/;
+    homepage = "https://github.com/schandinat/green/";
     description = "Viewer for PDF files, uses SDL and libpoppler";
 
     platforms = platforms.unix;
diff --git a/pkgs/applications/misc/gremlin-console/default.nix b/pkgs/applications/misc/gremlin-console/default.nix
index 87e636b9c030..a4932943fa23 100644
--- a/pkgs/applications/misc/gremlin-console/default.nix
+++ b/pkgs/applications/misc/gremlin-console/default.nix
@@ -20,7 +20,7 @@ stdenv.mkDerivation rec {
   '';
 
   meta = with stdenv.lib; {
-    homepage = https://tinkerpop.apache.org/;
+    homepage = "https://tinkerpop.apache.org/";
     description = "Console of the Apache TinkerPop graph computing framework";
     license = licenses.asl20;
     maintainers = [ maintainers.lewo ];
diff --git a/pkgs/applications/misc/grip/default.nix b/pkgs/applications/misc/grip/default.nix
index b70901bac810..b1985be2c946 100644
--- a/pkgs/applications/misc/grip/default.nix
+++ b/pkgs/applications/misc/grip/default.nix
@@ -2,11 +2,11 @@
 , curl, cdparanoia, libid3tag, ncurses, libtool }:
 
 stdenv.mkDerivation rec {
-  name = "grip-4.1.0";
+  name = "grip-4.1.1";
 
   src = fetchurl {
     url = "mirror://sourceforge/grip/${name}.tar.gz";
-    sha256 = "0iy7bcyrxm7zyrxah06qyxdshkgq6yqkadlw211j2qzld38a79j5";
+    sha256 = "1sbjgawb7qrinixybwi0adk7mpdfb565gkffp5gxxsw8fqd068fs";
   };
 
   nativeBuildInputs = [ pkgconfig ];
@@ -20,7 +20,7 @@ stdenv.mkDerivation rec {
 
   meta = {
     description = "GTK-based audio CD player/ripper";
-    homepage = http://nostatic.org/grip;
+    homepage = "http://nostatic.org/grip";
     license = stdenv.lib.licenses.gpl2;
 
     maintainers = with stdenv.lib.maintainers; [ marcweber peti ];
diff --git a/pkgs/applications/misc/grsync/default.nix b/pkgs/applications/misc/grsync/default.nix
index 3e1bb31091f8..8d17ff09204f 100644
--- a/pkgs/applications/misc/grsync/default.nix
+++ b/pkgs/applications/misc/grsync/default.nix
@@ -1,12 +1,12 @@
 { stdenv, fetchurl, dee, gtk2, intltool, libdbusmenu-gtk2, libunity, pkg-config, rsync }:
 
 stdenv.mkDerivation rec {
-  version = "1.2.6";
+  version = "1.2.8";
   pname = "grsync";
 
   src = fetchurl {
     url = "mirror://sourceforge/grsync/grsync-${version}.tar.gz";
-    sha256 = "06ani65d58p8r3jvxjwpwyqrr07ya3icdqc243nxcrv7bvmarmb6";
+    sha256 = "1c86jch73cy7ig9k4shvcd3jnaxk7jppfcr8nmkz8gbylsn5zsll";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/applications/misc/gsctl/default.nix b/pkgs/applications/misc/gsctl/default.nix
index b84053b94adc..e80f43f5bd9b 100644
--- a/pkgs/applications/misc/gsctl/default.nix
+++ b/pkgs/applications/misc/gsctl/default.nix
@@ -15,7 +15,7 @@ buildGoPackage rec {
 
   meta = with stdenv.lib; {
     description = "The Giant Swarm command line interface";
-    homepage = https://github.com/giantswarm/gsctl;
+    homepage = "https://github.com/giantswarm/gsctl";
     license = licenses.asl20;
     maintainers = with maintainers; [ joesalisbury ];
   };
diff --git a/pkgs/applications/misc/gsimplecal/default.nix b/pkgs/applications/misc/gsimplecal/default.nix
index ea78331e4764..e83e349b21c1 100644
--- a/pkgs/applications/misc/gsimplecal/default.nix
+++ b/pkgs/applications/misc/gsimplecal/default.nix
@@ -17,7 +17,7 @@ stdenv.mkDerivation rec {
   preConfigure = "./autogen.sh";
 
   meta = {
-    homepage = http://dmedvinsky.github.io/gsimplecal/;
+    homepage = "http://dmedvinsky.github.io/gsimplecal/";
     description = "Lightweight calendar application written in C++ using GTK";
     longDescription = ''
       gsimplecal was intentionally made for use with tint2 panel in the
diff --git a/pkgs/applications/misc/gtk2fontsel/default.nix b/pkgs/applications/misc/gtk2fontsel/default.nix
index 9b8d6a7f976b..21ad7d757a19 100644
--- a/pkgs/applications/misc/gtk2fontsel/default.nix
+++ b/pkgs/applications/misc/gtk2fontsel/default.nix
@@ -20,8 +20,8 @@ stdenv.mkDerivation rec {
       Font selection tool similar to xfontsel implemented using GTK 2.
       Trivial, but useful nonetheless.
     '';
-    homepage = http://gtk2fontsel.sourceforge.net/;
-    downloadPage = https://sourceforge.net/projects/gtk2fontsel/;
+    homepage = "http://gtk2fontsel.sourceforge.net/";
+    downloadPage = "https://sourceforge.net/projects/gtk2fontsel/";
     license = licenses.gpl2;
     maintainers = [ maintainers.prikhi ];
     platforms = platforms.linux;
diff --git a/pkgs/applications/misc/gummi/default.nix b/pkgs/applications/misc/gummi/default.nix
index d1daec284826..af121758c3cd 100644
--- a/pkgs/applications/misc/gummi/default.nix
+++ b/pkgs/applications/misc/gummi/default.nix
@@ -1,37 +1,33 @@
-{ stdenv, pkgs, makeWrapper, pango
-, glib, gnome2, gnome3, gtk2-x11, gtkspell2, poppler
+{ stdenv, pkgs
+, glib, gnome3, gtk3, gtksourceview3, gtkspell3, poppler, texlive
 , pkgconfig, intltool, autoreconfHook, wrapGAppsHook
 }:
 
 stdenv.mkDerivation rec {
-  version = "0.6.6";
+  version = "0.8.1";
   pname = "gummi";
 
   src = pkgs.fetchFromGitHub {
     owner = "alexandervdm";
     repo = "gummi";
     rev = version;
-    sha256 = "1vw8rhv8qj82l6l22kpysgm9mxilnki2kjmvxsnajbqcagr6s7cn";
+    sha256 = "0wxgmzazqiq77cw42i5fn2hc22hhxf5gbpl9g8y3zlnp21lw9y16";
   };
 
   nativeBuildInputs = [
-    pkgconfig intltool autoreconfHook makeWrapper wrapGAppsHook
+    pkgconfig intltool autoreconfHook wrapGAppsHook
   ];
   buildInputs = [
-    glib gnome2.gtksourceview pango gtk2-x11 gtkspell2 poppler
-    gnome3.adwaita-icon-theme
+    glib gtksourceview3 gtk3 gtkspell3 poppler
+    texlive.bin.core # needed for synctex
   ];
 
-  preConfigure = ''
-    gappsWrapperArgs+=(--prefix XDG_DATA_DIRS : "${pkgs.gnome2.gtksourceview}/share")
-  '';
-
   postInstall = ''
     install -Dpm644 COPYING $out/share/licenses/$name/COPYING
   '';
 
   meta = {
-    homepage = http://gummi.midnightcoding.org/;
+    homepage = "https://gummi.app";
     description = "Simple LaTex editor for GTK users";
     license = stdenv.lib.licenses.mit;
     maintainers = with stdenv.lib.maintainers; [ flokli ];
diff --git a/pkgs/applications/misc/gv/default.nix b/pkgs/applications/misc/gv/default.nix
index f94f8f5dd707..accf62c0c469 100644
--- a/pkgs/applications/misc/gv/default.nix
+++ b/pkgs/applications/misc/gv/default.nix
@@ -32,7 +32,7 @@ stdenv.mkDerivation {
   doCheck = true;
 
   meta = {
-    homepage = https://www.gnu.org/software/gv/;
+    homepage = "https://www.gnu.org/software/gv/";
     description = "PostScript/PDF document viewer";
 
     longDescription = ''
diff --git a/pkgs/applications/misc/gxneur/default.nix b/pkgs/applications/misc/gxneur/default.nix
index c44523a8b751..adabe22c6b64 100644
--- a/pkgs/applications/misc/gxneur/default.nix
+++ b/pkgs/applications/misc/gxneur/default.nix
@@ -4,7 +4,7 @@ stdenv.mkDerivation {
   name = "gxneur-0.20.0";
 
   src = fetchurl {
-    url = https://github.com/AndrewCrewKuznetsov/xneur-devel/raw/f66723feb272c68f7c22a8bf0dbcafa5e3a8a5ee/dists/0.20.0/gxneur_0.20.0.orig.tar.gz;
+    url = "https://github.com/AndrewCrewKuznetsov/xneur-devel/raw/f66723feb272c68f7c22a8bf0dbcafa5e3a8a5ee/dists/0.20.0/gxneur_0.20.0.orig.tar.gz";
     sha256 = "0avmhdcj0hpr55fc0iih8fjykmdhn34c8mwdnqvl8jh4nhxxchxr";
   };
 
diff --git a/pkgs/applications/misc/havoc/default.nix b/pkgs/applications/misc/havoc/default.nix
new file mode 100644
index 000000000000..fc4cc680ca4d
--- /dev/null
+++ b/pkgs/applications/misc/havoc/default.nix
@@ -0,0 +1,35 @@
+{ stdenv, fetchFromGitHub
+, pkgconfig, libxkbcommon, wayland, wayland-protocols }:
+
+stdenv.mkDerivation rec {
+
+  pname = "havoc";
+  version = "2019-12-08";
+
+  src = fetchFromGitHub {
+    owner = "ii8";
+    repo = pname;
+    rev = "507446c92ed7bf8380a58c5ba2b14aba5cdf412c";
+    sha256 = "13nfnan1gmy4cqxmqv0rc8a4mcb1g62v73d56hy7z2psv4am7a09";
+  };
+
+  nativeBuildInputs = [ pkgconfig ];
+  buildInputs = [ libxkbcommon wayland wayland-protocols ];
+
+  dontConfigure = true;
+
+  installFlags = [ "PREFIX=$$out" ];
+
+  postInstall = ''
+    install -D -m 644 havoc.cfg -t $out/etc/${pname}/
+    install -D -m 644 README.md -t $out/share/doc/${pname}-${version}/
+  '';
+
+  meta = with stdenv.lib; {
+    description = "A minimal terminal emulator for Wayland";
+    homepage = "https://github.com/ii8/havoc";
+    license = with licenses; [ mit publicDomain ];
+    platforms = with platforms; unix;
+    maintainers = with maintainers; [ AndersonTorres ];
+  };
+}
diff --git a/pkgs/applications/misc/haxor-news/default.nix b/pkgs/applications/misc/haxor-news/default.nix
index 7353078600d1..98f84ca68b8e 100644
--- a/pkgs/applications/misc/haxor-news/default.nix
+++ b/pkgs/applications/misc/haxor-news/default.nix
@@ -35,7 +35,7 @@ buildPythonApplication rec {
   '';
 
   meta = with stdenv.lib; {
-    homepage = https://github.com/donnemartin/haxor-news;
+    homepage = "https://github.com/donnemartin/haxor-news";
     description = "Browse Hacker News like a haxor";
     license = licenses.asl20;
     maintainers = with maintainers; [ matthiasbeyer ];
diff --git a/pkgs/applications/misc/hdate/default.nix b/pkgs/applications/misc/hdate/default.nix
index 989dfb886ec3..c97a67c0bd38 100644
--- a/pkgs/applications/misc/hdate/default.nix
+++ b/pkgs/applications/misc/hdate/default.nix
@@ -9,7 +9,7 @@ stdenv.mkDerivation rec {
   };
   meta = {
     description = "Hebrew calendar and solar astronomical times library and utilities";
-    homepage = https://sourceforge.net/projects/libhdate/;
+    homepage = "https://sourceforge.net/projects/libhdate/";
     license = stdenv.lib.licenses.gpl3;
     maintainers = with stdenv.lib.maintainers; [ CharlesHD ];
   };
diff --git a/pkgs/applications/misc/heimer/default.nix b/pkgs/applications/misc/heimer/default.nix
index fe7463491557..f301122a92de 100644
--- a/pkgs/applications/misc/heimer/default.nix
+++ b/pkgs/applications/misc/heimer/default.nix
@@ -2,13 +2,13 @@
 
 mkDerivation rec {
   pname = "heimer";
-  version = "1.15.0";
+  version = "1.15.1";
 
   src = fetchFromGitHub {
     owner = "juzzlin";
     repo = pname;
     rev = version;
-    sha256 = "1qh8nr6yvxiy8pxl5pkhzlfr7hanxxc8hd8h00gsdxa0vgmqz11q";
+    sha256 = "13a9yfq7m8jhirb31i0mmigqb135r585zwqddknl090d88164fic";
   };
 
   nativeBuildInputs = [ cmake ];
diff --git a/pkgs/applications/misc/hello/default.nix b/pkgs/applications/misc/hello/default.nix
index 8bae8ce373c7..32c8c696730f 100644
--- a/pkgs/applications/misc/hello/default.nix
+++ b/pkgs/applications/misc/hello/default.nix
@@ -17,7 +17,7 @@ stdenv.mkDerivation rec {
       GNU Hello is a program that prints "Hello, world!" when you run it.
       It is fully customizable.
     '';
-    homepage = https://www.gnu.org/software/hello/manual/;
+    homepage = "https://www.gnu.org/software/hello/manual/";
     changelog = "https://git.savannah.gnu.org/cgit/hello.git/plain/NEWS?h=v${version}";
     license = licenses.gpl3Plus;
     maintainers = [ maintainers.eelco ];
diff --git a/pkgs/applications/misc/hivemind/default.nix b/pkgs/applications/misc/hivemind/default.nix
index b3fb84340f21..8a8f80f57977 100644
--- a/pkgs/applications/misc/hivemind/default.nix
+++ b/pkgs/applications/misc/hivemind/default.nix
@@ -17,7 +17,7 @@ buildGoPackage rec {
   };
 
   meta = with stdenv.lib; {
-    homepage = https://github.com/DarthSim/;
+    homepage = "https://github.com/DarthSim/";
     description = "Process manager for Procfile-based applications";
     license = with licenses; [ mit ];
     maintainers = [ maintainers.sveitser ];
diff --git a/pkgs/applications/misc/houdini/runtime.nix b/pkgs/applications/misc/houdini/runtime.nix
index 279791561d90..51b08af23c5c 100644
--- a/pkgs/applications/misc/houdini/runtime.nix
+++ b/pkgs/applications/misc/houdini/runtime.nix
@@ -78,7 +78,7 @@ stdenv.mkDerivation rec {
   '';
   meta = {
     description = "3D animation application software";
-    homepage = https://www.sidefx.com;
+    homepage = "https://www.sidefx.com";
     license = stdenv.lib.licenses.unfree;
     platforms = stdenv.lib.platforms.linux;
     maintainers = [ stdenv.lib.maintainers.canndrew ];
diff --git a/pkgs/applications/misc/hovercraft/default.nix b/pkgs/applications/misc/hovercraft/default.nix
index ba23078bba93..edb8114e4a41 100644
--- a/pkgs/applications/misc/hovercraft/default.nix
+++ b/pkgs/applications/misc/hovercraft/default.nix
@@ -28,7 +28,7 @@ buildPythonApplication rec {
 
   meta = with lib; {
     description = "Makes impress.js presentations from reStructuredText";
-    homepage = https://github.com/regebro/hovercraft;
+    homepage = "https://github.com/regebro/hovercraft";
     license = licenses.mit;
     maintainers = with maintainers; [ goibhniu makefu ];
   };
diff --git a/pkgs/applications/misc/hr/default.nix b/pkgs/applications/misc/hr/default.nix
index 437c42b03317..91a66bc73781 100644
--- a/pkgs/applications/misc/hr/default.nix
+++ b/pkgs/applications/misc/hr/default.nix
@@ -19,7 +19,7 @@ stdenv.mkDerivation rec {
   '';
 
   meta = with stdenv.lib; {
-    homepage = https://github.com/LuRsT/hr;
+    homepage = "https://github.com/LuRsT/hr";
     description = "A horizontal bar for your terminal";
     license = licenses.mit;
     maintainers = [ maintainers.matthiasbeyer ];
diff --git a/pkgs/applications/misc/hstr/default.nix b/pkgs/applications/misc/hstr/default.nix
index 31ecfccd5848..b1e740fb7607 100644
--- a/pkgs/applications/misc/hstr/default.nix
+++ b/pkgs/applications/misc/hstr/default.nix
@@ -26,7 +26,7 @@ stdenv.mkDerivation rec {
   '';
 
   meta = {
-    homepage = https://github.com/dvorka/hstr;
+    homepage = "https://github.com/dvorka/hstr";
     description = "Shell history suggest box - easily view, navigate, search and use your command history";
     license = stdenv.lib.licenses.asl20;
     maintainers = [ stdenv.lib.maintainers.matthiasbeyer ];
diff --git a/pkgs/applications/misc/hubstaff/default.nix b/pkgs/applications/misc/hubstaff/default.nix
index b2997ece5d56..bbe05e0396bb 100644
--- a/pkgs/applications/misc/hubstaff/default.nix
+++ b/pkgs/applications/misc/hubstaff/default.nix
@@ -58,7 +58,7 @@ stdenv.mkDerivation {
 
   meta = with stdenv.lib; {
     description = "Time tracking software";
-    homepage = https://hubstaff.com/;
+    homepage = "https://hubstaff.com/";
     license = licenses.unfree;
     platforms = [ "x86_64-linux" ];
     maintainers = with maintainers; [ michalrus srghma ];
diff --git a/pkgs/applications/misc/hugo/default.nix b/pkgs/applications/misc/hugo/default.nix
index 5af7650982ab..f0e191097d50 100644
--- a/pkgs/applications/misc/hugo/default.nix
+++ b/pkgs/applications/misc/hugo/default.nix
@@ -2,7 +2,7 @@
 
 buildGoModule rec {
   pname = "hugo";
-  version = "0.66.0";
+  version = "0.70.0";
 
   goPackagePath = "github.com/gohugoio/hugo";
 
@@ -10,10 +10,10 @@ buildGoModule rec {
     owner = "gohugoio";
     repo = pname;
     rev = "v${version}";
-    sha256 = "177vqxzmldpkpaj7giqlbl39091fa2ga2pnshdj6gc393rw52f0a";
+    sha256 = "14g1x95jh91z9xm3xkv2psw2jn7z6bv2009miyv727df4d58nh6m";
   };
 
-  modSha256 = "1f320zbqnv2ybsp3qmlgn3rsjgp2zdb24qjd3gcys30mw48cx3na";
+  modSha256 = "015ha8pjz1fv8qg558xa6hl52fp2qd486ir9m01dvxw63xqx76ss";
 
   buildFlags = [ "-tags" "extended" ];
 
diff --git a/pkgs/applications/misc/hyper/default.nix b/pkgs/applications/misc/hyper/default.nix
index f21675e60b2d..1535b1a2568e 100644
--- a/pkgs/applications/misc/hyper/default.nix
+++ b/pkgs/applications/misc/hyper/default.nix
@@ -33,7 +33,7 @@ stdenv.mkDerivation rec {
   dontPatchELF = true;
   meta = with lib; {
     description = "A terminal built on web technologies";
-    homepage    = https://hyper.is/;
+    homepage    = "https://hyper.is/";
     maintainers = with maintainers; [ puffnfresh ];
     license     = licenses.mit;
     platforms   = [ "x86_64-linux" ];
diff --git a/pkgs/applications/misc/icesl/default.nix b/pkgs/applications/misc/icesl/default.nix
index 3ee4fd8259a9..7b642dffa503 100644
--- a/pkgs/applications/misc/icesl/default.nix
+++ b/pkgs/applications/misc/icesl/default.nix
@@ -31,7 +31,7 @@ stdenv.mkDerivation rec {
 
   meta = with lib; {
     description = "IceSL is a GPU-accelerated procedural modeler and slicer for 3D printing.";
-    homepage = http://shapeforge.loria.fr/icesl/index.html;
+    homepage = "http://shapeforge.loria.fr/icesl/index.html";
     license = licenses.inria-icesl;
     platforms = [ "i686-linux" "x86_64-linux" ];
     maintainers = with maintainers; [ mgttlinger ];
diff --git a/pkgs/applications/misc/ikiwiki/default.nix b/pkgs/applications/misc/ikiwiki/default.nix
index 8b908f1f9cf2..1515b4b0f99d 100644
--- a/pkgs/applications/misc/ikiwiki/default.nix
+++ b/pkgs/applications/misc/ikiwiki/default.nix
@@ -83,7 +83,7 @@ stdenv.mkDerivation {
 
   meta = {
     description = "Wiki compiler, storing pages and history in a RCS";
-    homepage = http://ikiwiki.info/;
+    homepage = "http://ikiwiki.info/";
     license = stdenv.lib.licenses.gpl2Plus;
     platforms = stdenv.lib.platforms.linux;
     maintainers = [ stdenv.lib.maintainers.peti ];
diff --git a/pkgs/applications/misc/img2pdf/default.nix b/pkgs/applications/misc/img2pdf/default.nix
index 902e9268f722..972e3b7e7b60 100644
--- a/pkgs/applications/misc/img2pdf/default.nix
+++ b/pkgs/applications/misc/img2pdf/default.nix
@@ -4,11 +4,11 @@ with python3Packages;
 
 buildPythonApplication rec {
   pname = "img2pdf";
-  version = "0.3.3";
+  version = "0.3.4";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "1ksn33j9d9df04n4jx7dli70d700rafbm37gjaz6lwsswrzc2xwx";
+    sha256 = "0jgfk191vvxn2r6bbdknvw5v510mx9g0xrgnmcghaxkv65zjnj0b";
   };
 
   doCheck = false; # needs pdfrw
@@ -19,7 +19,7 @@ buildPythonApplication rec {
 
   meta = with stdenv.lib; {
     description = "Convert images to PDF via direct JPEG inclusion";
-    homepage = https://gitlab.mister-muffin.de/josch/img2pdf;
+    homepage = "https://gitlab.mister-muffin.de/josch/img2pdf";
     license = licenses.lgpl2;
     platforms = platforms.unix;
     maintainers = [ maintainers.veprbl ];
diff --git a/pkgs/applications/misc/ipmicfg/default.nix b/pkgs/applications/misc/ipmicfg/default.nix
index 7daa2704e22b..f561f15ab3ec 100644
--- a/pkgs/applications/misc/ipmicfg/default.nix
+++ b/pkgs/applications/misc/ipmicfg/default.nix
@@ -2,12 +2,12 @@
 
 stdenv.mkDerivation rec {
   pname = "ipmicfg";
-  version = "1.29.0";
-  buildVersion = "181029";
+  version = "1.30.0";
+  buildVersion = "190710";
 
   src = fetchzip {
-    url = "ftp://ftp.supermicro.com/utility/IPMICFG/IPMICFG_${version}_build.${buildVersion}.zip";
-    sha256 = "18nljs4xg6hffahyd0d5zlg1jhbwl7zr9ym925bkzwcnrkgqs2v3";
+    url = "https://www.supermicro.com/wftp/utility/IPMICFG/IPMICFG_${version}_build.${buildVersion}.zip";
+    sha256 = "0srkzivxa4qlf3x9zdkri7xfq7kjj4fsmn978vzmzsvbxkqswd5a";
     extraPostFetch = "chmod u+rwX,go-rwx+X $out/";
   };
 
diff --git a/pkgs/applications/misc/iterm2/default.nix b/pkgs/applications/misc/iterm2/default.nix
index cabe306defc8..e273eda45c31 100644
--- a/pkgs/applications/misc/iterm2/default.nix
+++ b/pkgs/applications/misc/iterm2/default.nix
@@ -39,7 +39,7 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "A replacement for Terminal and the successor to iTerm";
-    homepage = https://www.iterm2.com/;
+    homepage = "https://www.iterm2.com/";
     license = licenses.gpl2;
     maintainers = with maintainers; [ tricktron ];
     platforms = platforms.darwin;
diff --git a/pkgs/applications/misc/jbidwatcher/default.nix b/pkgs/applications/misc/jbidwatcher/default.nix
index c8951059d4c8..2d7dca36d204 100644
--- a/pkgs/applications/misc/jbidwatcher/default.nix
+++ b/pkgs/applications/misc/jbidwatcher/default.nix
@@ -26,7 +26,7 @@ stdenv.mkDerivation rec {
   '';
 
   meta = {
-    homepage = http://www.jbidwatcher.com/;
+    homepage = "http://www.jbidwatcher.com/";
     description = "Monitor and snipe Ebay auctions";
     license = "LGPL";
 
diff --git a/pkgs/applications/misc/jekyll/basic/Gemfile.lock b/pkgs/applications/misc/jekyll/basic/Gemfile.lock
index 332f1bbf1977..b421ea717953 100644
--- a/pkgs/applications/misc/jekyll/basic/Gemfile.lock
+++ b/pkgs/applications/misc/jekyll/basic/Gemfile.lock
@@ -98,4 +98,4 @@ DEPENDENCIES
   jemoji
 
 BUNDLED WITH
-   1.17.3
+   2.1.4
diff --git a/pkgs/applications/misc/jekyll/default.nix b/pkgs/applications/misc/jekyll/default.nix
index 4d4dd248bc53..111b0a8867a4 100644
--- a/pkgs/applications/misc/jekyll/default.nix
+++ b/pkgs/applications/misc/jekyll/default.nix
@@ -46,7 +46,7 @@ in bundlerApp {
       web server. Jekyll is the engine behind GitHub Pages, which you can use to
       host sites right from your GitHub repositories.
     '';
-    homepage    = https://jekyllrb.com/;
+    homepage    = "https://jekyllrb.com/";
     license     = licenses.mit;
     maintainers = with maintainers; [ primeos pesterhazy ];
     platforms   = platforms.unix;
diff --git a/pkgs/applications/misc/jekyll/full/Gemfile.lock b/pkgs/applications/misc/jekyll/full/Gemfile.lock
index ebde3c93e215..51a835e4b9f0 100644
--- a/pkgs/applications/misc/jekyll/full/Gemfile.lock
+++ b/pkgs/applications/misc/jekyll/full/Gemfile.lock
@@ -149,4 +149,4 @@ DEPENDENCIES
   yajl-ruby (~> 1.4)
 
 BUNDLED WITH
-   1.17.3
+   2.1.4
diff --git a/pkgs/applications/misc/jgmenu/default.nix b/pkgs/applications/misc/jgmenu/default.nix
index df690727b27d..46792588f4cc 100644
--- a/pkgs/applications/misc/jgmenu/default.nix
+++ b/pkgs/applications/misc/jgmenu/default.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation rec {
   pname = "jgmenu";
-  version = "4.0.2";
+  version = "4.2.0";
 
   src = fetchFromGitHub {
     owner = "johanmalm";
     repo = pname;
     rev = "v${version}";
-    sha256 = "086p91l1igx5mv2i6fwbgx5p72war9aavc7v3m7sd0c0xvb334br";
+    sha256 = "1wcmx2yhm6n54w6nymgb8pgfjv411i3zj1vk79q9vr052y1622z0";
   };
 
   nativeBuildInputs = [
@@ -37,7 +37,7 @@ stdenv.mkDerivation rec {
   '';
 
   meta = with stdenv.lib; {
-    homepage = https://github.com/johanmalm/jgmenu;
+    homepage = "https://github.com/johanmalm/jgmenu";
     description = "Small X11 menu intended to be used with openbox and tint2";
     license = licenses.gpl2;
     platforms = platforms.linux;
diff --git a/pkgs/applications/misc/jigdo/default.nix b/pkgs/applications/misc/jigdo/default.nix
index 3561fcde839d..134354de40b7 100644
--- a/pkgs/applications/misc/jigdo/default.nix
+++ b/pkgs/applications/misc/jigdo/default.nix
@@ -5,13 +5,13 @@ stdenv.mkDerivation {
 
   # Debian sources
   src = fetchurl {
-    url = http://ftp.de.debian.org/debian/pool/main/j/jigdo/jigdo_0.7.3.orig.tar.gz;
+    url = "http://ftp.de.debian.org/debian/pool/main/j/jigdo/jigdo_0.7.3.orig.tar.gz";
     sha256 = "1qvqzgzb0dzq82fa1ffs6hyij655rajnfwkljk1y0mnkygnha1xv";
   };
 
   patches = [
     (fetchurl {
-      url = http://ftp.de.debian.org/debian/pool/main/j/jigdo/jigdo_0.7.3-4.diff.gz;
+      url = "http://ftp.de.debian.org/debian/pool/main/j/jigdo/jigdo_0.7.3-4.diff.gz";
       sha256 = "03zsh57fijciiv23lf55k6fbfhhzm866xjhx83x54v5s1g2h6m8y";
     })
     ./sizewidth.patch
@@ -23,7 +23,7 @@ stdenv.mkDerivation {
 
   meta = {
     description = "Download utility that can fetch files from several sources simultaneously";
-    homepage = http://atterer.net/jigdo/;
+    homepage = "http://atterer.net/jigdo/";
     license = stdenv.lib.licenses.gpl2;
     platforms = stdenv.lib.platforms.unix;
   };
diff --git a/pkgs/applications/misc/joplin-desktop/default.nix b/pkgs/applications/misc/joplin-desktop/default.nix
index 4219851fc9d3..3c84588530cc 100644
--- a/pkgs/applications/misc/joplin-desktop/default.nix
+++ b/pkgs/applications/misc/joplin-desktop/default.nix
@@ -2,7 +2,7 @@
 
 let
   pname = "joplin-desktop";
-  version = "1.0.179";
+  version = "1.0.201";
   desktopItem = makeDesktopItem {
      name = "Joplin";
      exec = "joplin-desktop";
@@ -13,7 +13,7 @@ in appimageTools.wrapType2 rec {
   name = "${pname}-${version}";
   src = fetchurl {
     url = "https://github.com/laurent22/joplin/releases/download/v${version}/Joplin-${version}.AppImage";
-    sha256 = "0v7d5wzwiznl755pl6jfg33g6jxr1cbm9j13jpbmfi497hj8w82k";
+    sha256 = "060dkgamsv59vgslqyjfh1g8wg3nldrvfb9lf0y9sxjlbsv8bc55";
   };
 
 
@@ -40,9 +40,9 @@ in appimageTools.wrapType2 rec {
       applications directly or from your own text editor. The notes are in
       Markdown format.
     '';
-    homepage = https://joplin.cozic.net/;
+    homepage = "https://joplinapp.org";
     license = licenses.mit;
-    maintainers = with maintainers; [ rafaelgg raquelgb ];
+    maintainers = with maintainers; [ hugoreeves rafaelgg raquelgb ];
     platforms = [ "x86_64-linux" ];
   };
 }
diff --git a/pkgs/applications/misc/josm/default.nix b/pkgs/applications/misc/josm/default.nix
index 4a47437b2497..eec7a066a887 100644
--- a/pkgs/applications/misc/josm/default.nix
+++ b/pkgs/applications/misc/josm/default.nix
@@ -2,11 +2,11 @@
 
 stdenv.mkDerivation rec {
   pname = "josm";
-  version = "15937";
+  version = "16239";
 
   src = fetchurl {
     url = "https://josm.openstreetmap.de/download/josm-snapshot-${version}.jar";
-    sha256 = "1mwrmhs5k3b3pvl3cmq78h8gh8zna06l4sym1a4vvlcx6j26a01f";
+    sha256 = "041n81mnd587043f8wwjv8ckbx0hlsqf3pc7hzbns1y89xdghms1";
   };
 
   buildInputs = [ jdk11 makeWrapper ];
@@ -38,7 +38,7 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "An extensible editor for OpenStreetMap";
-    homepage = https://josm.openstreetmap.de/;
+    homepage = "https://josm.openstreetmap.de/";
     license = licenses.gpl2Plus;
     maintainers = [ maintainers.rycee ];
     platforms = platforms.all;
diff --git a/pkgs/applications/misc/jotta-cli/default.nix b/pkgs/applications/misc/jotta-cli/default.nix
index 48f369d30290..70ca28b46783 100644
--- a/pkgs/applications/misc/jotta-cli/default.nix
+++ b/pkgs/applications/misc/jotta-cli/default.nix
@@ -5,10 +5,10 @@ let
 in
 stdenv.mkDerivation rec {
   pname = "jotta-cli";
-  version = "0.6.21799";
+  version = "0.6.24251";
   src = fetchzip {
       url = "https://repo.jotta.us/archives/linux/${arch}/jotta-cli-${version}_linux_${arch}.tar.gz";
-      sha256 = "19axrcfmycmdfgphkfwl9qgwd9xj8g37gmwi4ynb45w7nhfid5vm";
+      sha256 = "0f26fg5fqpz0f6jxp72cj5f2kf76jah5iaqlqsl87250y0hm330g";
       stripRoot = false;
     };
 
@@ -25,8 +25,8 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description  = "Jottacloud CLI";
-    homepage     = https://www.jottacloud.com/;
-    downloadPage = https://repo.jotta.us/archives/linux/;
+    homepage     = "https://www.jottacloud.com/";
+    downloadPage = "https://repo.jotta.us/archives/linux/";
     maintainers  = with maintainers; [ evenbrenden ];
     license      = licenses.unfree;
     platforms    = [ "x86_64-linux" ];
diff --git a/pkgs/applications/misc/jp2a/default.nix b/pkgs/applications/misc/jp2a/default.nix
index 1aece5eb4e26..d30e5d96df45 100644
--- a/pkgs/applications/misc/jp2a/default.nix
+++ b/pkgs/applications/misc/jp2a/default.nix
@@ -17,7 +17,7 @@ stdenv.mkDerivation rec {
   buildInputs = [ libjpeg ];
 
   meta = with stdenv.lib; {
-    homepage = https://csl.name/jp2a/;
+    homepage = "https://csl.name/jp2a/";
     description = "A small utility that converts JPG images to ASCII";
     license = licenses.gpl2;
     platforms = platforms.unix;
diff --git a/pkgs/applications/misc/jrnl/default.nix b/pkgs/applications/misc/jrnl/default.nix
index 3260f6a50690..992b981c0037 100644
--- a/pkgs/applications/misc/jrnl/default.nix
+++ b/pkgs/applications/misc/jrnl/default.nix
@@ -22,7 +22,7 @@ buildPythonApplication rec {
   doCheck = false;
 
   meta = with stdenv.lib; {
-    homepage = http://maebert.github.io/jrnl/;
+    homepage = "http://maebert.github.io/jrnl/";
     description = "A simple command line journal application that stores your journal in a plain text file";
     license = licenses.mit;
     maintainers = with maintainers; [ zalakain ];
diff --git a/pkgs/applications/misc/k2pdfopt/default.nix b/pkgs/applications/misc/k2pdfopt/default.nix
index 69d78575e2a3..8899654cc4c8 100644
--- a/pkgs/applications/misc/k2pdfopt/default.nix
+++ b/pkgs/applications/misc/k2pdfopt/default.nix
@@ -73,7 +73,7 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "Optimizes PDF/DJVU files for mobile e-readers (e.g. the Kindle) and smartphones";
-    homepage = http://www.willus.com/k2pdfopt;
+    homepage = "http://www.willus.com/k2pdfopt";
     license = licenses.gpl3;
     platforms = platforms.linux;
     maintainers = with maintainers; [ bosu danielfullmer ];
diff --git a/pkgs/applications/misc/kanboard/default.nix b/pkgs/applications/misc/kanboard/default.nix
index b790fb9e6c45..e6193d435639 100644
--- a/pkgs/applications/misc/kanboard/default.nix
+++ b/pkgs/applications/misc/kanboard/default.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation rec {
   pname = "kanboard";
-  version = "1.2.13";
+  version = "1.2.14";
 
   src = fetchFromGitHub {
     owner = "kanboard";
     repo = "kanboard";
     rev = "v${version}";
-    sha256 = "0mm5sx323v1rwykd1dhvk4d3ipgvgvi3wvhrlavbja3lgay3mdwk";
+    sha256 = "11bwajzidnyagdyip7i8rwni1f66acv0k4lybdm0mc4195anivjh";
   };
 
   dontBuild = true;
@@ -20,7 +20,7 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "Kanban project management software";
-    homepage = https://kanboard.net;
+    homepage = "https://kanboard.net";
     license = licenses.mit;
     maintainers = with maintainers; [ fpletz lheckemann ];
   };
diff --git a/pkgs/applications/misc/kdeconnect/default.nix b/pkgs/applications/misc/kdeconnect/default.nix
index e8bdcb371189..c3d2feb2fed7 100644
--- a/pkgs/applications/misc/kdeconnect/default.nix
+++ b/pkgs/applications/misc/kdeconnect/default.nix
@@ -44,7 +44,7 @@ mkDerivation rec {
 
   meta = with lib; {
     description = "KDE Connect provides several features to integrate your phone and your computer";
-    homepage    = https://community.kde.org/KDEConnect;
+    homepage    = "https://community.kde.org/KDEConnect";
     license     = with licenses; [ gpl2 ];
     maintainers = with maintainers; [ fridh ];
   };
diff --git a/pkgs/applications/misc/keepass-plugins/keepasshttp/default.nix b/pkgs/applications/misc/keepass-plugins/keepasshttp/default.nix
index 76ea9df78c25..f9dbf14624f7 100644
--- a/pkgs/applications/misc/keepass-plugins/keepasshttp/default.nix
+++ b/pkgs/applications/misc/keepass-plugins/keepasshttp/default.nix
@@ -17,7 +17,7 @@ let
 
     meta = {
       description = "KeePass plugin to expose password entries securely (256bit AES/CBC) over HTTP";
-      homepage    = https://github.com/pfn/keepasshttp;
+      homepage    = "https://github.com/pfn/keepasshttp";
       platforms   = with stdenv.lib.platforms; linux;
       license     = stdenv.lib.licenses.gpl3;
     };
diff --git a/pkgs/applications/misc/keepass-plugins/keepassrpc/default.nix b/pkgs/applications/misc/keepass-plugins/keepassrpc/default.nix
index 562835159eb3..3d41c45f6dc5 100644
--- a/pkgs/applications/misc/keepass-plugins/keepassrpc/default.nix
+++ b/pkgs/applications/misc/keepass-plugins/keepassrpc/default.nix
@@ -12,7 +12,7 @@ let
 
     meta = with stdenv.lib; {
       description = "The KeePassRPC plugin that needs to be installed inside KeePass in order for Kee to be able to connect your browser to your passwords";
-      homepage    = https://github.com/kee-org/keepassrpc;
+      homepage    = "https://github.com/kee-org/keepassrpc";
       platforms   = [ "x86_64-linux" ];
       license     = licenses.gpl2;
       maintainers = with maintainers; [ mjanczyk svsdep mgregoire ];
diff --git a/pkgs/applications/misc/keepass/default.nix b/pkgs/applications/misc/keepass/default.nix
index b954d2d3cdb8..1d668e039bd0 100644
--- a/pkgs/applications/misc/keepass/default.nix
+++ b/pkgs/applications/misc/keepass/default.nix
@@ -107,7 +107,7 @@ with builtins; buildDotnetPackage rec {
 
   meta = {
     description = "GUI password manager with strong cryptography";
-    homepage = http://www.keepass.info/;
+    homepage = "http://www.keepass.info/";
     maintainers = with stdenv.lib.maintainers; [ amorsillo obadz joncojonathan jraygauthier ];
     platforms = with stdenv.lib.platforms; all;
     license = stdenv.lib.licenses.gpl2;
diff --git a/pkgs/applications/misc/keepassx/2.0.nix b/pkgs/applications/misc/keepassx/2.0.nix
index 36734a97516b..fdd11db509fc 100644
--- a/pkgs/applications/misc/keepassx/2.0.nix
+++ b/pkgs/applications/misc/keepassx/2.0.nix
@@ -13,7 +13,7 @@ stdenv.mkDerivation rec {
 
   meta = {
     description = "Qt password manager compatible with its Win32 and Pocket PC versions";
-    homepage = https://www.keepassx.org/;
+    homepage = "https://www.keepassx.org/";
     license = stdenv.lib.licenses.gpl2;
     maintainers = with stdenv.lib.maintainers; [ qknight ];
     platforms = with stdenv.lib.platforms; linux;
diff --git a/pkgs/applications/misc/keepassx/community.nix b/pkgs/applications/misc/keepassx/community.nix
index c6bcd56167c0..469b4cf5ea6d 100644
--- a/pkgs/applications/misc/keepassx/community.nix
+++ b/pkgs/applications/misc/keepassx/community.nix
@@ -1,4 +1,10 @@
-{ stdenv, fetchFromGitHub, cmake, makeWrapper, qttools, darwin
+{ stdenv
+, fetchFromGitHub
+, fetchpatch
+, cmake
+, makeWrapper
+, qttools
+, darwin
 
 , curl
 , glibcLocales
@@ -33,13 +39,13 @@ with stdenv.lib;
 
 stdenv.mkDerivation rec {
   pname = "keepassxc";
-  version = "2.5.2";
+  version = "2.5.4";
 
   src = fetchFromGitHub {
     owner = "keepassxreboot";
     repo = "keepassxc";
     rev = version;
-    sha256 = "0z5bd17qaq7zpv96gw6qwv6rb4xx7xjq86ss6wm5zskcrraf7r7n";
+    sha256 = "1xih9q1pxszalc0l29fmjxwn1vrrrrbnhc8gmi8brw5sclhbs6bh";
   };
 
   NIX_CFLAGS_COMPILE = stdenv.lib.optionalString stdenv.cc.isClang [
@@ -57,6 +63,11 @@ stdenv.mkDerivation rec {
 
   patches = [
     ./darwin.patch
+    # use wl-copy on Wayland - can be dropped with the next version update
+    (fetchpatch {
+      url = "https://github.com/keepassxreboot/keepassxc/commit/6128e5d58294f26411160f44da91087ebe7f4b07.patch";
+      sha256 = "16q0h7kijqjdbskmk4ar6p3g8vcxr0bq1zrlq2bk16pk10nv4bh1";
+    })
   ];
 
   cmakeFlags = [
@@ -79,7 +90,8 @@ stdenv.mkDerivation rec {
     export LC_ALL="en_US.UTF-8"
     export QT_QPA_PLATFORM=offscreen
     export QT_PLUGIN_PATH="${qtbase.bin}/${qtbase.qtPluginPrefix}"
-    make test ARGS+="-E testgui --output-on-failure"
+    # testcli and testgui are flaky - skip them both
+    make test ARGS+="-E 'testcli|testgui' --output-on-failure"
   '';
 
   nativeBuildInputs = [ cmake wrapQtAppsHook qttools ];
@@ -114,9 +126,9 @@ stdenv.mkDerivation rec {
   meta = {
     description = "Password manager to store your passwords safely and auto-type them into your everyday websites and applications";
     longDescription = "A community fork of KeePassX, which is itself a port of KeePass Password Safe. The goal is to extend and improve KeePassX with new features and bugfixes to provide a feature-rich, fully cross-platform and modern open-source password manager. Accessible via native cross-platform GUI, CLI, and browser integration with the KeePassXC Browser Extension (https://github.com/keepassxreboot/keepassxc-browser).";
-    homepage = https://keepassxc.org/;
+    homepage = "https://keepassxc.org/";
     license = licenses.gpl2;
-    maintainers = with maintainers; [ jonafato ];
+    maintainers = with maintainers; [ jonafato turion ];
     platforms = platforms.linux ++ platforms.darwin;
   };
 }
diff --git a/pkgs/applications/misc/keepassx/darwin.patch b/pkgs/applications/misc/keepassx/darwin.patch
index 6232d1118a7b..95ca5d4587fe 100644
--- a/pkgs/applications/misc/keepassx/darwin.patch
+++ b/pkgs/applications/misc/keepassx/darwin.patch
@@ -6,10 +6,10 @@ index 74b1a7ff..0a713a32 100644
      set(PLUGIN_INSTALL_DIR ".")
      set(DATA_INSTALL_DIR "share")
  elseif(APPLE AND WITH_APP_BUNDLE)
-+	set(CMAKE_INSTALL_PREFIX "${CMAKE_INSTALL_PREFIX}/Applications")
++    set(CMAKE_INSTALL_PREFIX "${CMAKE_INSTALL_PREFIX}/Applications")
+     set(BUNDLE_INSTALL_DIR "${PROGNAME}.app/Contents")
      set(CMAKE_INSTALL_MANDIR "${PROGNAME}.app/Contents/Resources/man")
      set(CLI_INSTALL_DIR "${PROGNAME}.app/Contents/MacOS")
-     set(PROXY_INSTALL_DIR "${PROGNAME}.app/Contents/MacOS")
 @@ -369,12 +370,6 @@ set(CMAKE_AUTORCC ON)
  
  if(APPLE)
diff --git a/pkgs/applications/misc/keepassx/default.nix b/pkgs/applications/misc/keepassx/default.nix
index 7adbcb86c501..d0980001c8f6 100644
--- a/pkgs/applications/misc/keepassx/default.nix
+++ b/pkgs/applications/misc/keepassx/default.nix
@@ -17,7 +17,7 @@ stdenv.mkDerivation rec {
 
   meta = {
     description = "Qt password manager compatible with its Win32 and Pocket PC versions";
-    homepage = https://www.keepassx.org/;
+    homepage = "https://www.keepassx.org/";
     license = stdenv.lib.licenses.gpl2;
     maintainers = with stdenv.lib.maintainers; [ qknight ];
     platforms = with stdenv.lib.platforms; linux;
diff --git a/pkgs/applications/misc/khal/default.nix b/pkgs/applications/misc/khal/default.nix
index c435eaefed50..323fc501c842 100644
--- a/pkgs/applications/misc/khal/default.nix
+++ b/pkgs/applications/misc/khal/default.nix
@@ -41,6 +41,13 @@ with python3.pkgs; buildPythonApplication rec {
   checkInputs = [ pytest glibcLocales ];
   LC_ALL = "en_US.UTF-8";
 
+  postPatch = ''
+    sed -i \
+      -e "s/Invalid value for \"ics\"/Invalid value for \\\'ics\\\'/" \
+      -e "s/Invalid value for \"\[ICS\]\"/Invalid value for \\\'\[ICS\]\\\'/" \
+      tests/cli_test.py
+  '';
+
   postInstall = ''
     # zsh completion
     install -D misc/__khal $out/share/zsh/site-functions/__khal
@@ -61,7 +68,7 @@ with python3.pkgs; buildPythonApplication rec {
   '';
 
   meta = with stdenv.lib; {
-    homepage = http://lostpackets.de/khal/;
+    homepage = "http://lostpackets.de/khal/";
     description = "CLI calendar application";
     license = licenses.mit;
     maintainers = with maintainers; [ gebner ];
diff --git a/pkgs/applications/misc/khard/default.nix b/pkgs/applications/misc/khard/default.nix
index 1c6708c51c97..8646b9864d9e 100644
--- a/pkgs/applications/misc/khard/default.nix
+++ b/pkgs/applications/misc/khard/default.nix
@@ -1,12 +1,12 @@
 { stdenv, glibcLocales, python3 }:
 
 python3.pkgs.buildPythonApplication rec {
-  version = "0.15.1";
+  version = "0.16.1";
   pname = "khard";
 
   src = python3.pkgs.fetchPypi {
     inherit pname version;
-    sha256 = "18ba2xgfq8sw0bg6xmlfjpizid1hkzgswcfcc54gl21y2dwfda2w";
+    sha256 = "0fg4qh5gzki5wg958wlpc8a2icnk74gzg33lqxjm755cfnjng7qd";
   };
 
   propagatedBuildInputs = with python3.pkgs; [
@@ -23,7 +23,7 @@ python3.pkgs.buildPythonApplication rec {
   '';
 
   meta = {
-    homepage = https://github.com/scheibler/khard;
+    homepage = "https://github.com/scheibler/khard";
     description = "Console carddav client";
     license = stdenv.lib.licenses.gpl3;
     maintainers = with stdenv.lib.maintainers; [ matthiasbeyer ];
diff --git a/pkgs/applications/misc/kitty/default.nix b/pkgs/applications/misc/kitty/default.nix
index cdba8c3f686b..90dd04c9d680 100644
--- a/pkgs/applications/misc/kitty/default.nix
+++ b/pkgs/applications/misc/kitty/default.nix
@@ -2,6 +2,7 @@
   harfbuzz, fontconfig, pkgconfig, ncurses, imagemagick, xsel,
   libstartup_notification, libGL, libX11, libXrandr, libXinerama, libXcursor,
   libxkbcommon, libXi, libXext, wayland-protocols, wayland,
+  installShellFiles,
   which, dbus,
   Cocoa,
   CoreGraphics,
@@ -12,8 +13,6 @@
   libcanberra,
   libicns,
   libpng,
-  librsvg,
-  optipng,
   python3,
   zlib,
 }:
@@ -21,14 +20,14 @@
 with python3Packages;
 buildPythonApplication rec {
   pname = "kitty";
-  version = "0.16.0";
+  version = "0.17.3";
   format = "other";
 
   src = fetchFromGitHub {
     owner = "kovidgoyal";
     repo = "kitty";
     rev = "v${version}";
-    sha256 = "1bszyddar0g1gdz67h8rd3gbrdhi6ahjg7j14cjiqxm1938z9ajf";
+    sha256 = "1nx8gjavq8kc656ayh3wign1f68b46jbnmy8zyks25wg0p9gid8l";
   };
 
   buildInputs = [
@@ -55,8 +54,7 @@ buildPythonApplication rec {
   ] ++ stdenv.lib.optionals stdenv.isDarwin [
     imagemagick
     libicns  # For the png2icns tool.
-    librsvg
-    optipng
+    installShellFiles
   ];
 
   propagatedBuildInputs = stdenv.lib.optional stdenv.isLinux libGL;
@@ -74,7 +72,6 @@ buildPythonApplication rec {
     })
   ] ++ stdenv.lib.optionals stdenv.isDarwin [
     ./no-lto.patch
-    ./png2icns.patch
   ];
 
   # Causes build failure due to warning
@@ -82,6 +79,7 @@ buildPythonApplication rec {
 
   buildPhase = if stdenv.isDarwin then ''
     ${python.interpreter} setup.py kitty.app --update-check-interval=0
+    make man
   '' else ''
     ${python.interpreter} setup.py linux-package --update-check-interval=0
   '';
@@ -94,6 +92,8 @@ buildPythonApplication rec {
     ln -s ../Applications/kitty.app/Contents/MacOS/kitty "$out/bin/kitty"
     mkdir "$out/Applications"
     cp -r kitty.app "$out/Applications/kitty.app"
+
+    installManPage 'docs/_build/man/kitty.1'
     '' else ''
     cp -r linux-package/{bin,share,lib} $out
     ''}
@@ -105,6 +105,7 @@ buildPythonApplication rec {
     mkdir -p "$out/share/"{bash-completion/completions,fish/vendor_completions.d,zsh/site-functions}
     "$out/bin/kitty" + complete setup fish > "$out/share/fish/vendor_completions.d/kitty.fish"
     "$out/bin/kitty" + complete setup bash > "$out/share/bash-completion/completions/kitty.bash"
+    "$out/bin/kitty" + complete setup zsh > "$out/share/zsh/site-functions/_kitty"
   '';
 
   postInstall = ''
@@ -121,7 +122,7 @@ buildPythonApplication rec {
   '';
 
   meta = with stdenv.lib; {
-    homepage = https://github.com/kovidgoyal/kitty;
+    homepage = "https://github.com/kovidgoyal/kitty";
     description = "A modern, hackable, featureful, OpenGL based terminal emulator";
     license = licenses.gpl3;
     platforms = platforms.darwin ++ platforms.linux;
diff --git a/pkgs/applications/misc/kitty/no-lto.patch b/pkgs/applications/misc/kitty/no-lto.patch
index 44d231cb07f9..8073c11fbd2a 100644
--- a/pkgs/applications/misc/kitty/no-lto.patch
+++ b/pkgs/applications/misc/kitty/no-lto.patch
@@ -1,12 +1,13 @@
 --- a/setup.py
 +++ b/setup.py
-@@ -233,9 +233,6 @@ def init_env(
+@@ -277,10 +277,6 @@ def init_env(
      cppflags += shlex.split(os.environ.get('CPPFLAGS', ''))
      cflags += shlex.split(os.environ.get('CFLAGS', ''))
      ldflags += shlex.split(os.environ.get('LDFLAGS', ''))
 -    if not debug and not sanitize:
 -        # See https://github.com/google/sanitizers/issues/647
--        cflags.append('-flto'), ldflags.append('-flto')
+-        cflags.append('-flto')
+-        ldflags.append('-flto')
 
      if profile:
          cppflags.append('-DWITH_PROFILER')
diff --git a/pkgs/applications/misc/kitty/png2icns.patch b/pkgs/applications/misc/kitty/png2icns.patch
deleted file mode 100644
index 68566e2a899f..000000000000
--- a/pkgs/applications/misc/kitty/png2icns.patch
+++ /dev/null
@@ -1,21 +0,0 @@
-diff -aru a/setup.py b/setup.py
---- a/setup.py	2019-07-29 11:09:32.000000000 -0400
-+++ b/setup.py	2019-07-29 11:11:37.000000000 -0400
-@@ -784,9 +784,15 @@
- def create_macos_app_icon(where='Resources'):
-     logo_dir = os.path.abspath(os.path.join('logo', appname + '.iconset'))
-     subprocess.check_call([
--        'iconutil', '-c', 'icns', logo_dir, '-o',
-+        'png2icns',
-         os.path.join(where, os.path.basename(logo_dir).partition('.')[0] + '.icns')
--    ])
-+    ] + [os.path.join(logo_dir, logo) for logo in [
-+        'icon_128x128.png',
-+        'icon_16x16.png',
-+        'icon_256x256.png',
-+        'icon_32x32.png',
-+        'icon_512x512.png',
-+    ]])
- 
- 
- def create_minimal_macos_bundle(args, where):
diff --git a/pkgs/applications/misc/kiwix/default.nix b/pkgs/applications/misc/kiwix/default.nix
index 898186b714b6..ff6b1e9de2dc 100644
--- a/pkgs/applications/misc/kiwix/default.nix
+++ b/pkgs/applications/misc/kiwix/default.nix
@@ -9,19 +9,19 @@ with stdenv.lib;
 
 let
   xulrunner64_tar = fetchurl {
-    url = http://download.kiwix.org/dev/xulrunner-29.0.en-US.linux-x86_64.tar.bz2;
+    url = "http://download.kiwix.org/dev/xulrunner-29.0.en-US.linux-x86_64.tar.bz2";
     sha256 = "0i3m30gm5z7qmas14id6ypvbmnb2k7jhz8aby2wz5vvv49zqmx3s";
   };
   xulrunnersdk64_tar = fetchurl {
-    url = http://download.kiwix.org/dev/xulrunner-29.0.en-US.linux-x86_64.sdk.tar.bz2;
+    url = "http://download.kiwix.org/dev/xulrunner-29.0.en-US.linux-x86_64.sdk.tar.bz2";
     sha256 = "0z90v7c4mq15g5klmsj8vs2r10fbygj3qzynx4952hkv8ihw8n3a";
   };
   xulrunner32_tar = fetchurl {
-    url = http://download.kiwix.org/dev/xulrunner-29.0.en-US.linux-i686.tar.bz2;
+    url = "http://download.kiwix.org/dev/xulrunner-29.0.en-US.linux-i686.tar.bz2";
     sha256 = "0yln6pxz8f6b9wm9124sx049z8mgi17lgd63rcv2hnix825y8gjb";
   };
   xulrunnersdk32_tar = fetchurl {
-    url = http://download.kiwix.org/dev/xulrunner-29.0.en-US.linux-i686.sdk.tar.bz2;
+    url = "http://download.kiwix.org/dev/xulrunner-29.0.en-US.linux-i686.sdk.tar.bz2";
     sha256 = "1h9vcbvf8wgds6i2z20y7krpys0mqsqhv1ijyfljanp6vyll9fvi";
   };
 
@@ -98,7 +98,7 @@ stdenv.mkDerivation rec {
 
   meta = {
     description = "An offline reader for Web content";
-    homepage = https://kiwix.org;
+    homepage = "https://kiwix.org";
     license = licenses.gpl3;
     platforms = platforms.linux;
     maintainers = with maintainers; [ robbinch ];
diff --git a/pkgs/applications/misc/kjv/default.nix b/pkgs/applications/misc/kjv/default.nix
index 7868e74d010c..307781931e97 100644
--- a/pkgs/applications/misc/kjv/default.nix
+++ b/pkgs/applications/misc/kjv/default.nix
@@ -2,7 +2,7 @@
 
 let
 
-patch-base = https://github.com/LukeSmithxyz/kjv/commit/;
+patch-base = "https://github.com/LukeSmithxyz/kjv/commit/";
 
 add-apocrypha = fetchpatch {
   url = patch-base + "b92b7622285d10464f9274f11e740bef90705bbc.patch";
diff --git a/pkgs/applications/misc/klayout/default.nix b/pkgs/applications/misc/klayout/default.nix
new file mode 100644
index 000000000000..73b51e4adbc3
--- /dev/null
+++ b/pkgs/applications/misc/klayout/default.nix
@@ -0,0 +1,63 @@
+{ lib, mkDerivation, fetchFromGitHub, fetchpatch
+, python, ruby, qtbase, qtmultimedia, qttools, qtxmlpatterns
+, which, perl, makeWrapper, fixDarwinDylibNames
+}:
+
+mkDerivation rec {
+  pname = "klayout";
+  version = "0.26.4";
+
+  src = fetchFromGitHub {
+    owner = "KLayout";
+    repo = "klayout";
+    rev = "v${version}";
+    sha256 = "0hqc11vz24b6nfpfzsjwwmaq0sznwwqpzmd48q5wpdl0kz1309gj";
+  };
+
+  postPatch = ''
+    substituteInPlace src/klayout.pri --replace "-Wno-reserved-user-defined-literal" ""
+    patchShebangs .
+  '';
+
+  nativeBuildInputs = [
+    which
+  ];
+
+  buildInputs = [
+    python
+    ruby
+    qtbase
+    qtmultimedia
+    qttools
+    qtxmlpatterns
+  ];
+
+  buildPhase = ''
+    runHook preBuild
+    mkdir -p $out/lib
+    ./build.sh -qt5 -prefix $out/lib -j$NIX_BUILD_CORES
+    runHook postBuild
+  '';
+
+  postBuild = ''
+    mkdir $out/bin
+    mv $out/lib/klayout $out/bin/
+  '';
+
+  NIX_CFLAGS_COMPILE = [ "-Wno-parentheses" ];
+
+  dontInstall = true; # Installation already happens as part of "build.sh"
+
+  # Fix: "gsiDeclQMessageLogger.cc:126:42: error: format not a string literal
+  # and no format arguments [-Werror=format-security]"
+  hardeningDisable = [ "format" ];
+
+  meta = with lib; {
+    description = "High performance layout viewer and editor with support for GDS and OASIS";
+    license = with licenses; [ gpl3 ];
+    homepage = "https://www.klayout.de/";
+    platforms = platforms.linux;
+    maintainers = with maintainers; [ knedlsepp ];
+  };
+}
+
diff --git a/pkgs/applications/misc/kondo/default.nix b/pkgs/applications/misc/kondo/default.nix
new file mode 100644
index 000000000000..9df4c59717cc
--- /dev/null
+++ b/pkgs/applications/misc/kondo/default.nix
@@ -0,0 +1,22 @@
+{ stdenv, rustPlatform, fetchFromGitHub }:
+
+rustPlatform.buildRustPackage rec {
+  pname = "kondo";
+  version = "0.3";
+
+  src = fetchFromGitHub {
+    owner = "tbillington";
+    repo = pname;
+    rev = "v${version}";
+    sha256 = "1rrg0xfm3vn5jh861r4ismrga673g7v6qnzl2v1haflgjhvdazwd";
+  };
+
+  cargoSha256 = "1y7g8gw9hsm997d6i99c3dj2gb8y8cgws5001n85f9bpnlvvmf9y";
+
+  meta = with stdenv.lib; {
+    description = "Save disk space by cleaning unneeded files from software projects";
+    homepage = "https://github.com/tbillington/kondo";
+    license = licenses.mit;
+    maintainers = with maintainers; [ filalex77 ];
+  };
+}
diff --git a/pkgs/applications/misc/krename/default.nix b/pkgs/applications/misc/krename/default.nix
index 8b6b7741c7df..816b352460ba 100644
--- a/pkgs/applications/misc/krename/default.nix
+++ b/pkgs/applications/misc/krename/default.nix
@@ -25,7 +25,7 @@ in mkDerivation rec {
 
   meta = with lib; {
     description = "A powerful batch renamer for KDE";
-    homepage = https://kde.org/applications/utilities/krename/;
+    homepage = "https://kde.org/applications/utilities/krename/";
     license = licenses.gpl2;
     maintainers = with maintainers; [ peterhoeg ];
     inherit (kconfig.meta) platforms;
diff --git a/pkgs/applications/misc/krusader/default.nix b/pkgs/applications/misc/krusader/default.nix
index 15979def34b0..ab13c4989d9a 100644
--- a/pkgs/applications/misc/krusader/default.nix
+++ b/pkgs/applications/misc/krusader/default.nix
@@ -19,8 +19,8 @@ in mkDerivation rec {
   meta = with lib; {
     description = "Norton/Total Commander clone for KDE";
     license = licenses.gpl2;
-    homepage = http://www.krusader.org;
-    maintainers = with maintainers; [ sander ];
+    homepage = "http://www.krusader.org";
+    maintainers = with maintainers; [ sander turion ];
   };
 
   nativeBuildInputs = [ extra-cmake-modules kdoctools wrapGAppsHook ];
diff --git a/pkgs/applications/misc/latte-dock/default.nix b/pkgs/applications/misc/latte-dock/default.nix
index ad824b238f8e..424da3ad3605 100644
--- a/pkgs/applications/misc/latte-dock/default.nix
+++ b/pkgs/applications/misc/latte-dock/default.nix
@@ -3,11 +3,11 @@
 
 mkDerivation rec {
   pname = "latte-dock";
-  version = "0.9.9";
+  version = "0.9.11";
 
   src = fetchurl {
     url = "https://download.kde.org/stable/${pname}/${pname}-${version}.tar.xz";
-    sha256 = "01b2zr2x5hnadkvj687lwi3l6dwq3kdn5y9k4qf1bv0sa4vw6hn9";
+    sha256 = "0x7a93a7axsa0fzpbkkv1z722k9za4p51xcpzdpnh5ih1zij0csi";
     name = "${pname}-${version}.tar.xz";
   };
 
diff --git a/pkgs/applications/misc/lenmus/default.nix b/pkgs/applications/misc/lenmus/default.nix
index 76abe7c9b4b3..532166cf6fb0 100644
--- a/pkgs/applications/misc/lenmus/default.nix
+++ b/pkgs/applications/misc/lenmus/default.nix
@@ -44,7 +44,7 @@ stdenv.mkDerivation rec {
       It allows you to focus on specific skills and exercises, on both theory and aural training.
       The different activities can be customized to meet your needs
     '';
-    homepage = http://www.lenmus.org/;
+    homepage = "http://www.lenmus.org/";
     license = licenses.gpl3Plus;
     maintainers = with maintainers;  [ ramkromberg ];
     platforms = with platforms; linux;
diff --git a/pkgs/applications/misc/libosmocore/default.nix b/pkgs/applications/misc/libosmocore/default.nix
index 846ce3098425..2bd8bfa99bcd 100644
--- a/pkgs/applications/misc/libosmocore/default.nix
+++ b/pkgs/applications/misc/libosmocore/default.nix
@@ -29,7 +29,7 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "libosmocore";
-    homepage = https://github.com/osmocom/libosmocore;
+    homepage = "https://github.com/osmocom/libosmocore";
     license = licenses.gpl2Plus;
     platforms = platforms.linux;
     maintainers = with maintainers; [ mog ];
diff --git a/pkgs/applications/misc/lighthouse/default.nix b/pkgs/applications/misc/lighthouse/default.nix
index 7b5b40d65a36..9e651c59d4eb 100644
--- a/pkgs/applications/misc/lighthouse/default.nix
+++ b/pkgs/applications/misc/lighthouse/default.nix
@@ -26,7 +26,7 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "A simple flexible popup dialog to run on X";
-    homepage = https://github.com/emgram769/lighthouse;
+    homepage = "https://github.com/emgram769/lighthouse";
     license = licenses.mit;
     maintainers = with maintainers; [ ramkromberg ];
     platforms = platforms.linux;
diff --git a/pkgs/applications/misc/lilyterm/default.nix b/pkgs/applications/misc/lilyterm/default.nix
index e9dba4bcf469..28f9625b5b66 100644
--- a/pkgs/applications/misc/lilyterm/default.nix
+++ b/pkgs/applications/misc/lilyterm/default.nix
@@ -2,40 +2,41 @@
 , pkgconfig
 , autoconf, automake, intltool, gettext
 , gtk, vte
-
 , flavour ? "stable"
 }:
 
 assert lib.assertOneOf "flavour" flavour [ "stable"  "git" ];
 
 let
+  pname = "lilyterm";
   stuff =
     if flavour == "stable"
     then rec {
         version = "0.9.9.4";
         src = fetchurl {
-          url = "https://lilyterm.luna.com.tw/file/lilyterm-${version}.tar.gz";
+          url = "https://lilyterm.luna.com.tw/file/${pname}-${version}.tar.gz";
           sha256 = "0x2x59qsxq6d6xg5sd5lxbsbwsdvkwqlk17iw3h4amjg3m1jc9mp";
         };
       }
     else {
-        version = "2017-01-06";
+        version = "2019-07-25";
         src = fetchFromGitHub {
           owner = "Tetralet";
-          repo = "lilyterm";
-          rev = "20cce75d34fd24901c9828469d4881968183c389";
-          sha256 = "0am0y65674rfqy69q4qz8izb8cq0isylr4w5ychi40jxyp68rkv2";
+          repo = pname;
+          rev = "faf1254f46049edfb1fd6e9191e78b1b23b9c51d";
+          sha256 = "054450gk237c62b677365bcwrijr63gd9xm8pv68br371wdzylz7";
         };
       };
 
 in
-stdenv.mkDerivation {
-  pname = "lilyterm";
+with stdenv.lib;
+stdenv.mkDerivation rec {
+  inherit pname;
 
   inherit (stuff) src version;
 
-  nativeBuildInputs = [ pkgconfig ];
-  buildInputs = [ autoconf automake intltool gettext gtk vte ];
+  nativeBuildInputs = [ pkgconfig autoconf automake intltool gettext ];
+  buildInputs = [ gtk vte ];
 
   preConfigure = "sh autogen.sh";
 
@@ -49,7 +50,7 @@ stdenv.mkDerivation {
     longDescription = ''
       LilyTerm is a terminal emulator based off of libvte that aims to be fast and lightweight.
     '';
-    homepage = https://lilyterm.luna.com.tw/;
+    homepage = "https://lilyterm.luna.com.tw/";
     license = licenses.gpl3;
     maintainers = with maintainers; [ AndersonTorres Profpatsch ];
     platforms = platforms.linux;
diff --git a/pkgs/applications/misc/llpp/default.nix b/pkgs/applications/misc/llpp/default.nix
index 25f9b10b1e85..e2ec64932ff2 100644
--- a/pkgs/applications/misc/llpp/default.nix
+++ b/pkgs/applications/misc/llpp/default.nix
@@ -48,7 +48,7 @@ stdenv.mkDerivation rec {
   '';
 
   meta = with stdenv.lib; {
-    homepage = https://repo.or.cz/w/llpp.git;
+    homepage = "https://repo.or.cz/w/llpp.git";
     description = "A MuPDF based PDF pager written in OCaml";
     platforms = platforms.linux;
     maintainers = with maintainers; [ pSub enzime ];
diff --git a/pkgs/applications/misc/loxodo/default.nix b/pkgs/applications/misc/loxodo/default.nix
index 846df292eb1a..4b201c66fe5e 100644
--- a/pkgs/applications/misc/loxodo/default.nix
+++ b/pkgs/applications/misc/loxodo/default.nix
@@ -30,7 +30,7 @@ py.buildPythonApplication {
 
   meta = with stdenv.lib; {
     description = "A Password Safe V3 compatible password vault";
-    homepage = https://www.christoph-sommer.de/loxodo/;
+    homepage = "https://www.christoph-sommer.de/loxodo/";
     license = licenses.gpl2Plus;
     platforms = platforms.linux;
   };
diff --git a/pkgs/applications/misc/ltwheelconf/default.nix b/pkgs/applications/misc/ltwheelconf/default.nix
index 61151cb15506..2ceb8e91def8 100644
--- a/pkgs/applications/misc/ltwheelconf/default.nix
+++ b/pkgs/applications/misc/ltwheelconf/default.nix
@@ -20,7 +20,7 @@ stdenv.mkDerivation {
   '';
 
   meta = with stdenv.lib; {
-    homepage = https://github.com/thk/LTWheelConf;
+    homepage = "https://github.com/thk/LTWheelConf";
     description = "Logitech wheels configuration tool";
     license = licenses.gpl3;
     maintainers = [ maintainers.ebzzry ];
diff --git a/pkgs/applications/misc/lutris/chrootenv.nix b/pkgs/applications/misc/lutris/chrootenv.nix
index a3a5d0ce751a..4505432b236d 100644
--- a/pkgs/applications/misc/lutris/chrootenv.nix
+++ b/pkgs/applications/misc/lutris/chrootenv.nix
@@ -92,9 +92,9 @@ in buildFHSUserEnv {
   multiPkgs = pkgs: with pkgs; [
     # Common
     libsndfile libtheora libogg libvorbis libopus libGLU libpcap libpulseaudio
-    libao libusb libevdev udev libgcrypt libxml2 libusb libpng libmpeg2 libv4l
+    libao libevdev udev libgcrypt libxml2 libusb-compat-0_1 libpng libmpeg2 libv4l
     libjpeg libxkbcommon libass libcdio libjack2 libsamplerate libzip libmad libaio
-    libcap libtiff libva libgphoto2 libxslt libtxc_dxtn libsndfile giflib zlib glib
+    libcap libtiff libva libgphoto2 libxslt libsndfile giflib zlib glib
     alsaLib zziplib bash dbus keyutils zip cabextract freetype unzip coreutils
     readline gcc SDL SDL2 curl graphite2 gtk2 gtk3 udev ncurses wayland libglvnd
     vulkan-loader xdg_utils sqlite gnutls libbsd
@@ -103,7 +103,7 @@ in buildFHSUserEnv {
 
     # WINE
     cups lcms2 mpg123 cairo unixODBC samba4 sane-backends openldap
-    ocl-icd utillinux
+    ocl-icd utillinux libkrb5
 
     # Winetricks
     fribidi
diff --git a/pkgs/applications/misc/lutris/default.nix b/pkgs/applications/misc/lutris/default.nix
index c9ea146f063b..2ff2a82dd4fb 100644
--- a/pkgs/applications/misc/lutris/default.nix
+++ b/pkgs/applications/misc/lutris/default.nix
@@ -1,7 +1,7 @@
-{ buildPythonApplication, lib, fetchFromGitHub
-, wrapGAppsHook, gobject-introspection, gnome-desktop, libnotify, libgnome-keyring, pango
+{ buildPythonApplication, lib, fetchFromGitHub, fetchpatch
+, wrapGAppsHook, gobject-introspection, glib-networking, gnome-desktop, libnotify, libgnome-keyring, pango
 , gdk-pixbuf, atk, webkitgtk, gst_all_1
-, evdev, pyyaml, pygobject3, requests, pillow
+, dbus-python, evdev, pyyaml, pygobject3, requests, pillow
 , xrandr, pciutils, psmisc, glxinfo, vulkan-tools, xboxdrv, pulseaudio, p7zip, xgamma
 , libstrangle, wine, fluidsynth, xorgserver
 }:
@@ -31,17 +31,18 @@ let
 
 in buildPythonApplication rec {
   pname = "lutris-original";
-  version = "0.5.3";
+  version = "0.5.5";
 
   src = fetchFromGitHub {
     owner = "lutris";
     repo = "lutris";
     rev = "v${version}";
-    sha256 = "0n6xa3pnwvsvfipinrkbhxwjzfbw2cjpc9igv97nffcmpydmn5xv";
+    sha256 = "1g093g0difnkjmnm91p20issdsxn9ri4c56zzddj5wfrbmhwdfag";
   };
 
+  nativeBuildInputs = [ wrapGAppsHook ];
   buildInputs = [
-    wrapGAppsHook gobject-introspection gnome-desktop libnotify libgnome-keyring pango
+    gobject-introspection glib-networking gnome-desktop libnotify libgnome-keyring pango
     gdk-pixbuf atk webkitgtk
   ] ++ gstDeps;
 
@@ -50,7 +51,7 @@ in buildPythonApplication rec {
   ];
 
   propagatedBuildInputs = [
-    evdev pyyaml pygobject3 requests pillow
+    evdev pyyaml pygobject3 requests pillow dbus-python
   ];
 
   preCheck = "export HOME=$PWD";
@@ -63,4 +64,3 @@ in buildPythonApplication rec {
     platforms = platforms.linux;
   };
 }
-
diff --git a/pkgs/applications/misc/lxterminal/default.nix b/pkgs/applications/misc/lxterminal/default.nix
index 0802a32d92b1..8c002bd14b08 100644
--- a/pkgs/applications/misc/lxterminal/default.nix
+++ b/pkgs/applications/misc/lxterminal/default.nix
@@ -42,7 +42,7 @@ stdenv.mkDerivation {
       desktop-independent VTE-based terminal emulator for LXDE without any
       unnecessary dependencies.
     '';
-    homepage = https://wiki.lxde.org/en/LXTerminal;
+    homepage = "https://wiki.lxde.org/en/LXTerminal";
     license = stdenv.lib.licenses.gpl2;
     maintainers = [ stdenv.lib.maintainers.velovix ];
     platforms = stdenv.lib.platforms.linux;
diff --git a/pkgs/applications/misc/lyx/default.nix b/pkgs/applications/misc/lyx/default.nix
index f9d8599e329c..b96e6b2a02d5 100644
--- a/pkgs/applications/misc/lyx/default.nix
+++ b/pkgs/applications/misc/lyx/default.nix
@@ -36,7 +36,7 @@ mkDerivation rec {
 
   meta = with lib; {
     description = "WYSIWYM frontend for LaTeX, DocBook";
-    homepage = http://www.lyx.org;
+    homepage = "http://www.lyx.org";
     license = licenses.gpl2Plus;
     maintainers = [ maintainers.vcunat ];
     platforms = platforms.linux;
diff --git a/pkgs/applications/misc/madonctl/default.nix b/pkgs/applications/misc/madonctl/default.nix
index 9a134343d296..a61c66d93746 100644
--- a/pkgs/applications/misc/madonctl/default.nix
+++ b/pkgs/applications/misc/madonctl/default.nix
@@ -23,7 +23,7 @@ buildGoPackage rec {
 
   meta = with stdenv.lib; {
     description = "CLI for the Mastodon social network API";
-    homepage = https://github.com/McKael/madonctl;
+    homepage = "https://github.com/McKael/madonctl";
     license = licenses.mit;
     platforms = platforms.unix;
     maintainers = with maintainers; [ ];
diff --git a/pkgs/applications/misc/makeself/Use-rm-from-PATH.patch b/pkgs/applications/misc/makeself/Use-rm-from-PATH.patch
deleted file mode 100644
index 80b9ebf4d571..000000000000
--- a/pkgs/applications/misc/makeself/Use-rm-from-PATH.patch
+++ /dev/null
@@ -1,43 +0,0 @@
-From 81cf57e4653360af7f1718391e424fa05d8ea000 Mon Sep 17 00:00:00 2001
-From: Keshav Kini <keshav.kini@gmail.com>
-Date: Thu, 9 Aug 2018 18:36:15 -0700
-Subject: [PATCH] Use `rm` from PATH
-
-On NixOS (a Linux distribution), there is no `/bin/rm`, but an `rm`
-command will generally be available in one's path when running shell
-scripts. Here, I change a couple of invocations of `/bin/rm` into
-invocations of `rm` to deal with this issue.
-
-Since `rm` is already called elsewhere in the script without an
-absolute path, I assume this change will not cause any
-regressions. Still, I've tested this on a CentOS machine and a NixOS
-machine, though not other platforms.
----
- makeself-header.sh | 4 ++--
- 1 file changed, 2 insertions(+), 2 deletions(-)
-
-diff --git a/makeself-header.sh b/makeself-header.sh
-index 4d2c005..2babf34 100755
---- a/makeself-header.sh
-+++ b/makeself-header.sh
-@@ -515,7 +515,7 @@ if test x"\$quiet" = xn; then
- fi
- res=3
- if test x"\$keep" = xn; then
--    trap 'echo Signal caught, cleaning up >&2; cd \$TMPROOT; /bin/rm -rf "\$tmpdir"; eval \$finish; exit 15' 1 2 3 15
-+    trap 'echo Signal caught, cleaning up >&2; cd \$TMPROOT; rm -rf "\$tmpdir"; eval \$finish; exit 15' 1 2 3 15
- fi
- 
- if test x"\$nodiskspace" = xn; then
-@@ -581,7 +581,7 @@ if test x"\$script" != x; then
- fi
- if test x"\$keep" = xn; then
-     cd "\$TMPROOT"
--    /bin/rm -rf "\$tmpdir"
-+    rm -rf "\$tmpdir"
- fi
- eval \$finish; exit \$res
- EOF
--- 
-2.14.1
-
diff --git a/pkgs/applications/misc/makeself/default.nix b/pkgs/applications/misc/makeself/default.nix
index f2585f781465..6fcd86596fb3 100644
--- a/pkgs/applications/misc/makeself/default.nix
+++ b/pkgs/applications/misc/makeself/default.nix
@@ -1,22 +1,21 @@
 { stdenv, fetchFromGitHub }:
 
 stdenv.mkDerivation rec {
-  version = "2.4.0";
+  version = "2.4.2";
   pname = "makeself";
 
   src = fetchFromGitHub {
     owner = "megastep";
     repo = "makeself";
     rev = "release-${version}";
-    sha256 = "1lw3gx1zpzp2wmzrw5v7k31vfsrdzadqha9ni309fp07g8inrr9n";
+    fetchSubmodules = true;
+    sha256 = "07cq7q71bv3fwddkp2863ylry2ivds00f8sjy8npjpdbkailxm21";
   };
 
-  # backported from https://github.com/megastep/makeself/commit/77156e28ff21231c400423facc7049d9c60fd1bd
-  patches = [ ./Use-rm-from-PATH.patch ];
+  patchPhase = "patchShebangs test";
 
-  postPatch = ''
-    sed -e "s|^HEADER=.*|HEADER=$out/share/${pname}-${version}/makeself-header.sh|" -i makeself.sh
-  '';
+  doCheck = true;
+  checkTarget = "test";
 
   installPhase = ''
     mkdir -p $out/{bin,share/{${pname}-${version},man/man1}}
@@ -26,8 +25,12 @@ stdenv.mkDerivation rec {
     cp makeself-header.sh $out/share/${pname}-${version}
   '';
 
+  fixupPhase = ''
+    sed -e "s|^HEADER=.*|HEADER=$out/share/${pname}-${version}/makeself-header.sh|" -i $out/bin/makeself
+  '';
+
   meta = with stdenv.lib; {
-    homepage = http://megastep.org/makeself;
+    homepage = "http://megastep.org/makeself";
     description = "Utility to create self-extracting packages";
     license = licenses.gpl2;
     maintainers = [ maintainers.wmertens ];
diff --git a/pkgs/applications/misc/mako/default.nix b/pkgs/applications/misc/mako/default.nix
index f86effe989fa..e1b14acb46f4 100644
--- a/pkgs/applications/misc/mako/default.nix
+++ b/pkgs/applications/misc/mako/default.nix
@@ -1,6 +1,7 @@
 { stdenv, fetchFromGitHub, meson, ninja, pkgconfig, scdoc
 , systemd, pango, cairo, gdk-pixbuf
-, wayland, wayland-protocols }:
+, wayland, wayland-protocols
+, wrapGAppsHook }:
 
 stdenv.mkDerivation rec {
   pname = "mako";
@@ -13,14 +14,14 @@ stdenv.mkDerivation rec {
     sha256 = "0hwvibpnrximb628w9dsfjpi30b5jy7nfkm4d94z5vhp78p43vxh";
   };
 
-  nativeBuildInputs = [ meson ninja pkgconfig scdoc wayland-protocols ];
+  nativeBuildInputs = [ meson ninja pkgconfig scdoc wayland-protocols wrapGAppsHook ];
   buildInputs = [ systemd pango cairo gdk-pixbuf wayland ];
 
   mesonFlags = [ "-Dzsh-completions=true" ];
 
   meta = with stdenv.lib; {
     description = "A lightweight Wayland notification daemon";
-    homepage = https://wayland.emersion.fr/mako/;
+    homepage = "https://wayland.emersion.fr/mako/";
     license = licenses.mit;
     maintainers = with maintainers; [ dywedir synthetica ];
     platforms = platforms.linux;
diff --git a/pkgs/applications/misc/mapproxy/default.nix b/pkgs/applications/misc/mapproxy/default.nix
index e5826c09d77d..0261dfbe8991 100644
--- a/pkgs/applications/misc/mapproxy/default.nix
+++ b/pkgs/applications/misc/mapproxy/default.nix
@@ -57,8 +57,8 @@ buildPythonApplication rec {
   doCheck = false;
   meta = with lib; {
   description = "MapProxy is an open source proxy for geospatial data";
-  homepage = https://mapproxy.org/;
+  homepage = "https://mapproxy.org/";
   license = licenses.asl20;
   maintainers = with maintainers; [ rakesh4g ];
   };
-}
\ No newline at end of file
+}
diff --git a/pkgs/applications/misc/mdp/default.nix b/pkgs/applications/misc/mdp/default.nix
index 03f30d64fb2d..b96c4d00214b 100644
--- a/pkgs/applications/misc/mdp/default.nix
+++ b/pkgs/applications/misc/mdp/default.nix
@@ -16,7 +16,7 @@ stdenv.mkDerivation rec {
   buildInputs = [ ncurses ];
 
   meta = with stdenv.lib; {
-    homepage = https://github.com/visit1985/mdp;
+    homepage = "https://github.com/visit1985/mdp";
     description = "A command-line based markdown presentation tool";
     maintainers = with maintainers; [ matthiasbeyer vrthra ];
     license = licenses.gpl3;
diff --git a/pkgs/applications/misc/mediainfo-gui/default.nix b/pkgs/applications/misc/mediainfo-gui/default.nix
index b84bc08ddb37..79dcf1053614 100644
--- a/pkgs/applications/misc/mediainfo-gui/default.nix
+++ b/pkgs/applications/misc/mediainfo-gui/default.nix
@@ -2,11 +2,11 @@
 , desktop-file-utils, libSM, imagemagick }:
 
 stdenv.mkDerivation rec {
-  version = "19.09";
+  version = "20.03";
   pname = "mediainfo-gui";
   src = fetchurl {
     url = "https://mediaarea.net/download/source/mediainfo/${version}/mediainfo_${version}.tar.xz";
-    sha256 = "1a2ssklg12sjsw09y8my9kf35mizi3zj7w002nspcmw28apb1x82";
+    sha256 = "1f1shnycf0f1fwka9k9s250l228xjkg0k4k73h8bpld8msighgnw";
   };
 
   nativeBuildInputs = [ autoreconfHook pkgconfig ];
@@ -23,7 +23,7 @@ stdenv.mkDerivation rec {
       MediaInfo is a convenient unified display of the most relevant technical
       and tag data for video and audio files.
     '';
-    homepage = https://mediaarea.net/;
+    homepage = "https://mediaarea.net/";
     license = licenses.bsd2;
     platforms = platforms.linux;
     maintainers = [ maintainers.devhell ];
diff --git a/pkgs/applications/misc/mediainfo/default.nix b/pkgs/applications/misc/mediainfo/default.nix
index f084d17e3896..1ed1ef4afb53 100644
--- a/pkgs/applications/misc/mediainfo/default.nix
+++ b/pkgs/applications/misc/mediainfo/default.nix
@@ -1,11 +1,11 @@
 { stdenv, fetchurl, autoreconfHook, pkgconfig, libzen, libmediainfo, zlib }:
 
 stdenv.mkDerivation rec {
-  version = "19.09";
+  version = "20.03";
   pname = "mediainfo";
   src = fetchurl {
     url = "https://mediaarea.net/download/source/mediainfo/${version}/mediainfo_${version}.tar.xz";
-    sha256 = "1a2ssklg12sjsw09y8my9kf35mizi3zj7w002nspcmw28apb1x82";
+    sha256 = "1f1shnycf0f1fwka9k9s250l228xjkg0k4k73h8bpld8msighgnw";
   };
 
   nativeBuildInputs = [ autoreconfHook pkgconfig ];
@@ -23,7 +23,7 @@ stdenv.mkDerivation rec {
       MediaInfo is a convenient unified display of the most relevant technical
       and tag data for video and audio files.
     '';
-    homepage = https://mediaarea.net/;
+    homepage = "https://mediaarea.net/";
     license = licenses.bsd2;
     platforms = platforms.unix;
     maintainers = [ maintainers.devhell ];
diff --git a/pkgs/applications/misc/megacmd/default.nix b/pkgs/applications/misc/megacmd/default.nix
index 9fe810e41477..07d194dbff42 100644
--- a/pkgs/applications/misc/megacmd/default.nix
+++ b/pkgs/applications/misc/megacmd/default.nix
@@ -22,13 +22,13 @@
 
 stdenv.mkDerivation rec {
   pname = "megacmd";
-  version = "1.1.0";
+  version = "1.2.0";
 
   src = fetchFromGitHub {
     owner = "meganz";
     repo = "MEGAcmd";
     rev = "${version}_Linux";
-    sha256 = "004j8m3xs6slx03g2g6wzr97myl2v3zc09wxnfar5c62a625pd53";
+    sha256 = "0czyhsms0a0237d6h9b21n9p4nm4zkjanhhbvw26k6266g6c1nyr";
     fetchSubmodules = true;
   };
 
@@ -80,7 +80,7 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "MEGA Command Line Interactive and Scriptable Application";
-    homepage    = https://mega.nz/;
+    homepage    = "https://mega.nz/";
     license     = licenses.unfree;
     platforms   = [ "i686-linux" "x86_64-linux" ];
     maintainers = [ maintainers.wedens ];
diff --git a/pkgs/applications/misc/megasync/default.nix b/pkgs/applications/misc/megasync/default.nix
index 6e51e3cda762..3a26def26c91 100644
--- a/pkgs/applications/misc/megasync/default.nix
+++ b/pkgs/applications/misc/megasync/default.nix
@@ -1,50 +1,22 @@
-{ stdenv
-, autoconf
-, automake
-, c-ares
-, cryptopp
-, curl
-, doxygen
-, fetchFromGitHub
-, ffmpeg
-, libmediainfo
-, libraw
-, libsodium
-, libtool
-, libuv
-, libzen
-, lsb-release
-, mkDerivation
-, pkgconfig
-, qtbase
-, qttools
-, sqlite
-, swig
-, unzip
-, wget
-}:
+{ stdenv, autoconf, automake, c-ares, cryptopp, curl, doxygen, fetchFromGitHub
+, fetchpatch, ffmpeg, libmediainfo, libraw, libsodium, libtool, libuv, libzen
+, lsb-release, mkDerivation, pkgconfig, qtbase, qttools, sqlite, swig, unzip
+, wget }:
 
 mkDerivation rec {
   pname = "megasync";
-  version = "4.2.3.0";
+  version = "4.3.0.8";
 
   src = fetchFromGitHub {
     owner = "meganz";
     repo = "MEGAsync";
     rev = "v${version}_Linux";
-    sha256 = "0l4yfrxjb62vc9dnlzy8rjqi68ga1bys5x5rfzs40daw13yf1adv";
+    sha256 = "1rhxkc6j3039rcsi8cxy3n00g6w7acir82ymnksbpsnp4yxqv5r3";
     fetchSubmodules = true;
   };
 
-  nativeBuildInputs = [
-    autoconf
-    automake
-    doxygen
-    lsb-release
-    pkgconfig
-    qttools
-    swig
-  ];
+  nativeBuildInputs =
+    [ autoconf automake doxygen lsb-release pkgconfig qttools swig ];
   buildInputs = [
     c-ares
     cryptopp
@@ -85,21 +57,21 @@ mkDerivation rec {
   '';
 
   configureFlags = [
-          "--disable-examples"
-          "--disable-java"
-          "--disable-php"
-          "--enable-chat"
-          "--with-cares"
-          "--with-cryptopp"
-          "--with-curl"
-          "--with-ffmpeg"
-          "--without-freeimage"  # unreferenced even when found
-          "--without-readline"
-          "--without-termcap"
-          "--with-sodium"
-          "--with-sqlite"
-          "--with-zlib"
-    ];
+    "--disable-examples"
+    "--disable-java"
+    "--disable-php"
+    "--enable-chat"
+    "--with-cares"
+    "--with-cryptopp"
+    "--with-curl"
+    "--with-ffmpeg"
+    "--without-freeimage" # unreferenced even when found
+    "--without-readline"
+    "--without-termcap"
+    "--with-sodium"
+    "--with-sqlite"
+    "--with-zlib"
+  ];
 
   postConfigure = ''
     cd ../..
@@ -114,10 +86,11 @@ mkDerivation rec {
   '';
 
   meta = with stdenv.lib; {
-    description = "Easy automated syncing between your computers and your MEGA Cloud Drive";
-    homepage    = https://mega.nz/;
-    license     = licenses.unfree;
-    platforms   = [ "i686-linux" "x86_64-linux" ];
+    description =
+      "Easy automated syncing between your computers and your MEGA Cloud Drive";
+    homepage = "https://mega.nz/";
+    license = licenses.unfree;
+    platforms = [ "i686-linux" "x86_64-linux" ];
     maintainers = [ maintainers.michojel ];
   };
 }
diff --git a/pkgs/applications/misc/memo/default.nix b/pkgs/applications/misc/memo/default.nix
index 3749f568aef2..66fe0d7207c2 100644
--- a/pkgs/applications/misc/memo/default.nix
+++ b/pkgs/applications/misc/memo/default.nix
@@ -43,8 +43,8 @@ stdenv.mkDerivation rec {
       A simple tool written in bash to memorize stuff.
       Memo organizes is structured through topics which are folders in ~/memo.
     '';
-    homepage = http://palovandalo.com/memo/;
-    downloadPage = https://github.com/mrVanDalo/memo/releases;
+    homepage = "http://palovandalo.com/memo/";
+    downloadPage = "https://github.com/mrVanDalo/memo/releases";
     license = stdenv.lib.licenses.gpl3;
     maintainers = [ stdenv.lib.maintainers.mrVanDalo ];
     platforms = stdenv.lib.platforms.all;
diff --git a/pkgs/applications/misc/menumaker/default.nix b/pkgs/applications/misc/menumaker/default.nix
index e06f2a88ade4..22cf63e536c7 100644
--- a/pkgs/applications/misc/menumaker/default.nix
+++ b/pkgs/applications/misc/menumaker/default.nix
@@ -13,7 +13,7 @@ pythonPackages.buildPythonApplication rec {
 
   meta = with stdenv.lib; {
     description = "Heuristics-driven menu generator for several window managers";
-    homepage = http://menumaker.sourceforge.net;
+    homepage = "http://menumaker.sourceforge.net";
     license = licenses.bsd2;
     platforms = platforms.unix;
     maintainers = [ maintainers.romildo ];
diff --git a/pkgs/applications/misc/merkaartor/default.nix b/pkgs/applications/misc/merkaartor/default.nix
index 08643577b49e..79ee45b4c1c4 100644
--- a/pkgs/applications/misc/merkaartor/default.nix
+++ b/pkgs/applications/misc/merkaartor/default.nix
@@ -27,7 +27,7 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "OpenStreetMap editor";
-    homepage = http://merkaartor.be/;
+    homepage = "http://merkaartor.be/";
     license = licenses.gpl2Plus;
     maintainers = with maintainers; [ ];
   };
diff --git a/pkgs/applications/misc/metar/default.nix b/pkgs/applications/misc/metar/default.nix
index ca4f91533ecf..f5185c639873 100644
--- a/pkgs/applications/misc/metar/default.nix
+++ b/pkgs/applications/misc/metar/default.nix
@@ -12,7 +12,7 @@ stdenv.mkDerivation {
   buildInputs = [ curl ];
 
   meta = with stdenv.lib; {
-    homepage = https://github.com/keesL/metar;
+    homepage = "https://github.com/keesL/metar";
     license = licenses.gpl2;
     maintainers = [ maintainers.zalakain ];
     description = "Downloads weather reports and optionally decodes them";
diff --git a/pkgs/applications/misc/microcom/default.nix b/pkgs/applications/misc/microcom/default.nix
new file mode 100644
index 000000000000..8377505ec1c5
--- /dev/null
+++ b/pkgs/applications/misc/microcom/default.nix
@@ -0,0 +1,29 @@
+{ stdenv,
+  lib,
+  fetchFromGitHub,
+  readline,
+  autoreconfHook }:
+
+stdenv.mkDerivation rec {
+  pname = "microcom";
+  version = "2019.01.0";
+
+  src = fetchFromGitHub {
+    owner = "pengutronix";
+    repo = pname;
+    rev = "v${version}";
+    sha256 = "056v28hvagnzns6p8i3bq8609k82d3w1ab2lab5dr4cdfwhs4pqj";
+  };
+
+  nativeBuildInputs = [ autoreconfHook ];
+  buildInputs = [ readline ];
+
+  meta = with lib; {
+    description = "A minimalistic terminal program for communicating
+    with devices over a serial connection";
+    inherit (src.meta) homepage;
+    license = licenses.gpl2;
+    maintainers = with maintainers; [ emantor ];
+    platforms = with platforms; linux;
+  };
+}
diff --git a/pkgs/applications/misc/milu/default.nix b/pkgs/applications/misc/milu/default.nix
index 2eee9ad40c16..84cc0e0bc8dc 100644
--- a/pkgs/applications/misc/milu/default.nix
+++ b/pkgs/applications/misc/milu/default.nix
@@ -31,7 +31,7 @@ stdenv.mkDerivation {
 
   meta = {
     description = "Higher Order Mutation Testing Tool for C and C++ programs";
-    homepage = https://github.com/yuejia/Milu;
+    homepage = "https://github.com/yuejia/Milu";
     license = stdenv.lib.licenses.bsd2;
     platforms = stdenv.lib.platforms.linux;
     maintainers = [ stdenv.lib.maintainers.vrthra ];
diff --git a/pkgs/applications/misc/minder/default.nix b/pkgs/applications/misc/minder/default.nix
index 7b6be997ffa0..0b3d65e21e37 100644
--- a/pkgs/applications/misc/minder/default.nix
+++ b/pkgs/applications/misc/minder/default.nix
@@ -8,13 +8,13 @@
 
 stdenv.mkDerivation rec {
   pname = "minder";
-  version = "1.6.0";
+  version = "1.7.3";
 
   src = fetchFromGitHub {
     owner = "phase1geo";
     repo = pname;
     rev = version;
-    sha256 = "0zma6hjx0068ih7fagb1gg5cgci0ccc764sd8qw6iglg61aihpx7";
+    sha256 = "00lkb1w536jyhka2znxmgbyss13j4h75yvl42z4hlgz31wljcin4";
   };
 
   nativeBuildInputs = [ pkgconfig meson ninja python3 wrapGAppsHook vala shared-mime-info ];
diff --git a/pkgs/applications/misc/minergate-cli/default.nix b/pkgs/applications/misc/minergate-cli/default.nix
index eff93c8e99c1..61b900c40122 100644
--- a/pkgs/applications/misc/minergate-cli/default.nix
+++ b/pkgs/applications/misc/minergate-cli/default.nix
@@ -28,7 +28,7 @@ stdenv.mkDerivation {
 
   meta = with stdenv.lib; {
     description = "Minergate CPU/GPU console client mining software";
-    homepage = https://www.minergate.com/;
+    homepage = "https://www.minergate.com/";
     license = licenses.unfree;
     maintainers = with maintainers; [ bfortz ];
     platforms = [ "x86_64-linux" ];
diff --git a/pkgs/applications/misc/minergate/default.nix b/pkgs/applications/misc/minergate/default.nix
index a8402d975931..6fbe39c4da2d 100644
--- a/pkgs/applications/misc/minergate/default.nix
+++ b/pkgs/applications/misc/minergate/default.nix
@@ -28,7 +28,7 @@ stdenv.mkDerivation {
 
   meta = with stdenv.lib; {
     description = "Minergate CPU/GPU mining software";
-    homepage = https://www.minergate.com/;
+    homepage = "https://www.minergate.com/";
     license = licenses.unfree;
     maintainers = with maintainers; [ bfortz ];
     platforms = [ "x86_64-linux" ];
diff --git a/pkgs/applications/misc/mlterm/default.nix b/pkgs/applications/misc/mlterm/default.nix
index b2012801e170..f58fb13e61f0 100644
--- a/pkgs/applications/misc/mlterm/default.nix
+++ b/pkgs/applications/misc/mlterm/default.nix
@@ -7,11 +7,11 @@
 
 stdenv.mkDerivation rec {
   pname = "mlterm";
-  version = "3.8.9";
+  version = "3.9.0";
 
   src = fetchurl {
     url = "mirror://sourceforge/project/mlterm/01release/${pname}-${version}/${pname}-${version}.tar.gz";
-    sha256 = "1iy7wq953gcnygr1d04h5ddvhpmy8l575n5is2w0rj3ck31ihpqd";
+    sha256 = "17h6j4nmbyvsx2shm8mqm7smzq9i7mbqxjw19c2m0rhf5yzqhr3k";
   };
 
   nativeBuildInputs = [ pkgconfig autoconf ];
@@ -85,7 +85,7 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "Multi Lingual TERMinal emulator on X11";
-    homepage = http://mlterm.sourceforge.net/;
+    homepage = "http://mlterm.sourceforge.net/";
     license = licenses.bsd3;
     maintainers = with maintainers; [ vrthra ramkromberg ];
     platforms = with platforms; linux;
diff --git a/pkgs/applications/misc/moolticute/default.nix b/pkgs/applications/misc/moolticute/default.nix
index e3154b7cd1cd..6a1521764156 100644
--- a/pkgs/applications/misc/moolticute/default.nix
+++ b/pkgs/applications/misc/moolticute/default.nix
@@ -9,13 +9,13 @@
 
 mkDerivation rec {
   pname = "moolticute";
-  version = "0.42.32-testing";
+  version = "0.43.16";
 
   src = fetchFromGitHub {
     owner = "mooltipass";
     repo = pname;
     rev = "v${version}";
-    sha256 = "1kx1p2h65dilj1pbzf36d1mxwym19kvln1sqg8fb7na8q7lk4b05";
+    sha256 = "1gx1hbxiilggwfw0jspyk2cw92r6qs9a8yqa8x1d2ndf493mjx9y";
   };
 
   outputs = [ "out" "udev" ];
diff --git a/pkgs/applications/misc/moonlight-embedded/default.nix b/pkgs/applications/misc/moonlight-embedded/default.nix
index 08f510a2840e..328e106694b2 100644
--- a/pkgs/applications/misc/moonlight-embedded/default.nix
+++ b/pkgs/applications/misc/moonlight-embedded/default.nix
@@ -27,7 +27,7 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "Open source implementation of NVIDIA's GameStream";
-    homepage = https://github.com/irtimmer/moonlight-embedded;
+    homepage = "https://github.com/irtimmer/moonlight-embedded";
     license = licenses.gpl3;
     maintainers = [ maintainers.globin ];
     platforms = platforms.linux;
diff --git a/pkgs/applications/misc/mop/default.nix b/pkgs/applications/misc/mop/default.nix
index c0d41cda02dd..81c236589654 100644
--- a/pkgs/applications/misc/mop/default.nix
+++ b/pkgs/applications/misc/mop/default.nix
@@ -24,7 +24,7 @@ buildGoPackage rec {
 
   meta = with stdenv.lib; {
     description = "Simple stock tracker implemented in go";
-    homepage =  https://github.com/mop-tracker/mop;
+    homepage =  "https://github.com/mop-tracker/mop";
     license = licenses.mit;
     platforms = platforms.all;
   };
diff --git a/pkgs/applications/misc/mpvc/default.nix b/pkgs/applications/misc/mpvc/default.nix
index 35de284c0baa..eacc4b5758c3 100644
--- a/pkgs/applications/misc/mpvc/default.nix
+++ b/pkgs/applications/misc/mpvc/default.nix
@@ -21,7 +21,7 @@ stdenv.mkDerivation {
 
   meta = with stdenv.lib; {
     description = "A mpc-like control interface for mpv";
-    homepage = https://github.com/wildefyr/mpvc;
+    homepage = "https://github.com/wildefyr/mpvc";
     license = licenses.mit;
     maintainers = [ maintainers.neeasade ];
     platforms = platforms.linux;
diff --git a/pkgs/applications/misc/mqtt-bench/default.nix b/pkgs/applications/misc/mqtt-bench/default.nix
index 0e8cc2ebcea9..1f6112d7d7bb 100644
--- a/pkgs/applications/misc/mqtt-bench/default.nix
+++ b/pkgs/applications/misc/mqtt-bench/default.nix
@@ -26,7 +26,7 @@ buildGoPackage rec {
 
   meta = with stdenv.lib; {
     description = "Mosquitto benchmark tool";
-    homepage = https://github.com/takanorig/mqtt-bench;
+    homepage = "https://github.com/takanorig/mqtt-bench";
     maintainers = with maintainers; [ disassembler ];
   };
 }
diff --git a/pkgs/applications/misc/mrxvt/default.nix b/pkgs/applications/misc/mrxvt/default.nix
index a6efb19b5774..6717fc3c97f9 100644
--- a/pkgs/applications/misc/mrxvt/default.nix
+++ b/pkgs/applications/misc/mrxvt/default.nix
@@ -23,7 +23,7 @@ stdenv.mkDerivation {
   '';
 
   src = fetchurl {
-    url = mirror://sourceforge/materm/mrxvt-0.5.4.tar.gz;
+    url = "mirror://sourceforge/materm/mrxvt-0.5.4.tar.gz";
     sha256 = "1mqhmnlz32lvld9rc6c1hyz7gjw4anwf39yhbsjkikcgj1das0zl";
   };
 
@@ -33,7 +33,7 @@ stdenv.mkDerivation {
     	Multitabbed lightweight terminal emulator based on rxvt. 
 	Supports transparency, backgroundimages, freetype fonts, ...
     ";
-    homepage = https://sourceforge.net/projects/materm;
+    homepage = "https://sourceforge.net/projects/materm";
     license = "GPL";
     platforms = stdenv.lib.platforms.linux;
   };
diff --git a/pkgs/applications/misc/mucommander/default.nix b/pkgs/applications/misc/mucommander/default.nix
index 12a0720e4473..e598e099d065 100644
--- a/pkgs/applications/misc/mucommander/default.nix
+++ b/pkgs/applications/misc/mucommander/default.nix
@@ -77,7 +77,7 @@ in stdenv.mkDerivation {
   '';
 
   meta = with stdenv.lib; {
-    homepage = http://www.mucommander.com/;
+    homepage = "http://www.mucommander.com/";
     description = "Cross-platform file manager";
     license = licenses.gpl3;
     maintainers = with maintainers; [ volth ];
diff --git a/pkgs/applications/misc/multibootusb/default.nix b/pkgs/applications/misc/multibootusb/default.nix
index ab8802a1b691..5225f88094fd 100644
--- a/pkgs/applications/misc/multibootusb/default.nix
+++ b/pkgs/applications/misc/multibootusb/default.nix
@@ -76,7 +76,7 @@ python36Packages.buildPythonApplication rec {
 
   meta = with stdenv.lib; {
     description = "Multiboot USB creator for Linux live disks";
-    homepage = http://multibootusb.org/;
+    homepage = "http://multibootusb.org/";
     license = licenses.gpl2;
     maintainers = []; # Looking for a maintainer!
   };
diff --git a/pkgs/applications/misc/mupdf/default.nix b/pkgs/applications/misc/mupdf/default.nix
index 32c117c01738..a3067bc4af86 100644
--- a/pkgs/applications/misc/mupdf/default.nix
+++ b/pkgs/applications/misc/mupdf/default.nix
@@ -80,8 +80,8 @@ in stdenv.mkDerivation rec {
   enableParallelBuilding = true;
 
   meta = with stdenv.lib; {
-    homepage = https://mupdf.com;
-    repositories.git = git://git.ghostscript.com/mupdf.git;
+    homepage = "https://mupdf.com";
+    repositories.git = "git://git.ghostscript.com/mupdf.git";
     description = "Lightweight PDF, XPS, and E-book viewer and toolkit written in portable C";
     license = licenses.agpl3Plus;
     maintainers = with maintainers; [ vrthra fpletz ];
diff --git a/pkgs/applications/misc/mwic/default.nix b/pkgs/applications/misc/mwic/default.nix
index 249d9ff1d400..3be02e7c41c2 100644
--- a/pkgs/applications/misc/mwic/default.nix
+++ b/pkgs/applications/misc/mwic/default.nix
@@ -1,12 +1,12 @@
 { stdenv, fetchurl, pythonPackages }:
 
 stdenv.mkDerivation rec {
-  version = "0.7.7";
+  version = "0.7.8";
   pname = "mwic";
 
   src = fetchurl {
     url = "https://github.com/jwilk/mwic/releases/download/${version}/${pname}-${version}.tar.gz";
-    sha256 = "0l4anwiiqclymx0awwn4hzaj8n26ycg8nz76wjphsyscn7z2awad";
+    sha256 = "0nnhziz9v523hpciylnxfajmxabh2ig5iawzwrfpf7aww70v330x";
   };
 
   makeFlags=["PREFIX=\${out}"];
@@ -22,7 +22,7 @@ stdenv.mkDerivation rec {
   '';
 
   meta = with stdenv.lib; {
-    homepage = http://jwilk.net/software/mwic;
+    homepage = "http://jwilk.net/software/mwic";
     description = "spell-checker that groups possible misspellings and shows them in their contexts";
     license = licenses.mit;
     maintainers = with maintainers; [ matthiasbeyer ];
diff --git a/pkgs/applications/misc/mysql-workbench/default.nix b/pkgs/applications/misc/mysql-workbench/default.nix
index 531f8d851f1c..03483a1a2b8a 100644
--- a/pkgs/applications/misc/mysql-workbench/default.nix
+++ b/pkgs/applications/misc/mysql-workbench/default.nix
@@ -1,27 +1,60 @@
-{ stdenv, fetchurl, substituteAll, cmake, ninja, pkgconfig
-, glibc, gtk3, gtkmm3, pcre, swig, antlr4_7, sudo
-, mysql, libxml2, libmysqlconnectorcpp
-, vsqlite, gdal, libiodbc, libpthreadstubs
-, libXdmcp, libuuid, libzip, libsecret, libssh
-, python2, jre
-, boost, libsigcxx, libX11, openssl
-, proj, cairo, libxkbcommon, epoxy, wrapGAppsHook
-, at-spi2-core, dbus, bash, coreutils
+{ stdenv
+, fetchurl
+, substituteAll
+, cmake
+, ninja
+, pkgconfig
+, glibc
+, gtk3
+, gtkmm3
+, pcre
+, swig
+, antlr4_7
+, sudo
+, mysql
+, libxml2
+, libmysqlconnectorcpp
+, vsqlite
+, gdal
+, libiodbc
+, libpthreadstubs
+, libXdmcp
+, libuuid
+, libzip
+, libsecret
+, libssh
+, python2
+, jre
+, boost
+, libsigcxx
+, libX11
+, openssl
+, rapidjson
+, proj
+, cairo
+, libxkbcommon
+, epoxy
+, wrapGAppsHook
+, at-spi2-core
+, dbus
+, bash
+, coreutils
 }:
 
 let
   inherit (python2.pkgs) paramiko pycairo pyodbc;
 in stdenv.mkDerivation rec {
   pname = "mysql-workbench";
-  version = "8.0.15";
+  version = "8.0.19";
 
   src = fetchurl {
     url = "http://dev.mysql.com/get/Downloads/MySQLGUITools/mysql-workbench-community-${version}-src.tar.gz";
-    sha256 = "0ca93azasya5xiw6j2map8drmxf445qqydpvrb512kjfqdiv67x6";
+    sha256 = "unrszSK+tKcARSHxRSAAos+jDtYxdDcSnFENixaDJsw=";
   };
 
   patches = [
     ./fix-gdal-includes.patch
+
     (substituteAll {
       src = ./hardcode-paths.patch;
       catchsegv = "${glibc.bin}/bin/catchsegv";
@@ -35,6 +68,13 @@ in stdenv.mkDerivation rec {
       rmdir = "${coreutils}/bin/rmdir";
       sudo = "${sudo}/bin/sudo";
     })
+
+    # Fix swig not being able to find headers
+    # https://github.com/NixOS/nixpkgs/pull/82362#issuecomment-597948461
+    (substituteAll {
+      src = ./fix-swig-build.patch;
+      cairoDev = "${cairo.dev}";
+    })
   ];
 
   # have it look for 4.7.2 instead of 4.7.1
@@ -44,31 +84,68 @@ in stdenv.mkDerivation rec {
   '';
 
   nativeBuildInputs = [
-    cmake ninja pkgconfig jre swig wrapGAppsHook
+    cmake
+    ninja
+    pkgconfig
+    jre
+    swig
+    wrapGAppsHook
   ];
 
   buildInputs = [
-    gtk3 gtkmm3 libX11 antlr4_7.runtime.cpp python2 mysql libxml2
-    libmysqlconnectorcpp vsqlite gdal boost libssh openssl
-    libiodbc pcre cairo libuuid libzip libsecret
-    libsigcxx proj
+    gtk3
+    gtkmm3
+    libX11
+    antlr4_7.runtime.cpp
+    python2
+    mysql
+    libxml2
+    libmysqlconnectorcpp
+    vsqlite
+    gdal
+    boost
+    libssh
+    openssl
+    rapidjson
+    libiodbc
+    pcre
+    cairo
+    libuuid
+    libzip
+    libsecret
+    libsigcxx
+    proj
+
     # python dependencies:
-    paramiko pycairo pyodbc # sqlanydb
+    paramiko
+    pycairo
+    pyodbc
+    # TODO: package sqlanydb and add it here
+
     # transitive dependencies:
-    libpthreadstubs libXdmcp libxkbcommon epoxy at-spi2-core dbus
+    libpthreadstubs
+    libXdmcp
+    libxkbcommon
+    epoxy
+    at-spi2-core
+    dbus
   ];
 
   postPatch = ''
     patchShebangs tools/get_wb_version.sh
   '';
 
-    # error: 'OGRErr OGRSpatialReference::importFromWkt(char**)' is deprecated
+  # error: 'OGRErr OGRSpatialReference::importFromWkt(char**)' is deprecated
   NIX_CFLAGS_COMPILE = "-Wno-error=deprecated-declarations";
 
   cmakeFlags = [
     "-DMySQL_CONFIG_PATH=${mysql}/bin/mysql_config"
     "-DIODBC_CONFIG_PATH=${libiodbc}/bin/iodbc-config"
     "-DWITH_ANTLR_JAR=${antlr4_7.jarLocation}"
+    # mysql-workbench 8.0.19 depends on libmysqlconnectorcpp 1.1.8.
+    # Newer versions of connector still provide the legacy library when enabled
+    # but the headers are in a different location.
+    "-DMySQLCppConn_INCLUDE_DIR=${libmysqlconnectorcpp}/include/jdbc"
   ];
 
   # There is already an executable and a wrapper in bindir
@@ -104,7 +181,7 @@ in stdenv.mkDerivation rec {
       and execute SQL queries.
     '';
 
-    homepage = http://wb.mysql.com/;
+    homepage = "http://wb.mysql.com/";
     license = licenses.gpl2;
     maintainers = [ maintainers.kkallio ];
     platforms = platforms.linux;
diff --git a/pkgs/applications/misc/mysql-workbench/fix-swig-build.patch b/pkgs/applications/misc/mysql-workbench/fix-swig-build.patch
new file mode 100644
index 000000000000..ace1e5add43f
--- /dev/null
+++ b/pkgs/applications/misc/mysql-workbench/fix-swig-build.patch
@@ -0,0 +1,12 @@
+--- a/library/forms/swig/CMakeLists.txt
++++ b/library/forms/swig/CMakeLists.txt
+@@ -57,7 +57,7 @@
+ 
+ set(CMAKE_SWIG_FLAGS -w312)
+ set_source_files_properties(cairo.i PROPERTIES CPLUSPLUS ON)
+-set_property(SOURCE cairo.i PROPERTY SWIG_FLAGS -DCAIRO_HAS_PNG_FUNCTIONS=1 -fcompact -DSWIG_PYTHON_LEGACY_BOOL -I/usr/include)
++set_property(SOURCE cairo.i PROPERTY SWIG_FLAGS -DCAIRO_HAS_PNG_FUNCTIONS=1 -fcompact -DSWIG_PYTHON_LEGACY_BOOL -I@cairoDev@/include)
+ if(CMAKE_VERSION VERSION_LESS 3.8)
+   swig_add_module(cairo python cairo.i)
+ else()
+
diff --git a/pkgs/applications/misc/mystem/default.nix b/pkgs/applications/misc/mystem/default.nix
index 6a6c95b6572d..27caef9ea2eb 100644
--- a/pkgs/applications/misc/mystem/default.nix
+++ b/pkgs/applications/misc/mystem/default.nix
@@ -18,7 +18,7 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "Morphological analysis of Russian text";
-    homepage = https://yandex.ru/dev/mystem/;
+    homepage = "https://yandex.ru/dev/mystem/";
     license = licenses.unfreeRedistributable;
     maintainers = with maintainers; [ abbradar ];
     platforms = [ "x86_64-linux" ];
diff --git a/pkgs/applications/misc/nanoblogger/default.nix b/pkgs/applications/misc/nanoblogger/default.nix
index b4d97c368ea2..cf7689367bd3 100644
--- a/pkgs/applications/misc/nanoblogger/default.nix
+++ b/pkgs/applications/misc/nanoblogger/default.nix
@@ -23,7 +23,7 @@ stdenv.mkDerivation rec {
 
   meta = {
     description = "Small weblog engine written in Bash for the command line";
-    homepage = http://nanoblogger.sourceforge.net/;
+    homepage = "http://nanoblogger.sourceforge.net/";
     license = stdenv.lib.licenses.gpl2;
     platforms = stdenv.lib.platforms.unix;
   };
diff --git a/pkgs/applications/misc/navipowm/default.nix b/pkgs/applications/misc/navipowm/default.nix
index 9a40e3bc1053..80c455f41a0e 100644
--- a/pkgs/applications/misc/navipowm/default.nix
+++ b/pkgs/applications/misc/navipowm/default.nix
@@ -3,7 +3,7 @@ stdenv.mkDerivation rec {
   name = "navipowm-0.2.4";
 
   src = fetchurl {
-    url = mirror://sourceforge/navipowm/NaviPOWM-0.2.4.tar.gz;
+    url = "mirror://sourceforge/navipowm/NaviPOWM-0.2.4.tar.gz";
     sha256 = "1kdih8kwpgcgfh6l6njkr9gq2j5hv39xvzmzgvhip553kn6bss7b";
   };
 
@@ -22,7 +22,7 @@ stdenv.mkDerivation rec {
   nativeBuildInputs = [ qmake4Hook ];
 
   meta = {
-    homepage = http://navipowm.sourceforge.net/;
+    homepage = "http://navipowm.sourceforge.net/";
     description = "Car navigation system";
     license = stdenv.lib.licenses.gpl2;
     maintainers = with stdenv.lib.maintainers; [ ];
diff --git a/pkgs/applications/misc/navit/default.nix b/pkgs/applications/misc/navit/default.nix
index 2263dfc1fbc0..099bcbfb25df 100644
--- a/pkgs/applications/misc/navit/default.nix
+++ b/pkgs/applications/misc/navit/default.nix
@@ -81,7 +81,7 @@ stdenv.mkDerivation rec {
   '';
 
   meta = {
-    homepage = https://www.navit-project.org;
+    homepage = "https://www.navit-project.org";
     description = "Car navigation system with routing engine using OSM maps";
     license = licenses.gpl2;
     maintainers = [ maintainers.genesis ];
diff --git a/pkgs/applications/misc/neap/default.nix b/pkgs/applications/misc/neap/default.nix
index 4104d35cf10c..992a3c0248a0 100644
--- a/pkgs/applications/misc/neap/default.nix
+++ b/pkgs/applications/misc/neap/default.nix
@@ -36,7 +36,7 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "Systray workspace pager";
-    homepage = https://github.com/vzxwco/neap;
+    homepage = "https://github.com/vzxwco/neap";
     license = licenses.bsd2;
     platforms = platforms.unix;
     maintainers = [ maintainers.romildo ];
diff --git a/pkgs/applications/misc/netsurf/browser/default.nix b/pkgs/applications/misc/netsurf/browser/default.nix
index c1ba5ba23b1e..f2fdd01215d6 100644
--- a/pkgs/applications/misc/netsurf/browser/default.nix
+++ b/pkgs/applications/misc/netsurf/browser/default.nix
@@ -81,7 +81,7 @@ stdenv.mkDerivation rec {
   ];
 
   meta = with stdenv.lib; {
-    homepage = http://www.netsurf-browser.org/;
+    homepage = "http://www.netsurf-browser.org/";
     description = "Free opensource web browser";
     license = licenses.gpl2;
     maintainers = [ maintainers.vrthra ];
diff --git a/pkgs/applications/misc/netsurf/buildsystem/default.nix b/pkgs/applications/misc/netsurf/buildsystem/default.nix
index 0560b1d25b3e..9d690546102a 100644
--- a/pkgs/applications/misc/netsurf/buildsystem/default.nix
+++ b/pkgs/applications/misc/netsurf/buildsystem/default.nix
@@ -15,7 +15,7 @@ stdenv.mkDerivation rec {
   ];
 
   meta = with stdenv.lib; {
-    homepage = http://www.netsurf-browser.org/;
+    homepage = "http://www.netsurf-browser.org/";
     description = "Build system for netsurf browser";
     license = licenses.gpl2;
     maintainers = [ maintainers.vrthra ];
diff --git a/pkgs/applications/misc/netsurf/libcss/default.nix b/pkgs/applications/misc/netsurf/libcss/default.nix
index ed0b7b12e984..528b0d9b9585 100644
--- a/pkgs/applications/misc/netsurf/libcss/default.nix
+++ b/pkgs/applications/misc/netsurf/libcss/default.nix
@@ -30,7 +30,7 @@ stdenv.mkDerivation rec {
   NIX_CFLAGS_COMPILE= "-Wno-error=implicit-fallthrough";
 
   meta = with stdenv.lib; {
-    homepage = http://www.netsurf-browser.org/;
+    homepage = "http://www.netsurf-browser.org/";
     description = "Cascading Style Sheets library for netsurf browser";
     license = licenses.gpl2;
     maintainers = [ maintainers.vrthra ];
diff --git a/pkgs/applications/misc/netsurf/libdom/default.nix b/pkgs/applications/misc/netsurf/libdom/default.nix
index de92219e7f97..8dde3e336cdb 100644
--- a/pkgs/applications/misc/netsurf/libdom/default.nix
+++ b/pkgs/applications/misc/netsurf/libdom/default.nix
@@ -30,7 +30,7 @@ stdenv.mkDerivation rec {
   ];
 
   meta = with stdenv.lib; {
-    homepage = http://www.netsurf-browser.org/;
+    homepage = "http://www.netsurf-browser.org/";
     description = "Document Object Model library for netsurf browser";
     license = licenses.gpl2;
     maintainers = [ maintainers.vrthra ];
diff --git a/pkgs/applications/misc/netsurf/libhubbub/default.nix b/pkgs/applications/misc/netsurf/libhubbub/default.nix
index 03ee66fc5987..7cfd0a935f3d 100644
--- a/pkgs/applications/misc/netsurf/libhubbub/default.nix
+++ b/pkgs/applications/misc/netsurf/libhubbub/default.nix
@@ -26,7 +26,7 @@ stdenv.mkDerivation rec {
   ];
 
   meta = with stdenv.lib; {
-    homepage = http://www.netsurf-browser.org/;
+    homepage = "http://www.netsurf-browser.org/";
     description = "HTML5 parser library for netsurf browser";
     license = licenses.gpl2;
     maintainers = [ maintainers.vrthra ];
diff --git a/pkgs/applications/misc/netsurf/libnsbmp/default.nix b/pkgs/applications/misc/netsurf/libnsbmp/default.nix
index b0fb18c89b1a..a553eb3e7153 100644
--- a/pkgs/applications/misc/netsurf/libnsbmp/default.nix
+++ b/pkgs/applications/misc/netsurf/libnsbmp/default.nix
@@ -24,7 +24,7 @@ stdenv.mkDerivation rec {
   ];
 
   meta = with stdenv.lib; {
-    homepage = http://www.netsurf-browser.org/;
+    homepage = "http://www.netsurf-browser.org/";
     description = "BMP Decoder for netsurf browser";
     license = licenses.gpl2;
     maintainers = [ maintainers.vrthra ];
diff --git a/pkgs/applications/misc/netsurf/libnsfb/default.nix b/pkgs/applications/misc/netsurf/libnsfb/default.nix
index 29b0a7867db2..4e56ce7f5a12 100644
--- a/pkgs/applications/misc/netsurf/libnsfb/default.nix
+++ b/pkgs/applications/misc/netsurf/libnsfb/default.nix
@@ -23,7 +23,7 @@ stdenv.mkDerivation rec {
   ];
 
   meta = with stdenv.lib; {
-    homepage = http://www.netsurf-browser.org/;
+    homepage = "http://www.netsurf-browser.org/";
     description = "CSS parser and selection library for netsurf browser";
     license = licenses.gpl2;
     maintainers = [ maintainers.vrthra ];
diff --git a/pkgs/applications/misc/netsurf/libnsgif/default.nix b/pkgs/applications/misc/netsurf/libnsgif/default.nix
index e826dee0d252..8bb67df70da9 100644
--- a/pkgs/applications/misc/netsurf/libnsgif/default.nix
+++ b/pkgs/applications/misc/netsurf/libnsgif/default.nix
@@ -22,7 +22,7 @@ stdenv.mkDerivation rec {
   ];
 
   meta = with stdenv.lib; {
-    homepage = http://www.netsurf-browser.org/;
+    homepage = "http://www.netsurf-browser.org/";
     description = "GIF Decoder for netsurf browser";
     license = licenses.gpl2;
     maintainers = [ maintainers.vrthra ];
diff --git a/pkgs/applications/misc/netsurf/libnslog/default.nix b/pkgs/applications/misc/netsurf/libnslog/default.nix
index 497630c9aa65..43b4622ab03a 100644
--- a/pkgs/applications/misc/netsurf/libnslog/default.nix
+++ b/pkgs/applications/misc/netsurf/libnslog/default.nix
@@ -24,7 +24,7 @@ stdenv.mkDerivation rec {
   ];
 
   meta = with stdenv.lib; {
-    homepage = http://www.netsurf-browser.org/;
+    homepage = "http://www.netsurf-browser.org/";
     description = "NetSurf Parametric Logging Library";
     license = licenses.mit;
     maintainers = [ maintainers.samueldr ];
diff --git a/pkgs/applications/misc/netsurf/libnspsl/default.nix b/pkgs/applications/misc/netsurf/libnspsl/default.nix
index f0abbdc049a9..5ded38d974e0 100644
--- a/pkgs/applications/misc/netsurf/libnspsl/default.nix
+++ b/pkgs/applications/misc/netsurf/libnspsl/default.nix
@@ -24,7 +24,7 @@ stdenv.mkDerivation rec {
   ];
 
   meta = with stdenv.lib; {
-    homepage = http://www.netsurf-browser.org/;
+    homepage = "http://www.netsurf-browser.org/";
     description = "NetSurf Public Suffix List - Handling library";
     license = licenses.mit;
     maintainers = [ maintainers.samueldr ];
diff --git a/pkgs/applications/misc/netsurf/libnsutils/default.nix b/pkgs/applications/misc/netsurf/libnsutils/default.nix
index 3eaa882cb73d..6d3a3d1f104f 100644
--- a/pkgs/applications/misc/netsurf/libnsutils/default.nix
+++ b/pkgs/applications/misc/netsurf/libnsutils/default.nix
@@ -22,7 +22,7 @@ stdenv.mkDerivation rec {
   ];
 
   meta = with stdenv.lib; {
-    homepage = http://www.netsurf-browser.org/;
+    homepage = "http://www.netsurf-browser.org/";
     description = "Generalised utility library for netsurf browser";
     license = licenses.gpl2;
     maintainers = [ maintainers.vrthra ];
diff --git a/pkgs/applications/misc/netsurf/libparserutils/default.nix b/pkgs/applications/misc/netsurf/libparserutils/default.nix
index ea9d7c9ea855..9fcd5cfebf6e 100644
--- a/pkgs/applications/misc/netsurf/libparserutils/default.nix
+++ b/pkgs/applications/misc/netsurf/libparserutils/default.nix
@@ -21,7 +21,7 @@ stdenv.mkDerivation rec {
   ];
 
   meta = with stdenv.lib; {
-    homepage = http://www.netsurf-browser.org/;
+    homepage = "http://www.netsurf-browser.org/";
     description = "Parser building library for netsurf browser";
     license = licenses.gpl2;
     maintainers = [ maintainers.vrthra ];
diff --git a/pkgs/applications/misc/netsurf/libsvgtiny/default.nix b/pkgs/applications/misc/netsurf/libsvgtiny/default.nix
index 9a4f922c2b6e..b6e1b5a1667e 100644
--- a/pkgs/applications/misc/netsurf/libsvgtiny/default.nix
+++ b/pkgs/applications/misc/netsurf/libsvgtiny/default.nix
@@ -32,7 +32,7 @@ stdenv.mkDerivation rec {
   ];
 
   meta = with stdenv.lib; {
-    homepage = http://www.netsurf-browser.org/;
+    homepage = "http://www.netsurf-browser.org/";
     description = "NetSurf SVG decoder";
     license = licenses.mit;
     maintainers = [ maintainers.samueldr ];
diff --git a/pkgs/applications/misc/netsurf/libutf8proc/default.nix b/pkgs/applications/misc/netsurf/libutf8proc/default.nix
index 2144ccd33037..dcd56182e320 100644
--- a/pkgs/applications/misc/netsurf/libutf8proc/default.nix
+++ b/pkgs/applications/misc/netsurf/libutf8proc/default.nix
@@ -22,7 +22,7 @@ stdenv.mkDerivation rec {
   ];
 
   meta = with stdenv.lib; {
-    homepage = http://www.netsurf-browser.org/;
+    homepage = "http://www.netsurf-browser.org/";
     description = "UTF8 Processing library for netsurf browser";
     license = licenses.gpl2;
     maintainers = [ maintainers.vrthra ];
diff --git a/pkgs/applications/misc/netsurf/libwapcaplet/default.nix b/pkgs/applications/misc/netsurf/libwapcaplet/default.nix
index ad59b1be10e0..f3c7bcbd1a0e 100644
--- a/pkgs/applications/misc/netsurf/libwapcaplet/default.nix
+++ b/pkgs/applications/misc/netsurf/libwapcaplet/default.nix
@@ -23,7 +23,7 @@ stdenv.mkDerivation rec {
   NIX_CFLAGS_COMPILE = "-Wno-error=cast-function-type";
 
   meta = with stdenv.lib; {
-    homepage = http://www.netsurf-browser.org/;
+    homepage = "http://www.netsurf-browser.org/";
     description = "String internment library for netsurf browser";
     license = licenses.gpl2;
     maintainers = [ maintainers.vrthra ];
diff --git a/pkgs/applications/misc/netsurf/nsgenbind/default.nix b/pkgs/applications/misc/netsurf/nsgenbind/default.nix
index 88ac4f0c3eb9..2dd4b830102a 100644
--- a/pkgs/applications/misc/netsurf/nsgenbind/default.nix
+++ b/pkgs/applications/misc/netsurf/nsgenbind/default.nix
@@ -21,7 +21,7 @@ stdenv.mkDerivation rec {
   ];
 
   meta = with stdenv.lib; {
-    homepage = http://www.netsurf-browser.org/;
+    homepage = "http://www.netsurf-browser.org/";
     description = "Generator for JavaScript bindings for netsurf browser";
     license = licenses.gpl2;
     maintainers = [ maintainers.vrthra ];
diff --git a/pkgs/applications/misc/nix-tour/default.nix b/pkgs/applications/misc/nix-tour/default.nix
index 31afed3061a3..05ef696f99b8 100644
--- a/pkgs/applications/misc/nix-tour/default.nix
+++ b/pkgs/applications/misc/nix-tour/default.nix
@@ -27,7 +27,7 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "'the tour of nix' from nixcloud.io/tour as offline version";
-    homepage = https://nixcloud.io/tour;
+    homepage = "https://nixcloud.io/tour";
     license = licenses.gpl2;
     platforms = platforms.linux;
     maintainers = with maintainers; [ qknight ];
diff --git a/pkgs/applications/misc/nixnote2/default.nix b/pkgs/applications/misc/nixnote2/default.nix
index dec8b4ba0a7c..92bb4ca22077 100644
--- a/pkgs/applications/misc/nixnote2/default.nix
+++ b/pkgs/applications/misc/nixnote2/default.nix
@@ -37,7 +37,7 @@ mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "An unofficial client of Evernote";
-    homepage = http://www.nixnote.org/;
+    homepage = "http://www.nixnote.org/";
     license = licenses.gpl2Plus;
     maintainers = with maintainers; [ htr ];
     platforms = platforms.linux;
diff --git a/pkgs/applications/misc/nnn/default.nix b/pkgs/applications/misc/nnn/default.nix
index 67f0b4b39260..7adc777c00da 100644
--- a/pkgs/applications/misc/nnn/default.nix
+++ b/pkgs/applications/misc/nnn/default.nix
@@ -4,17 +4,17 @@ with stdenv.lib;
 
 stdenv.mkDerivation rec {
   pname = "nnn";
-  version = "3.0";
+  version = "3.1";
 
   src = fetchFromGitHub {
     owner = "jarun";
     repo = pname;
     rev = "v${version}";
-    sha256 = "0kmfg61v3xnf8m4m9nna28sr7hdwqbxwivc7j91zhfj2wpdswywp";
+    sha256 = "0wvn3jbxjcpdg9jzxkhx5dlc0zx2idky6mb75fpha8ww1jg7qf1g";
   };
 
   configFile = optionalString (conf != null) (builtins.toFile "nnn.h" conf);
-  preBuild = optionalString (conf != null) "cp ${configFile} nnn.h";
+  preBuild = optionalString (conf != null) "cp ${configFile} src/nnn.h";
 
   nativeBuildInputs = [ pkgconfig ];
   buildInputs = [ readline ncurses ];
diff --git a/pkgs/applications/misc/noice/default.nix b/pkgs/applications/misc/noice/default.nix
index 6cc5dc9066dc..2be5a4ab83b9 100644
--- a/pkgs/applications/misc/noice/default.nix
+++ b/pkgs/applications/misc/noice/default.nix
@@ -23,7 +23,7 @@ stdenv.mkDerivation rec {
 
   meta = {
     description = "Small ncurses-based file browser";
-    homepage = https://git.2f30.org/noice/;
+    homepage = "https://git.2f30.org/noice/";
     license = licenses.bsd2;
     platforms = platforms.all;
     maintainers = with maintainers; [ jfrankenau ];
diff --git a/pkgs/applications/misc/notable/default.nix b/pkgs/applications/misc/notable/default.nix
index 085dff7ce04e..923f5fb4528e 100644
--- a/pkgs/applications/misc/notable/default.nix
+++ b/pkgs/applications/misc/notable/default.nix
@@ -2,15 +2,25 @@
 
 let
   pname = "notable";
-  version = "1.7.3";
-in
-appimageTools.wrapType2 rec {
+  version = "1.8.4";
+  sha256 = "0rvz8zwsi62kiq89pv8n2wh9h5yb030kvdr1vf65xwqkhqcrzrby";
+
   name = "${pname}-${version}";
+
   src = fetchurl {
     url = "https://github.com/notable/notable/releases/download/v${version}/Notable-${version}.AppImage";
-    sha256 = "1a7xpdk23np398nrgivyp8z54idqm72dfwx67i2rmxa3dnmcxkvl";
+    inherit sha256;
+  };
+
+  appimageContents = appimageTools.extract {
+    inherit name src;
   };
 
+in
+appimageTools.wrapType2 rec {
+
+  inherit name src;
+
   profile = ''
     export LC_ALL=C.UTF-8
     export XDG_DATA_DIRS=${gsettings-desktop-schemas}/share/gsettings-schemas/${gsettings-desktop-schemas.name}:${gtk3}/share/gsettings-schemas/${gtk3.name}:$XDG_DATA_DIRS
@@ -18,12 +28,19 @@ appimageTools.wrapType2 rec {
 
   multiPkgs = null; # no 32bit needed
   extraPkgs = p: (appimageTools.defaultFhsEnvArgs.multiPkgs p) ++ [ p.at-spi2-atk p.at-spi2-core ];
-  extraInstallCommands = "mv $out/bin/{${name},${pname}}";
+  extraInstallCommands = ''
+    mv $out/bin/{${name},${pname}}
+    install -m 444 -D ${appimageContents}/notable.desktop $out/share/applications/notable.desktop
+    install -m 444 -D ${appimageContents}/usr/share/icons/hicolor/1024x1024/apps/notable.png \
+      $out/share/icons/hicolor/1024x1024/apps/notable.png
+    substituteInPlace $out/share/applications/notable.desktop \
+      --replace 'Exec=AppRun' 'Exec=${pname}'
+  '';
 
   meta = with lib; {
     description = "The markdown-based note-taking app that doesn't suck";
-    homepage = https://github.com/notable/notable;
-    license = licenses.agpl3;
+    homepage = "https://github.com/notable/notable";
+    license = licenses.unfree;
     platforms = [ "x86_64-linux" ];
     maintainers = with maintainers; [ dtzWill ];
   };
diff --git a/pkgs/applications/misc/notejot/default.nix b/pkgs/applications/misc/notejot/default.nix
index 1c02441474c0..3498ef278675 100644
--- a/pkgs/applications/misc/notejot/default.nix
+++ b/pkgs/applications/misc/notejot/default.nix
@@ -3,13 +3,13 @@
 
 stdenv.mkDerivation rec {
   pname = "notejot";
-  version = "1.6.0";
+  version = "1.6.3";
 
   src = fetchFromGitHub {
     owner = "lainsce";
     repo = pname;
     rev = version;
-    sha256 = "1b65m9gvq8ziqqgnw3vgjpjb1qw7bww40ngd3gardsjg9lcwpxaf";
+    sha256 = "170dzgd6cnf2k3hfifjysmdggpskx6v1pjmblqgbwaj2d3snf3h8";
   };
 
   nativeBuildInputs = [
@@ -42,7 +42,7 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "Stupidly-simple sticky notes applet";
-    homepage = https://github.com/lainsce/notejot;
+    homepage = "https://github.com/lainsce/notejot";
     license = licenses.gpl2Plus;
     maintainers = with maintainers; [ worldofpeace ];
     platforms = platforms.linux;
diff --git a/pkgs/applications/misc/notify-osd-customizable/default.nix b/pkgs/applications/misc/notify-osd-customizable/default.nix
index d75ec9ef2c25..36fa888e8884 100644
--- a/pkgs/applications/misc/notify-osd-customizable/default.nix
+++ b/pkgs/applications/misc/notify-osd-customizable/default.nix
@@ -40,7 +40,7 @@ in stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "Daemon that displays passive pop-up notifications";
-    homepage = https://launchpad.net/notify-osd;
+    homepage = "https://launchpad.net/notify-osd";
     license = licenses.gpl3;
     maintainers = [ maintainers.imalison ];
     platforms = platforms.linux;
diff --git a/pkgs/applications/misc/notify-osd/default.nix b/pkgs/applications/misc/notify-osd/default.nix
index 484ff62e9e68..e2bff0031186 100644
--- a/pkgs/applications/misc/notify-osd/default.nix
+++ b/pkgs/applications/misc/notify-osd/default.nix
@@ -24,7 +24,7 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "Daemon that displays passive pop-up notifications";
-    homepage = https://launchpad.net/notify-osd;
+    homepage = "https://launchpad.net/notify-osd";
     license = licenses.gpl3;
     maintainers = [ maintainers.bodil ];
     platforms = platforms.linux;
diff --git a/pkgs/applications/misc/nrsc5/default.nix b/pkgs/applications/misc/nrsc5/default.nix
index 3ad837768421..ada603cba963 100644
--- a/pkgs/applications/misc/nrsc5/default.nix
+++ b/pkgs/applications/misc/nrsc5/default.nix
@@ -43,7 +43,7 @@ in stdenv.mkDerivation {
   cmakeFlags = [ "-DUSE_COLOR=ON" "-DUSE_FAAD2=ON" ];
 
   meta = with stdenv.lib; {
-    homepage = https://github.com/theori-io/nrsc5;
+    homepage = "https://github.com/theori-io/nrsc5";
     description = "HD-Radio decoder for RTL-SDR";
     platforms = stdenv.lib.platforms.linux;
     license = licenses.gpl3;
diff --git a/pkgs/applications/misc/nut/default.nix b/pkgs/applications/misc/nut/default.nix
index 8b0cab315888..8f188818d4f7 100644
--- a/pkgs/applications/misc/nut/default.nix
+++ b/pkgs/applications/misc/nut/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchurl, pkgconfig, neon, libusb, openssl, udev, avahi, freeipmi
+{ stdenv, fetchurl, pkgconfig, neon, libusb-compat-0_1, openssl, udev, avahi, freeipmi
 , libtool, makeWrapper, autoreconfHook, fetchpatch
 }:
 
@@ -19,7 +19,7 @@ stdenv.mkDerivation rec {
     })
   ];
 
-  buildInputs = [ neon libusb openssl udev avahi freeipmi ];
+  buildInputs = [ neon libusb-compat-0_1 openssl udev avahi freeipmi ];
 
   nativeBuildInputs = [ autoreconfHook libtool pkgconfig makeWrapper ];
 
@@ -38,7 +38,7 @@ stdenv.mkDerivation rec {
 
   postInstall = ''
     wrapProgram $out/bin/nut-scanner --prefix LD_LIBRARY_PATH : \
-      "$out/lib:${neon}/lib:${libusb.out}/lib:${avahi}/lib:${freeipmi}/lib"
+      "$out/lib:${neon}/lib:${libusb-compat-0_1.out}/lib:${avahi}/lib:${freeipmi}/lib"
   '';
 
   meta = with stdenv.lib; {
@@ -48,8 +48,8 @@ stdenv.mkDerivation rec {
       interface for monitoring and administering UPS, PDU and SCD hardware.
       It uses a layered approach to connect all of the parts.
     '';
-    homepage = https://networkupstools.org/;
-    repositories.git = https://github.com/networkupstools/nut.git;
+    homepage = "https://networkupstools.org/";
+    repositories.git = "https://github.com/networkupstools/nut.git";
     platforms = platforms.linux;
     maintainers = [ maintainers.pierron ];
     license = with licenses; [ gpl1Plus gpl2Plus gpl3Plus ];
diff --git a/pkgs/applications/misc/obinskit/default.nix b/pkgs/applications/misc/obinskit/default.nix
new file mode 100644
index 000000000000..aa11c069a7a8
--- /dev/null
+++ b/pkgs/applications/misc/obinskit/default.nix
@@ -0,0 +1,83 @@
+{ lib
+, stdenv
+, fetchurl
+, xorg
+, libxkbcommon
+, systemd
+, gcc-unwrapped
+, electron_3
+, wrapGAppsHook
+, makeDesktopItem
+}:
+
+let
+  libPath = lib.makeLibraryPath [
+    libxkbcommon
+    xorg.libXt
+    systemd.lib
+    stdenv.cc.cc.lib
+  ];
+
+  desktopItem = makeDesktopItem rec {
+    name = "Obinskit";
+    exec = "obinskit";
+    icon = "obinskit.png";
+    desktopName = "Obinskit";
+    genericName = "Obinskit keyboard configurator";
+    categories = "Utility";
+  };
+
+in stdenv.mkDerivation rec {
+  pname = "obinskit";
+  version = "1.1.4";
+
+  src = fetchurl {
+    url = "http://releases.obins.net/occ/linux/tar/ObinsKit_${version}_x64.tar.gz";
+    sha256 = "0q422rmfn4k4ww1qlgrwdmxz4l10dxkd6piynbcw5cr4i5icnh2l";
+  };
+
+  unpackPhase = "tar -xzf $src";
+
+  sourceRoot = "ObinsKit_${version}_x64";
+
+  nativeBuildInputs = [ wrapGAppsHook ];
+
+  dontConfigure = true;
+  dontBuild = true;
+
+  installPhase = ''
+    mkdir -p $out/opt/obinskit
+    install icudtl.dat $out/opt/obinskit/
+    install natives_blob.bin $out/opt/obinskit/
+    install v8_context_snapshot.bin $out/opt/obinskit/
+    install blink_image_resources_200_percent.pak $out/opt/obinskit/
+    install content_resources_200_percent.pak $out/opt/obinskit/
+    install content_shell.pak $out/opt/obinskit/
+    install ui_resources_200_percent.pak $out/opt/obinskit/
+    install views_resources_200_percent.pak $out/opt/obinskit/
+    cp -r resources $out/opt/obinskit/
+    cp -r locales $out/opt/obinskit/
+
+    mkdir -p $out/bin
+    ln -s ${electron_3}/bin/electron $out/bin/obinskit
+
+    mkdir -p $out/share/{applications,pixmaps}
+    install resources/icons/tray-darwin@2x.png $out/share/pixmaps/obinskit.png
+    ln -s ${desktopItem}/share/applications/* $out/share/applications
+  '';
+
+  preFixup = ''
+    gappsWrapperArgs+=(
+      --add-flags $out/opt/obinskit/resources/app.asar
+      --prefix LD_LIBRARY_PATH : "${libPath}"
+    )
+  '';
+
+  meta = with lib; {
+    description = "Graphical configurator for Anne Pro and Anne Pro II keyboards";
+    homepage = "http://en.obins.net/obinskit/";
+    license = licenses.unfree;
+    maintainers = [ maintainers.shou ];
+    platforms = [ "x86_64-linux" ];
+  };
+}
diff --git a/pkgs/applications/misc/ocropus/default.nix b/pkgs/applications/misc/ocropus/default.nix
index a604349afb01..ef371dc59fff 100644
--- a/pkgs/applications/misc/ocropus/default.nix
+++ b/pkgs/applications/misc/ocropus/default.nix
@@ -52,7 +52,7 @@ pythonPackages.buildPythonApplication rec {
   meta = with stdenv.lib; {
     description = "Open source document analysis and OCR system";
     license = licenses.asl20;
-    homepage = https://github.com/tmbdev/ocropy/;
+    homepage = "https://github.com/tmbdev/ocropy/";
     maintainers = with maintainers; [ domenkozar ];
     platforms = platforms.linux;
   };
diff --git a/pkgs/applications/misc/octoprint/default.nix b/pkgs/applications/misc/octoprint/default.nix
index 29a04627bef4..3c192c124cbe 100644
--- a/pkgs/applications/misc/octoprint/default.nix
+++ b/pkgs/applications/misc/octoprint/default.nix
@@ -1,5 +1,7 @@
-{ stdenv, lib, fetchFromGitHub, python2 }:
-
+{ pkgs, stdenv, lib, fetchFromGitHub, python3
+# To include additional plugins, pass them here as an overlay.
+, packageOverrides ? self: super: {}
+}:
 let
   mkOverride = attrname: version: sha256:
     self: super: {
@@ -11,17 +13,19 @@ let
       });
     };
 
-  py = python2.override {
+  py = python3.override {
+    self = py;
     packageOverrides = lib.foldr lib.composeExtensions (self: super: { }) ([
-      (mkOverride "flask"       "0.10.1" "0wrkavjdjndknhp8ya8j850jq7a1cli4g5a93mg8nh1xz2gq50sc")
-      (mkOverride "flask_login" "0.2.11" "1rg3rsjs1gwi2pw6vr9jmhaqm9b3vc9c4hfcsvp4y8agbh7g3mc3")
+      (mkOverride "flask"       "0.12.5" "fac2b9d443e49f7e7358a444a3db5950bdd0324674d92ba67f8f1f15f876b14f")
+      (mkOverride "flaskbabel"  "0.12.2" "11jwp8vvq1gnm31qh6ihy2h393hy18yn9yjp569g60r0wj1x2sii")
       (mkOverride "tornado"     "4.5.3"  "02jzd23l4r6fswmwxaica9ldlyc2p6q8dk6dyff7j58fmdzf853d")
+      (mkOverride "psutil"      "5.6.7"  "ffad8eb2ac614518bbe3c0b8eb9dffdb3a8d2e3a7d5da51c5b974fb723a5c5aa")
 
       # Octoprint holds back jinja2 to 2.8.1 due to breaking changes.
       # This old version does not have updated test config for pytest 4,
       # and pypi tarball doesn't contain tests dir anyways.
-      (pself: psuper: {
-        jinja2 = psuper.jinja2.overridePythonAttrs (oldAttrs: rec {
+      (self: super: {
+        jinja2 = super.jinja2.overridePythonAttrs (oldAttrs: rec {
           version = "2.8.1";
           src = oldAttrs.src.override {
             inherit version;
@@ -29,74 +33,75 @@ let
           };
           doCheck = false;
         });
+
+        httpretty = super.httpretty.overridePythonAttrs (oldAttrs: rec {
+          doCheck = false;
+        });
+
+        celery = super.celery.overridePythonAttrs (oldAttrs: rec {
+          doCheck = false;
+        });
       })
-    ]);
-  };
+      (self: super: {
+        octoprint = self.buildPythonPackage rec {
+          pname = "OctoPrint";
+          version = "1.4.0";
+
+          src = fetchFromGitHub {
+            owner  = "foosel";
+            repo   = "OctoPrint";
+            rev    = version;
+            sha256 = "0387228544v28d69dcdg2zr5gp6qavkfr6dydpjgj5awxv3w25d5";
+          };
 
-  ignoreVersionConstraints = [
-    "Click"
-    "Flask-Assets"
-    "Flask-Babel"
-    "Flask-Principal"
-    "emoji"
-    "flask"
-    "future"
-    "futures"
-    "monotonic"
-    "markdown"
-    "pkginfo"
-    "psutil"
-    "pyserial"
-    "requests"
-    "rsa"
-    "sarge"
-    "scandir"
-    "semantic_version"
-    "watchdog"
-    "websocket-client"
-    "wrapt"
-    "sentry-sdk"
-    "werkzeug" # 0.16 just deprecates some stuff
-  ];
+          propagatedBuildInputs = with super; [
+            awesome-slugify flask flask_assets rsa requests pkginfo watchdog
+            semantic-version werkzeug flaskbabel tornado
+            psutil pyserial flask_login netaddr markdown
+            pylru pyyaml sarge feedparser netifaces click websocket_client
+            scandir chainmap future wrapt monotonic emoji jinja2
+            frozendict cachelib sentry-sdk filetype markupsafe
+          ] ++ lib.optionals stdenv.isDarwin [ py.pkgs.appdirs ];
 
-in py.pkgs.buildPythonApplication rec {
-  pname = "OctoPrint";
-  version = "1.3.12";
+          checkInputs = with super; [ pytestCheckHook mock ddt ];
 
-  src = fetchFromGitHub {
-    owner  = "foosel";
-    repo   = "OctoPrint";
-    rev    = version;
-    sha256 = "1lmqssgwjyhknjf3x58g7cr0fqz7fs5a3rl07r69wfpch63ranyd";
-  };
+          postPatch = let
+            ignoreVersionConstraints = [
+              "sentry-sdk"
+            ];
+          in ''
+            sed -r -i \
+              ${lib.concatStringsSep "\n" (map (e:
+                ''-e 's@${e}[<>=]+.*@${e}",@g' \''
+              ) ignoreVersionConstraints)}
+              setup.py
+          '';
 
-  propagatedBuildInputs = with py.pkgs; [
-    awesome-slugify flask_assets rsa requests pkginfo watchdog
-    semantic-version flask_principal werkzeug flaskbabel tornado
-    psutil pyserial flask_login netaddr markdown sockjs-tornado
-    pylru pyyaml sarge feedparser netifaces click websocket_client
-    scandir chainmap future futures wrapt monotonic emoji
-    frozendict cachelib sentry-sdk typing filetype
-  ] ++ lib.optionals stdenv.isDarwin [ py.pkgs.appdirs ];
+          dontUseSetuptoolsCheck = true;
 
-  checkInputs = with py.pkgs; [ nose mock ddt ];
+          preCheck = ''
+            export HOME=$(mktemp -d)
+            rm pytest.ini
+          '';
 
-  postPatch = ''
-    sed -r -i \
-      ${lib.concatStringsSep "\n" (map (e:
-        ''-e 's@${e}[<>=]+.*@${e}",@g' \''
-      ) ignoreVersionConstraints)}
-      setup.py
-  '';
+          disabledTests = [
+            "test_check_setup" # Why should it be able to call pip?
+          ] ++ lib.optionals stdenv.isDarwin [
+            "test_set_external_modification"
+          ];
 
-  checkPhase = ''
-    HOME=$(mktemp -d) nosetests ${lib.optionalString stdenv.isDarwin "--exclude=test_set_external_modification"}
-  '';
+          passthru.python = self.python;
 
-  meta = with stdenv.lib; {
-    homepage = https://octoprint.org/;
-    description = "The snappy web interface for your 3D printer";
-    license = licenses.agpl3;
-    maintainers = with maintainers; [ abbradar gebner ];
+          meta = with stdenv.lib; {
+            homepage = "https://octoprint.org/";
+            description = "The snappy web interface for your 3D printer";
+            license = licenses.agpl3;
+            maintainers = with maintainers; [ abbradar gebner WhittlesJr ];
+          };
+        };
+      })
+      (import ./plugins.nix {inherit pkgs;})
+      packageOverrides
+    ]);
   };
-}
+in with py.pkgs; toPythonApplication octoprint
diff --git a/pkgs/applications/misc/octoprint/plugins.nix b/pkgs/applications/misc/octoprint/plugins.nix
index 10c4f2f84480..b5d52f5e5f89 100644
--- a/pkgs/applications/misc/octoprint/plugins.nix
+++ b/pkgs/applications/misc/octoprint/plugins.nix
@@ -1,255 +1,255 @@
-{ stdenv, fetchgit, fetchFromGitHub, octoprint, python2Packages, marlin-calc }:
+{ pkgs }:
 
-let
-  buildPlugin = args: python2Packages.buildPythonPackage (args // {
+with pkgs;
+
+self: super: let
+  buildPlugin = args: self.buildPythonPackage (args // {
     pname = "OctoPrintPlugin-${args.pname}";
     inherit (args) version;
-    propagatedBuildInputs = (args.propagatedBuildInputs or []) ++ [ octoprint ];
+    propagatedBuildInputs = (args.propagatedBuildInputs or []) ++ [ super.octoprint ];
     # none of the following have tests
     doCheck = false;
   });
+in {
+  inherit buildPlugin;
+
+  # Deprecated alias
+  m3d-fio = self.m33-fio; # added 2016-08-13
+
+  m33-fio = buildPlugin rec {
+    pname = "M33-Fio";
+    version = "1.21";
+
+    src = fetchFromGitHub {
+      owner = "donovan6000";
+      repo = "M33-Fio";
+      rev = "V${version}";
+      sha256 = "1la3611kkqn8yiwjn6cizc45ri8pnk6ckld1na4nk6mqk88jvjq7";
+    };
+
+    patches = [
+      ./m33-fio-one-library.patch
+    ];
+
+    postPatch = ''
+      rm -rf octoprint_m33fio/static/libraries/*
+      (
+        cd 'shared library source'
+        make
+      )
+    '';
+
+    meta = with stdenv.lib; {
+      description = "OctoPrint plugin for the Micro 3D printer";
+      homepage = "https://github.com/donovan6000/M33-Fio";
+      license = licenses.gpl3;
+      maintainers = with maintainers; [ abbradar ];
+    };
+  };
+
+  mqtt = buildPlugin rec {
+    pname = "MQTT";
+    version = "0.8.6";
+
+    src = fetchFromGitHub {
+      owner = "OctoPrint";
+      repo = "OctoPrint-MQTT";
+      rev = version;
+      sha256 = "0y1jnfplcy8mh3szrfbbvngl02j49cbdizglrfsry4fvqg50zjxd";
+    };
+
+    propagatedBuildInputs = with super; [ paho-mqtt ];
+
+    meta = with stdenv.lib; {
+      description = "Publish printer status MQTT";
+      homepage = "https://github.com/OctoPrint/OctoPrint-MQTT";
+      license = licenses.agpl3;
+      maintainers = with maintainers; [ peterhoeg ];
+    };
+  };
+
+  titlestatus = buildPlugin rec {
+    pname = "TitleStatus";
+    version = "0.0.4";
+
+    src = fetchFromGitHub {
+      owner = "MoonshineSG";
+      repo = "OctoPrint-TitleStatus";
+      rev = version;
+      sha256 = "1l78xrabn5hcly2mgxwi17nwgnp2s6jxi9iy4wnw8k8icv74ag7k";
+    };
+
+    meta = with stdenv.lib; {
+      description = "Show printers status in window title";
+      homepage = "https://github.com/MoonshineSG/OctoPrint-TitleStatus";
+      license = licenses.agpl3;
+      maintainers = with maintainers; [ abbradar ];
+    };
+  };
+
+  stlviewer = buildPlugin rec {
+    pname = "STLViewer";
+    version = "0.4.2";
+
+    src = fetchFromGitHub {
+      owner = "jneilliii";
+      repo = "OctoPrint-STLViewer";
+      rev = version;
+      sha256 = "0mkvh44fn2ch4z2avsdjwi1rp353ylmk9j5fln4x7rx8ph8y7g2b";
+    };
+
+    meta = with stdenv.lib; {
+      description = "A simple stl viewer tab for OctoPrint";
+      homepage = "https://github.com/jneilliii/Octoprint-STLViewer";
+      license = licenses.agpl3;
+      maintainers = with maintainers; [ abbradar ];
+    };
+  };
+
+  curaenginelegacy = buildPlugin rec {
+    pname = "CuraEngineLegacy";
+    version = "1.0.2";
+
+    src = fetchFromGitHub {
+      owner = "OctoPrint";
+      repo = "OctoPrint-${pname}";
+      rev = version;
+      sha256 = "1cdb276wfyf3wcfj5g3migd6b6aqmkrxncrqjfcfx4j4k3xac965";
+    };
+
+    meta = with stdenv.lib; {
+      description = "Plugin for slicing via Cura Legacy from within OctoPrint";
+      homepage = "https://github.com/OctoPrint/OctoPrint-CuraEngineLegacy";
+      license = licenses.agpl3;
+      maintainers = with maintainers; [ gebner ];
+    };
+  };
 
-  self = {
-
-    # Deprecated alias
-    m3d-fio = self.m33-fio; # added 2016-08-13
-
-    m33-fio = buildPlugin rec {
-      pname = "M33-Fio";
-      version = "1.21";
-
-      src = fetchFromGitHub {
-        owner = "donovan6000";
-        repo = "M33-Fio";
-        rev = "V${version}";
-        sha256 = "1la3611kkqn8yiwjn6cizc45ri8pnk6ckld1na4nk6mqk88jvjq7";
-      };
-
-      patches = [
-        ./m33-fio-one-library.patch
-      ];
-
-      postPatch = ''
-        rm -rf octoprint_m33fio/static/libraries/*
-        (
-          cd 'shared library source'
-          make
-        )
-      '';
-
-      meta = with stdenv.lib; {
-        description = "OctoPrint plugin for the Micro 3D printer";
-        homepage = https://github.com/donovan6000/M33-Fio;
-        license = licenses.gpl3;
-        maintainers = with maintainers; [ abbradar ];
-      };
-    };
-
-    mqtt = buildPlugin rec {
-      pname = "MQTT";
-      version = "0.8.6";
-
-      src = fetchFromGitHub {
-        owner = "OctoPrint";
-        repo = "OctoPrint-MQTT";
-        rev = version;
-        sha256 = "0y1jnfplcy8mh3szrfbbvngl02j49cbdizglrfsry4fvqg50zjxd";
-      };
-
-      propagatedBuildInputs = with python2Packages; [ paho-mqtt ];
-
-      meta = with stdenv.lib; {
-        description = "Publish printer status MQTT";
-        homepage = https://github.com/OctoPrint/OctoPrint-MQTT;
-        license = licenses.agpl3;
-        maintainers = with maintainers; [ peterhoeg ];
-      };
-    };
-
-    titlestatus = buildPlugin rec {
-      pname = "TitleStatus";
-      version = "0.0.4";
-
-      src = fetchFromGitHub {
-        owner = "MoonshineSG";
-        repo = "OctoPrint-TitleStatus";
-        rev = version;
-        sha256 = "1l78xrabn5hcly2mgxwi17nwgnp2s6jxi9iy4wnw8k8icv74ag7k";
-      };
-
-      meta = with stdenv.lib; {
-        description = "Show printers status in window title";
-        homepage = https://github.com/MoonshineSG/OctoPrint-TitleStatus;
-        license = licenses.agpl3;
-        maintainers = with maintainers; [ abbradar ];
-      };
-    };
-
-    stlviewer = buildPlugin rec {
-      pname = "STLViewer";
-      version = "0.4.2";
-
-      src = fetchFromGitHub {
-        owner = "jneilliii";
-        repo = "OctoPrint-STLViewer";
-        rev = version;
-        sha256 = "0mkvh44fn2ch4z2avsdjwi1rp353ylmk9j5fln4x7rx8ph8y7g2b";
-      };
-
-      meta = with stdenv.lib; {
-        description = "A simple stl viewer tab for OctoPrint";
-        homepage = https://github.com/jneilliii/Octoprint-STLViewer;
-        license = licenses.agpl3;
-        maintainers = with maintainers; [ abbradar ];
-      };
-    };
-
-    curaenginelegacy = buildPlugin rec {
-      pname = "CuraEngineLegacy";
-      version = "1.0.2";
-
-      src = fetchFromGitHub {
-        owner = "OctoPrint";
-        repo = "OctoPrint-${pname}";
-        rev = version;
-        sha256 = "1cdb276wfyf3wcfj5g3migd6b6aqmkrxncrqjfcfx4j4k3xac965";
-      };
-
-      meta = with stdenv.lib; {
-        description = "Plugin for slicing via Cura Legacy from within OctoPrint";
-        homepage = "https://github.com/OctoPrint/OctoPrint-CuraEngineLegacy";
-        license = licenses.agpl3;
-        maintainers = with maintainers; [ gebner ];
-      };
-    };
-
-    touchui = buildPlugin rec {
-      pname = "TouchUI";
-      version = "0.3.13";
-
-      src = fetchFromGitHub {
-        owner = "BillyBlaze";
-        repo = "OctoPrint-${pname}";
-        rev = version;
-        sha256 = "0qk12ysabdzy6cna3l4f8v3qcnppppwxxsjx2i0xn1nd0cv6yzwh";
-      };
-
-      meta = with stdenv.lib; {
-        description = "Touch friendly interface for a small TFT module or phone for OctoPrint";
-        homepage = "https://github.com/BillyBlaze/OctoPrint-TouchUI";
-        license = licenses.agpl3;
-        maintainers = with maintainers; [ gebner ];
-      };
-    };
-
-    psucontrol = buildPlugin rec {
-      pname = "PSUControl";
-      version = "0.1.8";
-
-      src = fetchFromGitHub {
-        owner = "kantlivelong";
-        repo = "OctoPrint-${pname}";
-        rev = version;
-        sha256 = "0aj38d7b7d5pzmzq841pip18cpg18wy2vrxq2nd13875597y54b8";
-      };
-
-      preConfigure = ''
-        # optional; RPi.GPIO is broken on vanilla kernels
-        sed /RPi.GPIO/d -i requirements.txt
-      '';
-
-      meta = with stdenv.lib; {
-        description = "OctoPrint plugin to control ATX/AUX power supply";
-        homepage = "https://github.com/kantlivelong/OctoPrint-PSUControl";
-        license = licenses.agpl3;
-        maintainers = with maintainers; [ gebner ];
-      };
-    };
-
-    printtimegenius = buildPlugin rec {
-      pname = "PrintTimeGenius";
-      version = "2.2.1";
-
-      src = fetchFromGitHub {
-        owner = "eyal0";
-        repo = "OctoPrint-${pname}";
-        rev = version;
-        sha256 = "1dr93vbpxgxw3b1q4rwam8f4dmiwr5vnfr9796g6jx8xkpfzzy1h";
-      };
-
-      preConfigure = ''
-        # PrintTimeGenius ships with marlin-calc binaries for multiple architectures
-        rm */analyzers/marlin-calc*
-        sed 's@"{}.{}".format(binary_base_name, machine)@"${marlin-calc}/bin/marlin-calc"@' -i */analyzers/analyze_progress.py
-      '';
-
-      patches = [
-        ./printtimegenius-logging.patch
-      ];
-
-      meta = with stdenv.lib; {
-        description = "Better print time estimation for OctoPrint";
-        homepage = "https://github.com/eyal0/OctoPrint-PrintTimeGenius";
-        license = licenses.agpl3;
-        maintainers = with maintainers; [ gebner ];
-      };
-    };
-
-    abl-expert = buildPlugin rec {
-      pname = "ABL_Expert";
-      version = "2019-12-21";
-
-      src = fetchgit {
-        url = "https://framagit.org/razer/Octoprint_ABL_Expert/";
-        rev = "f11fbe05088ad618bfd9d064ac3881faec223f33";
-        sha256 = "026r4prkyvwzxag5pv36455q7s3gaig37nmr2nbvhwq3d2lbi5s4";
-      };
-
-      meta = with stdenv.lib; {
-        description = "Marlin auto bed leveling control, mesh correction, and z probe handling";
-        homepage = "https://framagit.org/razer/Octoprint_ABL_Expert/";
-        license = licenses.agpl3;
-        maintainers = with maintainers; [ WhittlesJr ];
-      };
-    };
-
-    gcodeeditor = buildPlugin rec {
-      pname = "GcodeEditor";
-      version = "0.2.6";
-
-      src = fetchFromGitHub {
-        owner = "ieatacid";
-        repo = "OctoPrint-${pname}";
-        rev = version;
-        sha256 = "0c6p78r3vd6ys3kld308pyln09zjbr9yif1ljvcx6wlml2i5l1vh";
-      };
-
-      meta = with stdenv.lib; {
-        description = "Edit gcode on OctoPrint";
-        homepage = "https://github.com/Sebclem/OctoPrint-SimpleEmergencyStop";
-        license = licenses.agpl3;
-        maintainers = with maintainers; [ WhittlesJr ];
-      };
-    };
-
-    simpleemergencystop = buildPlugin rec {
-      pname = "SimpleEmergencyStop";
-      version = "0.2.5";
-
-      src = fetchFromGitHub {
-        owner = "Sebclem";
-        repo = "OctoPrint-${pname}";
-        rev = version;
-        sha256 = "10wadv09wv2h96igvq3byw9hz1si82n3c7v5y0ii3j7hm2d06y8p";
-      };
-
-      meta = with stdenv.lib; {
-        description = "A simple plugin that add an emergency stop buton on NavBar of OctoPrint";
-        homepage = "https://github.com/ieatacid/OctoPrint-GcodeEditor";
-        license = licenses.agpl3;
-        maintainers = with maintainers; [ WhittlesJr ];
-      };
+  touchui = buildPlugin rec {
+    pname = "TouchUI";
+    version = "0.3.14";
+
+    src = fetchFromGitHub {
+      owner = "BillyBlaze";
+      repo = "OctoPrint-${pname}";
+      rev = version;
+      sha256 = "033b9nk3kpnmjw9nggcaxy39hcgfviykcy2cx0j6m411agvmqbzf";
+    };
+
+    meta = with stdenv.lib; {
+      description = "Touch friendly interface for a small TFT module or phone for OctoPrint";
+      homepage = "https://github.com/BillyBlaze/OctoPrint-TouchUI";
+      license = licenses.agpl3;
+      maintainers = with maintainers; [ gebner ];
     };
   };
 
-in self
+  psucontrol = buildPlugin rec {
+    pname = "PSUControl";
+    version = "0.1.9";
+
+    src = fetchFromGitHub {
+      owner = "kantlivelong";
+      repo = "OctoPrint-${pname}";
+      rev = version;
+      sha256 = "1cn009bdgn6c9ba9an5wfj8z02wi0xcsmbhkqggiqlnqy1fq45ca";
+    };
+
+    preConfigure = ''
+      # optional; RPi.GPIO is broken on vanilla kernels
+      sed /RPi.GPIO/d -i requirements.txt
+    '';
+
+    meta = with stdenv.lib; {
+      description = "OctoPrint plugin to control ATX/AUX power supply";
+      homepage = "https://github.com/kantlivelong/OctoPrint-PSUControl";
+      license = licenses.agpl3;
+      maintainers = with maintainers; [ gebner ];
+    };
+  };
+
+  printtimegenius = buildPlugin rec {
+    pname = "PrintTimeGenius";
+    version = "2.2.1";
+
+    src = fetchFromGitHub {
+      owner = "eyal0";
+      repo = "OctoPrint-${pname}";
+      rev = version;
+      sha256 = "1dr93vbpxgxw3b1q4rwam8f4dmiwr5vnfr9796g6jx8xkpfzzy1h";
+    };
+
+    preConfigure = ''
+      # PrintTimeGenius ships with marlin-calc binaries for multiple architectures
+      rm */analyzers/marlin-calc*
+      sed 's@"{}.{}".format(binary_base_name, machine)@"${pkgs.marlin-calc}/bin/marlin-calc"@' -i */analyzers/analyze_progress.py
+    '';
+
+    patches = [
+      ./printtimegenius-logging.patch
+    ];
+
+    meta = with stdenv.lib; {
+      description = "Better print time estimation for OctoPrint";
+      homepage = "https://github.com/eyal0/OctoPrint-PrintTimeGenius";
+      license = licenses.agpl3;
+      maintainers = with maintainers; [ gebner ];
+    };
+  };
+
+  abl-expert = buildPlugin rec {
+    pname = "ABL_Expert";
+    version = "2019-12-21";
+
+    src = fetchgit {
+      url = "https://framagit.org/razer/Octoprint_ABL_Expert/";
+      rev = "f11fbe05088ad618bfd9d064ac3881faec223f33";
+      sha256 = "026r4prkyvwzxag5pv36455q7s3gaig37nmr2nbvhwq3d2lbi5s4";
+    };
+
+    meta = with stdenv.lib; {
+      description = "Marlin auto bed leveling control, mesh correction, and z probe handling";
+      homepage = "https://framagit.org/razer/Octoprint_ABL_Expert/";
+      license = licenses.agpl3;
+      maintainers = with maintainers; [ WhittlesJr ];
+    };
+  };
+
+  gcodeeditor = buildPlugin rec {
+    pname = "GcodeEditor";
+    version = "0.2.6";
+
+    src = fetchFromGitHub {
+      owner = "ieatacid";
+      repo = "OctoPrint-${pname}";
+      rev = version;
+      sha256 = "0c6p78r3vd6ys3kld308pyln09zjbr9yif1ljvcx6wlml2i5l1vh";
+    };
+
+    meta = with stdenv.lib; {
+      description = "Edit gcode on OctoPrint";
+      homepage = "https://github.com/ieatacid/OctoPrint-GcodeEditor";
+      license = licenses.agpl3;
+      maintainers = with maintainers; [ WhittlesJr ];
+    };
+  };
+
+  simpleemergencystop = buildPlugin rec {
+    pname = "SimpleEmergencyStop";
+    version = "0.2.5";
+
+    src = fetchFromGitHub {
+      owner = "Sebclem";
+      repo = "OctoPrint-${pname}";
+      rev = version;
+      sha256 = "10wadv09wv2h96igvq3byw9hz1si82n3c7v5y0ii3j7hm2d06y8p";
+    };
+
+    meta = with stdenv.lib; {
+      description = "A simple plugin that add an emergency stop buton on NavBar of OctoPrint";
+      homepage = "https://github.com/Sebclem/OctoPrint-SimpleEmergencyStop";
+      license = licenses.agpl3;
+      maintainers = with maintainers; [ WhittlesJr ];
+    };
+  };
+}
diff --git a/pkgs/applications/misc/omegat.nix b/pkgs/applications/misc/omegat.nix
index 27d7ad8730b6..47536cc9f6a4 100644
--- a/pkgs/applications/misc/omegat.nix
+++ b/pkgs/applications/misc/omegat.nix
@@ -5,7 +5,7 @@ stdenv.mkDerivation {
   pname = "omegat";
 
   src = fetchurl {  # their zip has repeated files or something, so no fetchzip
-    url = mirror://sourceforge/project/omegat/OmegaT%20-%20Standard/OmegaT%204.3.0/OmegaT_4.3.0_Without_JRE.zip;
+    url = "mirror://sourceforge/project/omegat/OmegaT%20-%20Standard/OmegaT%204.3.0/OmegaT_4.3.0_Without_JRE.zip";
     sha256 = "0axz7r30p34z5hgvdglznc82g7yvm3g56dv5190jixskx6ba58rs";
   };
 
@@ -32,7 +32,7 @@ stdenv.mkDerivation {
       tool with fuzzy matching, translation memory, keyword search, glossaries, and
       translation leveraging into updated projects.
     '';
-    homepage = http://www.omegat.org/;
+    homepage = "http://www.omegat.org/";
     license = licenses.gpl3Plus;
     maintainers = with maintainers; [ t184256 ];
     platforms = [ "i686-linux" "x86_64-linux" ];
diff --git a/pkgs/applications/misc/onboard/default.nix b/pkgs/applications/misc/onboard/default.nix
index 1e578cde512a..e427519d4d6e 100644
--- a/pkgs/applications/misc/onboard/default.nix
+++ b/pkgs/applications/misc/onboard/default.nix
@@ -173,7 +173,7 @@ python3.pkgs.buildPythonApplication rec {
   '';
 
   meta = with stdenv.lib; {
-    homepage = https://launchpad.net/onboard;
+    homepage = "https://launchpad.net/onboard";
     description = "Onscreen keyboard useful for tablet PC users and for mobility impaired users";
     maintainers = with maintainers; [ johnramsden ];
     license = licenses.gpl3;
diff --git a/pkgs/applications/misc/openbox-menu/default.nix b/pkgs/applications/misc/openbox-menu/default.nix
index 8f7f74f71232..e58570103240 100644
--- a/pkgs/applications/misc/openbox-menu/default.nix
+++ b/pkgs/applications/misc/openbox-menu/default.nix
@@ -17,7 +17,7 @@ stdenv.mkDerivation rec {
   installPhase = "make install prefix=$out";
 
   meta = {
-    homepage = http://fabrice.thiroux.free.fr/openbox-menu_en.html;
+    homepage = "http://fabrice.thiroux.free.fr/openbox-menu_en.html";
     description = "Dynamic XDG menu generator for Openbox";
     longDescription = ''
       Openbox-menu is a pipemenu for Openbox window manager. It provides a
diff --git a/pkgs/applications/misc/openbrf/default.nix b/pkgs/applications/misc/openbrf/default.nix
index e943263600cd..8e990b6dffba 100644
--- a/pkgs/applications/misc/openbrf/default.nix
+++ b/pkgs/applications/misc/openbrf/default.nix
@@ -1,7 +1,7 @@
-{ stdenv, fetchFromGitHub, qtbase, vcg, glew, qmake, libGLU, libGL }:
+{ mkDerivation, stdenv, fetchFromGitHub, qtbase, vcg, glew, qmake, libGLU, libGL }:
 
 
-stdenv.mkDerivation {
+mkDerivation {
   name = "openbrf-unstable-2016-01-09";
 
   src = fetchFromGitHub {
@@ -39,7 +39,7 @@ stdenv.mkDerivation {
 
   meta = with stdenv.lib; {
     description = "A tool to edit resource files (BRF)";
-    homepage = https://github.com/cfcohen/openbrf;
+    homepage = "https://github.com/cfcohen/openbrf";
     maintainers = with stdenv.lib.maintainers; [ abbradar ];
     license = licenses.free;
     platforms = platforms.linux;
diff --git a/pkgs/applications/misc/opencpn/default.nix b/pkgs/applications/misc/opencpn/default.nix
index 375552aaa33a..f5a88cbaee17 100644
--- a/pkgs/applications/misc/opencpn/default.nix
+++ b/pkgs/applications/misc/opencpn/default.nix
@@ -28,6 +28,6 @@ stdenv.mkDerivation rec {
     maintainers = [ stdenv.lib.maintainers.kragniz ];
     platforms = [ "x86_64-linux" ];
     license = stdenv.lib.licenses.gpl2;
-    homepage = https://opencpn.org/;
+    homepage = "https://opencpn.org/";
   };
 }
diff --git a/pkgs/applications/misc/openjump/default.nix b/pkgs/applications/misc/openjump/default.nix
index c98defee57a0..e537180686cd 100644
--- a/pkgs/applications/misc/openjump/default.nix
+++ b/pkgs/applications/misc/openjump/default.nix
@@ -4,7 +4,7 @@ stdenv.mkDerivation {
   name = "openjump-1.3.1";
 
   src = fetchurl {
-    url = mirror://sourceforge/jump-pilot/OpenJUMP/1.3.1/openjump-1.3.1.zip;
+    url = "mirror://sourceforge/jump-pilot/OpenJUMP/1.3.1/openjump-1.3.1.zip";
     sha256 = "0y4z53yx0x7rp3c8rnj028ni3gr47r35apgcpqp3jl7r2di6zgqm";
   };
 
@@ -31,7 +31,7 @@ stdenv.mkDerivation {
 
   meta = {
     description = "Open source Geographic Information System (GIS) written in the Java programming language";
-    homepage = http://www.openjump.org/index.html;
+    homepage = "http://www.openjump.org/index.html";
     license = stdenv.lib.licenses.gpl2;
     maintainers = [stdenv.lib.maintainers.marcweber];
     platforms = stdenv.lib.platforms.linux;
diff --git a/pkgs/applications/misc/opentx/default.nix b/pkgs/applications/misc/opentx/default.nix
index 370f88d7b479..f20d5ccdc4ac 100644
--- a/pkgs/applications/misc/opentx/default.nix
+++ b/pkgs/applications/misc/opentx/default.nix
@@ -1,50 +1,38 @@
-{ stdenv, fetchFromGitHub
-, cmake, gcc-arm-embedded, binutils-arm-embedded, python
-, qt5, SDL, gtest
+{ stdenv, mkDerivation, fetchFromGitHub
+, cmake, gcc-arm-embedded, python3Packages
+, qtbase, qtmultimedia, qttranslations, SDL, gtest
 , dfu-util, avrdude
 }:
 
-let
-
-  version = "2.2.1";
-
-in stdenv.mkDerivation {
-
+mkDerivation rec {
   pname = "opentx";
-  inherit version;
+  version = "2.3.7";
 
   src = fetchFromGitHub {
     owner = "opentx";
     repo = "opentx";
-    rev = version;
-    sha256 = "01lnnkrxach21aivnx1k1iqhih02nixh8c4nk6rpw408p13him9g";
+    rev = "release/${version}";
+    sha256 = "1wl3bk7s8h20dfys1hblzxc0br9zlwhcqlghgsbn81ki0xb6jmkf";
   };
 
   enableParallelBuilding = true;
 
-  nativeBuildInputs = [
-    cmake
-    gcc-arm-embedded binutils-arm-embedded
-  ];
+  nativeBuildInputs = [ cmake gcc-arm-embedded python3Packages.pillow ];
 
-  buildInputs = with qt5; [
-    python python.pkgs.pyqt4
-    qtbase qtmultimedia qttranslations
-    SDL
-  ];
+  buildInputs = [ qtbase qtmultimedia qttranslations SDL ];
 
   postPatch = ''
-    sed -i companion/src/burnconfigdialog.cpp -e 's|/usr/.*bin/dfu-util|${dfu-util}/bin/dfu-util|'
-    sed -i companion/src/burnconfigdialog.cpp -e 's|/usr/.*bin/avrdude|${avrdude}/bin/avrdude|'
+    sed -i companion/src/burnconfigdialog.cpp \
+      -e 's|/usr/.*bin/dfu-util|${dfu-util}/bin/dfu-util|' \
+      -e 's|/usr/.*bin/avrdude|${avrdude}/bin/avrdude|'
   '';
 
   cmakeFlags = [
     "-DGTEST_ROOT=${gtest.src}/googletest"
-    "-DQT_TRANSLATIONS_DIR=${qt5.qttranslations}/translations"
+    "-DQT_TRANSLATIONS_DIR=${qttranslations}/translations"
     # XXX I would prefer to include these here, though we will need to file a bug upstream to get that changed.
     #"-DDFU_UTIL_PATH=${dfu-util}/bin/dfu-util"
     #"-DAVRDUDE_PATH=${avrdude}/bin/avrdude"
-    "-DNANO=NO"
   ];
 
   meta = with stdenv.lib; {
@@ -54,11 +42,10 @@ in stdenv.mkDerivation {
       firmware to the radio, backing up model settings, editing settings and
       running radio simulators.
     '';
-    homepage = https://open-tx.org/;
-    license = stdenv.lib.licenses.gpl2;
-    platforms = [ "i686-linux" "x86_64-linux" ];
-    maintainers = with maintainers; [ elitak ];
-    broken = true;
+    homepage = "https://www.open-tx.org/";
+    license = licenses.gpl2;
+    platforms = [ "i686-linux" "x86_64-linux" "aarch64-linux" ];
+    maintainers = with maintainers; [ elitak lopsided98 ];
   };
 
 }
diff --git a/pkgs/applications/misc/orca/default.nix b/pkgs/applications/misc/orca/default.nix
index 998d5d528e9e..0ca4f11e548b 100644
--- a/pkgs/applications/misc/orca/default.nix
+++ b/pkgs/applications/misc/orca/default.nix
@@ -35,13 +35,13 @@
 
 buildPythonApplication rec {
   pname = "orca";
-  version = "3.34.2";
+  version = "3.36.2";
 
   format = "other";
 
   src = fetchurl {
     url = "mirror://gnome/sources/${pname}/${stdenv.lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
-    sha256 = "0aaagz8mxvfigrsdbmg22q44vf5yhkbw4rh4cnizysbfvijk4dan";
+    sha256 = "0hxz8wlyjn6w3zqg1p56pwdj0p23d6vynzczklyc6n91dyvma06g";
   };
 
   patches = [
@@ -110,7 +110,7 @@ buildPythonApplication rec {
 
       Needs `services.gnome3.at-spi2-core.enable = true;` in `configuration.nix`.
     '';
-    maintainers = with maintainers; [ berce ] ++ gnome3.maintainers;
+    maintainers = with maintainers; [ berce ] ++ teams.gnome.members;
     license = licenses.lgpl21;
     platforms = platforms.linux;
   };
diff --git a/pkgs/applications/misc/orpie/default.nix b/pkgs/applications/misc/orpie/default.nix
index e404da974c46..d869b0939558 100644
--- a/pkgs/applications/misc/orpie/default.nix
+++ b/pkgs/applications/misc/orpie/default.nix
@@ -12,7 +12,7 @@ stdenv.mkDerivation rec {
   buildInputs = [ ncurses gsl ] ++ (with ocamlPackages; [ ocaml camlp4 ]);
 
   meta = {
-    homepage = https://github.com/pelzlpj/orpie;
+    homepage = "https://github.com/pelzlpj/orpie";
     description = "A fullscreen RPN calculator for the console";
     license = stdenv.lib.licenses.gpl2;
     platforms = stdenv.lib.platforms.all;
diff --git a/pkgs/applications/misc/osmctools/default.nix b/pkgs/applications/misc/osmctools/default.nix
index c03e57920da9..b0f1f48d9aea 100644
--- a/pkgs/applications/misc/osmctools/default.nix
+++ b/pkgs/applications/misc/osmctools/default.nix
@@ -17,9 +17,9 @@ stdenv.mkDerivation rec {
   meta = with stdenv.lib; {
     description = "Command line tools for transforming Open Street Map files";
     homepage = [
-      https://wiki.openstreetmap.org/wiki/osmconvert
-      https://wiki.openstreetmap.org/wiki/osmfilter
-      https://wiki.openstreetmap.org/wiki/osmupdate
+      "https://wiki.openstreetmap.org/wiki/osmconvert"
+      "https://wiki.openstreetmap.org/wiki/osmfilter"
+      "https://wiki.openstreetmap.org/wiki/osmupdate"
     ];
     maintainers = with maintainers; [ sikmir ];
     platforms = platforms.unix;
diff --git a/pkgs/applications/misc/osmium-tool/default.nix b/pkgs/applications/misc/osmium-tool/default.nix
index 82144e9689f8..c0d20c14f7ce 100644
--- a/pkgs/applications/misc/osmium-tool/default.nix
+++ b/pkgs/applications/misc/osmium-tool/default.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation rec {
   pname = "osmium-tool";
-  version = "1.11.1";
+  version = "1.12.0";
 
   src = fetchFromGitHub {
     owner = "osmcode";
     repo = "osmium-tool";
     rev = "v${version}";
-    sha256 = "199dvajik5d56nybk2061vdjyxwakngfd7frxj99wr2vsrp4aw2b";
+    sha256 = "18afn5qzdjpip176kk5pr04mj0p7dv70dbz1n36qmqnq3gyms10q";
   };
 
   nativeBuildInputs = [ cmake ];
diff --git a/pkgs/applications/misc/overmind/default.nix b/pkgs/applications/misc/overmind/default.nix
index 7603a66cd362..29dc6f54e6c2 100644
--- a/pkgs/applications/misc/overmind/default.nix
+++ b/pkgs/applications/misc/overmind/default.nix
@@ -8,7 +8,7 @@ buildGoPackage rec {
   nativeBuildInputs = [ makeWrapper ];
 
   postInstall = ''
-    wrapProgram "$bin/bin/overmind" --prefix PATH : "${lib.makeBinPath [ tmux which ]}"
+    wrapProgram "$out/bin/overmind" --prefix PATH : "${lib.makeBinPath [ tmux which ]}"
   '';
 
   src = fetchFromGitHub {
diff --git a/pkgs/applications/misc/pcmanfm/default.nix b/pkgs/applications/misc/pcmanfm/default.nix
index c6cd118aea80..202e7a2de95f 100644
--- a/pkgs/applications/misc/pcmanfm/default.nix
+++ b/pkgs/applications/misc/pcmanfm/default.nix
@@ -19,7 +19,7 @@ stdenv.mkDerivation rec {
   configureFlags = optional withGtk3 "--with-gtk=3";
 
   meta = with stdenv.lib; {
-    homepage = https://blog.lxde.org/category/pcmanfm/;
+    homepage = "https://blog.lxde.org/category/pcmanfm/";
     license = licenses.gpl2Plus;
     description = "File manager with GTK interface";
     maintainers = [ maintainers.ttuegel ];
diff --git a/pkgs/applications/misc/pcmanx-gtk2/default.nix b/pkgs/applications/misc/pcmanx-gtk2/default.nix
index 17253173a5e4..6c3241d629b8 100644
--- a/pkgs/applications/misc/pcmanx-gtk2/default.nix
+++ b/pkgs/applications/misc/pcmanx-gtk2/default.nix
@@ -21,7 +21,7 @@ stdenv.mkDerivation rec {
   '';
 
   meta = with stdenv.lib; {
-    homepage = https://pcman.ptt.cc;
+    homepage = "https://pcman.ptt.cc";
     license = licenses.gpl2;
     description = "Telnet BBS browser with GTK interface";
     maintainers = [ maintainers.sifmelcara ];
diff --git a/pkgs/applications/misc/pdf-quench/default.nix b/pkgs/applications/misc/pdf-quench/default.nix
index 9756d9b42b0a..d364074d4450 100644
--- a/pkgs/applications/misc/pdf-quench/default.nix
+++ b/pkgs/applications/misc/pdf-quench/default.nix
@@ -28,7 +28,7 @@ pythonPackages.buildPythonApplication {
   '';
 
   meta = with stdenv.lib; {
-    homepage = https://github.com/linuxerwang/pdf-quench;
+    homepage = "https://github.com/linuxerwang/pdf-quench";
     description = "A visual tool for cropping pdf files";
     platforms = platforms.linux;
     license = licenses.gpl2;
diff --git a/pkgs/applications/misc/pdfarranger/default.nix b/pkgs/applications/misc/pdfarranger/default.nix
index ed54ccbb0a15..4d2576aaadce 100644
--- a/pkgs/applications/misc/pdfarranger/default.nix
+++ b/pkgs/applications/misc/pdfarranger/default.nix
@@ -5,13 +5,13 @@
 
 python3Packages.buildPythonApplication rec {
   pname = "pdfarranger";
-  version = "1.3.1";
+  version = "1.5.1";
 
   src = fetchFromGitHub {
     owner = "jeromerobert";
     repo = pname;
     rev = version;
-    sha256 = "1f8m8r81322i97wkqpmf7a4kiwnq244n6cnbldh03jc49vwq2kxx";
+    sha256 = "0n4jw0dsqw929a34ff077kz8w89vkjkqf8dy4c356zh6gf23cdxr";
   };
 
   nativeBuildInputs = [
@@ -26,7 +26,8 @@ python3Packages.buildPythonApplication rec {
 
   propagatedBuildInputs = with python3Packages; [
     pygobject3
-    pypdf2
+    pikepdf
+    setuptools
   ];
 
   # incompatible with wrapGAppsHook
diff --git a/pkgs/applications/misc/pdfdiff/default.nix b/pkgs/applications/misc/pdfdiff/default.nix
index ee54904bfd66..93ca8c644798 100644
--- a/pkgs/applications/misc/pdfdiff/default.nix
+++ b/pkgs/applications/misc/pdfdiff/default.nix
@@ -33,7 +33,7 @@ py.buildPythonApplication rec {
     '';
 
   meta = with stdenv.lib; {
-    homepage = http://www.cs.ox.ac.uk/people/cas.cremers/misc/pdfdiff.html;
+    homepage = "http://www.cs.ox.ac.uk/people/cas.cremers/misc/pdfdiff.html";
     description = "Tool to view the difference between two PDF or PS files";
     license = licenses.gpl2Plus;
     platforms = platforms.linux;
diff --git a/pkgs/applications/misc/pdfpc/default.nix b/pkgs/applications/misc/pdfpc/default.nix
index fa500989cac9..d8203b9e7b5d 100644
--- a/pkgs/applications/misc/pdfpc/default.nix
+++ b/pkgs/applications/misc/pdfpc/default.nix
@@ -41,7 +41,7 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "A presenter console with multi-monitor support for PDF files";
-    homepage = https://pdfpc.github.io/;
+    homepage = "https://pdfpc.github.io/";
     license = licenses.gpl2Plus;
     maintainers = with maintainers; [ pSub ];
     platforms = platforms.unix;
diff --git a/pkgs/applications/misc/pdfsam-basic/default.nix b/pkgs/applications/misc/pdfsam-basic/default.nix
index d82f8e1664bb..d18923527851 100644
--- a/pkgs/applications/misc/pdfsam-basic/default.nix
+++ b/pkgs/applications/misc/pdfsam-basic/default.nix
@@ -2,11 +2,11 @@
 
 stdenv.mkDerivation rec {
   pname = "pdfsam-basic";
-  version = "4.1.1";
+  version = "4.1.3";
 
   src = fetchurl {
     url = "https://github.com/torakiki/pdfsam/releases/download/v${version}/pdfsam_${version}-1_amd64.deb";
-    sha256 = "17qb3l7xibhb3fbskddvparrj2cxj4kz9qbril094kxrgbvyc9gs";
+    sha256 = "1rhv6mf6pr9aaa8516i3b7v6h622qb1p8c4jsy3j0s5wrdry5l9l";
   };
 
   unpackPhase = ''
diff --git a/pkgs/applications/misc/pell/default.nix b/pkgs/applications/misc/pell/default.nix
index fc4e5229c9c0..ae96ce6925e3 100644
--- a/pkgs/applications/misc/pell/default.nix
+++ b/pkgs/applications/misc/pell/default.nix
@@ -29,7 +29,7 @@ stdenv.mkDerivation rec {
   '';
 
   meta = with stdenv.lib; {
-    homepage = https://github.com/ebzzry/pell;
+    homepage = "https://github.com/ebzzry/pell";
     description = "A simple host availability monitor";
     license = licenses.mit;
     maintainers = [ maintainers.ebzzry ];
diff --git a/pkgs/applications/misc/perkeep/default.nix b/pkgs/applications/misc/perkeep/default.nix
index ae81ef3c9f6c..5a1e5ba65ded 100644
--- a/pkgs/applications/misc/perkeep/default.nix
+++ b/pkgs/applications/misc/perkeep/default.nix
@@ -13,13 +13,13 @@ let
 
 in buildGoPackage rec {
   name = "perkeep-${version}";
-  version = "unstable-2019-07-29";
+  version = "unstable-2020-03-23";
 
   src = fetchFromGitHub {
     owner = "perkeep";
     repo = "perkeep";
-    rev = "c9f78d02adf9740f3b8d403a1418554293cc9f41";
-    sha256 = "11rin94pjzg0kvizrq9ss42fjw7wfwx3g1pk8zdlhyfkiwwh2rmg";
+    rev = "c2e31370ddefd86b6112a5d891100ea3382a4254";
+    sha256 = "0jf02k20ms7h60wglcq6dj3vqi9rlfww7db5iplgwznbij70c1i4";
   };
 
   goPackagePath = "perkeep.org";
@@ -43,7 +43,7 @@ in buildGoPackage rec {
 
   meta = with lib; {
     description = "A way of storing, syncing, sharing, modelling and backing up content (née Camlistore)";
-    homepage = https://perkeep.org;
+    homepage = "https://perkeep.org";
     license = licenses.asl20;
     maintainers = with maintainers; [ cstrahan kalbasit ];
     platforms = platforms.unix;
diff --git a/pkgs/applications/misc/pgadmin/default.nix b/pkgs/applications/misc/pgadmin/default.nix
index 86e10ae0943e..5fc0703e011b 100644
--- a/pkgs/applications/misc/pgadmin/default.nix
+++ b/pkgs/applications/misc/pgadmin/default.nix
@@ -33,7 +33,7 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "PostgreSQL administration GUI tool";
-    homepage = https://www.pgadmin.org;
+    homepage = "https://www.pgadmin.org";
     license = licenses.gpl2;
     maintainers = with maintainers; [ domenkozar wmertens ];
     platforms = platforms.unix;
diff --git a/pkgs/applications/misc/pgmanage/default.nix b/pkgs/applications/misc/pgmanage/default.nix
index 241d5786468e..68f29cb9b9ac 100644
--- a/pkgs/applications/misc/pgmanage/default.nix
+++ b/pkgs/applications/misc/pgmanage/default.nix
@@ -29,7 +29,7 @@ stdenv.mkDerivation rec {
       PostgreSQL interface can hope to be. (Note: pgManage replaces Postage,
       which is no longer maintained.)
     '';
-    homepage = https://github.com/pgManage/pgManage;
+    homepage = "https://github.com/pgManage/pgManage";
     license = licenses.postgresql;
     maintainers = [ maintainers.basvandijk ];
   };
diff --git a/pkgs/applications/misc/pgmodeler/default.nix b/pkgs/applications/misc/pgmodeler/default.nix
index 83e45e255817..7532c6e9bc91 100644
--- a/pkgs/applications/misc/pgmodeler/default.nix
+++ b/pkgs/applications/misc/pgmodeler/default.nix
@@ -24,9 +24,9 @@ mkDerivation rec {
   meta = with stdenv.lib; {
     description = "A database modeling tool for PostgreSQL";
     longDescription = ''pgModeler (PostgreSQL Database Modeler) is an open source database modeling tool designed for PostgreSQL.'';
-    homepage = https://pgmodeler.io/;
+    homepage = "https://pgmodeler.io/";
     license = licenses.gpl3;
     maintainers = [ maintainers.esclear ];
     platforms = platforms.linux;
   };
-}
\ No newline at end of file
+}
diff --git a/pkgs/applications/misc/phwmon/default.nix b/pkgs/applications/misc/phwmon/default.nix
index 6fb70f1c9a26..017383a79a2d 100644
--- a/pkgs/applications/misc/phwmon/default.nix
+++ b/pkgs/applications/misc/phwmon/default.nix
@@ -31,7 +31,7 @@ stdenv.mkDerivation {
   '';
 
   meta = {
-    homepage = https://gitlab.com/o9000/phwmon;
+    homepage = "https://gitlab.com/o9000/phwmon";
     description = "Hardware monitor (CPU, memory, network and disk I/O) for the system tray";
     license = stdenv.lib.licenses.gpl2;
     platforms = stdenv.lib.platforms.unix;
diff --git a/pkgs/applications/misc/playonlinux/default.nix b/pkgs/applications/misc/playonlinux/default.nix
index 48188574ad4b..e3b7c48d2b4b 100644
--- a/pkgs/applications/misc/playonlinux/default.nix
+++ b/pkgs/applications/misc/playonlinux/default.nix
@@ -9,7 +9,7 @@
 , imagemagick
 , netcat-gnu
 , p7zip
-, python2Packages
+, python2
 , unzip
 , wget
 , wine
@@ -27,25 +27,25 @@
 let
   version = "4.3.4";
 
-  binpath = stdenv.lib.makeBinPath
-    [ cabextract
-      python2Packages.python
-      gettext
-      glxinfo
-      gnupg
-      icoutils
-      imagemagick
-      netcat-gnu
-      p7zip
-      unzip
-      wget
-      wine
-      xdg-user-dirs
-      xterm
-      which
-      curl
-      jq
-    ];
+  binpath = stdenv.lib.makeBinPath [ 
+    cabextract
+    python
+    gettext
+    glxinfo
+    gnupg
+    icoutils
+    imagemagick
+    netcat-gnu
+    p7zip
+    unzip
+    wget
+    wine
+    xdg-user-dirs
+    xterm
+    which
+    curl
+    jq
+  ];
 
   ld32 =
     if stdenv.hostPlatform.system == "x86_64-linux" then "${stdenv.cc}/nix-support/dynamic-linker-m32"
@@ -54,6 +54,11 @@ let
   ld64 = "${stdenv.cc}/nix-support/dynamic-linker";
   libs = pkgs: stdenv.lib.makeLibraryPath [ xorg.libX11 libGL ];
 
+  python = python2.withPackages(ps: with ps; [
+    wxPython
+    setuptools
+  ]);
+
 in stdenv.mkDerivation {
   pname = "playonlinux";
   inherit version;
@@ -65,15 +70,13 @@ in stdenv.mkDerivation {
 
   nativeBuildInputs = [ makeWrapper ];
 
-  buildInputs =
-    [ python2Packages.python
-      python2Packages.wxPython
-      python2Packages.setuptools
-      xorg.libX11
-      libGL
-    ];
+  buildInputs = [ 
+    xorg.libX11
+    libGL
+    python
+  ];
 
-  patchPhase = ''
+  postPatch = ''
     patchShebangs python tests/python
     sed -i "s/ %F//g" etc/PlayOnLinux.desktop
   '';
@@ -85,7 +88,6 @@ in stdenv.mkDerivation {
     install -D -m644 etc/PlayOnLinux.desktop $out/share/applications/playonlinux.desktop
 
     makeWrapper $out/share/playonlinux/playonlinux $out/bin/playonlinux \
-      --prefix PYTHONPATH : $PYTHONPATH:$(toPythonPath "$out") \
       --prefix PATH : ${binpath}
 
     bunzip2 $out/share/playonlinux/bin/check_dd_x86.bz2
@@ -103,7 +105,7 @@ in stdenv.mkDerivation {
 
   meta = with stdenv.lib; {
     description = "GUI for managing Windows programs under linux";
-    homepage = https://www.playonlinux.com/;
+    homepage = "https://www.playonlinux.com/";
     license = licenses.gpl3;
     maintainers = [ maintainers.a1russell ];
     platforms = [ "x86_64-linux" "i686-linux" ];
diff --git a/pkgs/applications/misc/polar-bookshelf/default.nix b/pkgs/applications/misc/polar-bookshelf/default.nix
index 8413f8c8f102..fc86b2e885de 100644
--- a/pkgs/applications/misc/polar-bookshelf/default.nix
+++ b/pkgs/applications/misc/polar-bookshelf/default.nix
@@ -81,7 +81,7 @@ stdenv.mkDerivation rec {
   '';
 
   meta = {
-    homepage = https://getpolarized.io/;
+    homepage = "https://getpolarized.io/";
     description = "Personal knowledge repository for PDF and web content supporting incremental reading and document annotation";
     license = stdenv.lib.licenses.gpl3;
     platforms = stdenv.lib.platforms.linux;
diff --git a/pkgs/applications/misc/polybar/default.nix b/pkgs/applications/misc/polybar/default.nix
index e1045663a3bd..1fc0162f8d08 100644
--- a/pkgs/applications/misc/polybar/default.nix
+++ b/pkgs/applications/misc/polybar/default.nix
@@ -68,11 +68,6 @@ stdenv.mkDerivation rec {
       (if i3Support || i3GapsSupport then makeWrapper else null)
     ];
 
-    postConfigure = ''
-      substituteInPlace generated-sources/settings.hpp \
-        --replace "${stdenv.cc}" "${stdenv.cc.name}"
-    '';
-
     postInstall = if (i3Support || i3GapsSupport) then ''
       wrapProgram $out/bin/polybar \
         --prefix PATH : "${if i3Support then i3 else i3-gaps}/bin"
diff --git a/pkgs/applications/misc/posterazor/default.nix b/pkgs/applications/misc/posterazor/default.nix
index 7209ee3e4009..674570ec3dd7 100644
--- a/pkgs/applications/misc/posterazor/default.nix
+++ b/pkgs/applications/misc/posterazor/default.nix
@@ -29,7 +29,7 @@ stdenv.mkDerivation {
   '';
 
   meta = with stdenv.lib; {
-    homepage = http://posterazor.sourceforge.net/;
+    homepage = "http://posterazor.sourceforge.net/";
     description = "Cuts a raster image into pieces which can afterwards be printed out and assembled to a poster";
     maintainers = [ maintainers.madjar ];
     license = licenses.gpl3Plus;
diff --git a/pkgs/applications/misc/printrun/default.nix b/pkgs/applications/misc/printrun/default.nix
index 34144e35bd5a..cadd98c74260 100644
--- a/pkgs/applications/misc/printrun/default.nix
+++ b/pkgs/applications/misc/printrun/default.nix
@@ -30,7 +30,7 @@ python27Packages.buildPythonApplication rec {
 
   meta = with stdenv.lib; {
     description = "Pronterface, Pronsole, and Printcore - Pure Python 3d printing host software";
-    homepage = https://github.com/kliment/Printrun;
+    homepage = "https://github.com/kliment/Printrun";
     license = licenses.gpl3;
     platforms = platforms.linux;
   };
diff --git a/pkgs/applications/misc/procmail/default.nix b/pkgs/applications/misc/procmail/default.nix
index cd3a46ab09ba..1e6c558defbe 100644
--- a/pkgs/applications/misc/procmail/default.nix
+++ b/pkgs/applications/misc/procmail/default.nix
@@ -6,7 +6,7 @@ stdenv.mkDerivation {
   patches = [
     ./CVE-2014-3618.patch
     (fetchurl {
-      url = https://sources.debian.org/data/main/p/procmail/3.22-26/debian/patches/30;
+      url = "https://sources.debian.org/data/main/p/procmail/3.22-26/debian/patches/30";
       sha256 = "11zmz1bj0v9pay3ldmyyg7473b80h89gycrhndsgg9q50yhcqaaq";
       name = "CVE-2017-16844";
     })
@@ -25,13 +25,13 @@ stdenv.mkDerivation {
   '';
 
   src = fetchurl {
-    url = ftp://ftp.fu-berlin.de/pub/unix/mail/procmail/procmail-3.22.tar.gz;
+    url = "ftp://ftp.fu-berlin.de/pub/unix/mail/procmail/procmail-3.22.tar.gz";
     sha256 = "05z1c803n5cppkcq99vkyd5myff904lf9sdgynfqngfk9nrpaz08";
   };
 
   meta = with stdenv.lib; {
     description = "Mail processing and filtering utility";
-    homepage = http://www.procmail.org/;
+    homepage = "http://www.procmail.org/";
     license = licenses.gpl2;
     platforms = platforms.unix;
     maintainers = with maintainers; [ gebner ];
diff --git a/pkgs/applications/misc/prusa-slicer/default.nix b/pkgs/applications/misc/prusa-slicer/default.nix
index caf4f270a151..144addf02c66 100644
--- a/pkgs/applications/misc/prusa-slicer/default.nix
+++ b/pkgs/applications/misc/prusa-slicer/default.nix
@@ -1,32 +1,34 @@
-{ stdenv, lib, fetchFromGitHub, makeWrapper, cmake, pkgconfig
+{ stdenv, lib, fetchFromGitHub, cmake, pkgconfig
 , boost, cereal, curl, eigen, expat, glew, libpng, tbb, wxGTK31
 , gtest, nlopt, xorg, makeDesktopItem
+, cgal_5, gmp, ilmbase, mpfr, qhull, openvdb, systemd
 }:
-let
-  nloptVersion = if lib.hasAttr "version" nlopt
-                 then lib.getAttr "version" nlopt
-                 else "2.4";
-in
 stdenv.mkDerivation rec {
   pname = "prusa-slicer";
-  version = "2.1.1";
+  version = "2.2.0";
 
   enableParallelBuilding = true;
 
   nativeBuildInputs = [
     cmake
-    makeWrapper
     pkgconfig
   ];
 
   buildInputs = [
     boost
     cereal
+    cgal_5
     curl
     eigen
     expat
     glew
+    gmp
+    ilmbase
     libpng
+    mpfr
+    nlopt
+    openvdb
+    systemd
     tbb
     wxGTK31
     xorg.libX11
@@ -35,31 +37,34 @@ stdenv.mkDerivation rec {
   checkInputs = [ gtest ];
 
   # The build system uses custom logic - defined in
-  # xs/src/libnest2d/cmake_modules/FindNLopt.cmake in the package source -
-  # for finding the nlopt library, which doesn't pick up the package in the nix store.
-  # We need to set the path via the NLOPT environment variable instead.
+  # cmake/modules/FindNLopt.cmake in the package source - for finding the nlopt
+  # library, which doesn't pick up the package in the nix store.  We
+  # additionally need to set the path via the NLOPT environment variable.
   NLOPT = nlopt;
 
-  # Disable compiler warnings that clutter the build log
+  # Disable compiler warnings that clutter the build log.
   # It seems to be a known issue for Eigen:
   # http://eigen.tuxfamily.org/bz/show_bug.cgi?id=1221
   NIX_CFLAGS_COMPILE = "-Wno-ignored-attributes";
 
+  # prusa-slicer uses dlopen on `libudev.so` at runtime
+  NIX_LDFLAGS = "-ludev";
+
   prePatch = ''
     # In nix ioctls.h isn't available from the standard kernel-headers package
     # like in other distributions. The copy in glibc seems to be identical to the
     # one in the kernel though, so we use that one instead.
     sed -i 's|"/usr/include/asm-generic/ioctls.h"|<asm-generic/ioctls.h>|g' src/libslic3r/GCodeSender.cpp
-  '' + lib.optionalString (lib.versionOlder "2.5" nloptVersion) ''
+
     # Since version 2.5.0 of nlopt we need to link to libnlopt, as libnlopt_cxx
     # now seems to be integrated into the main lib.
-    sed -i 's|nlopt_cxx|nlopt|g' src/libnest2d/cmake_modules/FindNLopt.cmake
+    sed -i 's|nlopt_cxx|nlopt|g' cmake/modules/FindNLopt.cmake
   '';
 
   src = fetchFromGitHub {
     owner = "prusa3d";
     repo = "PrusaSlicer";
-    sha256 = "0i393nbc2salb4j5l2hvy03ng7hmf90d2xj653pw9bsikhj0r3jd";
+    sha256 = "0954k9sm09y8qnz1jyswyysg10k54ywz8mswnwa4n2hnpq9qx73m";
     rev = "version_${version}";
   };
 
@@ -86,8 +91,8 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "G-code generator for 3D printer";
-    homepage = https://github.com/prusa3d/PrusaSlicer;
+    homepage = "https://github.com/prusa3d/PrusaSlicer";
     license = licenses.agpl3;
-    maintainers = with maintainers; [ tweber ];
+    maintainers = with maintainers; [ moredread tweber ];
   };
 }
diff --git a/pkgs/applications/misc/pt/Gemfile.lock b/pkgs/applications/misc/pt/Gemfile.lock
index 501fae0ef0a2..dfaa018d3724 100644
--- a/pkgs/applications/misc/pt/Gemfile.lock
+++ b/pkgs/applications/misc/pt/Gemfile.lock
@@ -66,4 +66,4 @@ DEPENDENCIES
   pt
 
 BUNDLED WITH
-   1.17.2
+   2.1.4
diff --git a/pkgs/applications/misc/pt/default.nix b/pkgs/applications/misc/pt/default.nix
index f5504721987a..ef490702a672 100644
--- a/pkgs/applications/misc/pt/default.nix
+++ b/pkgs/applications/misc/pt/default.nix
@@ -9,7 +9,7 @@ bundlerApp {
 
   meta = with lib; {
     description = "Minimalist command-line Pivotal Tracker client";
-    homepage    = http://www.github.com/raul/pt;
+    homepage    = "http://www.github.com/raul/pt";
     license     = licenses.mit;
     maintainers = with maintainers; [ ebzzry manveru nicknovitski ];
     platforms   = platforms.unix;
diff --git a/pkgs/applications/misc/ptask/default.nix b/pkgs/applications/misc/ptask/default.nix
index 81e316eb0ee9..a5fd55c967bb 100644
--- a/pkgs/applications/misc/ptask/default.nix
+++ b/pkgs/applications/misc/ptask/default.nix
@@ -21,7 +21,7 @@ stdenv.mkDerivation rec {
   '';
 
   meta = with stdenv.lib; {
-    homepage = http://wpitchoune.net/ptask/;
+    homepage = "http://wpitchoune.net/ptask/";
     description = "GTK-based GUI for taskwarrior";
     license = licenses.gpl2;
     maintainers = [ maintainers.spacefrogg ];
diff --git a/pkgs/applications/misc/pueue/default.nix b/pkgs/applications/misc/pueue/default.nix
index d2ee27ed1d1f..0498419910f6 100644
--- a/pkgs/applications/misc/pueue/default.nix
+++ b/pkgs/applications/misc/pueue/default.nix
@@ -1,23 +1,19 @@
-{ lib, rustPlatform, fetchFromGitHub, installShellFiles }:
+{ lib, rustPlatform, fetchFromGitHub }:
 
 rustPlatform.buildRustPackage rec {
   pname = "pueue";
-  version = "0.1.5";
+  version = "0.3.1";
 
   src = fetchFromGitHub {
     owner = "Nukesor";
     repo = pname;
     rev = "v${version}";
-    sha256 = "03aj4vw8kvwqk1i1a4kah5b574ahs930ij7xmqsvdy7f8c2g6pbq";
+    sha256 = "1v3fphx71hyv7fq09slhyzchw362swzhmhn7wmbazfdrj6fjhcki";
   };
 
-  nativeBuildInputs = [ installShellFiles ];
+  cargoSha256 = "04vi9la17pabz1spfw1fzgy4c2ifnis6am5m4ck3lhccnn6j8bd3";
 
-  cargoSha256 = "08zqhj3b0v4fxj8vi323zrxg4xvbp9gndm2khzs6daacglbwbvhk";
-
-  postInstall = ''
-    installShellCompletion utils/completions/pueue.{bash,fish} --zsh utils/completions/_pueue
-  '';
+  checkPhase = "cargo test -- --skip test_single_huge_payload";
 
   meta = with lib; {
     description = "A daemon for managing long running shell commands";
diff --git a/pkgs/applications/misc/pwsafe/default.nix b/pkgs/applications/misc/pwsafe/default.nix
index b1f4e5f9e42b..43197c6bf276 100644
--- a/pkgs/applications/misc/pwsafe/default.nix
+++ b/pkgs/applications/misc/pwsafe/default.nix
@@ -1,18 +1,18 @@
 { stdenv, fetchFromGitHub, cmake, pkgconfig, zip, gettext, perl
 , wxGTK31, libXext, libXi, libXt, libXtst, xercesc
 , qrencode, libuuid, libyubikey, yubikey-personalization
-, curl, openssl
+, curl, openssl, file
 }:
 
 stdenv.mkDerivation rec {
   pname = "pwsafe";
-  version = "1.08.2";
+  version = "3.52.0";
 
   src = fetchFromGitHub {
     owner = pname;
     repo = pname;
-    rev = "${version}BETA";
-    sha256 = "14qwk3cv5psj7ll71ikyv452x55c7iwjw9765yrpij6741r4yjln";
+    rev = "${version}";
+    sha256 = "1ka7xsl63v0559fzf3pwc1iqr37gwr4vq5iaxa2hzar2g28hsxvh";
   };
 
   nativeBuildInputs = [ 
@@ -22,6 +22,7 @@ stdenv.mkDerivation rec {
     libXext libXi libXt libXtst wxGTK31
     curl qrencode libuuid openssl xercesc
     libyubikey yubikey-personalization
+    file
   ];
 
   cmakeFlags = [
diff --git a/pkgs/applications/misc/pydf/default.nix b/pkgs/applications/misc/pydf/default.nix
index bfbee1bea24d..aa2835107088 100644
--- a/pkgs/applications/misc/pydf/default.nix
+++ b/pkgs/applications/misc/pydf/default.nix
@@ -9,9 +9,15 @@ python3Packages.buildPythonPackage rec {
     sha256 = "7f47a7c3abfceb1ac04fc009ded538df1ae449c31203962a1471a4eb3bf21439";
   };
 
+  postInstall = ''
+    mkdir -p $out/share/man/man1 $out/share/pydf
+    install -t $out/share/pydf -m 444 pydfrc
+    install -t $out/share/man/man1 -m 444 pydf.1
+  '';
+
   meta = with stdenv.lib; {
     description = "colourised df(1)-clone";
-    homepage = http://kassiopeia.juls.savba.sk/~garabik/software/pydf/;
+    homepage = "http://kassiopeia.juls.savba.sk/~garabik/software/pydf/";
     license = licenses.publicDomain;
     maintainers = with maintainers; [ monsieurp ];
   };
diff --git a/pkgs/applications/misc/pyditz/cerberus.nix b/pkgs/applications/misc/pyditz/cerberus.nix
index 614e3ca81350..be12906e61ec 100644
--- a/pkgs/applications/misc/pyditz/cerberus.nix
+++ b/pkgs/applications/misc/pyditz/cerberus.nix
@@ -12,7 +12,7 @@ buildPythonPackage rec {
   checkInputs = [ pytestrunner pytest ];
 
   meta = with stdenv.lib; {
-    homepage = http://python-cerberus.org/;
+    homepage = "http://python-cerberus.org/";
     description = "Lightweight, extensible schema and data validation tool for Python dictionaries";
     license = licenses.mit;
   };
diff --git a/pkgs/applications/misc/pyditz/default.nix b/pkgs/applications/misc/pyditz/default.nix
index 60de2f9abdc9..05338b38dfef 100644
--- a/pkgs/applications/misc/pyditz/default.nix
+++ b/pkgs/applications/misc/pyditz/default.nix
@@ -20,7 +20,7 @@ in buildPythonApplication rec {
   '';
 
   meta = with stdenv.lib; {
-    homepage = https://pythonhosted.org/pyditz/;
+    homepage = "https://pythonhosted.org/pyditz/";
     description = "Drop-in replacement for the Ditz distributed issue tracker";
     maintainers = [ maintainers.ilikeavocadoes ];
     license = licenses.lgpl2;
diff --git a/pkgs/applications/misc/pytrainer/default.nix b/pkgs/applications/misc/pytrainer/default.nix
index 0375b99af483..00c451141792 100644
--- a/pkgs/applications/misc/pytrainer/default.nix
+++ b/pkgs/applications/misc/pytrainer/default.nix
@@ -57,6 +57,7 @@ python3.pkgs.buildPythonApplication rec {
     psycopg2
     requests
     certifi
+    setuptools
   ];
 
   nativeBuildInputs = [
@@ -84,7 +85,7 @@ python3.pkgs.buildPythonApplication rec {
   '';
 
   meta = with stdenv.lib; {
-    homepage = https://github.com/pytrainer/pytrainer/wiki;
+    homepage = "https://github.com/pytrainer/pytrainer/wiki";
     description = "Application for logging and graphing sporting excursions";
     maintainers = [ maintainers.rycee ];
     license = licenses.gpl2Plus;
diff --git a/pkgs/applications/misc/qMasterPassword/default.nix b/pkgs/applications/misc/qMasterPassword/default.nix
index 977511273425..c2adcabe414c 100644
--- a/pkgs/applications/misc/qMasterPassword/default.nix
+++ b/pkgs/applications/misc/qMasterPassword/default.nix
@@ -40,7 +40,7 @@ mkDerivation rec {
       there is no password file that can be lost or get stolen. There is also
       no need to trust any online password service.
     '';
-    homepage = https://github.com/bkueng/qMasterPassword;
+    homepage = "https://github.com/bkueng/qMasterPassword";
     license = licenses.gpl3;
     maintainers = [ maintainers.tadeokondrak ];
     platforms = platforms.all;
diff --git a/pkgs/applications/misc/qcad/application-dir.patch b/pkgs/applications/misc/qcad/application-dir.patch
new file mode 100644
index 000000000000..84782e1e7178
--- /dev/null
+++ b/pkgs/applications/misc/qcad/application-dir.patch
@@ -0,0 +1,35 @@
+diff --git a/src/core/RS.cpp b/src/core/RS.cpp
+index d8a135d6f..659795dbb 100644
+--- a/src/core/RS.cpp
++++ b/src/core/RS.cpp
+@@ -151,7 +151,7 @@ QStringList RS::getDirectoryList(const QString& subDirectory) {
+     dirList.append(appDir + "/../../../" + subDirectory);
+     dirList.append(QDir::currentPath() + "/" + subDirectory);
+ #else
+-    dirList.append(appDir + "/" + subDirectory);
++    dirList.append(appDir + "/../lib/" + subDirectory);
+ #endif
+ 
+     /*
+diff --git a/src/core/RSettings.cpp b/src/core/RSettings.cpp
+index c6c31cbf5..c51b59ce6 100644
+--- a/src/core/RSettings.cpp
++++ b/src/core/RSettings.cpp
+@@ -367,6 +367,8 @@ QString RSettings::getApplicationPath() {
+         ret.cdUp();
+     }
+ 
++    ret.cd("../lib");
++
+     return ret.path();
+ }
+ 
+@@ -1268,7 +1270,7 @@ QString RSettings::getRevisionString() {
+ }
+ 
+ QString RSettings::getReleaseDate() {
+-    return __DATE__;
++    return "";
+ }
+ 
+ int RSettings::getSnapRange() {
diff --git a/pkgs/applications/misc/qcad/default.nix b/pkgs/applications/misc/qcad/default.nix
new file mode 100644
index 000000000000..4f046e34b189
--- /dev/null
+++ b/pkgs/applications/misc/qcad/default.nix
@@ -0,0 +1,92 @@
+{ boost
+, fetchFromGitHub
+, mkDerivationWith
+, muparser
+, pkgconfig
+, qmake
+, qt5
+, stdenv
+, libGLU
+}:
+
+mkDerivationWith stdenv.mkDerivation rec {
+  pname = "qcad";
+  version = "3.24.2.1";
+
+  src = fetchFromGitHub {
+    owner = "qcad";
+    repo = "qcad";
+    rev = "v${version}";
+    sha256 = "1g295gljq051x09f4d8k586bkg3vs8z22dn3rxj6xrm6803z8zw2";
+  };
+
+  patches = [
+    ./application-dir.patch
+  ];
+
+  postPatch = ''
+    mkdir src/3rdparty/qt-labs-qtscriptgenerator-${qt5.qtbase.version}
+    cp \
+      src/3rdparty/qt-labs-qtscriptgenerator-5.12.3/qt-labs-qtscriptgenerator-5.12.3.pro \
+      src/3rdparty/qt-labs-qtscriptgenerator-${qt5.qtbase.version}/qt-labs-qtscriptgenerator-${qt5.qtbase.version}.pro
+  '';
+
+  qmakeFlags = [
+    "MUPARSER_DIR=${muparser}"
+    "INSTALLROOT=$(out)"
+    "BOOST_DIR=${boost.dev}"
+  ];
+
+  installPhase = ''
+    runHook preInstall
+
+    install -Dm555 -t $out/bin release/qcad-bin
+    install -Dm555 -t $out/lib release/libspatialindexnavel.so
+    install -Dm555 -t $out/lib release/libqcadcore.so
+    install -Dm555 -t $out/lib release/libqcadentity.so
+    install -Dm555 -t $out/lib release/libqcadgrid.so
+    install -Dm555 -t $out/lib release/libqcadsnap.so
+    install -Dm555 -t $out/lib release/libqcadoperations.so
+    install -Dm555 -t $out/lib release/libqcadstemmer.so
+    install -Dm555 -t $out/lib release/libqcadspatialindex.so
+    install -Dm555 -t $out/lib release/libqcadgui.so
+    install -Dm555 -t $out/lib release/libqcadecmaapi.so
+
+    install -Dm444 -t $out/share/applications qcad.desktop
+    install -Dm644 -t $out/share/pixmaps      scripts/qcad_icon.png
+
+    cp -r scripts $out/lib
+    cp -r plugins $out/lib/plugins
+    cp -r patterns $out/lib/patterns
+
+    install -Dm644 scripts/qcad_icon.svg $out/share/icons/hicolor/scalable/apps/qcad.svg
+
+    runHook postInstall
+    '';
+
+  buildInputs = [
+    boost
+    muparser
+    libGLU
+    qt5.qtbase
+    qt5.qtscript
+    qt5.qtsvg
+    qt5.qtxmlpatterns
+  ];
+
+  nativeBuildInputs = [
+    pkgconfig
+    qt5.qmake
+    qt5.qttools
+  ];
+
+  enableParallelBuilding = true;
+
+  meta = with stdenv.lib; {
+    description = "2D CAD package based on Qt";
+    homepage = "https://qcad.org";
+    license = licenses.gpl3;
+    maintainers = with maintainers; [ yvesf ];
+    platforms = qt5.qtbase.meta.platforms;
+  };
+}
diff --git a/pkgs/applications/misc/qlandkartegt/default.nix b/pkgs/applications/misc/qlandkartegt/default.nix
index b9645980c64a..d780125fbbfa 100644
--- a/pkgs/applications/misc/qlandkartegt/default.nix
+++ b/pkgs/applications/misc/qlandkartegt/default.nix
@@ -79,7 +79,7 @@ mkDerivation rec {
   '';
 
   meta = with lib; {
-    homepage = http://www.qlandkarte.org/;
+    homepage = "http://www.qlandkarte.org/";
     description = ''
       QLandkarte GT is the ultimate outdoor aficionado's tool.
       It supports GPS maps in GeoTiff format as well as Garmin's img vector map format.
diff --git a/pkgs/applications/misc/qlandkartegt/garmindev.nix b/pkgs/applications/misc/qlandkartegt/garmindev.nix
index 382e7dbe1218..8705abd92596 100644
--- a/pkgs/applications/misc/qlandkartegt/garmindev.nix
+++ b/pkgs/applications/misc/qlandkartegt/garmindev.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchurl, cmake, libusb }:
+{ stdenv, fetchurl, cmake, libusb-compat-0_1 }:
 
 stdenv.mkDerivation rec {
   pname = "garmindev";
@@ -11,12 +11,12 @@ stdenv.mkDerivation rec {
 
   nativeBuildInputs = [ cmake ];
 
-  buildInputs = [ libusb ];
+  buildInputs = [ libusb-compat-0_1 ];
 
   enableParallelBuilding = true;
 
   meta = with stdenv.lib; {
-    homepage = http://www.qlandkarte.org/;
+    homepage = "http://www.qlandkarte.org/";
     description = "Garmin Device Drivers for QlandkarteGT";
     license = licenses.gpl2;
     maintainers = with maintainers; [ sikmir ];
diff --git a/pkgs/applications/misc/qlcplus/default.nix b/pkgs/applications/misc/qlcplus/default.nix
index c0b844d121af..77a24413bdd6 100644
--- a/pkgs/applications/misc/qlcplus/default.nix
+++ b/pkgs/applications/misc/qlcplus/default.nix
@@ -1,5 +1,5 @@
 { stdenv, mkDerivation, fetchFromGitHub, qmake, pkgconfig, udev
-, qtmultimedia, qtscript, alsaLib, ola, libftdi1, libusb
+, qtmultimedia, qtscript, alsaLib, ola, libftdi1, libusb-compat-0_1
 , libsndfile, libmad
 }:
 
@@ -16,7 +16,7 @@ mkDerivation rec {
 
   nativeBuildInputs = [ qmake pkgconfig ];
   buildInputs = [
-    udev qtmultimedia qtscript alsaLib ola libftdi1 libusb libsndfile libmad
+    udev qtmultimedia qtscript alsaLib ola libftdi1 libusb-compat-0_1 libsndfile libmad
   ];
 
   qmakeFlags = [ "INSTALLROOT=$(out)" ];
diff --git a/pkgs/applications/misc/qmapshack/default.nix b/pkgs/applications/misc/qmapshack/default.nix
index 21fbbf3253f7..a3238f7cba47 100644
--- a/pkgs/applications/misc/qmapshack/default.nix
+++ b/pkgs/applications/misc/qmapshack/default.nix
@@ -3,13 +3,13 @@
 
 mkDerivation rec {
   pname = "qmapshack";
-  version = "1.14.0";
+  version = "1.14.1";
 
   src = fetchFromGitHub {
     owner = "Maproom";
     repo = pname;
     rev = "V_${version}";
-    sha256 = "07c2hrq9sn456w7l3gdr599rmjfv2k6mh159zza7p1py8r7ywksa";
+    sha256 = "0hghynb4ac98fg1pwc645zriqkghxwp8mr3jhr87pa6fh0y848py";
   };
 
   nativeBuildInputs = [ cmake ];
@@ -30,7 +30,7 @@ mkDerivation rec {
   ];
 
   meta = with lib; {
-    homepage = https://github.com/Maproom/qmapshack;
+    homepage = "https://github.com/Maproom/qmapshack";
     description = "Consumer grade GIS software";
     license = licenses.gpl3;
     maintainers = with maintainers; [ dotlambda sikmir ];
diff --git a/pkgs/applications/misc/qmetro/default.nix b/pkgs/applications/misc/qmetro/default.nix
index 49993f2f7ea7..623bd050dc9b 100644
--- a/pkgs/applications/misc/qmetro/default.nix
+++ b/pkgs/applications/misc/qmetro/default.nix
@@ -22,7 +22,7 @@ stdenv.mkDerivation rec {
   enableParallelBuilding = true;
 
   meta = with stdenv.lib; {
-    homepage = https://sourceforge.net/projects/qmetro/;
+    homepage = "https://sourceforge.net/projects/qmetro/";
     description = "Worldwide transit maps viewer";
     license = licenses.gpl3;
 
diff --git a/pkgs/applications/misc/qolibri/default.nix b/pkgs/applications/misc/qolibri/default.nix
index c96fbab4d812..913d2bc3c6ba 100644
--- a/pkgs/applications/misc/qolibri/default.nix
+++ b/pkgs/applications/misc/qolibri/default.nix
@@ -20,7 +20,7 @@ mkDerivation {
   enableParallelBuilding = true;
 
   meta = with lib; {
-    homepage = https://github.com/ludios/qolibri;
+    homepage = "https://github.com/ludios/qolibri";
     description = "EPWING reader for viewing Japanese dictionaries";
     platforms = platforms.linux;
     maintainers = with maintainers; [ ];
diff --git a/pkgs/applications/misc/qpdfview/default.nix b/pkgs/applications/misc/qpdfview/default.nix
index 4100ab3536b7..3e55215f4733 100644
--- a/pkgs/applications/misc/qpdfview/default.nix
+++ b/pkgs/applications/misc/qpdfview/default.nix
@@ -43,7 +43,7 @@ mkDerivation {
     license = stdenv.lib.licenses.gpl2;
     maintainers = [stdenv.lib.maintainers.raskin];
     platforms = stdenv.lib.platforms.linux;
-    homepage = https://launchpad.net/qpdfview;
+    homepage = "https://launchpad.net/qpdfview";
     updateWalker = true;
   };
 }
diff --git a/pkgs/applications/misc/qsyncthingtray/default.nix b/pkgs/applications/misc/qsyncthingtray/default.nix
index 46b446b429bf..70d9f600fa03 100644
--- a/pkgs/applications/misc/qsyncthingtray/default.nix
+++ b/pkgs/applications/misc/qsyncthingtray/default.nix
@@ -56,7 +56,7 @@ mkDerivation rec {
   enableParallelBuilding = true;
 
   meta = with lib; {
-    homepage = https://github.com/sieren/QSyncthingTray/;
+    homepage = "https://github.com/sieren/QSyncthingTray/";
     description = "A Traybar Application for Syncthing written in C++";
     longDescription = ''
         A cross-platform status bar for Syncthing.
diff --git a/pkgs/applications/misc/qt-box-editor/default.nix b/pkgs/applications/misc/qt-box-editor/default.nix
index 702cadfdaa91..852f0d30f9a5 100644
--- a/pkgs/applications/misc/qt-box-editor/default.nix
+++ b/pkgs/applications/misc/qt-box-editor/default.nix
@@ -1,4 +1,5 @@
-{ stdenv
+{ mkDerivation
+, stdenv
 , fetchFromGitHub
 , qtbase
 , qtsvg
@@ -7,7 +8,7 @@
 , tesseract
 }:
 
-stdenv.mkDerivation {
+mkDerivation {
   pname = "qt-box-editor";
   version = "unstable-2019-07-12";
 
@@ -30,7 +31,7 @@ stdenv.mkDerivation {
 
   meta = with stdenv.lib; {
     description = "Editor of tesseract-ocr box files";
-    homepage = https://github.com/zdenop/qt-box-editor;
+    homepage = "https://github.com/zdenop/qt-box-editor";
     license = licenses.asl20;
     maintainers = [ maintainers.costrouc ];
     platforms = platforms.all;
diff --git a/pkgs/applications/misc/qtbitcointrader/default.nix b/pkgs/applications/misc/qtbitcointrader/default.nix
index 21d51f172582..c5dfdf95fb5e 100644
--- a/pkgs/applications/misc/qtbitcointrader/default.nix
+++ b/pkgs/applications/misc/qtbitcointrader/default.nix
@@ -28,7 +28,7 @@ mkDerivation {
 
   meta = with stdenv.lib; {
     description = "Bitcoin trading client";
-    homepage = https://centrabit.com/;
+    homepage = "https://centrabit.com/";
     license = licenses.gpl3;
     platforms = qt5.qtbase.meta.platforms;
     maintainers = [ maintainers.ehmry ];
diff --git a/pkgs/applications/misc/qtpass/default.nix b/pkgs/applications/misc/qtpass/default.nix
index 6b68071d4d05..faa199147490 100644
--- a/pkgs/applications/misc/qtpass/default.nix
+++ b/pkgs/applications/misc/qtpass/default.nix
@@ -53,7 +53,7 @@ mkDerivation rec {
 
   meta = with lib; {
     description = "A multi-platform GUI for pass, the standard unix password manager";
-    homepage = https://qtpass.org;
+    homepage = "https://qtpass.org";
     license = licenses.gpl3;
     maintainers = [ maintainers.hrdinka ];
     platforms = platforms.all;
diff --git a/pkgs/applications/misc/quicksynergy/default.nix b/pkgs/applications/misc/quicksynergy/default.nix
index 948bcf33d378..1956f0ad41d5 100644
--- a/pkgs/applications/misc/quicksynergy/default.nix
+++ b/pkgs/applications/misc/quicksynergy/default.nix
@@ -29,7 +29,7 @@ stdenv.mkDerivation rec {
 
       Remember to open port 24800 (used by synergys program) if you want to
       host mouse and keyboard.";
-    homepage = https://sourceforge.net/projects/quicksynergy/;
+    homepage = "https://sourceforge.net/projects/quicksynergy/";
     license = stdenv.lib.licenses.gpl2;
     maintainers = [ stdenv.lib.maintainers.spinus ];
     platforms = stdenv.lib.platforms.linux;
diff --git a/pkgs/applications/misc/ranger/default.nix b/pkgs/applications/misc/ranger/default.nix
index 243913d0a098..68ddef656972 100644
--- a/pkgs/applications/misc/ranger/default.nix
+++ b/pkgs/applications/misc/ranger/default.nix
@@ -56,7 +56,7 @@ python3Packages.buildPythonApplication rec {
 
   meta =  with lib; {
     description = "File manager with minimalistic curses interface";
-    homepage = http://ranger.github.io/;
+    homepage = "http://ranger.github.io/";
     license = licenses.gpl3;
     platforms = platforms.unix;
     maintainers = [ maintainers.toonn maintainers.magnetophon ];
diff --git a/pkgs/applications/misc/redis-desktop-manager/default.nix b/pkgs/applications/misc/redis-desktop-manager/default.nix
index ac62ccc00cbf..ec40347cbcb3 100644
--- a/pkgs/applications/misc/redis-desktop-manager/default.nix
+++ b/pkgs/applications/misc/redis-desktop-manager/default.nix
@@ -75,7 +75,7 @@ EOF
 
   meta = with lib; {
     description = "Cross-platform open source Redis DB management tool";
-    homepage = https://redisdesktop.com/;
+    homepage = "https://redisdesktop.com/";
     license = licenses.lgpl21;
     platforms = platforms.linux;
     maintainers = with maintainers; [ cstrahan ];
diff --git a/pkgs/applications/misc/redshift-plasma-applet/default.nix b/pkgs/applications/misc/redshift-plasma-applet/default.nix
index 2eebe67c46da..c14eee398cee 100644
--- a/pkgs/applications/misc/redshift-plasma-applet/default.nix
+++ b/pkgs/applications/misc/redshift-plasma-applet/default.nix
@@ -37,7 +37,7 @@ stdenv.mkDerivation {
 
   meta = with stdenv.lib; {
     description = "KDE Plasma 5 widget for controlling Redshift";
-    homepage = https://github.com/kotelnik/plasma-applet-redshift-control;
+    homepage = "https://github.com/kotelnik/plasma-applet-redshift-control";
     license = licenses.gpl2Plus;
     platforms = platforms.linux;
     maintainers = with maintainers; [ benley zraexy ];
diff --git a/pkgs/applications/misc/redshift/default.nix b/pkgs/applications/misc/redshift/default.nix
index e9862041f4a8..43393478ec4a 100644
--- a/pkgs/applications/misc/redshift/default.nix
+++ b/pkgs/applications/misc/redshift/default.nix
@@ -93,7 +93,7 @@ rec {
         be set to match the lamps in your room.
       '';
       license = licenses.gpl3Plus;
-      homepage = http://jonls.dk/redshift;
+      homepage = "http://jonls.dk/redshift";
       platforms = platforms.unix;
       maintainers = with maintainers; [ yegortimoshenko globin ];
     };
@@ -101,18 +101,19 @@ rec {
 
   redshift-wlr = mkRedshift {
     pname = "redshift-wlr";
-    version = "2019-04-17";
+    # upstream rebases so this is the push date
+    version = "2019-08-24";
 
     src = fetchFromGitHub {
       owner = "minus7";
       repo = "redshift";
-      rev = "eecbfedac48f827e96ad5e151de8f41f6cd3af66";
+      rev = "7da875d34854a6a34612d5ce4bd8718c32bec804";
       sha256 = "0rs9bxxrw4wscf4a8yl776a8g880m5gcm75q06yx2cn3lw2b7v22";
     };
 
     meta = redshift.meta // {
       description = redshift.meta.description + "(with wlroots patches)";
-      homepage = https://github.com/minus7/redshift;
+      homepage = "https://github.com/minus7/redshift";
     };
   };
 }
diff --git a/pkgs/applications/misc/regextester/default.nix b/pkgs/applications/misc/regextester/default.nix
index 816a158c0319..22f46eed7df4 100644
--- a/pkgs/applications/misc/regextester/default.nix
+++ b/pkgs/applications/misc/regextester/default.nix
@@ -51,7 +51,7 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "A desktop application to test regular expressions interactively";
-    homepage = https://github.com/artemanufrij/regextester;
+    homepage = "https://github.com/artemanufrij/regextester";
     maintainers = with maintainers; [ samdroid-apps ];
     platforms = platforms.linux;
     license = licenses.gpl2Plus;
diff --git a/pkgs/applications/misc/rescuetime/default.nix b/pkgs/applications/misc/rescuetime/default.nix
index 13ae1f1ba7d3..9784e24187bf 100644
--- a/pkgs/applications/misc/rescuetime/default.nix
+++ b/pkgs/applications/misc/rescuetime/default.nix
@@ -5,15 +5,15 @@ let
     if stdenv.hostPlatform.system == "i686-linux" then fetchurl {
       name = "rescuetime-installer.deb";
       url = "https://www.rescuetime.com/installers/rescuetime_current_i386.deb";
-      sha256 = "0mw8dh9z7pqan0yrhycmv39h5c1sc4mbw5l02cfnn17cy75xdiay";
+      sha256 = "1yzbs2lg04bq0clkr6gfkx3j6wrahpnxqfiq4askk9k76y4ncd4m";
     } else fetchurl {
       name = "rescuetime-installer.deb";
       url = "https://www.rescuetime.com/installers/rescuetime_current_amd64.deb";
-      sha256 = "1a6pc8vi2ab721kzyhvg6bmw24dr85dgmx2m9j9vbf3jyr85fv10";
+      sha256 = "1njxsh601d0p6n0hxv44gcg8gd43xwym83xwqba26vj6xw82bknv";
     };
 in mkDerivation {
   # https://www.rescuetime.com/updates/linux_release_notes.html
-  name = "rescuetime-2.14.5.2";
+  name = "rescuetime-2.15.0.1";
   inherit src;
   nativeBuildInputs = [ dpkg ];
   # avoid https://github.com/NixOS/patchelf/issues/99
diff --git a/pkgs/applications/misc/robo3t/default.nix b/pkgs/applications/misc/robo3t/default.nix
index 00640be6c74a..d1e31b4077f4 100644
--- a/pkgs/applications/misc/robo3t/default.nix
+++ b/pkgs/applications/misc/robo3t/default.nix
@@ -23,7 +23,7 @@ stdenv.mkDerivation rec {
     comment = "Query GUI for mongodb";
     desktopName = "Robo3T";
     genericName = "MongoDB management tool";
-    categories = "Development;IDE;mongodb;";
+    categories = "Development;IDE;";
   };
 
   nativeBuildInputs = [makeWrapper];
@@ -70,7 +70,7 @@ stdenv.mkDerivation rec {
   '';
 
   meta = {
-    homepage = https://robomongo.org/;
+    homepage = "https://robomongo.org/";
     description = "Query GUI for mongodb";
     platforms = [ "x86_64-linux" ];
     license = stdenv.lib.licenses.gpl3;
diff --git a/pkgs/applications/misc/robomongo/default.nix b/pkgs/applications/misc/robomongo/default.nix
index 8df4e960c180..ef0a30472974 100644
--- a/pkgs/applications/misc/robomongo/default.nix
+++ b/pkgs/applications/misc/robomongo/default.nix
@@ -68,7 +68,7 @@ stdenv.mkDerivation rec {
   '';
 
   meta = {
-    homepage = https://robomongo.org/;
+    homepage = "https://robomongo.org/";
     description = "Query GUI for mongodb";
     platforms = stdenv.lib.intersectLists stdenv.lib.platforms.linux stdenv.lib.platforms.x86_64;
     license = stdenv.lib.licenses.gpl3;
diff --git a/pkgs/applications/misc/rofi-emoji/0001-Patch-plugindir-to-output.patch b/pkgs/applications/misc/rofi-emoji/0001-Patch-plugindir-to-output.patch
new file mode 100644
index 000000000000..9b9479b1b49a
--- /dev/null
+++ b/pkgs/applications/misc/rofi-emoji/0001-Patch-plugindir-to-output.patch
@@ -0,0 +1,25 @@
+From 695e7a441fc28b874e65917fe2c0059b5b8ca749 Mon Sep 17 00:00:00 2001
+From: Cole Helbling <cole.e.helbling@outlook.com>
+Date: Sat, 28 Mar 2020 23:46:03 -0700
+Subject: [PATCH] Patch plugindir to output
+
+---
+ configure.ac | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/configure.ac b/configure.ac
+index 75e476f..cb1ddf7 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -55,7 +55,7 @@ PKG_CHECK_MODULES([glib],     [glib-2.0 >= 2.40 gio-unix-2.0 gmodule-2.0 ])
+ PKG_CHECK_MODULES([cairo],    [cairo])
+ PKG_CHECK_MODULES([rofi],     [rofi])
+ 
+-[rofi_PLUGIN_INSTALL_DIR]="`$PKG_CONFIG --variable=pluginsdir rofi`"
++[rofi_PLUGIN_INSTALL_DIR]="`echo $out/lib/rofi`"
+ AC_SUBST([rofi_PLUGIN_INSTALL_DIR])
+ 
+ LT_INIT([disable-static])
+-- 
+2.25.1
+
diff --git a/pkgs/applications/misc/rofi-emoji/default.nix b/pkgs/applications/misc/rofi-emoji/default.nix
new file mode 100644
index 000000000000..14742da35dae
--- /dev/null
+++ b/pkgs/applications/misc/rofi-emoji/default.nix
@@ -0,0 +1,69 @@
+{ stdenv
+, lib
+, fetchFromGitHub
+, fetchpatch
+, substituteAll
+, makeWrapper
+
+, autoreconfHook
+, pkgconfig
+
+, cairo
+, glib
+, libnotify
+, rofi-unwrapped
+, wl-clipboard
+, xclip
+, xsel
+}:
+
+stdenv.mkDerivation rec {
+  pname = "rofi-emoji";
+  version = "2.1.2";
+
+  src = fetchFromGitHub {
+    owner = "Mange";
+    repo = pname;
+    rev = "v${version}";
+    sha256 = "0knsvsdff2c7ww94120bq92735qrfriyd28mi0n72ccb2iikyi8b";
+  };
+
+  patches = [
+    # Look for plugin-related files in $out/lib/rofi
+    ./0001-Patch-plugindir-to-output.patch
+  ];
+
+  postPatch = ''
+    patchShebangs clipboard-adapter.sh
+  '';
+
+  postFixup = ''
+    chmod +x $out/share/rofi-emoji/clipboard-adapter.sh
+    wrapProgram $out/share/rofi-emoji/clipboard-adapter.sh \
+      --prefix PATH ":" ${lib.makeBinPath [ libnotify wl-clipboard xclip xsel ]}
+  '';
+
+  nativeBuildInputs = [
+    autoreconfHook
+    pkgconfig
+  ];
+
+  buildInputs = [
+    cairo
+    glib
+    libnotify
+    makeWrapper
+    rofi-unwrapped
+    wl-clipboard
+    xclip
+    xsel
+  ];
+
+  meta = with lib; {
+    description = "An emoji selector plugin for Rofi";
+    homepage = "https://github.com/Mange/rofi-emoji";
+    license = licenses.mit;
+    maintainers = with maintainers; [ cole-h ];
+    platforms = platforms.linux;
+  };
+}
diff --git a/pkgs/applications/misc/rofi-file-browser/default.nix b/pkgs/applications/misc/rofi-file-browser/default.nix
new file mode 100644
index 000000000000..10453b858491
--- /dev/null
+++ b/pkgs/applications/misc/rofi-file-browser/default.nix
@@ -0,0 +1,34 @@
+{ stdenv, fetchFromGitHub, cmake, pkgconfig, rofi, gtk3 }:
+
+stdenv.mkDerivation rec {
+  pname = "rofi-file-browser-extended";
+  version = "1.1.1";
+
+  src = fetchFromGitHub {
+    owner = "marvinkreis";
+    repo = pname;
+    rev = version;
+    sha256 = "10wk5sif3bmvsgyk2gdy0qhpv1b37zgzf89n3h0yh7pg195fi2gn";
+    fetchSubmodules = true;
+  };
+
+  prePatch = ''
+    substituteInPlace ./CMakeLists.txt \
+      --replace ' ''${ROFI_PLUGINS_DIR}' " $out/lib/rofi" \
+      --replace "/usr/share/" "$out/share/"
+  '';
+
+  nativeBuildInputs = [ cmake pkgconfig ];
+  buildInputs = [ rofi gtk3 ];
+
+  ROFI_PLUGINS_DIR = "$out/lib/rofi";
+
+  dontUseCmakeBuildDir = true;
+
+  meta = with stdenv.lib; {
+    description = "Use rofi to quickly open files";
+    homepage = "https://github.com/marvinkreis/rofi-file-browser-extended";
+    license = licenses.mit;
+    maintainers = with maintainers; [ jluttine ];
+  };
+}
diff --git a/pkgs/applications/misc/rofi-menugen/default.nix b/pkgs/applications/misc/rofi-menugen/default.nix
index 2255089ab7e2..088ec29ae37b 100644
--- a/pkgs/applications/misc/rofi-menugen/default.nix
+++ b/pkgs/applications/misc/rofi-menugen/default.nix
@@ -21,7 +21,7 @@ stdenv.mkDerivation rec {
   '';
   meta = with stdenv.lib; {
     description = "Generates menu based applications using rofi";
-    homepage = https://github.com/octotep/menugen;
+    homepage = "https://github.com/octotep/menugen";
     maintainers = with maintainers; [ ];
     platforms = platforms.all;
   };
diff --git a/pkgs/applications/misc/rofi/wrapper.nix b/pkgs/applications/misc/rofi/wrapper.nix
index 1c7284a2db26..4e69f9cce145 100644
--- a/pkgs/applications/misc/rofi/wrapper.nix
+++ b/pkgs/applications/misc/rofi/wrapper.nix
@@ -1,23 +1,26 @@
-{ stdenv, rofi-unwrapped, makeWrapper, hicolor-icon-theme, theme ? null }:
+{ symlinkJoin, lib, rofi-unwrapped, makeWrapper, hicolor-icon-theme, theme ? null, plugins ? [] }:
 
-stdenv.mkDerivation {
-  pname = "rofi";
-  version = rofi-unwrapped.version;
+symlinkJoin {
+  name = "rofi-${rofi-unwrapped.version}";
+
+  paths = [
+    rofi-unwrapped.out
+  ] ++ (lib.forEach plugins (p: p.out));
 
   buildInputs = [ makeWrapper ];
   preferLocalBuild = true;
   passthru.unwrapped = rofi-unwrapped;
-  buildCommand = ''
-    mkdir $out
-    ln -s ${rofi-unwrapped}/* $out
-    rm $out/bin
+  postBuild = ''
+    rm -rf $out/bin
     mkdir $out/bin
     ln -s ${rofi-unwrapped}/bin/* $out/bin
 
     rm $out/bin/rofi
     makeWrapper ${rofi-unwrapped}/bin/rofi $out/bin/rofi \
       --prefix XDG_DATA_DIRS : ${hicolor-icon-theme}/share \
-      ${if theme != null then ''--add-flags "-theme ${theme}"'' else ""}
+      ${lib.optionalString (plugins != []) ''--prefix XDG_DATA_DIRS : ${lib.concatStringsSep ":" (lib.forEach plugins (p: "${p.out}/share"))}''} \
+      ${lib.optionalString (theme != null) ''--add-flags "-theme ${theme}"''} \
+      ${lib.optionalString (plugins != []) ''--add-flags "-plugin-path $out/lib/rofi"''}
 
     rm $out/bin/rofi-theme-selector
     makeWrapper ${rofi-unwrapped}/bin/rofi-theme-selector $out/bin/rofi-theme-selector \
diff --git a/pkgs/applications/misc/rsibreak/default.nix b/pkgs/applications/misc/rsibreak/default.nix
index 6ee9966401b5..eefc0a0c5772 100644
--- a/pkgs/applications/misc/rsibreak/default.nix
+++ b/pkgs/applications/misc/rsibreak/default.nix
@@ -22,7 +22,7 @@ in mkDerivation rec {
   meta = with lib; {
     description = "RSIBreak takes care of your health and regularly breaks your work to avoid repetitive strain injury (RSI)";
     license = licenses.gpl2;
-    homepage = https://www.kde.org/applications/utilities/rsibreak/;
+    homepage = "https://www.kde.org/applications/utilities/rsibreak/";
     maintainers = with maintainers; [ vandenoever ];
   };
 }
diff --git a/pkgs/applications/misc/rtv/default.nix b/pkgs/applications/misc/rtv/default.nix
index 20211ecb53b1..c4547e875130 100644
--- a/pkgs/applications/misc/rtv/default.nix
+++ b/pkgs/applications/misc/rtv/default.nix
@@ -38,7 +38,7 @@ buildPythonApplication rec {
   ];
 
   meta = with stdenv.lib; {
-    homepage = https://github.com/michael-lazar/rtv;
+    homepage = "https://github.com/michael-lazar/rtv";
     description = "Browse Reddit from your Terminal";
     license = licenses.mit;
     maintainers = with maintainers; [ matthiasbeyer wedens ];
diff --git a/pkgs/applications/misc/rxvt-unicode-plugins/urxvt-font-size/default.nix b/pkgs/applications/misc/rxvt-unicode-plugins/urxvt-font-size/default.nix
index 4f4319af6cbd..f81709b97390 100644
--- a/pkgs/applications/misc/rxvt-unicode-plugins/urxvt-font-size/default.nix
+++ b/pkgs/applications/misc/rxvt-unicode-plugins/urxvt-font-size/default.nix
@@ -22,7 +22,7 @@ stdenv.mkDerivation {
 
   meta = with stdenv.lib; {
     description = "Change the urxvt font size on the fly";
-    homepage = https://github.com/majutsushi/urxvt-font-size;
+    homepage = "https://github.com/majutsushi/urxvt-font-size";
     license = licenses.mit;
     maintainers = with maintainers; [ cstrahan ];
     platforms = with platforms; unix;
diff --git a/pkgs/applications/misc/rxvt-unicode-plugins/urxvt-perl/default.nix b/pkgs/applications/misc/rxvt-unicode-plugins/urxvt-perl/default.nix
index 13e005014f10..0c95acd72057 100644
--- a/pkgs/applications/misc/rxvt-unicode-plugins/urxvt-perl/default.nix
+++ b/pkgs/applications/misc/rxvt-unicode-plugins/urxvt-perl/default.nix
@@ -21,7 +21,7 @@ stdenv.mkDerivation {
 
   meta = with stdenv.lib; {
     description = "Perl extensions for the rxvt-unicode terminal emulator";
-    homepage = https://github.com/effigies/urxvt-perl;
+    homepage = "https://github.com/effigies/urxvt-perl";
     license = licenses.gpl3;
     maintainers = with maintainers; [ cstrahan ];
     platforms = with platforms; unix;
diff --git a/pkgs/applications/misc/rxvt-unicode-plugins/urxvt-perls/default.nix b/pkgs/applications/misc/rxvt-unicode-plugins/urxvt-perls/default.nix
index dac041410707..53bb938c3330 100644
--- a/pkgs/applications/misc/rxvt-unicode-plugins/urxvt-perls/default.nix
+++ b/pkgs/applications/misc/rxvt-unicode-plugins/urxvt-perls/default.nix
@@ -21,7 +21,7 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "Perl extensions for the rxvt-unicode terminal emulator";
-    homepage = https://github.com/muennich/urxvt-perls;
+    homepage = "https://github.com/muennich/urxvt-perls";
     license = licenses.gpl2;
     maintainers = with maintainers; [ abbradar ];
     platforms = with platforms; unix;
diff --git a/pkgs/applications/misc/rxvt-unicode-plugins/urxvt-tabbedex/default.nix b/pkgs/applications/misc/rxvt-unicode-plugins/urxvt-tabbedex/default.nix
index 2982c02cce9a..71a55f9293c6 100644
--- a/pkgs/applications/misc/rxvt-unicode-plugins/urxvt-tabbedex/default.nix
+++ b/pkgs/applications/misc/rxvt-unicode-plugins/urxvt-tabbedex/default.nix
@@ -17,7 +17,7 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "Tabbed plugin for rxvt-unicode with many enhancements (mina86's fork)";
-    homepage = https://github.com/mina86/urxvt-tabbedex;
+    homepage = "https://github.com/mina86/urxvt-tabbedex";
     maintainers = with maintainers; [ abbradar ];
     platforms = with platforms; unix;
   };
diff --git a/pkgs/applications/misc/rxvt-unicode-plugins/urxvt-theme-switch/default.nix b/pkgs/applications/misc/rxvt-unicode-plugins/urxvt-theme-switch/default.nix
index ba8ec3a6e72a..5a84a9b472a5 100644
--- a/pkgs/applications/misc/rxvt-unicode-plugins/urxvt-theme-switch/default.nix
+++ b/pkgs/applications/misc/rxvt-unicode-plugins/urxvt-theme-switch/default.nix
@@ -20,7 +20,7 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "urxvt plugin that allows to switch color themes during runtime";
-    homepage = https://github.com/felixr/urxvt-theme-switch;
+    homepage = "https://github.com/felixr/urxvt-theme-switch";
     license = "CCBYNC";
     maintainers = with maintainers; [ ];
     platforms = with platforms; unix;
diff --git a/pkgs/applications/misc/rxvt-unicode-plugins/urxvt-vtwheel/default.nix b/pkgs/applications/misc/rxvt-unicode-plugins/urxvt-vtwheel/default.nix
index 3d0dec20c9a4..aebbedacef64 100644
--- a/pkgs/applications/misc/rxvt-unicode-plugins/urxvt-vtwheel/default.nix
+++ b/pkgs/applications/misc/rxvt-unicode-plugins/urxvt-vtwheel/default.nix
@@ -18,7 +18,7 @@ stdenv.mkDerivation {
 
   meta = with stdenv.lib; {
     description = "Pass mouse wheel commands to secondary screens (screen, less, nano, etc)";
-    homepage = https://aur.archlinux.org/packages/urxvt-vtwheel;
+    homepage = "https://aur.archlinux.org/packages/urxvt-vtwheel";
     license = licenses.mit;
     maintainers = with maintainers; [ danbst ];
     platforms = with platforms; unix;
diff --git a/pkgs/applications/misc/rxvt/default.nix b/pkgs/applications/misc/rxvt/default.nix
index acdd21a1c219..c71973da13be 100644
--- a/pkgs/applications/misc/rxvt/default.nix
+++ b/pkgs/applications/misc/rxvt/default.nix
@@ -19,7 +19,7 @@ stdenv.mkDerivation rec {
   '';
 
   meta = with stdenv.lib; {
-    homepage = http://rxvt.sourceforge.net/;
+    homepage = "http://rxvt.sourceforge.net/";
     description = "Colour vt102 terminal emulator with less features and lower memory consumption";
     longDescription = ''
       rxvt (acronym for our extended virtual terminal) is a terminal
diff --git a/pkgs/applications/misc/safeeyes/default.nix b/pkgs/applications/misc/safeeyes/default.nix
index 125170d36c27..f6bb7133d999 100644
--- a/pkgs/applications/misc/safeeyes/default.nix
+++ b/pkgs/applications/misc/safeeyes/default.nix
@@ -61,7 +61,7 @@ in buildPythonApplication rec {
   doCheck = false; # no tests
 
   meta = {
-    homepage = http://slgobinath.github.io/SafeEyes;
+    homepage = "http://slgobinath.github.io/SafeEyes";
     description = "Protect your eyes from eye strain using this simple and beautiful, yet extensible break reminder. A Free and Open Source Linux alternative to EyeLeo";
     license = lib.licenses.gpl3;
     maintainers = with lib.maintainers; [ srghma ];
diff --git a/pkgs/applications/misc/sakura/default.nix b/pkgs/applications/misc/sakura/default.nix
index f646b4739154..34a6142e83a1 100644
--- a/pkgs/applications/misc/sakura/default.nix
+++ b/pkgs/applications/misc/sakura/default.nix
@@ -18,7 +18,7 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "A terminal emulator based on GTK and VTE";
-    homepage    = http://www.pleyades.net/david/projects/sakura;
+    homepage    = "http://www.pleyades.net/david/projects/sakura";
     license     = licenses.gpl2;
     maintainers = with maintainers; [ astsmtl codyopel ];
     platforms   = platforms.linux;
diff --git a/pkgs/applications/misc/sampler/default.nix b/pkgs/applications/misc/sampler/default.nix
index a04b0dcbba6a..0c5494f146f7 100644
--- a/pkgs/applications/misc/sampler/default.nix
+++ b/pkgs/applications/misc/sampler/default.nix
@@ -2,16 +2,16 @@
 
 buildGoModule rec {
   pname = "sampler";
-  version = "1.0.3";
+  version = "1.1.0";
 
   src = fetchFromGitHub {
     owner = "sqshq";
     repo = pname;
     rev = "v${version}";
-    sha256 = "129vifb1y57vyqj9p23gq778jschndh2y2ingwvjz0a6lrm45vpf";
+    sha256 = "1lanighxhnn28dfzils7i55zgxbw2abd6y723mq7x9wg1aa2bd0z";
   };
 
-  modSha256 = "0wgwnn50lrg6ix5ll2jdwi421wgqgsv4y9xd5hfj81kya3dxcbw0";
+  modSha256 = "02ai193lpzsxdn1hpbndkfxdc88nyl4kcgbadhy122kgx13crcy8";
 
   subPackages = [ "." ];
 
diff --git a/pkgs/applications/misc/sbagen/default.nix b/pkgs/applications/misc/sbagen/default.nix
index 6f38ba5662b5..821fbe35ca1a 100644
--- a/pkgs/applications/misc/sbagen/default.nix
+++ b/pkgs/applications/misc/sbagen/default.nix
@@ -23,7 +23,7 @@ stdenv.mkDerivation rec {
 
   meta = {
     description = "Binaural sound generator";
-    homepage = http://uazu.net/sbagen;
+    homepage = "http://uazu.net/sbagen";
     license = "GPL";
     platforms = [ "i686-linux" ];
   };
diff --git a/pkgs/applications/misc/sc-im/default.nix b/pkgs/applications/misc/sc-im/default.nix
index c95eba48bdfb..6ee4695d1717 100644
--- a/pkgs/applications/misc/sc-im/default.nix
+++ b/pkgs/applications/misc/sc-im/default.nix
@@ -33,7 +33,7 @@ stdenv.mkDerivation rec {
   '';
 
   meta = with stdenv.lib; {
-    homepage = https://github.com/andmarti1424/sc-im;
+    homepage = "https://github.com/andmarti1424/sc-im";
     description = "SC-IM - Spreadsheet Calculator Improvised - SC fork";
     license = licenses.bsdOriginal;
     maintainers = [ ];
diff --git a/pkgs/applications/misc/sdcv/default.nix b/pkgs/applications/misc/sdcv/default.nix
index 3cebcc0101f8..997786fc1072 100644
--- a/pkgs/applications/misc/sdcv/default.nix
+++ b/pkgs/applications/misc/sdcv/default.nix
@@ -22,7 +22,7 @@ stdenv.mkDerivation rec {
   NIX_CFLAGS_COMPILE = "-D__GNU_LIBRARY__";
 
   meta = with stdenv.lib; {
-    homepage = https://dushistov.github.io/sdcv/;
+    homepage = "https://dushistov.github.io/sdcv/";
     description = "Console version of StarDict";
     maintainers = with maintainers; [ lovek323 ];
     license = licenses.gpl2;
diff --git a/pkgs/applications/misc/sent/default.nix b/pkgs/applications/misc/sent/default.nix
index 9bbae33b3e41..fe8598e49157 100644
--- a/pkgs/applications/misc/sent/default.nix
+++ b/pkgs/applications/misc/sent/default.nix
@@ -24,7 +24,7 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "A simple plaintext presentation tool";
-    homepage = https://tools.suckless.org/sent/;
+    homepage = "https://tools.suckless.org/sent/";
     license = licenses.isc;
     platforms = platforms.linux;
     maintainers = with maintainers; [ pSub ];
diff --git a/pkgs/applications/misc/sequeler/default.nix b/pkgs/applications/misc/sequeler/default.nix
index 4199e198c53f..070a81167ada 100644
--- a/pkgs/applications/misc/sequeler/default.nix
+++ b/pkgs/applications/misc/sequeler/default.nix
@@ -11,13 +11,13 @@ let
 
 in stdenv.mkDerivation rec {
   pname = "sequeler";
-  version = "0.7.3";
+  version = "0.7.9";
 
   src = fetchFromGitHub {
     owner = "Alecaddd";
     repo = pname;
     rev = "v${version}";
-    sha256 = "16vc3v9qls9fxg9h8fsi67z68s4acl5hj14gbcrnqm7mf3kmk3aw";
+    sha256 = "117gcc41rd24y5hpm3drqxfcfz52smpcr8w76xnykx8wb1ac50jf";
   };
 
   nativeBuildInputs = [ meson ninja pkgconfig vala gettext wrapGAppsHook python3 desktop-file-utils ];
@@ -43,7 +43,7 @@ in stdenv.mkDerivation rec {
       editor with language recognition, and visualize SELECT results in a
       Gtk.Grid Widget.
     '';
-    homepage = https://github.com/Alecaddd/sequeler;
+    homepage = "https://github.com/Alecaddd/sequeler";
     license = licenses.gpl3;
     maintainers = [ maintainers.etu ] ++ pantheon.maintainers;
     platforms = platforms.linux;
diff --git a/pkgs/applications/misc/sequelpro/default.nix b/pkgs/applications/misc/sequelpro/default.nix
index e81c0b99264e..16a11342d812 100644
--- a/pkgs/applications/misc/sequelpro/default.nix
+++ b/pkgs/applications/misc/sequelpro/default.nix
@@ -18,7 +18,7 @@ stdenv.mkDerivation {
 
   meta = {
     description = "MySQL database management for macOS";
-    homepage = http://www.sequelpro.com/;
+    homepage = "http://www.sequelpro.com/";
     license = stdenv.lib.licenses.mit;
     platforms = stdenv.lib.platforms.darwin;
   };
diff --git a/pkgs/applications/misc/sidequest/default.nix b/pkgs/applications/misc/sidequest/default.nix
index 7059eeb2a0d5..6c55c3157f5c 100644
--- a/pkgs/applications/misc/sidequest/default.nix
+++ b/pkgs/applications/misc/sidequest/default.nix
@@ -1,7 +1,7 @@
 { stdenv, lib, fetchurl, buildFHSUserEnv, makeDesktopItem, makeWrapper, atomEnv, libuuid, at-spi2-atk, icu, openssl, zlib }:
 	let
 		pname = "sidequest";
-		version = "0.8.4";
+		version = "0.10.2";
 
 		desktopItem = makeDesktopItem rec {
 			name = "SideQuest";
@@ -16,7 +16,7 @@
 
 			src = fetchurl {
 				url = "https://github.com/the-expanse/SideQuest/releases/download/v${version}/SideQuest-${version}.tar.xz";
-				sha256 = "1fiqjzvl7isjn7w6vbbs439pp3bdhw6mnbf8483kvfb0fqhh3vs2";
+				sha256 = "1vfxn4gx5b138gj6nk4w3jlp2l56cqpb8hq2kn5mrf4dhjii8n88";
 			};
 
 			buildInputs = [ makeWrapper ];
diff --git a/pkgs/applications/misc/sigal/default.nix b/pkgs/applications/misc/sigal/default.nix
index 2b44b0398b55..c0e255a36e37 100644
--- a/pkgs/applications/misc/sigal/default.nix
+++ b/pkgs/applications/misc/sigal/default.nix
@@ -27,7 +27,7 @@ python3Packages.buildPythonApplication rec {
 
   meta = with lib; {
     description = "Yet another simple static gallery generator";
-    homepage    = http://sigal.saimon.org/en/latest/index.html;
+    homepage    = "http://sigal.saimon.org/en/latest/index.html";
     license     = licenses.mit;
     maintainers = with maintainers; [ domenkozar matthiasbeyer ];
   };
diff --git a/pkgs/applications/misc/simplenote/default.nix b/pkgs/applications/misc/simplenote/default.nix
index b98b0eee2aa0..46b80dc98f04 100644
--- a/pkgs/applications/misc/simplenote/default.nix
+++ b/pkgs/applications/misc/simplenote/default.nix
@@ -16,10 +16,10 @@ let
 
   pname = "simplenote";
 
-  version = "1.14.0";
+  version = "1.16.0";
 
   sha256 = {
-    x86_64-linux = "1l61xf1i80fd8ymmnrb3plqn70jsxd8wyg0n6f69bz3k8s5g8cxi";
+    x86_64-linux = "01nk3dbyhs0p7f6b4bkrng95i29g0x7vxj0rx1qb7sm3n11yi091";
   }.${system} or throwSystem;
 
   meta = with stdenv.lib; {
diff --git a/pkgs/applications/misc/slade/default.nix b/pkgs/applications/misc/slade/default.nix
index d2d5e9548a0c..e93baa997c86 100644
--- a/pkgs/applications/misc/slade/default.nix
+++ b/pkgs/applications/misc/slade/default.nix
@@ -18,7 +18,7 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "Doom editor";
-    homepage = http://slade.mancubus.net/;
+    homepage = "http://slade.mancubus.net/";
     license = licenses.gpl2;
     platforms = [ "x86_64-linux" "i686-linux" ];
     maintainers = with maintainers; [ abbradar ];
diff --git a/pkgs/applications/misc/slade/git.nix b/pkgs/applications/misc/slade/git.nix
index 9ee30d347b0a..1eaf907b7edf 100644
--- a/pkgs/applications/misc/slade/git.nix
+++ b/pkgs/applications/misc/slade/git.nix
@@ -18,7 +18,7 @@ stdenv.mkDerivation {
 
   meta = with stdenv.lib; {
     description = "Doom editor";
-    homepage = http://slade.mancubus.net/;
+    homepage = "http://slade.mancubus.net/";
     license = licenses.gpl2Plus;
     platforms = [ "x86_64-linux" "i686-linux" ];
     maintainers = with maintainers; [ ertes ];
diff --git a/pkgs/applications/misc/sleepyhead/default.nix b/pkgs/applications/misc/sleepyhead/default.nix
index a32709294175..0753045cc4be 100644
--- a/pkgs/applications/misc/sleepyhead/default.nix
+++ b/pkgs/applications/misc/sleepyhead/default.nix
@@ -7,7 +7,7 @@ in stdenv.mkDerivation {
   inherit name;
 
   src = fetchgit {
-    url = https://gitlab.com/sleepyhead/sleepyhead-code.git;
+    url = "https://gitlab.com/sleepyhead/sleepyhead-code.git";
     rev = "9e2329d8bca45693231b5e3dae80063717c24578";
     sha256 = "0448z8gyaxpgpnksg34lzmffj36jdpm0ir4xxa5gvzagkx0wk07h";
   };
@@ -29,7 +29,7 @@ in stdenv.mkDerivation {
   '';
 
   meta = with stdenv.lib; {
-    homepage = https://sleepyhead.jedimark.net/;
+    homepage = "https://sleepyhead.jedimark.net/";
     description = "Review and explore data produced by CPAP and related machines";
     longDescription = ''
       SleepyHead is cross platform, opensource sleep tracking program for reviewing CPAP and Oximetry data, which are devices used in the treatment of Sleep Disorders like Obstructive Sleep Apnea.
diff --git a/pkgs/applications/misc/slic3r/default.nix b/pkgs/applications/misc/slic3r/default.nix
index 1465b0ea0523..25019f76545e 100644
--- a/pkgs/applications/misc/slic3r/default.nix
+++ b/pkgs/applications/misc/slic3r/default.nix
@@ -82,7 +82,7 @@ stdenv.mkDerivation rec {
       instructions for your 3D printer. It cuts the model into horizontal
       slices (layers), generates toolpaths to fill them and calculates the
       amount of material to be extruded.'';
-    homepage = https://slic3r.org/;
+    homepage = "https://slic3r.org/";
     license = licenses.agpl3;
     platforms = platforms.linux;
     maintainers = with maintainers; [ bjornfor the-kenny ];
diff --git a/pkgs/applications/misc/slstatus/default.nix b/pkgs/applications/misc/slstatus/default.nix
index bfb3d010a3c7..5c13cbf86694 100644
--- a/pkgs/applications/misc/slstatus/default.nix
+++ b/pkgs/applications/misc/slstatus/default.nix
@@ -7,7 +7,7 @@ stdenv.mkDerivation rec {
   version = "unstable-2018-04-16";
 
   src = fetchgit {
-    url = https://git.suckless.org/slstatus;
+    url = "https://git.suckless.org/slstatus";
     rev = "97ef7c2a1d67bb2c9c379e657fbc8e35acd6aafb";
     sha256 = "1777hgl10imk0l2sgnqgbkfchv1mpxrd82ninzwp7f1rgwchz36v";
   };
@@ -21,7 +21,7 @@ stdenv.mkDerivation rec {
   installFlags = [ "PREFIX=$(out)" ];
 
   meta = {
-    homepage = https://tools.suckless.org/slstatus/;
+    homepage = "https://tools.suckless.org/slstatus/";
     description = "status monitor for window managers that use WM_NAME like dwm";
     license = licenses.isc;
     maintainers = with maintainers; [ geistesk ];
diff --git a/pkgs/applications/misc/solaar/default.nix b/pkgs/applications/misc/solaar/default.nix
index 722b0bc5077e..d2a883c295db 100644
--- a/pkgs/applications/misc/solaar/default.nix
+++ b/pkgs/applications/misc/solaar/default.nix
@@ -39,7 +39,7 @@ python3Packages.buildPythonApplication rec {
       To be able to use it, make sure you have access to /dev/hidraw* files.
     '';
     license = licenses.gpl2;
-    homepage = https://pwr-solaar.github.io/Solaar/;
+    homepage = "https://pwr-solaar.github.io/Solaar/";
     platforms = platforms.linux;
     maintainers = with maintainers; [ spinus ysndr ];
   };
diff --git a/pkgs/applications/misc/spacefm/default.nix b/pkgs/applications/misc/spacefm/default.nix
index 47e13fa25085..45dc487c8ed1 100644
--- a/pkgs/applications/misc/spacefm/default.nix
+++ b/pkgs/applications/misc/spacefm/default.nix
@@ -47,7 +47,7 @@ stdenv.mkDerivation rec {
       with built-in VFS, udev- or HAL-based device manager,
       customizable menu system, and bash integration
     '';
-    homepage = http://ignorantguru.github.io/spacefm/;
+    homepage = "http://ignorantguru.github.io/spacefm/";
     platforms = platforms.linux;
     license = licenses.gpl3Plus;
     maintainers = with maintainers; [ jagajaga obadz ];
diff --git a/pkgs/applications/misc/sqliteman/default.nix b/pkgs/applications/misc/sqliteman/default.nix
index 103075024dd5..27d5610956d0 100644
--- a/pkgs/applications/misc/sqliteman/default.nix
+++ b/pkgs/applications/misc/sqliteman/default.nix
@@ -25,7 +25,7 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "A simple but powerful Sqlite3 GUI database manager";
-    homepage = http://sqliteman.yarpen.cz/;
+    homepage = "http://sqliteman.yarpen.cz/";
     license = licenses.gpl2Plus;
     platforms = platforms.linux;
     maintainers = [ maintainers.eikek ];
diff --git a/pkgs/applications/misc/ssocr/default.nix b/pkgs/applications/misc/ssocr/default.nix
index bb1655b44632..c52573785ef6 100644
--- a/pkgs/applications/misc/ssocr/default.nix
+++ b/pkgs/applications/misc/ssocr/default.nix
@@ -17,7 +17,7 @@ stdenv.mkDerivation {
 
   meta = with stdenv.lib; {
     description = "Seven Segment Optical Character Recognition";
-    homepage = https://github.com/auerswal/ssocr;
+    homepage = "https://github.com/auerswal/ssocr";
     license = licenses.gpl3;
     maintainers = [ maintainers.kroell ];
   };
diff --git a/pkgs/applications/misc/st/default.nix b/pkgs/applications/misc/st/default.nix
index 47d7279a47fa..018fd9306ae5 100644
--- a/pkgs/applications/misc/st/default.nix
+++ b/pkgs/applications/misc/st/default.nix
@@ -4,17 +4,17 @@
 with stdenv.lib;
 
 stdenv.mkDerivation rec {
-  name = "st-0.8.2";
+  name = "st-0.8.3";
 
   src = fetchurl {
     url = "https://dl.suckless.org/st/${name}.tar.gz";
-    sha256 = "0ddz2mdp1c7q67rd5vrvws9r0493ln0mlqyc3d73dv8im884xdxf";
+    sha256 = "0ll5wbw1szs70wdf8zy1y2ig5mfbqw2w4ls8d64r8z3y4gdf76lk";
   };
 
   inherit patches;
 
   configFile = optionalString (conf!=null) (writeText "config.def.h" conf);
-  preBuild = optionalString (conf!=null) "cp ${configFile} config.def.h";
+  postPatch = optionalString (conf!=null) "cp ${configFile} config.def.h";
 
   nativeBuildInputs = [ pkgconfig ncurses ];
   buildInputs = [ libX11 libXft ] ++ extraLibs;
@@ -24,7 +24,7 @@ stdenv.mkDerivation rec {
   '';
 
   meta = {
-    homepage = https://st.suckless.org/;
+    homepage = "https://st.suckless.org/";
     description = "Simple Terminal for X from Suckless.org Community";
     license = licenses.mit;
     maintainers = with maintainers; [andsild];
diff --git a/pkgs/applications/misc/st/xst.nix b/pkgs/applications/misc/st/xst.nix
index 9407243c6a21..3e29abee5d65 100644
--- a/pkgs/applications/misc/st/xst.nix
+++ b/pkgs/applications/misc/st/xst.nix
@@ -23,7 +23,7 @@ in stdenv.mkDerivation {
   '';
 
   meta = {
-    homepage = https://github.com/neeasade/xst;
+    homepage = "https://github.com/neeasade/xst";
     description = "Simple terminal fork that can load config from Xresources";
     license = licenses.mit;
     maintainers = [ maintainers.vyp ];
diff --git a/pkgs/applications/misc/stag/default.nix b/pkgs/applications/misc/stag/default.nix
index ebb50e685da7..6b4bf1946306 100644
--- a/pkgs/applications/misc/stag/default.nix
+++ b/pkgs/applications/misc/stag/default.nix
@@ -4,7 +4,7 @@ stdenv.mkDerivation {
   name = "stag-1.0";
 
   src = fetchgit {
-    url = https://github.com/seenaburns/stag.git;
+    url = "https://github.com/seenaburns/stag.git";
     rev = "90e2964959ea8242349250640d24cee3d1966ad6";
     sha256 = "1yrzjhcwrxrxq5jj695wvpgb0pz047m88yq5n5ymkcw5qr78fy1v";
   };
@@ -16,7 +16,7 @@ stdenv.mkDerivation {
   '';
 
   meta = {
-    homepage = https://github.com/seenaburns/stag;
+    homepage = "https://github.com/seenaburns/stag";
     description = "Terminal streaming bar graph passed through stdin";
     license = stdenv.lib.licenses.bsdOriginal;
     maintainers = [ stdenv.lib.maintainers.matthiasbeyer ];
diff --git a/pkgs/applications/misc/stog/default.nix b/pkgs/applications/misc/stog/default.nix
index 8c47de3afac0..038d04adeaa8 100644
--- a/pkgs/applications/misc/stog/default.nix
+++ b/pkgs/applications/misc/stog/default.nix
@@ -22,7 +22,7 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "XML documents and web site compiler";
-    homepage = https://www.good-eris.net/stog;
+    homepage = "https://www.good-eris.net/stog";
     license = licenses.lgpl3;
     platforms = ocaml.meta.platforms or [];
     maintainers = with maintainers; [ regnat ];
diff --git a/pkgs/applications/misc/stretchly/default.nix b/pkgs/applications/misc/stretchly/default.nix
index 75f3be85dadf..87e8316c2c4f 100644
--- a/pkgs/applications/misc/stretchly/default.nix
+++ b/pkgs/applications/misc/stretchly/default.nix
@@ -1,177 +1,38 @@
-{ GConf
-, alsaLib
-, at-spi2-atk
-, at-spi2-core
-, atk
-, buildFHSUserEnv
-, cairo
+{ stdenv, lib, fetchurl, makeWrapper, wrapGAppsHook, electron
 , common-updater-scripts
-, coreutils
-, cups
-, dbus
-, expat
-, fetchurl
-, fontconfig
-, gdk-pixbuf
-, glib
-, gtk2
-, gtk3
-, lib
-, libX11
-, libXScrnSaver
-, libXcomposite
-, libXcursor
-, libXdamage
-, libXext
-, libXfixes
-, libXi
-, libXrandr
-, libXrender
-, libXtst
-, libappindicator
-, libdrm
-, libnotify
-, libpciaccess
-, libpng12
-, libuuid
-, libxcb
-, nspr
-, nss
-, pango
-, pciutils
-, pulseaudio
-, runtimeShell
-, stdenv
-, udev
-, wrapGAppsHook
-, writeScript
-, file
+, writeShellScript
 }:
 
-let
-  libs = [
-    GConf
-    alsaLib
-    at-spi2-atk
-    at-spi2-core
-    atk
-    cairo
-    cups
-    dbus
-    expat
-    fontconfig
-    gdk-pixbuf
-    glib
-    gtk2
-    gtk3
-    libX11
-    libXScrnSaver
-    libXcomposite
-    libXcursor
-    libXdamage
-    libXext
-    libXfixes
-    libXi
-    libXrandr
-    libXrender
-    libXtst
-    libappindicator
-    libdrm
-    libnotify
-    libpciaccess
-    libpng12
-    libuuid
-    libxcb
-    nspr
-    nss
-    pango
-    pciutils
-    pulseaudio
-    stdenv.cc.cc.lib
-    udev
-  ];
-
-  libPath = lib.makeLibraryPath libs;
-
-  stretchly =
-    stdenv.mkDerivation rec {
-      pname = "stretchly";
-      version = "0.21.0";
-
-      src = fetchurl {
-        url = "https://github.com/hovancik/stretchly/releases/download/v${version}/stretchly-${version}.tar.xz";
-        sha256 = "1gyyr22xq8s4miiacs8wqhp7lxnwvkvlwhngnq8671l62s6iyjzl";
-      };
-
-      nativeBuildInputs = [
-        wrapGAppsHook
-        coreutils
-      ];
-
-      buildInputs = libs;
-
-      dontPatchELF = true;
-      dontBuild = true;
-      dontConfigure = true;
-
-      installPhase = ''
-        mkdir -p $out/bin $out/lib/stretchly
-        cp -r ./* $out/lib/stretchly/
-        ln -s $out/lib/stretchly/stretchly $out/bin/
-      '';
+stdenv.mkDerivation rec {
+  pname = "stretchly";
+  version = "0.21.1";
 
-      preFixup = ''
-        patchelf --set-rpath "${libPath}" $out/lib/stretchly/libffmpeg.so
-        patchelf --set-rpath "${libPath}" $out/lib/stretchly/libEGL.so
-        patchelf --set-rpath "${libPath}" $out/lib/stretchly/libGLESv2.so
-        patchelf --set-rpath "${libPath}" $out/lib/stretchly/swiftshader/libEGL.so
-        patchelf --set-rpath "${libPath}" $out/lib/stretchly/swiftshader/libGLESv2.so
-
-        patchelf \
-          --set-rpath "$out/lib/stretchly:${libPath}" \
-          --set-interpreter "$(cat $NIX_CC/nix-support/dynamic-linker)" \
-          $out/lib/stretchly/stretchly
-
-        patchelf \
-          --set-rpath "$out/lib/stretchly:${libPath}" \
-          --set-interpreter "$(cat $NIX_CC/nix-support/dynamic-linker)" \
-          $out/lib/stretchly/chrome-sandbox
-      '';
+  src = fetchurl {
+    url = "https://github.com/hovancik/stretchly/releases/download/v${version}/stretchly-${version}.tar.xz";
+    sha256 = "0776pywyqylwd33m85l4wdr89x0q9xkrjgliag10fp1bswz844lf";
+  };
 
-      meta = with stdenv.lib; {
-        description = "A break time reminder app";
-        longDescription = ''
-          stretchly is a cross-platform electron app that reminds you to take
-          breaks when working on your computer. By default, it runs in your tray
-          and displays a reminder window containing an idea for a microbreak for 20
-          seconds every 10 minutes. Every 30 minutes, it displays a window
-          containing an idea for a longer 5 minute break.
-        '';
-        homepage = https://hovancik.net/stretchly;
-        downloadPage = https://hovancik.net/stretchly/downloads/;
-        license = licenses.bsd2;
-        maintainers = with maintainers; [ cdepillabout ];
-        platforms = platforms.linux;
-      };
-    };
+  nativeBuildInputs = [
+    wrapGAppsHook
+  ];
 
-in
+  installPhase = ''
+    runHook preInstall
 
-buildFHSUserEnv {
-  inherit (stretchly) meta;
+    mkdir -p $out/bin $out/share/${pname}/
+    mv resources/app.asar $out/share/${pname}/
 
-  name = "stretchly";
+    makeWrapper ${electron}/bin/electron $out/bin/${pname} \
+      --add-flags $out/share/${pname}/app.asar \
+      "''${gappsWrapperArgs[@]}" \
+      --prefix LD_LIBRARY_PATH : "${lib.makeLibraryPath [ stdenv.cc.cc.lib ]}"
 
-  targetPkgs = pkgs: [
-     stretchly
-  ];
+    runHook postInstall
+  '';
 
-  runScript = "stretchly";
 
   passthru = {
-    updateScript = writeScript "update-stretchly" ''
-      #!${runtimeShell}
-
+    updateScript = writeShellScript "update-stretchly" ''
       set -eu -o pipefail
 
       # get the latest release version
@@ -179,9 +40,23 @@ buildFHSUserEnv {
 
       echo "updating to $latest_version..."
 
-      ${common-updater-scripts}/bin/update-source-version stretchly.passthru.stretchlyWrapped "$latest_version"
+      ${common-updater-scripts}/bin/update-source-version stretchly "$latest_version"
     '';
+  };
 
-    stretchlyWrapped = stretchly;
+  meta = with stdenv.lib; {
+    description = "A break time reminder app";
+    longDescription = ''
+      stretchly is a cross-platform electron app that reminds you to take
+      breaks when working on your computer. By default, it runs in your tray
+      and displays a reminder window containing an idea for a microbreak for 20
+      seconds every 10 minutes. Every 30 minutes, it displays a window
+      containing an idea for a longer 5 minute break.
+    '';
+    homepage = "https://hovancik.net/stretchly";
+    downloadPage = "https://hovancik.net/stretchly/downloads/";
+    license = licenses.bsd2;
+    maintainers = with maintainers; [ cdepillabout ];
+    platforms = platforms.linux;
   };
 }
diff --git a/pkgs/applications/misc/stupidterm/default.nix b/pkgs/applications/misc/stupidterm/default.nix
index b786b34e9553..0a6e947f15c2 100644
--- a/pkgs/applications/misc/stupidterm/default.nix
+++ b/pkgs/applications/misc/stupidterm/default.nix
@@ -28,7 +28,7 @@ stdenv.mkDerivation {
 
   meta = with stdenv.lib; {
     description = "Simple wrapper around the VTE terminal emulator widget for GTK";
-    homepage = https://github.com/esmil/stupidterm;
+    homepage = "https://github.com/esmil/stupidterm";
     license = licenses.lgpl3Plus;
     maintainers = [ maintainers.etu ];
     platforms = platforms.linux;
diff --git a/pkgs/applications/misc/styx/default.nix b/pkgs/applications/misc/styx/default.nix
index 340b59d5ff23..67f48d67f807 100644
--- a/pkgs/applications/misc/styx/default.nix
+++ b/pkgs/applications/misc/styx/default.nix
@@ -63,8 +63,8 @@ stdenv.mkDerivation rec {
   meta = with stdenv.lib; {
     description  = "Nix based static site generator";
     maintainers  = with maintainers; [ ericsagnes ];
-    homepage     = https://styx-static.github.io/styx-site/;
-    downloadPage = https://github.com/styx-static/styx/;
+    homepage     = "https://styx-static.github.io/styx-site/";
+    downloadPage = "https://github.com/styx-static/styx/";
     platforms    = platforms.all;
     license      = licenses.mit;
   };
diff --git a/pkgs/applications/misc/subsurface/0001-core-fix-libgit-ifdef-to-handle-libgit2-v1.0-and-onw.patch b/pkgs/applications/misc/subsurface/0001-core-fix-libgit-ifdef-to-handle-libgit2-v1.0-and-onw.patch
new file mode 100644
index 000000000000..027e3f493e12
--- /dev/null
+++ b/pkgs/applications/misc/subsurface/0001-core-fix-libgit-ifdef-to-handle-libgit2-v1.0-and-onw.patch
@@ -0,0 +1,41 @@
+From dfa4bcafec4425659a409550085417af3c5c787b Mon Sep 17 00:00:00 2001
+From: Florian Klink <flokli@flokli.de>
+Date: Sat, 11 Apr 2020 12:38:38 +0200
+Subject: [PATCH] core: fix libgit ifdef to handle libgit2 v1.0 and onwards
+
+Conditional code for older libgit versions was removed in
+https://github.com/Subsurface-divelog/subsurface/pull/2737,
+but it's a non-trivial backport, and master currently isn't really ready
+for a release.
+
+So instead ship a patch fixing the one broken libgit2 conditional until
+a 4.10 release has been made.
+
+Note the inverted logic - the if branch now handles the old libgit
+condition, and the else branch the newer versions, consistent with how
+it's done in the rest of the subsurface codebase.
+---
+ core/git-access.c | 6 +++---
+ 1 file changed, 3 insertions(+), 3 deletions(-)
+
+diff --git a/core/git-access.c b/core/git-access.c
+index 3688cb90c..9997fc8fd 100644
+--- a/core/git-access.c
++++ b/core/git-access.c
+@@ -359,10 +359,10 @@ static int try_to_git_merge(git_repository *repo, git_reference **local_p, git_r
+ 	}
+ 
+ 	git_merge_init_options(&merge_options, GIT_MERGE_OPTIONS_VERSION);
+-#if !LIBGIT2_VER_MAJOR && LIBGIT2_VER_MINOR > 23
+-	merge_options.flags = GIT_MERGE_FIND_RENAMES;
+-#else
++#if !LIBGIT2_VER_MAJOR && LIBGIT2_VER_MINOR <= 22
+ 	merge_options.tree_flags = GIT_MERGE_TREE_FIND_RENAMES;
++#else
++	merge_options.flags = GIT_MERGE_FIND_RENAMES;
+ #endif
+ 	merge_options.file_favor = GIT_MERGE_FILE_FAVOR_UNION;
+ 	merge_options.rename_threshold = 100;
+-- 
+2.25.1
+
diff --git a/pkgs/applications/misc/subsurface/default.nix b/pkgs/applications/misc/subsurface/default.nix
index 960b7b9eeef5..e189351022b9 100644
--- a/pkgs/applications/misc/subsurface/default.nix
+++ b/pkgs/applications/misc/subsurface/default.nix
@@ -1,19 +1,25 @@
 { stdenv, fetchurl, fetchFromGitHub, autoreconfHook, cmake, wrapQtAppsHook, pkgconfig, qmake
-, curl, grantlee, libgit2, libusb, libssh2, libxml2, libxslt, libzip, zlib
+, curl, grantlee, libgit2, libusb-compat-0_1, libssh2, libxml2, libxslt, libzip, zlib
 , qtbase, qtconnectivity, qtlocation, qtsvg, qttools, qtwebkit, libXcomposite
 }:
 
 let
-  version = "4.8.2";
+  version = "4.9.3";
+
+  subsurfaceSrc = (fetchFromGitHub {
+    owner = "Subsurface-divelog";
+    repo = "subsurface";
+    rev = "v${version}";
+    sha256 = "1i07f7appifx9j205x5a7ng01wsipxr6n9a3692pm60jli2nsir5";
+    fetchSubmodules = true;
+  });
 
   libdc = stdenv.mkDerivation {
     pname = "libdivecomputer-ssrf";
     inherit version;
 
-    src = fetchurl {
-      url = "https://subsurface-divelog.org/downloads/libdivecomputer-subsurface-branch-${version}.tgz";
-      sha256 = "167qan59raibmilkc574gdqxfjg2f5ww2frn86xzk2kn4qg8190w";
-    };
+    src = subsurfaceSrc;
+    sourceRoot = "source/libdivecomputer";
 
     nativeBuildInputs = [ autoreconfHook ];
 
@@ -22,7 +28,7 @@ let
     enableParallelBuilding = true;
 
     meta = with stdenv.lib; {
-      homepage = http://www.libdivecomputer.org;
+      homepage = "http://www.libdivecomputer.org";
       description = "A cross-platform and open source library for communication with dive computers from various manufacturers";
       maintainers = with maintainers; [ mguentner ];
       license = licenses.lgpl21;
@@ -70,14 +76,14 @@ in stdenv.mkDerivation {
   pname = "subsurface";
   inherit version;
 
-  src = fetchurl {
-    url = "https://subsurface-divelog.org/downloads/Subsurface-${version}.tgz";
-    sha256 = "1fzrq6rqb6pzs36wxar2453cl509dqpcy9w7nq4gw7b1v2331wfy";
-  };
+  src = subsurfaceSrc;
+
+  # remove with the 4.10 release
+  patches = [ ./0001-core-fix-libgit-ifdef-to-handle-libgit2-v1.0-and-onw.patch ];
 
   buildInputs = [
     libdc googlemaps
-    curl grantlee libgit2 libssh2 libusb libxml2 libxslt libzip
+    curl grantlee libgit2 libssh2 libusb-compat-0_1 libxml2 libxslt libzip
     qtbase qtconnectivity qtsvg qttools qtwebkit
   ];
 
@@ -100,7 +106,7 @@ in stdenv.mkDerivation {
       conveniently be entered using a map interface), logging of equipment used and
       names of other divers, and lets users rate dives and provide additional notes.
     '';
-    homepage = https://subsurface-divelog.org;
+    homepage = "https://subsurface-divelog.org";
     license = licenses.gpl2;
     maintainers = with maintainers; [ mguentner ];
     platforms = platforms.all;
diff --git a/pkgs/applications/misc/super_user_spark/default.nix b/pkgs/applications/misc/super_user_spark/default.nix
index 8102375479be..dd1218282d85 100644
--- a/pkgs/applications/misc/super_user_spark/default.nix
+++ b/pkgs/applications/misc/super_user_spark/default.nix
@@ -27,6 +27,6 @@ mkDerivation {
   jailbreak = true;
   description = "Configure your dotfile deployment with a DSL";
   license = stdenv.lib.licenses.mit;
-  homepage = https://github.com/NorfairKing/super-user-spark;
+  homepage = "https://github.com/NorfairKing/super-user-spark";
   maintainers = [ stdenv.lib.maintainers.badi ];
 }
diff --git a/pkgs/applications/misc/sweethome3d/default.nix b/pkgs/applications/misc/sweethome3d/default.nix
index 76a62d1762c2..926db03652d6 100644
--- a/pkgs/applications/misc/sweethome3d/default.nix
+++ b/pkgs/applications/misc/sweethome3d/default.nix
@@ -59,7 +59,7 @@ let
     dontStrip = true;
 
     meta = {
-      homepage = http://www.sweethome3d.com/index.jsp;
+      homepage = "http://www.sweethome3d.com/index.jsp";
       inherit description;
       inherit license;
       maintainers = [ stdenv.lib.maintainers.edwtjo ];
@@ -73,14 +73,14 @@ in {
 
   application = mkSweetHome3D rec {
     pname = stdenv.lib.toLower module + "-application";
-    version = "6.2";
+    version = "6.3";
     module = "SweetHome3D";
     description = "Design and visualize your future home";
     license = stdenv.lib.licenses.gpl2Plus;
     src = fetchsvn {
       url = "https://svn.code.sf.net/p/sweethome3d/code/tags/V_" + d2u version + "/SweetHome3D/";
-      sha256 = "0a514a1zmipykvawil46v826ivkw9c00vdkyggyl6m41giay15zf";
-      rev = "6822";
+      sha256 = "1c13g0f73jgbzmjhdm9knqq1kh3vdl04zl3xlp30g9a1n0jkr38i";
+      rev = "6896";
     };
     desktopName = "Sweet Home 3D";
     icons = {
diff --git a/pkgs/applications/misc/sweethome3d/editors.nix b/pkgs/applications/misc/sweethome3d/editors.nix
index 1d3f1a41e162..ec759572443c 100644
--- a/pkgs/applications/misc/sweethome3d/editors.nix
+++ b/pkgs/applications/misc/sweethome3d/editors.nix
@@ -47,7 +47,7 @@ let
     dontStrip = true;
 
     meta = {
-      homepage = http://www.sweethome3d.com/index.jsp;
+      homepage = "http://www.sweethome3d.com/index.jsp";
       inherit description;
       inherit license;
       maintainers = [ stdenv.lib.maintainers.edwtjo ];
diff --git a/pkgs/applications/misc/synapse/default.nix b/pkgs/applications/misc/synapse/default.nix
index c12f5b176790..751c0a48f5b3 100644
--- a/pkgs/applications/misc/synapse/default.nix
+++ b/pkgs/applications/misc/synapse/default.nix
@@ -29,7 +29,7 @@ in stdenv.mkDerivation rec {
       the Zeitgeist engine
     '';
     description = "Semantic launcher to start applications and find relevant files";
-    homepage = https://launchpad.net/synapse-project;
+    homepage = "https://launchpad.net/synapse-project";
     license = licenses.gpl3;
     maintainers = with maintainers; [ mahe ];
     platforms = with platforms; all;
diff --git a/pkgs/applications/misc/syncthing-tray/default.nix b/pkgs/applications/misc/syncthing-tray/default.nix
index a07fe0c75103..38826b7735fb 100644
--- a/pkgs/applications/misc/syncthing-tray/default.nix
+++ b/pkgs/applications/misc/syncthing-tray/default.nix
@@ -20,7 +20,7 @@ buildGoPackage rec {
 
   meta = with stdenv.lib; {
     description = "Simple application tray for syncthing";
-    homepage = https://github.com/alex2108/syncthing-tray;
+    homepage = "https://github.com/alex2108/syncthing-tray";
     license = licenses.mit;
     maintainers = with maintainers; [ nickhu ];
     platforms = platforms.all;
diff --git a/pkgs/applications/misc/syncthingtray/default.nix b/pkgs/applications/misc/syncthingtray/default.nix
index 610409af7a7b..01d1891dd738 100644
--- a/pkgs/applications/misc/syncthingtray/default.nix
+++ b/pkgs/applications/misc/syncthingtray/default.nix
@@ -20,14 +20,14 @@
 }:
 
 mkDerivation rec {
-  version = "0.10.6";
+  version = "0.10.9";
   pname = "syncthingtray";
 
   src = fetchFromGitHub {
     owner = "Martchus";
     repo = "syncthingtray";
     rev = "v${version}";
-    sha256 = "1lh1qsdy5081jrs27ba0mfh90ya1fj9h6j5k0cdsfap9mcxyjd9g";
+    sha256 = "19kni5v9g0p4751bw2xb8dawg5yjkyk39vdy0m93448lsl8cqq04";
   };
 
   buildInputs = [ qtbase cpp-utilities qtutilities ]
diff --git a/pkgs/applications/misc/synergy/default.nix b/pkgs/applications/misc/synergy/default.nix
index 645ed7433b32..bb922f3ca5b2 100644
--- a/pkgs/applications/misc/synergy/default.nix
+++ b/pkgs/applications/misc/synergy/default.nix
@@ -1,11 +1,11 @@
-{ stdenv, lib, fetchFromGitHub, cmake, openssl
+{ stdenv, lib, fetchFromGitHub, cmake, openssl, qttools
 , ApplicationServices, Carbon, Cocoa, CoreServices, ScreenSaver
 , xlibsWrapper, libX11, libXi, libXtst, libXrandr, xinput, avahi-compat
 , withGUI ? true, wrapQtAppsHook }:
 
 stdenv.mkDerivation rec {
   pname = "synergy";
-  version = "1.11.0";
+  version = "1.11.1";
 
   src = fetchFromGitHub {
     owner = "symless";
@@ -43,6 +43,8 @@ stdenv.mkDerivation rec {
 
   buildInputs = [
     openssl
+  ] ++ lib.optionals withGUI [
+    qttools
   ] ++ lib.optionals stdenv.isDarwin [
     ApplicationServices Carbon Cocoa CoreServices ScreenSaver
   ] ++ lib.optionals stdenv.isLinux [
@@ -71,7 +73,7 @@ stdenv.mkDerivation rec {
 
   meta = with lib; {
     description = "Share one mouse and keyboard between multiple computers";
-    homepage = http://synergy-project.org/;
+    homepage = "http://synergy-project.org/";
     license = licenses.gpl2;
     maintainers = with maintainers; [ aszlig enzime ];
     platforms = platforms.all;
diff --git a/pkgs/applications/misc/tabula/default.nix b/pkgs/applications/misc/tabula/default.nix
index fbb1832735be..1b29118c9b14 100644
--- a/pkgs/applications/misc/tabula/default.nix
+++ b/pkgs/applications/misc/tabula/default.nix
@@ -31,7 +31,7 @@ stdenv.mkDerivation rec {
       out of PDF files. Tabula allows you to extract that data into a CSV or
       Microsoft Excel spreadsheet using a simple, easy-to-use interface.
     '';
-    homepage = https://tabula.technology/;
+    homepage = "https://tabula.technology/";
     license = licenses.mit;
     maintainers = [ maintainers.dpaetzel ];
     platforms = platforms.all;
diff --git a/pkgs/applications/misc/taizen/default.nix b/pkgs/applications/misc/taizen/default.nix
index bf9770acacd8..993606d39c0e 100644
--- a/pkgs/applications/misc/taizen/default.nix
+++ b/pkgs/applications/misc/taizen/default.nix
@@ -17,7 +17,7 @@ rustPlatform.buildRustPackage rec {
   cargoSha256 = "0chrgwm97y1a3gj218x25yqk1y1h74a6gzyxjdm023msvs58nkni";
 
   meta = with lib; {
-    homepage = https://crates.io/crates/taizen;
+    homepage = "https://crates.io/crates/taizen";
     license = licenses.mit;
     description = "curses based mediawiki browser";
     maintainers = with maintainers; [ ma27 ];
diff --git a/pkgs/applications/misc/taskjuggler/2.x/default.nix b/pkgs/applications/misc/taskjuggler/2.x/default.nix
index a0dc7b7c71e3..a1d04a13af85 100644
--- a/pkgs/applications/misc/taskjuggler/2.x/default.nix
+++ b/pkgs/applications/misc/taskjuggler/2.x/default.nix
@@ -60,7 +60,7 @@ stdenv.mkDerivation rec {
   installFlags = [ "kde_locale=\${out}/share/locale" ];
 
   meta = {
-    homepage = http://www.taskjuggler.org;
+    homepage = "http://www.taskjuggler.org";
     license = stdenv.lib.licenses.gpl2;
     description = "Project management tool";
     longDescription = ''
diff --git a/pkgs/applications/misc/taskjuggler/3.x/Gemfile.lock b/pkgs/applications/misc/taskjuggler/3.x/Gemfile.lock
index d1642e76fa65..8831993117d2 100644
--- a/pkgs/applications/misc/taskjuggler/3.x/Gemfile.lock
+++ b/pkgs/applications/misc/taskjuggler/3.x/Gemfile.lock
@@ -18,4 +18,4 @@ DEPENDENCIES
   taskjuggler
 
 BUNDLED WITH
-   1.10.5
+   2.1.4
diff --git a/pkgs/applications/misc/taskjuggler/3.x/default.nix b/pkgs/applications/misc/taskjuggler/3.x/default.nix
index 23252d0c4807..6b3ef60d6382 100644
--- a/pkgs/applications/misc/taskjuggler/3.x/default.nix
+++ b/pkgs/applications/misc/taskjuggler/3.x/default.nix
@@ -8,7 +8,7 @@ bundlerEnv {
 
   meta = {
     description = "A modern and powerful project management tool";
-    homepage    = http://taskjuggler.org/;
+    homepage    = "http://taskjuggler.org/";
     license     = lib.licenses.gpl2;
     platforms   = lib.platforms.unix;
   };
diff --git a/pkgs/applications/misc/taskjuggler/Gemfile.lock b/pkgs/applications/misc/taskjuggler/Gemfile.lock
index dcc46e370e71..0f05c496173f 100644
--- a/pkgs/applications/misc/taskjuggler/Gemfile.lock
+++ b/pkgs/applications/misc/taskjuggler/Gemfile.lock
@@ -18,4 +18,4 @@ DEPENDENCIES
   taskjuggler
 
 BUNDLED WITH
-   1.17.2
+   2.1.4
diff --git a/pkgs/applications/misc/taskjuggler/default.nix b/pkgs/applications/misc/taskjuggler/default.nix
index 838cc199a6ca..64753397833a 100644
--- a/pkgs/applications/misc/taskjuggler/default.nix
+++ b/pkgs/applications/misc/taskjuggler/default.nix
@@ -13,7 +13,7 @@ bundlerApp {
 
   meta = with lib; {
     description = "A modern and powerful project management tool";
-    homepage    = http://taskjuggler.org/;
+    homepage    = "http://taskjuggler.org/";
     license     = licenses.gpl2;
     platforms   = platforms.unix;
     maintainers = with maintainers; [ manveru nicknovitski ];
diff --git a/pkgs/applications/misc/tasknc/default.nix b/pkgs/applications/misc/tasknc/default.nix
index 0450cb40a555..46378aec33ae 100644
--- a/pkgs/applications/misc/tasknc/default.nix
+++ b/pkgs/applications/misc/tasknc/default.nix
@@ -34,7 +34,7 @@ stdenv.mkDerivation rec {
 
 
   meta = with stdenv.lib; {
-    homepage = https://github.com/lharding/tasknc;
+    homepage = "https://github.com/lharding/tasknc";
     description = "A ncurses wrapper around taskwarrior";
     maintainers = with maintainers; [ matthiasbeyer infinisil ];
     platforms = platforms.linux; # Cannot test others
diff --git a/pkgs/applications/misc/taskopen/default.nix b/pkgs/applications/misc/taskopen/default.nix
index 847092356d28..a60ca997ee03 100644
--- a/pkgs/applications/misc/taskopen/default.nix
+++ b/pkgs/applications/misc/taskopen/default.nix
@@ -26,7 +26,7 @@ stdenv.mkDerivation {
 
   meta = with stdenv.lib; {
     description = "Script for taking notes and open urls with taskwarrior";
-    homepage = https://github.com/ValiValpas/taskopen;
+    homepage = "https://github.com/ValiValpas/taskopen";
     platforms = platforms.linux;
     license = stdenv.lib.licenses.free ;
     maintainers = [ maintainers.winpat ];
diff --git a/pkgs/applications/misc/tasksh/default.nix b/pkgs/applications/misc/tasksh/default.nix
index 931a27fbeff6..4c577049f44a 100644
--- a/pkgs/applications/misc/tasksh/default.nix
+++ b/pkgs/applications/misc/tasksh/default.nix
@@ -16,7 +16,7 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "REPL for taskwarrior";
-    homepage = http://tasktools.org;
+    homepage = "http://tasktools.org";
     license = licenses.mit;
     maintainers = with maintainers; [ matthiasbeyer ];
     platforms = platforms.unix;
diff --git a/pkgs/applications/misc/taskwarrior/default.nix b/pkgs/applications/misc/taskwarrior/default.nix
index ba919fbc6267..67f2fd8927bd 100644
--- a/pkgs/applications/misc/taskwarrior/default.nix
+++ b/pkgs/applications/misc/taskwarrior/default.nix
@@ -24,7 +24,7 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "Highly flexible command-line tool to manage TODO lists";
-    homepage = https://taskwarrior.org;
+    homepage = "https://taskwarrior.org";
     license = licenses.mit;
     maintainers = with maintainers; [ marcweber ];
     platforms = platforms.linux ++ platforms.darwin;
diff --git a/pkgs/applications/misc/tdrop/default.nix b/pkgs/applications/misc/tdrop/default.nix
index 547eea4f2d23..020298a0c523 100644
--- a/pkgs/applications/misc/tdrop/default.nix
+++ b/pkgs/applications/misc/tdrop/default.nix
@@ -25,7 +25,7 @@ stdenv.mkDerivation {
 
   meta = with stdenv.lib; {
     description = "A Glorified WM-Independent Dropdown Creator";
-    homepage = https://github.com/noctuid/tdrop;
+    homepage = "https://github.com/noctuid/tdrop";
     license = licenses.bsd2;
     platforms = platforms.linux;
     maintainers = with maintainers; [ wedens ];
diff --git a/pkgs/applications/misc/termdown/default.nix b/pkgs/applications/misc/termdown/default.nix
index 94eacb1fe067..5ccdbbbb6b42 100644
--- a/pkgs/applications/misc/termdown/default.nix
+++ b/pkgs/applications/misc/termdown/default.nix
@@ -20,7 +20,7 @@ buildPythonApplication rec {
   meta = with stdenv.lib; {
     description     = "Starts a countdown to or from TIMESPEC";
     longDescription = "Countdown timer and stopwatch in your terminal";
-    homepage        = https://github.com/trehn/termdown;
+    homepage        = "https://github.com/trehn/termdown";
     license         = licenses.gpl3;
     platforms       = platforms.all;
   };
diff --git a/pkgs/applications/misc/terminal-notifier/default.nix b/pkgs/applications/misc/terminal-notifier/default.nix
index 00300e65abb4..cde53ef41654 100644
--- a/pkgs/applications/misc/terminal-notifier/default.nix
+++ b/pkgs/applications/misc/terminal-notifier/default.nix
@@ -27,7 +27,7 @@ stdenv.mkDerivation rec {
 
   meta = with lib; {
     maintainers = with maintainers; [ cstrahan ];
-    homepage = https://github.com/julienXX/terminal-notifier;
+    homepage = "https://github.com/julienXX/terminal-notifier";
     license = licenses.mit;
     platforms  = platforms.darwin;
   };
diff --git a/pkgs/applications/misc/terminal-parrot/default.nix b/pkgs/applications/misc/terminal-parrot/default.nix
index ba898932f06c..68241d79850d 100644
--- a/pkgs/applications/misc/terminal-parrot/default.nix
+++ b/pkgs/applications/misc/terminal-parrot/default.nix
@@ -15,7 +15,7 @@ buildGoModule rec {
 
   meta = with stdenv.lib; {
     description = "Shows colorful, animated party parrot in your terminial";
-    homepage = https://github.com/jmhobbs/terminal-parrot;
+    homepage = "https://github.com/jmhobbs/terminal-parrot";
     license = licenses.mit;
     platforms = platforms.all;
     maintainers = [ maintainers.heel ];
diff --git a/pkgs/applications/misc/terminator/default.nix b/pkgs/applications/misc/terminator/default.nix
index d09c98b67090..5de8109e3a4d 100644
--- a/pkgs/applications/misc/terminator/default.nix
+++ b/pkgs/applications/misc/terminator/default.nix
@@ -1,28 +1,64 @@
-{ stdenv, fetchurl, python2, keybinder3, intltool, file, gtk3, gobject-introspection
-, libnotify, wrapGAppsHook, vte
+{ stdenv
+, fetchFromGitHub
+, python3
+, keybinder3
+, intltool
+, file
+, gtk3
+, gobject-introspection
+, libnotify
+, wrapGAppsHook
+, vte
 }:
 
-python2.pkgs.buildPythonApplication rec {
-  name = "terminator-${version}";
-  version = "1.91";
+python3.pkgs.buildPythonApplication rec {
+  pname = "terminator";
+  version = "1.92";
 
-  src = fetchurl {
-    url = "https://launchpad.net/terminator/gtk3/${version}/+download/${name}.tar.gz";
-    sha256 = "95f76e3c0253956d19ceab2f8da709a496f1b9cf9b1c5b8d3cd0b6da3cc7be69";
+  src = fetchFromGitHub {
+    owner = "gnome-terminator";
+    repo = "terminator";
+    rev = "v${version}";
+    sha256 = "105f660wzf9cpn24xzwaaa09igg5h3qhchafv190v5nqck6g1ssh";
   };
 
-  nativeBuildInputs = [ file intltool wrapGAppsHook gobject-introspection ];
-  buildInputs = [ gtk3 vte libnotify keybinder3
+  nativeBuildInputs = [
+    file
+    intltool
+    gobject-introspection
+    wrapGAppsHook
+  ];
+
+  buildInputs = [
+    gtk3
     gobject-introspection # Temporary fix, see https://github.com/NixOS/nixpkgs/issues/56943
+    keybinder3
+    libnotify
+    python3
+    vte
+  ];
+
+  propagatedBuildInputs = with python3.pkgs; [
+    configobj
+    dbus-python
+    pygobject3
+    psutil
+    pycairo
   ];
-  propagatedBuildInputs = with python2.pkgs; [ pygobject3 psutil pycairo ];
 
   postPatch = ''
-    patchShebangs .
+    patchShebangs run_tests tests po
+    # dbus-python is correctly passed in propagatedBuildInputs, but for some reason setup.py complains.
+    # The wrapped terminator has the correct path added, so ignore this.
+    substituteInPlace setup.py --replace "'dbus-python'," ""
   '';
 
   checkPhase = ''
+    runHook preCheck
+
     ./run_tests
+
+    runHook postCheck
   '';
 
   meta = with stdenv.lib; {
@@ -33,7 +69,7 @@ python2.pkgs.buildPythonApplication rec {
       quadkonsole, etc. in that the main focus is arranging terminals in grids
       (tabs is the most common default method, which Terminator also supports).
     '';
-    homepage = https://gnometerminator.blogspot.no/p/introduction.html;
+    homepage = "https://github.com/gnome-terminator/terminator";
     license = licenses.gpl2;
     maintainers = with maintainers; [ bjornfor ];
     platforms = platforms.linux;
diff --git a/pkgs/applications/misc/terminus/default.nix b/pkgs/applications/misc/terminus/default.nix
index fce46d120de5..4c38e530247e 100644
--- a/pkgs/applications/misc/terminus/default.nix
+++ b/pkgs/applications/misc/terminus/default.nix
@@ -35,7 +35,7 @@ stdenv.mkDerivation rec {
   dontPatchELF = true;
   meta = with lib; {
     description = "A terminal for a more modern age";
-    homepage    = https://eugeny.github.io/terminus/;
+    homepage    = "https://eugeny.github.io/terminus/";
     maintainers = with maintainers; [ jlesquembre ];
     license     = licenses.mit;
     platforms   = [ "x86_64-linux" ];
diff --git a/pkgs/applications/misc/termite/default.nix b/pkgs/applications/misc/termite/default.nix
index 2a610edde034..63565e207f77 100644
--- a/pkgs/applications/misc/termite/default.nix
+++ b/pkgs/applications/misc/termite/default.nix
@@ -77,7 +77,7 @@ in stdenv.mkDerivation rec {
   meta = with stdenv.lib; {
     description = "A simple VTE-based terminal";
     license = licenses.lgpl2Plus;
-    homepage = https://github.com/thestinger/termite/;
+    homepage = "https://github.com/thestinger/termite/";
     maintainers = with maintainers; [ koral ];
     platforms = platforms.all;
   };
diff --git a/pkgs/applications/misc/termpdf.py/default.nix b/pkgs/applications/misc/termpdf.py/default.nix
new file mode 100644
index 000000000000..5988f569109b
--- /dev/null
+++ b/pkgs/applications/misc/termpdf.py/default.nix
@@ -0,0 +1,51 @@
+{ stdenv
+, buildPythonApplication
+, fetchFromGitHub
+, fetchPypi
+, bibtool
+, pybtex
+, pymupdf
+, pynvim
+, pyperclip
+, roman
+, pdfrw
+, pagelabels
+, setuptools
+}:
+
+buildPythonApplication {
+  pname = "termpdf.py";
+  version = "2019-10-03";
+
+  src = fetchFromGitHub {
+    owner = "dsanson";
+    repo = "termpdf.py";
+    rev = "4f3bdf4b5a00801631f2498f2c38c81e0a588ae2";
+    sha256 = "05gbj2fqzqndq1mx6g9asa7i6z8a9jdjrvilfwx8lg23cs356m6m";
+  };
+
+  propagatedBuildInputs = [
+    bibtool
+    pybtex
+    pymupdf
+    pyperclip
+    roman
+    pagelabels
+    pdfrw
+    pynvim
+    setuptools
+  ];
+
+  # upstream doesn't contain tests
+  doCheck = false;
+
+  meta = with stdenv.lib; {
+    description = ''
+      A graphical pdf (and epub, cbz, ...) reader that works
+      inside the kitty terminal.
+    '';
+    homepage = "https://github.com/dsanson/termpdf.py";
+    maintainers = with maintainers; [ teto ];
+    license = licenses.mit;
+  };
+}
diff --git a/pkgs/applications/misc/teseq/default.nix b/pkgs/applications/misc/teseq/default.nix
index b17645919824..1ba22911c51f 100644
--- a/pkgs/applications/misc/teseq/default.nix
+++ b/pkgs/applications/misc/teseq/default.nix
@@ -13,7 +13,7 @@ stdenv.mkDerivation {
   };
 
   meta = {
-    homepage = https://www.gnu.org/software/teseq/;
+    homepage = "https://www.gnu.org/software/teseq/";
     description = "Escape sequence illuminator";
     license = stdenv.lib.licenses.gpl3;
 
diff --git a/pkgs/applications/misc/thinking-rock/default.nix b/pkgs/applications/misc/thinking-rock/default.nix
index c057fde95d7f..fd6065010fb6 100644
--- a/pkgs/applications/misc/thinking-rock/default.nix
+++ b/pkgs/applications/misc/thinking-rock/default.nix
@@ -4,7 +4,7 @@ stdenv.mkDerivation {
   name = "thinkingrock-binary-2.2.1";
 
   src = fetchurl {
-    url = mirror://sourceforge/thinkingrock/ThinkingRock/TR%202.2.1/tr-2.2.1.tar.gz;
+    url = "mirror://sourceforge/thinkingrock/ThinkingRock/TR%202.2.1/tr-2.2.1.tar.gz";
     sha256 = "0hnwvvyc8miiz8w2g4iy7s4rgfy0kfbncgbgfzpsq6nrzq334kgm";
   };
 
@@ -34,7 +34,7 @@ stdenv.mkDerivation {
 
   meta = {
     description = "Task management system";
-    homepage = http://www.thinkingrock.com.au/;
+    homepage = "http://www.thinkingrock.com.au/";
     license = "CDDL"; # Common Development and Distribution License
     platforms = stdenv.lib.platforms.unix;
   };
diff --git a/pkgs/applications/misc/tilda/default.nix b/pkgs/applications/misc/tilda/default.nix
index 39f54156fef8..f8ae5587ff92 100644
--- a/pkgs/applications/misc/tilda/default.nix
+++ b/pkgs/applications/misc/tilda/default.nix
@@ -1,20 +1,23 @@
-{ stdenv, fetchzip, pkgconfig
-, autoreconfHook, gettext, expat
+{ stdenv, fetchFromGitHub, pkgconfig
+, autoreconfHook, gettext, expat, pcre2
 , libconfuse, vte, gtk
 , makeWrapper }:
 
+with stdenv.lib;
 stdenv.mkDerivation rec {
 
   pname = "tilda";
-  version = "1.4.1";
+  version = "1.5.0";
 
-  src = fetchzip {
-    url = "https://github.com/lanoxx/tilda/archive/${pname}-${version}.tar.gz";
-    sha256 = "154rsldqjv2m1bddisb930qicb0y35kx7bxq392n2hn68jr2pxkj";
+  src = fetchFromGitHub {
+    owner = "lanoxx";
+    repo = "tilda";
+    rev = "${pname}-${version}";
+    sha256 = "13djibj3s7ig13c57ywy38pxy3qfmqihii2c0g15fy2h9q8xp1gx";
   };
 
   nativeBuildInputs = [ autoreconfHook makeWrapper pkgconfig ];
-  buildInputs = [ gettext libconfuse vte gtk ];
+  buildInputs = [ gettext pcre2 libconfuse vte gtk ];
 
   LD_LIBRARY_PATH = "${expat.out}/lib"; # ugly hack for xgettext to work during build
 
@@ -27,9 +30,9 @@ stdenv.mkDerivation rec {
         --prefix XDG_DATA_DIRS : "$GSETTINGS_SCHEMAS_PATH"
   '';
 
-  meta = with stdenv.lib; {
+  meta = {
     description = "A Gtk based drop down terminal for Linux and Unix";
-    homepage = https://github.com/lanoxx/tilda/;
+    homepage = "https://github.com/lanoxx/tilda/";
     license = licenses.gpl3;
     maintainers = [ maintainers.AndersonTorres ];
     platforms = platforms.linux;
diff --git a/pkgs/applications/misc/tilix/default.nix b/pkgs/applications/misc/tilix/default.nix
index 2fa193fc8e7a..4707685e3dab 100644
--- a/pkgs/applications/misc/tilix/default.nix
+++ b/pkgs/applications/misc/tilix/default.nix
@@ -66,7 +66,7 @@ stdenv.mkDerivation {
 
   meta = with stdenv.lib; {
     description = "Tiling terminal emulator following the Gnome Human Interface Guidelines";
-    homepage = https://gnunn1.github.io/tilix-web;
+    homepage = "https://gnunn1.github.io/tilix-web";
     license = licenses.mpl20;
     maintainers = with maintainers; [ midchildan worldofpeace ];
     platforms = platforms.linux;
diff --git a/pkgs/applications/misc/tint2/default.nix b/pkgs/applications/misc/tint2/default.nix
index c85feff43603..dc991402eec6 100644
--- a/pkgs/applications/misc/tint2/default.nix
+++ b/pkgs/applications/misc/tint2/default.nix
@@ -32,7 +32,7 @@ stdenv.mkDerivation rec {
   '';
 
   meta = with stdenv.lib; {
-    homepage = https://gitlab.com/o9000/tint2;
+    homepage = "https://gitlab.com/o9000/tint2";
     description = "Simple panel/taskbar unintrusive and light (memory, cpu, aestetic)";
     license = licenses.gpl2;
     platforms = platforms.linux;
diff --git a/pkgs/applications/misc/tnef/default.nix b/pkgs/applications/misc/tnef/default.nix
index bbd3073a4d8e..40505c4fdbea 100644
--- a/pkgs/applications/misc/tnef/default.nix
+++ b/pkgs/applications/misc/tnef/default.nix
@@ -24,7 +24,7 @@ stdenv.mkDerivation rec {
 
       The TNEF program allows one to unpack the attachments which were encapsulated into the TNEF attachment. Thus alleviating the need to use Microsoft Outlook to view the attachment.
     '';
-    homepage = https://github.com/verdammelt/tnef;
+    homepage = "https://github.com/verdammelt/tnef";
     license = licenses.gpl2;
     maintainers = with maintainers; [ peterhoeg ];
     platforms = platforms.all;
diff --git a/pkgs/applications/misc/todoist-electron/default.nix b/pkgs/applications/misc/todoist-electron/default.nix
index cb0ee20f555f..798f1708ae70 100644
--- a/pkgs/applications/misc/todoist-electron/default.nix
+++ b/pkgs/applications/misc/todoist-electron/default.nix
@@ -4,18 +4,18 @@
 
 stdenv.mkDerivation rec {
   pname = "todoist-electron";
-  version = "1.19";
+  version = "1.20";
 
   src = fetchurl {
     url = "https://github.com/KryDos/todoist-linux/releases/download/${version}/Todoist_${version}.0_amd64.deb";
-    sha256 = "1w0l7k7wmbhwzv71cffsir0q7zg9m0617fmyvd4a01b6flpxrpfx";
+    sha256 = "0w885xqy1304cp6b0jll5lvm6b1zd1ciqjl97d2hkdi8c9gv3bqx";
   };
 
   desktopItem = makeDesktopItem {
     name = "Todoist";
     exec = "todoist";
     desktopName = "Todoist";
-    categories = "Utility;Productivity";
+    categories = "Utility";
   };
 
   nativeBuildInputs = [ makeWrapper dpkg ];
diff --git a/pkgs/applications/misc/todoist/default.nix b/pkgs/applications/misc/todoist/default.nix
index 74b2b770215c..1e82ac2cccbe 100644
--- a/pkgs/applications/misc/todoist/default.nix
+++ b/pkgs/applications/misc/todoist/default.nix
@@ -14,7 +14,7 @@ buildGoModule rec {
   modSha256 = "1nnp5ijz4n34gc97rar4wlvlbx21ndpjyb2mc6gxdk1wzx3mgswp";
 
   meta = {
-    homepage = https://github.com/sachaos/todoist;
+    homepage = "https://github.com/sachaos/todoist";
     description = "Todoist CLI Client";
     license = lib.licenses.mit;
     platforms = lib.platforms.unix;
diff --git a/pkgs/applications/misc/toggldesktop/default.nix b/pkgs/applications/misc/toggldesktop/default.nix
index bf22cb0181da..410c17be803a 100644
--- a/pkgs/applications/misc/toggldesktop/default.nix
+++ b/pkgs/applications/misc/toggldesktop/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchzip, buildEnv, makeDesktopItem, runCommand, writeText, pkgconfig
+{ mkDerivation, lib, fetchzip, buildEnv, makeDesktopItem, runCommand, writeText, pkgconfig
 , cmake, qmake, cacert, jsoncpp, libX11, libXScrnSaver, lua, openssl, poco
 , qtbase, qtwebengine, qtx11extras, sqlite }:
 
@@ -11,7 +11,7 @@ let
     sha256 = "01hqkx9dljnhwnyqi6mmzfp02hnbi2j50rsfiasniqrkbi99x9v1";
   };
 
-  bugsnag-qt = stdenv.mkDerivation rec {
+  bugsnag-qt = mkDerivation rec {
     pname = "bugsnag-qt";
     version = "20180522.005732";
 
@@ -24,7 +24,7 @@ let
     buildInputs = [ qtbase ];
   };
 
-  qxtglobalshortcut = stdenv.mkDerivation rec {
+  qxtglobalshortcut = mkDerivation rec {
     pname = "qxtglobalshortcut";
     version = "f584471dada2099ba06c574bdfdd8b078c2e3550";
 
@@ -37,7 +37,7 @@ let
     buildInputs = [ qtbase qtx11extras ];
   };
 
-  qt-oauth-lib = stdenv.mkDerivation rec {
+  qt-oauth-lib = mkDerivation rec {
     pname = "qt-oauth-lib";
     version = "20190125.190943";
 
@@ -62,7 +62,7 @@ let
     mkdir -p $out/lib/pkgconfig && ln -s ${poco-pc} $_/poco.pc
   '';
 
-  libtoggl = stdenv.mkDerivation {
+  libtoggl = mkDerivation {
     name = "libtoggl-${version}";
     inherit src version;
 
@@ -77,7 +77,7 @@ let
     '';
   };
 
-  toggldesktop = stdenv.mkDerivation {
+  toggldesktop = mkDerivation {
     name = "${name}-unwrapped";
     inherit src version;
 
@@ -108,7 +108,7 @@ let
     ];
   };
 
-  toggldesktop-icons = stdenv.mkDerivation {
+  toggldesktop-icons = mkDerivation {
     name = "${name}-icons";
     inherit (toggldesktop) src sourceRoot;
 
@@ -138,9 +138,9 @@ buildEnv {
   inherit name;
   paths = [ desktopItem toggldesktop-icons toggldesktop-wrapped ];
 
-  meta = with stdenv.lib; {
+  meta = with lib; {
     description = "Client for Toggl time tracking service";
-    homepage = https://github.com/toggl/toggldesktop;
+    homepage = "https://github.com/toggl/toggldesktop";
     license = licenses.bsd3;
     maintainers = with maintainers; [ yegortimoshenko ];
     platforms = platforms.linux;
diff --git a/pkgs/applications/misc/tomboy/default.nix b/pkgs/applications/misc/tomboy/default.nix
index d8a6f86f104b..ff4faf139e6c 100644
--- a/pkgs/applications/misc/tomboy/default.nix
+++ b/pkgs/applications/misc/tomboy/default.nix
@@ -34,7 +34,7 @@ stdenv.mkDerivation {
   '';
 
   meta = with stdenv.lib; {
-    homepage = https://wiki.gnome.org/Apps/Tomboy;
+    homepage = "https://wiki.gnome.org/Apps/Tomboy";
     description = "A simple note-taking application with synchronization";
     platforms = platforms.linux;
     license = stdenv.lib.licenses.lgpl2;
diff --git a/pkgs/applications/misc/toot/default.nix b/pkgs/applications/misc/toot/default.nix
index 7f1c3648f245..5ce35f3292bd 100644
--- a/pkgs/applications/misc/toot/default.nix
+++ b/pkgs/applications/misc/toot/default.nix
@@ -1,14 +1,14 @@
 { stdenv, fetchFromGitHub, python3Packages }:
 
 python3Packages.buildPythonApplication rec {
-  version = "0.25.2";
+  version = "0.26.0";
   name    = "toot-${version}";
 
   src = fetchFromGitHub {
     owner  = "ihabunek";
     repo   = "toot";
     rev    = version;
-    sha256 = "0g18x8pbwhk2d3aphah6dqqbhz62k48pwx63flsnqd4brccd0jkh";
+    sha256 = "146jj83jixahgxwh12bbkfvci2wrz398h5x01kgppdy59m4pa4pl";
   };
 
   checkInputs = with python3Packages; [ pytest ];
diff --git a/pkgs/applications/misc/tootle/default.nix b/pkgs/applications/misc/tootle/default.nix
index e619ab053e7d..904782f3e1f8 100644
--- a/pkgs/applications/misc/tootle/default.nix
+++ b/pkgs/applications/misc/tootle/default.nix
@@ -70,7 +70,7 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "Simple Mastodon client designed for elementary OS";
-    homepage = https://github.com/bleakgrey/tootle;
+    homepage = "https://github.com/bleakgrey/tootle";
     license = licenses.gpl3;
     maintainers = with maintainers; [ dtzWill ];
   };
diff --git a/pkgs/applications/misc/tpmmanager/default.nix b/pkgs/applications/misc/tpmmanager/default.nix
index b955711d0030..2bbb95d01ae7 100644
--- a/pkgs/applications/misc/tpmmanager/default.nix
+++ b/pkgs/applications/misc/tpmmanager/default.nix
@@ -31,7 +31,7 @@ stdenv.mkDerivation rec {
     '';
 
   meta = {
-    homepage = https://projects.sirrix.com/trac/tpmmanager;
+    homepage = "https://projects.sirrix.com/trac/tpmmanager";
     description = "Tool for managing the TPM";
     license = stdenv.lib.licenses.gpl2;
     maintainers = with stdenv.lib.maintainers; [ tstrobel ];
diff --git a/pkgs/applications/misc/translate-shell/default.nix b/pkgs/applications/misc/translate-shell/default.nix
index a2f6980abd9e..e418ee69b95b 100644
--- a/pkgs/applications/misc/translate-shell/default.nix
+++ b/pkgs/applications/misc/translate-shell/default.nix
@@ -28,7 +28,7 @@ stdenv.mkDerivation rec {
   '';
 
   meta = with stdenv.lib; {
-    homepage = https://www.soimort.org/translate-shell;
+    homepage = "https://www.soimort.org/translate-shell";
     description = "Command-line translator using Google Translate, Bing Translator, Yandex.Translate, and Apertium";
     license = licenses.unlicense;
     maintainers = with maintainers; [ ebzzry infinisil ];
diff --git a/pkgs/applications/misc/tthsum/default.nix b/pkgs/applications/misc/tthsum/default.nix
index 76ac3f75b266..792b80d04629 100644
--- a/pkgs/applications/misc/tthsum/default.nix
+++ b/pkgs/applications/misc/tthsum/default.nix
@@ -33,7 +33,7 @@ stdenv.mkDerivation rec {
       The specification of the THEX algorithm is at:
       http://adc.sourceforge.net/draft-jchapweske-thex-02.html
     '';
-    homepage = http://tthsum.devs.nu/;
+    homepage = "http://tthsum.devs.nu/";
     license = licenses.gpl3Plus;
     maintainers = [ maintainers.ebzzry ];
     platforms = platforms.unix;
diff --git a/pkgs/applications/misc/tuir/default.nix b/pkgs/applications/misc/tuir/default.nix
index e479dc26f175..11bf70cb56b3 100644
--- a/pkgs/applications/misc/tuir/default.nix
+++ b/pkgs/applications/misc/tuir/default.nix
@@ -3,13 +3,13 @@
 with python3Packages;
 buildPythonApplication rec {
   pname = "tuir";
-  version = "1.28.3";
+  version = "1.29.0";
 
   src = fetchFromGitLab {
     owner = "ajak";
     repo = pname;
     rev = "v${version}";
-    sha256 = "0nhpbb0vdngwb0fhlimjgm3wq2s67m4rb3vv920zyllnmfplk0lk";
+    sha256 = "1fqp6bvq8kzdsf3nna4mn1phdcixpx76bya43xrivxjbzsfl59ib";
   };
 
   # Tests try to access network
diff --git a/pkgs/applications/misc/tut/default.nix b/pkgs/applications/misc/tut/default.nix
new file mode 100644
index 000000000000..e9b09d68da60
--- /dev/null
+++ b/pkgs/applications/misc/tut/default.nix
@@ -0,0 +1,24 @@
+{ stdenv, buildGoPackage, fetchFromGitHub }:
+
+buildGoPackage rec {
+  pname = "tut";
+  version = "0.0.7";
+
+  goPackagePath = "github.com/RasmusLindroth/tut";
+  goDeps = ./deps.nix;
+
+  src = fetchFromGitHub {
+    owner = "RasmusLindroth";
+    repo = pname;
+    rev = version;
+    sha256 = "1v1cvdsrxz1yj2vibx3iapw17ngfihjkr62zhxsn1msb77xyd7lb";
+  };
+
+  meta = with stdenv.lib; {
+    description = "A TUI for Mastodon with vim inspired keys";
+    homepage = "https://github.com/RasmusLindroth/tut";
+    license = licenses.mit;
+    maintainers = with maintainers; [ equirosa ];
+    platforms = platforms.unix;
+  };
+}
diff --git a/pkgs/applications/misc/tut/deps.nix b/pkgs/applications/misc/tut/deps.nix
new file mode 100644
index 000000000000..9264153e5030
--- /dev/null
+++ b/pkgs/applications/misc/tut/deps.nix
@@ -0,0 +1,318 @@
+# file generated from go.mod using vgo2nix (https://github.com/adisbladis/vgo2nix)
+[
+  {
+    goPackagePath = "github.com/BurntSushi/toml";
+    fetch = {
+      type = "git";
+      url = "https://github.com/BurntSushi/toml";
+      rev = "v0.3.1";
+      sha256 = "1fjdwwfzyzllgiwydknf1pwjvy49qxfsczqx5gz3y0izs7as99j6";
+    };
+  }
+  {
+    goPackagePath = "github.com/DATA-DOG/go-sqlmock";
+    fetch = {
+      type = "git";
+      url = "https://github.com/DATA-DOG/go-sqlmock";
+      rev = "v1.3.3";
+      sha256 = "1xrly2vmy1mgj9dbkmivhh8gvq6v9f9xy2yp2dw54i1895zzs928";
+    };
+  }
+  {
+    goPackagePath = "github.com/PuerkitoBio/goquery";
+    fetch = {
+      type = "git";
+      url = "https://github.com/PuerkitoBio/goquery";
+      rev = "v1.5.0";
+      sha256 = "1fqf4rs66wy02nxz6w4mvs2qawf2j8srz17i294v64y8gvxisp56";
+    };
+  }
+  {
+    goPackagePath = "github.com/andybalholm/cascadia";
+    fetch = {
+      type = "git";
+      url = "https://github.com/andybalholm/cascadia";
+      rev = "v1.0.0";
+      sha256 = "09j8cavbhqqdxjqrkwbc40g8p0i49zf3184rpjm5p2rjbprcghcc";
+    };
+  }
+  {
+    goPackagePath = "github.com/davecgh/go-spew";
+    fetch = {
+      type = "git";
+      url = "https://github.com/davecgh/go-spew";
+      rev = "v1.1.1";
+      sha256 = "0hka6hmyvp701adzag2g26cxdj47g21x6jz4sc6jjz1mn59d474y";
+    };
+  }
+  {
+    goPackagePath = "github.com/fatih/color";
+    fetch = {
+      type = "git";
+      url = "https://github.com/fatih/color";
+      rev = "v1.9.0";
+      sha256 = "086z8ssmr1fn9ba4mqnw7pnccfpys6l5yfhvycv1gdrsk7n27mvs";
+    };
+  }
+  {
+    goPackagePath = "github.com/gdamore/encoding";
+    fetch = {
+      type = "git";
+      url = "https://github.com/gdamore/encoding";
+      rev = "v1.0.0";
+      sha256 = "1vmm5zll92i2fm4ajqx0gyx0p9j36496x5nabi3y0x7h0inv0pk9";
+    };
+  }
+  {
+    goPackagePath = "github.com/gdamore/tcell";
+    fetch = {
+      type = "git";
+      url = "https://github.com/gdamore/tcell";
+      rev = "v1.3.0";
+      sha256 = "1csg9qkmbg4ksj5247kgqcy7bxvqgz6b98r0rv2s4c1mkc99gx2r";
+    };
+  }
+  {
+    goPackagePath = "github.com/gopherjs/gopherjs";
+    fetch = {
+      type = "git";
+      url = "https://github.com/gopherjs/gopherjs";
+      rev = "0766667cb4d1";
+      sha256 = "13pfc9sxiwjky2lm1xb3i3lcisn8p6mgjk2d927l7r92ysph8dmw";
+    };
+  }
+  {
+    goPackagePath = "github.com/gorilla/websocket";
+    fetch = {
+      type = "git";
+      url = "https://github.com/gorilla/websocket";
+      rev = "v1.4.1";
+      sha256 = "03n1n0nwz3k9qshmriycqznnnvd3dkzsfwpnfjzzvafjxk9kyapv";
+    };
+  }
+  {
+    goPackagePath = "github.com/jtolds/gls";
+    fetch = {
+      type = "git";
+      url = "https://github.com/jtolds/gls";
+      rev = "v4.20.0";
+      sha256 = "1k7xd2q2ysv2xsh373qs801v6f359240kx0vrl0ydh7731lngvk6";
+    };
+  }
+  {
+    goPackagePath = "github.com/kyoh86/xdg";
+    fetch = {
+      type = "git";
+      url = "https://github.com/kyoh86/xdg";
+      rev = "v1.2.0";
+      sha256 = "0a5nz53fdz1c2qvwlf2dpjdd72nxri95i6q4b07c37kiipgaxncn";
+    };
+  }
+  {
+    goPackagePath = "github.com/lucasb-eyer/go-colorful";
+    fetch = {
+      type = "git";
+      url = "https://github.com/lucasb-eyer/go-colorful";
+      rev = "v1.0.3";
+      sha256 = "12bgz6dxbb2ki1g3x7fg9ipsjgfkd58fp7cdpv63h4kvlj2n7j69";
+    };
+  }
+  {
+    goPackagePath = "github.com/mattn/go-colorable";
+    fetch = {
+      type = "git";
+      url = "https://github.com/mattn/go-colorable";
+      rev = "v0.1.4";
+      sha256 = "1yxcz08kminqr1221zxpibnbzfcgs3fafin0z9zqb3gqvf74jywz";
+    };
+  }
+  {
+    goPackagePath = "github.com/mattn/go-isatty";
+    fetch = {
+      type = "git";
+      url = "https://github.com/mattn/go-isatty";
+      rev = "v0.0.11";
+      sha256 = "0h671sv7hfprja495kavazkalkx7xzaqksjh13brcnwq67ijrali";
+    };
+  }
+  {
+    goPackagePath = "github.com/mattn/go-mastodon";
+    fetch = {
+      type = "git";
+      url = "https://github.com/mattn/go-mastodon";
+      rev = "3e91c76504df";
+      sha256 = "1wh2hqrzx80gfs1y34f4h68mnz83asx88v0bsw372ch5j1shswlr";
+    };
+  }
+  {
+    goPackagePath = "github.com/mattn/go-runewidth";
+    fetch = {
+      type = "git";
+      url = "https://github.com/mattn/go-runewidth";
+      rev = "v0.0.8";
+      sha256 = "14ilkbhnhl8yj443dd1ga4biapswv4g0b4vm2mix78a8srdww39j";
+    };
+  }
+  {
+    goPackagePath = "github.com/mattn/go-tty";
+    fetch = {
+      type = "git";
+      url = "https://github.com/mattn/go-tty";
+      rev = "v0.0.3";
+      sha256 = "0d1d63q02pc5k5ga8bw4yjbkrli2769vg237psajsskjirjy53vf";
+    };
+  }
+  {
+    goPackagePath = "github.com/microcosm-cc/bluemonday";
+    fetch = {
+      type = "git";
+      url = "https://github.com/microcosm-cc/bluemonday";
+      rev = "v1.0.2";
+      sha256 = "0j0aylsxqjcj49w7ph8cmpaqjlpvg7mb5mrcrd9bg71dlb9z9ir2";
+    };
+  }
+  {
+    goPackagePath = "github.com/pelletier/go-toml";
+    fetch = {
+      type = "git";
+      url = "https://github.com/pelletier/go-toml";
+      rev = "v1.7.0";
+      sha256 = "0sqrwldjj2qxrgjz1diw1ffviya4ma7mz7nhdgydbisi2h55lqla";
+    };
+  }
+  {
+    goPackagePath = "github.com/rivo/tview";
+    fetch = {
+      type = "git";
+      url = "https://github.com/rivo/tview";
+      rev = "ca37f83cb2e7";
+      sha256 = "05nifgrxv6aib8f20mhs9m0grdfdyyg5vyhk6zgwsxjlwbzaj021";
+    };
+  }
+  {
+    goPackagePath = "github.com/rivo/uniseg";
+    fetch = {
+      type = "git";
+      url = "https://github.com/rivo/uniseg";
+      rev = "v0.1.0";
+      sha256 = "0flpc1px1l6b1lxzhdxi0mvpkkjchppvgxshxxnlmm40s76i9ww5";
+    };
+  }
+  {
+    goPackagePath = "github.com/smartystreets/assertions";
+    fetch = {
+      type = "git";
+      url = "https://github.com/smartystreets/assertions";
+      rev = "b2de0cb4f26d";
+      sha256 = "1i7ldgavgl35c7gk25p7bvdr282ckng090zr4ch9mk1705akx09y";
+    };
+  }
+  {
+    goPackagePath = "github.com/smartystreets/goconvey";
+    fetch = {
+      type = "git";
+      url = "https://github.com/smartystreets/goconvey";
+      rev = "v1.6.4";
+      sha256 = "07zjxwszayal88z1j2bwnqrsa32vg8l4nivks5yfr9j8xfsw7n6m";
+    };
+  }
+  {
+    goPackagePath = "github.com/tomnomnom/linkheader";
+    fetch = {
+      type = "git";
+      url = "https://github.com/tomnomnom/linkheader";
+      rev = "02ca5825eb80";
+      sha256 = "1ghrv28vrvvrpyr4d4q817yby8g1j04mid8ql00sds1pvfv67d32";
+    };
+  }
+  {
+    goPackagePath = "github.com/urfave/cli";
+    fetch = {
+      type = "git";
+      url = "https://github.com/urfave/cli";
+      rev = "v1.20.0";
+      sha256 = "0y6f4sbzkiiwrxbl15biivj8c7qwxnvm3zl2dd3mw4wzg4x10ygj";
+    };
+  }
+  {
+    goPackagePath = "golang.org/x/crypto";
+    fetch = {
+      type = "git";
+      url = "https://go.googlesource.com/crypto";
+      rev = "c2843e01d9a2";
+      sha256 = "01xgxbj5r79nmisdvpq48zfy8pzaaj90bn6ngd4nf33j9ar1dp8r";
+    };
+  }
+  {
+    goPackagePath = "golang.org/x/net";
+    fetch = {
+      type = "git";
+      url = "https://go.googlesource.com/net";
+      rev = "d3edc9973b7e";
+      sha256 = "12zbjwcsh9b0lwycqlkrnbyg5a6a9dzgj8hhgq399bdda5bd97y7";
+    };
+  }
+  {
+    goPackagePath = "golang.org/x/sync";
+    fetch = {
+      type = "git";
+      url = "https://go.googlesource.com/sync";
+      rev = "cd5d95a43a6e";
+      sha256 = "1nqkyz2y1qvqcma52ijh02s8aiqmkfb95j08f6zcjhbga3ds6hds";
+    };
+  }
+  {
+    goPackagePath = "golang.org/x/sys";
+    fetch = {
+      type = "git";
+      url = "https://go.googlesource.com/sys";
+      rev = "85ca7c5b95cd";
+      sha256 = "1504qkgbhhm4f0bhk77v2r1lj6x171ay5m79alkg78wjb5cign5l";
+    };
+  }
+  {
+    goPackagePath = "golang.org/x/text";
+    fetch = {
+      type = "git";
+      url = "https://go.googlesource.com/text";
+      rev = "v0.3.2";
+      sha256 = "0flv9idw0jm5nm8lx25xqanbkqgfiym6619w575p7nrdh0riqwqh";
+    };
+  }
+  {
+    goPackagePath = "golang.org/x/tools";
+    fetch = {
+      type = "git";
+      url = "https://go.googlesource.com/tools";
+      rev = "ab21143f2384";
+      sha256 = "15fk0psk53pplpyghz55bhay0kvsv5rikmn5hwgjnnyxq9vfy178";
+    };
+  }
+  {
+    goPackagePath = "gopkg.in/check.v1";
+    fetch = {
+      type = "git";
+      url = "https://gopkg.in/check.v1";
+      rev = "20d25e280405";
+      sha256 = "0k1m83ji9l1a7ng8a7v40psbymxasmssbrrhpdv2wl4rhs0nc3np";
+    };
+  }
+  {
+    goPackagePath = "gopkg.in/ini.v1";
+    fetch = {
+      type = "git";
+      url = "https://gopkg.in/ini.v1";
+      rev = "v1.55.0";
+      sha256 = "1b7wsfal3b3pl5pv5n2qix09b3imh0zhirrphlsg5p2rb8fk0d0j";
+    };
+  }
+  {
+    goPackagePath = "gopkg.in/yaml.v2";
+    fetch = {
+      type = "git";
+      url = "https://gopkg.in/yaml.v2";
+      rev = "v2.2.8";
+      sha256 = "1inf7svydzscwv9fcjd2rm61a4xjk6jkswknybmns2n58shimapw";
+    };
+  }
+]
diff --git a/pkgs/applications/misc/tvbrowser/bin.nix b/pkgs/applications/misc/tvbrowser/bin.nix
index 38865ca4f3d9..68d25e4e3de7 100644
--- a/pkgs/applications/misc/tvbrowser/bin.nix
+++ b/pkgs/applications/misc/tvbrowser/bin.nix
@@ -48,7 +48,7 @@ in stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "Electronic TV Program Guide";
-    homepage = https://www.tvbrowser.org/;
+    homepage = "https://www.tvbrowser.org/";
     license = licenses.gpl3;
     platforms = platforms.linux;
     maintainers = with maintainers; [ jfrankenau ];
diff --git a/pkgs/applications/misc/twmn/default.nix b/pkgs/applications/misc/twmn/default.nix
index cd58219721c9..69f58b828c46 100644
--- a/pkgs/applications/misc/twmn/default.nix
+++ b/pkgs/applications/misc/twmn/default.nix
@@ -28,7 +28,7 @@ mkDerivation {
 
   meta = {
     description = "A notification system for tiling window managers";
-    homepage = https://github.com/sboli/twmn;
+    homepage = "https://github.com/sboli/twmn";
     platforms = with lib.platforms; linux;
     maintainers = [ lib.maintainers.matejc ];
     license = lib.licenses.lgpl3;
diff --git a/pkgs/applications/misc/udevil/default.nix b/pkgs/applications/misc/udevil/default.nix
index 3cc4fcc1517b..dbf721888df6 100644
--- a/pkgs/applications/misc/udevil/default.nix
+++ b/pkgs/applications/misc/udevil/default.nix
@@ -2,7 +2,7 @@
 stdenv.mkDerivation {
   name = "udevil-0.4.4";
   src = fetchurl {
-    url = https://github.com/IgnorantGuru/udevil/archive/0.4.4.tar.gz;
+    url = "https://github.com/IgnorantGuru/udevil/archive/0.4.4.tar.gz";
     sha256 = "0z1bhaayambrcn7bgnrqk445k50ifabmw8q4i9qj49nnbcvxhbxd";
   };
   nativeBuildInputs = [ pkgconfig ];
@@ -22,7 +22,7 @@ stdenv.mkDerivation {
   patches = [ ./device-info-sys-stat.patch ];
   meta = {
     description = "A command line Linux program which mounts and unmounts removable devices without a password, shows device info, and monitors device changes";
-    homepage = https://ignorantguru.github.io/udevil/;
+    homepage = "https://ignorantguru.github.io/udevil/";
     platforms = stdenv.lib.platforms.linux;
     license = stdenv.lib.licenses.gpl3;
   };
diff --git a/pkgs/applications/misc/udiskie/default.nix b/pkgs/applications/misc/udiskie/default.nix
index 7b2c49974973..aa2246603f33 100644
--- a/pkgs/applications/misc/udiskie/default.nix
+++ b/pkgs/applications/misc/udiskie/default.nix
@@ -56,7 +56,7 @@ python3Packages.buildPythonApplication rec {
   meta = with stdenv.lib; {
     description = "Removable disk automounter for udisks";
     license = licenses.mit;
-    homepage = https://github.com/coldfix/udiskie;
+    homepage = "https://github.com/coldfix/udiskie";
     maintainers = with maintainers; [ AndersonTorres ];
   };
 }
diff --git a/pkgs/applications/misc/ulauncher/0001-Adjust-get_data_path-for-NixOS.patch b/pkgs/applications/misc/ulauncher/0001-Adjust-get_data_path-for-NixOS.patch
new file mode 100644
index 000000000000..f14d7f718027
--- /dev/null
+++ b/pkgs/applications/misc/ulauncher/0001-Adjust-get_data_path-for-NixOS.patch
@@ -0,0 +1,55 @@
+From 86cc27022015697a61d1ec1b13e52f9dbe7f6c57 Mon Sep 17 00:00:00 2001
+From: worldofpeace <worldofpeace@protonmail.ch>
+Date: Mon, 23 Mar 2020 18:34:00 -0400
+Subject: [PATCH] Adjust get_data_path for NixOS
+
+We construct the ulauncher data path from xdg_data_dirs
+and prevent it from being a nix store path or being xdg_data_home.
+We do this to prevent /nix/store paths being hardcoded to shortcuts.json.
+On NixOS this path will either be /run/current-system/sw/share/ulauncher
+or $HOME/.nix-profile/share/ulauncher if the user used nix-env.
+---
+ ulauncher/config.py | 27 ++++++++++++++++++---------
+ 1 file changed, 18 insertions(+), 9 deletions(-)
+
+diff --git a/ulauncher/config.py b/ulauncher/config.py
+index f21014e..cc636e1 100644
+--- a/ulauncher/config.py
++++ b/ulauncher/config.py
+@@ -50,15 +50,24 @@ def get_data_path():
+     is specified at installation time.
+     """
+ 
+-    # Get pathname absolute or relative.
+-    path = os.path.join(
+-        os.path.dirname(__file__), __ulauncher_data_directory__)
+-
+-    abs_data_path = os.path.abspath(path)
+-    if not os.path.exists(abs_data_path):
+-        raise ProjectPathNotFoundError(abs_data_path)
+-
+-    return abs_data_path
++    paths = list(
++        filter(
++            os.path.exists,
++            [
++                os.path.join(dir, "ulauncher")
++                for dir in xdg_data_dirs
++                # Get path that isn't in the /nix/store so they don't get hardcoded into configs
++                if not dir.startswith("/nix/store/")
++                # Exclude .local/share/ulauncher which isn't what we want
++                if not dir.startswith(xdg_data_home)
++            ],
++        )
++    )
++
++    try:
++        return paths[0]
++    except:
++        raise ProjectPathNotFoundError()
+ 
+ 
+ def is_wayland():
+-- 
+2.25.1
+
diff --git a/pkgs/applications/misc/ulauncher/default.nix b/pkgs/applications/misc/ulauncher/default.nix
index 9fa284aba434..34ca82b8d04c 100644
--- a/pkgs/applications/misc/ulauncher/default.nix
+++ b/pkgs/applications/misc/ulauncher/default.nix
@@ -1,8 +1,11 @@
 { stdenv
 , fetchurl
-, python27Packages
+, python3Packages
+, gdk-pixbuf
+, glib
 , gnome3
 , gobject-introspection
+, gtk3
 , wrapGAppsHook
 , webkitgtk
 , libnotify
@@ -11,49 +14,54 @@
 , intltool
 , wmctrl
 , xvfb_run
+, librsvg
 }:
 
-python27Packages.buildPythonApplication rec  {
+python3Packages.buildPythonApplication rec {
   pname = "ulauncher";
-  version = "4.4.0.r1";
+  version = "5.7.3";
 
-  # Python 3 support is currently in development
-  # on the dev branch and 5.x.x releases
-  disabled = ! python27Packages.isPy27;
+  disabled = python3Packages.isPy27;
 
   src = fetchurl {
     url = "https://github.com/Ulauncher/Ulauncher/releases/download/${version}/ulauncher_${version}.tar.gz";
-    sha256 = "12v7qpjhf0842ivsfflsl2zlvhiaw25f9ffv7vhnkvrhrmksim9f";
+    sha256 = "0wq2zsq3496fjfg89q01dsm7sb7kv92sycvqm6ad8z1z2kpisrbh";
   };
 
-  nativeBuildInputs = with python27Packages;  [
+  nativeBuildInputs = with python3Packages; [
     distutils_extra
     intltool
     wrapGAppsHook
   ];
 
   buildInputs = [
+    gdk-pixbuf
+    glib
     gnome3.adwaita-icon-theme
     gobject-introspection
+    gtk3
     keybinder3
     libappindicator
     libnotify
+    librsvg
     webkitgtk
     wmctrl
   ];
 
-  propagatedBuildInputs = with python27Packages; [
+  propagatedBuildInputs = with python3Packages; [
+    mock
+    mypy
+    mypy-extensions
     dbus-python
-    notify
     pygobject3
     pyinotify
-    pysqlite
     python-Levenshtein
     pyxdg
+    requests
     websocket_client
   ];
 
-  checkInputs = with python27Packages; [
+  checkInputs = with python3Packages; [
     mock
     pytest
     pytest-mock
@@ -63,6 +71,8 @@ python27Packages.buildPythonApplication rec  {
 
   patches = [
     ./fix-path.patch
+    ./0001-Adjust-get_data_path-for-NixOS.patch
+    ./fix-extensions.patch
   ];
 
   postPatch = ''
@@ -73,7 +83,7 @@ python27Packages.buildPythonApplication rec  {
   doCheck = false;
 
   preCheck = ''
-    export PYTHONPATH=$PYTHONPATH:$out/${python27Packages.python.sitePackages}
+    export PYTHONPATH=$PYTHONPATH:$out/${python3Packages.python.sitePackages}
   '';
 
   # Simple translation of
@@ -95,7 +105,7 @@ python27Packages.buildPythonApplication rec  {
 
   meta = with stdenv.lib; {
     description = "A fast application launcher for Linux, written in Python, using GTK";
-    homepage = https://ulauncher.io/;
+    homepage = "https://ulauncher.io/";
     license = licenses.gpl3;
     platforms = platforms.linux;
     maintainers = with maintainers; [ aaronjanse worldofpeace ];
diff --git a/pkgs/applications/misc/ulauncher/fix-extensions.patch b/pkgs/applications/misc/ulauncher/fix-extensions.patch
new file mode 100644
index 000000000000..f6d00f9fafd5
--- /dev/null
+++ b/pkgs/applications/misc/ulauncher/fix-extensions.patch
@@ -0,0 +1,13 @@
+diff --git a/ulauncher/api/server/ExtensionRunner.py b/ulauncher/api/server/ExtensionRunner.py
+index 22042bf..f7b31c8 100644
+--- a/ulauncher/api/server/ExtensionRunner.py
++++ b/ulauncher/api/server/ExtensionRunner.py
+@@ -79,7 +79,7 @@ class ExtensionRunner:
+         cmd = [sys.executable, os.path.join(self.extensions_dir, extension_id, 'main.py')]
+         env = os.environ.copy()
+         env['ULAUNCHER_WS_API'] = self.extension_server.generate_ws_url(extension_id)
+-        env['PYTHONPATH'] = ':'.join(filter(bool, [ULAUNCHER_APP_DIR, os.getenv('PYTHONPATH')]))
++        env['PYTHONPATH'] = ':'.join([ULAUNCHER_APP_DIR] + sys.path)
+ 
+         if self.verbose:
+             env['VERBOSE'] = '1'
diff --git a/pkgs/applications/misc/upwork/default.nix b/pkgs/applications/misc/upwork/default.nix
new file mode 100644
index 000000000000..3757c8ce3bb4
--- /dev/null
+++ b/pkgs/applications/misc/upwork/default.nix
@@ -0,0 +1,55 @@
+{ stdenv, fetchurl, dpkg, wrapGAppsHook, autoPatchelfHook, writeShellScript
+, alsaLib, atk, at-spi2-atk, at-spi2-core, cairo, cups, dbus, expat, fontconfig, freetype
+, gdk-pixbuf, glib, gtk3, libnotify, libX11, libXcomposite, libXcursor, libXdamage, libuuid
+, libXext, libXfixes, libXi, libXrandr, libXrender, libXtst, nspr, nss, libxcb
+, pango, systemd, libXScrnSaver, libcxx, libpulseaudio }:
+
+stdenv.mkDerivation rec {
+  pname = "upwork";
+  version = "5.3.3-883";
+
+  src = fetchurl {
+    url = "https://updates-desktopapp.upwork.com/binaries/v5_3_3_883_1f817bc1fefd44e7/upwork_5.3.3.883_amd64.deb";
+    sha256 = "072zns79w4h46bvbj23rvr8i12sf2l378ry0z3hchwcimkrph9wx";
+  };
+
+  dontWrapGApps = true;
+
+  nativeBuildInputs = [ 
+    dpkg
+    wrapGAppsHook
+    autoPatchelfHook
+  ];
+
+  buildInputs = [
+    libcxx systemd libpulseaudio
+    stdenv.cc.cc alsaLib atk at-spi2-atk at-spi2-core cairo cups dbus expat fontconfig freetype
+    gdk-pixbuf glib gtk3 libnotify libX11 libXcomposite libuuid
+    libXcursor libXdamage libXext libXfixes libXi libXrandr libXrender
+    libXtst nspr nss libxcb pango systemd libXScrnSaver
+  ];
+
+  libPath = stdenv.lib.makeLibraryPath buildInputs;
+
+  unpackPhase = ''
+    dpkg-deb -x ${src} ./
+  '';
+
+  installPhase = ''
+    mv usr $out
+    mv opt $out
+    sed -e "s|/opt/Upwork|$out/bin|g" -i $out/share/applications/upwork.desktop
+
+    makeWrapper $out/opt/Upwork/upwork \
+      $out/bin/upwork \
+      --prefix XDG_DATA_DIRS : "${gtk3}/share/gsettings-schemas/${gtk3.name}/" \
+      --prefix LD_LIBRARY_PATH : ${libPath}
+  '';
+
+  meta = with stdenv.lib; {
+    description = "Online freelancing platform desktop application for time tracking";
+    homepage = "https://www.upwork.com/ab/downloads/";
+    license = licenses.unfree;
+    maintainers = with maintainers; [ zakkor ];
+  };
+}
\ No newline at end of file
diff --git a/pkgs/applications/misc/urlscan/default.nix b/pkgs/applications/misc/urlscan/default.nix
index 791075e4dd9b..ef4684689b8a 100644
--- a/pkgs/applications/misc/urlscan/default.nix
+++ b/pkgs/applications/misc/urlscan/default.nix
@@ -17,7 +17,7 @@ python3Packages.buildPythonApplication rec {
 
   meta = with stdenv.lib; {
     description = "Mutt and terminal url selector (similar to urlview)";
-    homepage = https://github.com/firecat53/urlscan;
+    homepage = "https://github.com/firecat53/urlscan";
     license = licenses.gpl2;
     maintainers = with maintainers; [ dpaetzel jfrankenau ];
   };
diff --git a/pkgs/applications/misc/urlview/default.nix b/pkgs/applications/misc/urlview/default.nix
index ad29c8f94d8b..6430a1bc7196 100644
--- a/pkgs/applications/misc/urlview/default.nix
+++ b/pkgs/applications/misc/urlview/default.nix
@@ -43,7 +43,7 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "Extract URLs from text";
-    homepage = https://packages.qa.debian.org/u/urlview.html;
+    homepage = "https://packages.qa.debian.org/u/urlview.html";
     license = licenses.gpl2;
     platforms = with platforms; linux ++ darwin;
     maintainers = with maintainers; [ ma27 ];
diff --git a/pkgs/applications/misc/usync/default.nix b/pkgs/applications/misc/usync/default.nix
index 344c07d845be..9234d8ad202a 100644
--- a/pkgs/applications/misc/usync/default.nix
+++ b/pkgs/applications/misc/usync/default.nix
@@ -22,7 +22,7 @@ stdenv.mkDerivation rec {
   '';
 
   meta = with stdenv.lib; {
-    homepage = https://github.com/ebzzry/usync;
+    homepage = "https://github.com/ebzzry/usync";
     description = "A simple site-to-site synchronization tool";
     license = licenses.mit;
     maintainers = [ maintainers.ebzzry ];
diff --git a/pkgs/applications/misc/valentina/default.nix b/pkgs/applications/misc/valentina/default.nix
index 5a12465c4c49..e9e8cfed796a 100644
--- a/pkgs/applications/misc/valentina/default.nix
+++ b/pkgs/applications/misc/valentina/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchhg
+{ mkDerivation, stdenv, fetchhg
 , qmake, qttools
 , qtbase, qtsvg, qtxmlpatterns
 , poppler_utils
@@ -6,7 +6,7 @@
 
 with stdenv.lib;
 
-stdenv.mkDerivation rec {
+mkDerivation rec {
   pname = "valentina";
   version = "0.6.1";
 
@@ -58,7 +58,7 @@ stdenv.mkDerivation rec {
 
   meta = {
     description = "An open source sewing pattern drafting software";
-    homepage = https://valentinaproject.bitbucket.io/;
+    homepage = "https://valentinaproject.bitbucket.io/";
     license = licenses.gpl3;
     platforms = platforms.linux;
     maintainers = with maintainers; [ jfrankenau ];
diff --git a/pkgs/applications/misc/variety/default.nix b/pkgs/applications/misc/variety/default.nix
index 6d8da4a1007a..4241f9153293 100644
--- a/pkgs/applications/misc/variety/default.nix
+++ b/pkgs/applications/misc/variety/default.nix
@@ -66,7 +66,7 @@ buildPythonApplication rec {
 
   meta = with lib; {
     description = "A wallpaper manager for Linux systems. It supports numerous desktops and wallpaper sources, including local files and online services: Flickr, Wallhaven, Unsplash, and more";
-    homepage = https://github.com/varietywalls/variety;
+    homepage = "https://github.com/varietywalls/variety";
     license = licenses.gpl3;
     maintainers = [ maintainers.zfnmxt ];
   };
diff --git a/pkgs/applications/misc/vcal/default.nix b/pkgs/applications/misc/vcal/default.nix
index b25e7f76cefe..9519e033473e 100644
--- a/pkgs/applications/misc/vcal/default.nix
+++ b/pkgs/applications/misc/vcal/default.nix
@@ -30,7 +30,7 @@ stdenv.mkDerivation rec {
 
   meta = with lib; {
     description = "Parser for VCalendar and ICalendar files, usable from the command line";
-    homepage = https://waynemorrison.com/software/;
+    homepage = "https://waynemorrison.com/software/";
     license = licenses.asl20;
     maintainers = with maintainers; [ peterhoeg ];
   };
diff --git a/pkgs/applications/misc/veracrypt/default.nix b/pkgs/applications/misc/veracrypt/default.nix
index fe1de349cff9..07e0a046ac53 100644
--- a/pkgs/applications/misc/veracrypt/default.nix
+++ b/pkgs/applications/misc/veracrypt/default.nix
@@ -46,7 +46,7 @@ stdenv.mkDerivation rec {
 
   meta = {
     description = "Free Open-Source filesystem on-the-fly encryption";
-    homepage = https://www.veracrypt.fr/;
+    homepage = "https://www.veracrypt.fr/";
     license = [ licenses.asl20 /* or */ "TrueCrypt License version 3.0" ];
     maintainers = with maintainers; [ dsferruzza ];
     platforms = platforms.linux;
diff --git a/pkgs/applications/misc/verbiste/default.nix b/pkgs/applications/misc/verbiste/default.nix
index 680573fd304d..a322756c157f 100644
--- a/pkgs/applications/misc/verbiste/default.nix
+++ b/pkgs/applications/misc/verbiste/default.nix
@@ -17,7 +17,7 @@ stdenv.mkDerivation rec {
   enableParallelBuilding = true;
 
   meta = with stdenv.lib; {
-    homepage = http://sarrazip.com/dev/verbiste.html;
+    homepage = "http://sarrazip.com/dev/verbiste.html";
     description = "French and Italian verb conjugator";
     license = licenses.gpl2Plus;
     platforms = platforms.linux;
diff --git a/pkgs/applications/misc/vifm/default.nix b/pkgs/applications/misc/vifm/default.nix
index f71e7a7a9602..d939beb443e1 100644
--- a/pkgs/applications/misc/vifm/default.nix
+++ b/pkgs/applications/misc/vifm/default.nix
@@ -37,7 +37,7 @@ in stdenv.mkDerivation rec {
     platforms = if mediaSupport then platforms.linux else platforms.unix;
     license = licenses.gpl2;
     downloadPage = "https://vifm.info/downloads.shtml";
-    homepage = https://vifm.info/;
+    homepage = "https://vifm.info/";
     inherit version;
     updateWalker = true;
   };
diff --git a/pkgs/applications/misc/viking/default.nix b/pkgs/applications/misc/viking/default.nix
index 9ce37ea8a467..03d3256e375a 100644
--- a/pkgs/applications/misc/viking/default.nix
+++ b/pkgs/applications/misc/viking/default.nix
@@ -66,7 +66,7 @@ stdenv.mkDerivation rec {
       on the map, make new tracks and waypoints, see real-time GPS
       position, etc.
     '';
-    homepage = https://sourceforge.net/projects/viking/;
+    homepage = "https://sourceforge.net/projects/viking/";
     license = licenses.gpl2Plus;
     maintainers = with maintainers; [ pSub sikmir ];
     platforms = with platforms; linux;
diff --git a/pkgs/applications/misc/visidata/default.nix b/pkgs/applications/misc/visidata/default.nix
index 64645e00bd85..cc88cb1751ef 100644
--- a/pkgs/applications/misc/visidata/default.nix
+++ b/pkgs/applications/misc/visidata/default.nix
@@ -1,5 +1,16 @@
-{ buildPythonApplication, lib, fetchFromGitHub
-, dateutil, pyyaml, openpyxl, xlrd, h5py, fonttools, lxml, pandas, pyshp
+{ buildPythonApplication
+, lib
+, fetchFromGitHub
+, dateutil
+, pyyaml
+, openpyxl
+, xlrd
+, h5py
+, fonttools
+, lxml
+, pandas
+, pyshp
+, setuptools
 }:
 buildPythonApplication rec {
   pname = "visidata";
@@ -12,16 +23,26 @@ buildPythonApplication rec {
     sha256 = "19gs8i6chrrwibz706gib5sixx1cjgfzh7v011kp3izcrn524mc0";
   };
 
-  propagatedBuildInputs = [dateutil pyyaml openpyxl xlrd h5py fonttools
-    lxml pandas pyshp ];
+  propagatedBuildInputs = [
+    dateutil
+    pyyaml
+    openpyxl
+    xlrd
+    h5py
+    fonttools
+    lxml
+    pandas
+    pyshp
+    setuptools
+  ];
 
   doCheck = false;
 
   meta = {
     inherit version;
     description = "Interactive terminal multitool for tabular data";
-    license = lib.licenses.gpl3 ;
-    maintainers = [lib.maintainers.raskin];
+    license = lib.licenses.gpl3;
+    maintainers = [ lib.maintainers.raskin ];
     platforms = lib.platforms.linux;
     homepage = "http://visidata.org/";
   };
diff --git a/pkgs/applications/misc/vit/default.nix b/pkgs/applications/misc/vit/default.nix
index 506ab5599199..3ae4aacb872b 100644
--- a/pkgs/applications/misc/vit/default.nix
+++ b/pkgs/applications/misc/vit/default.nix
@@ -32,7 +32,7 @@ buildPythonApplication rec {
   '';
 
   meta = with lib; {
-    homepage = https://github.com/scottkosty/vit;
+    homepage = "https://github.com/scottkosty/vit";
     description = "Visual Interactive Taskwarrior";
     maintainers = with maintainers; [ dtzWill arcnmx ];
     platforms = platforms.all;
diff --git a/pkgs/applications/misc/volnoti/default.nix b/pkgs/applications/misc/volnoti/default.nix
index 3561135ce618..845bdae6bec7 100644
--- a/pkgs/applications/misc/volnoti/default.nix
+++ b/pkgs/applications/misc/volnoti/default.nix
@@ -30,7 +30,7 @@ stdenv.mkDerivation {
 
   meta = with stdenv.lib; {
     description = "Lightweight volume notification for Linux";
-    homepage = https://github.com/davidbrazdil/volnoti;
+    homepage = "https://github.com/davidbrazdil/volnoti";
     license = licenses.gpl3;
     platforms = platforms.linux;
     maintainers = [ maintainers.gilligan ];
diff --git a/pkgs/applications/misc/vp/default.nix b/pkgs/applications/misc/vp/default.nix
index a59a25a144e9..7284fa65e8bd 100644
--- a/pkgs/applications/misc/vp/default.nix
+++ b/pkgs/applications/misc/vp/default.nix
@@ -18,7 +18,7 @@ stdenv.mkDerivation rec {
   NIX_CFLAGS_COMPILE="-I${SDL}/include/SDL -I${SDL_image}/include/SDL";
 
   meta = with stdenv.lib; {
-    homepage = http://brlcad.org/~erik/;
+    homepage = "http://brlcad.org/~erik/";
     description = "SDL based picture viewer/slideshow";
     platforms = platforms.unix;
     license  = licenses.gpl3;
diff --git a/pkgs/applications/misc/vym/default.nix b/pkgs/applications/misc/vym/default.nix
index 3c6c4a87f98f..ce45471c2f02 100644
--- a/pkgs/applications/misc/vym/default.nix
+++ b/pkgs/applications/misc/vym/default.nix
@@ -53,7 +53,7 @@ mkDerivation rec {
       While a tree like structure like shown on this page can be drawn by hand or any drawing software
       vym offers much more features to work with such maps.
     '';
-    homepage = http://www.insilmaril.de/vym/;
+    homepage = "http://www.insilmaril.de/vym/";
     license = licenses.gpl2;
     maintainers = [ maintainers.AndersonTorres ];
     platforms = platforms.linux;
diff --git a/pkgs/applications/misc/waybar/default.nix b/pkgs/applications/misc/waybar/default.nix
index 69d6ff842682..408ef0a32330 100644
--- a/pkgs/applications/misc/waybar/default.nix
+++ b/pkgs/applications/misc/waybar/default.nix
@@ -10,13 +10,13 @@
 }:
   stdenv.mkDerivation rec {
     pname = "waybar";
-    version = "0.9.1";
+    version = "0.9.2";
 
     src = fetchFromGitHub {
       owner = "Alexays";
       repo = "Waybar";
       rev = version;
-      sha256 = "0drlv8im5phz39jxp3gxkc40b6f85bb3piff2v3hmnfzh7ib915s";
+      sha256 = "1gfxyjzwfqznyrpyr3322z3w844i1lh77kly4hcpy9y5gsfmlafy";
     };
 
     nativeBuildInputs = [
diff --git a/pkgs/applications/misc/wcalc/default.nix b/pkgs/applications/misc/wcalc/default.nix
index ff770f516bc5..94c56ba5439c 100644
--- a/pkgs/applications/misc/wcalc/default.nix
+++ b/pkgs/applications/misc/wcalc/default.nix
@@ -13,7 +13,7 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "A command line calculator";
-    homepage = http://w-calc.sourceforge.net;
+    homepage = "http://w-calc.sourceforge.net";
     license = licenses.gpl2;
     platforms = platforms.all;
   };
diff --git a/pkgs/applications/misc/weather/default.nix b/pkgs/applications/misc/weather/default.nix
index 2748d576c692..ce4fae1cb229 100644
--- a/pkgs/applications/misc/weather/default.nix
+++ b/pkgs/applications/misc/weather/default.nix
@@ -32,7 +32,7 @@ stdenv.mkDerivation rec {
     '';
 
     meta = {
-        homepage = http://fungi.yuggoth.org/weather;
+        homepage = "http://fungi.yuggoth.org/weather";
         description = "Quick access to current weather conditions and forecasts";
         license = stdenv.lib.licenses.isc;
         maintainers = [ stdenv.lib.maintainers.matthiasbeyer ];
diff --git a/pkgs/applications/misc/wikicurses/default.nix b/pkgs/applications/misc/wikicurses/default.nix
index d38383c30ecb..e528dab0c9fd 100644
--- a/pkgs/applications/misc/wikicurses/default.nix
+++ b/pkgs/applications/misc/wikicurses/default.nix
@@ -11,11 +11,21 @@ pythonPackages.buildPythonApplication rec {
     sha256 = "0f14s4qx3q5pr5vn460c34b5mbz2xs62d8ljs3kic8gmdn8x2knm";
   };
 
+  outputs = [ "out" "man" ];
+
   propagatedBuildInputs = with pythonPackages; [ urwid beautifulsoup4 lxml ];
 
+  postInstall = ''
+    mkdir -p $man/share/man/man{1,5}
+    cp wikicurses.1 $man/share/man/man1/
+    cp wikicurses.conf.5 $man/share/man/man5/
+  '';
+
+  doCheck = false;
+
   meta = {
     description = "A simple curses interface for MediaWiki sites such as Wikipedia";
-    homepage = https://github.com/ids1024/wikicurses/;
+    homepage = "https://github.com/ids1024/wikicurses/";
     license = stdenv.lib.licenses.mit;
     platforms = stdenv.lib.platforms.unix;
     maintainers = with stdenv.lib.maintainers; [ pSub ];
diff --git a/pkgs/applications/misc/with-shell/default.nix b/pkgs/applications/misc/with-shell/default.nix
index 6a5f7c17b208..d3b5541ac4db 100644
--- a/pkgs/applications/misc/with-shell/default.nix
+++ b/pkgs/applications/misc/with-shell/default.nix
@@ -12,7 +12,7 @@ stdenv.mkDerivation {
     cp with $out/bin/with
   '';
   meta = {
-    homepage = https://github.com/mchav/With;
+    homepage = "https://github.com/mchav/With";
     description = "Command prefixing for continuous workflow using a single tool";
     license = stdenv.lib.licenses.asl20;
     platforms = stdenv.lib.platforms.unix;
diff --git a/pkgs/applications/misc/wmname/default.nix b/pkgs/applications/misc/wmname/default.nix
index 68f6c4df1593..8e760b787b49 100644
--- a/pkgs/applications/misc/wmname/default.nix
+++ b/pkgs/applications/misc/wmname/default.nix
@@ -14,7 +14,7 @@ stdenv.mkDerivation rec {
 
   meta = {
     description = "Prints or set the window manager name property of the root window";
-    homepage = https://tools.suckless.org/wmname;
+    homepage = "https://tools.suckless.org/wmname";
     license = stdenv.lib.licenses.mit;
     platforms = stdenv.lib.platforms.unix;
   };
diff --git a/pkgs/applications/misc/wofi/default.nix b/pkgs/applications/misc/wofi/default.nix
index 659b7099943d..37b991e6d476 100644
--- a/pkgs/applications/misc/wofi/default.nix
+++ b/pkgs/applications/misc/wofi/default.nix
@@ -1,23 +1,33 @@
-{ stdenv, lib, fetchhg, pkg-config, meson, ninja, wayland, gtk3 }:
+{ stdenv, lib, fetchhg, fetchpatch, pkg-config, meson, ninja, wayland, gtk3, wrapGAppsHook }:
 
 stdenv.mkDerivation rec {
   pname = "wofi";
-  version = "1.1";
+  version = "1.1.2";
 
   src = fetchhg {
     url = "https://hg.sr.ht/~scoopta/wofi";
     rev = "v${version}";
-    sha256 = "0rq6c8fv0h7xj3jw1i01r39dz0f31k7jgf7hpgl6mlsyn0ddc80z";
+    sha256 = "086j5wshawjbwdmmmldivfagc2rr7g5a2gk11l0snqqslm294xsn";
   };
 
-  nativeBuildInputs = [ pkg-config meson ninja ];
+  nativeBuildInputs = [ pkg-config meson ninja wrapGAppsHook ];
   buildInputs = [ wayland gtk3 ];
 
+  # Fixes icon bug on NixOS.
+  # Will need to be removed on next release
+  # see https://todo.sr.ht/~scoopta/wofi/54
+  patches = [
+    (fetchpatch {
+      url = "https://paste.sr.ht/blob/1cbddafac3806afb203940c029e78ce8390d8f49";
+      sha256 = "1n4jpmh66p7asjhj0z2s94ny91lmaq4hhh2356nj406vlqr15vbb";
+    })
+  ];
+
   meta = with lib; {
     description = "A launcher/menu program for wlroots based wayland compositors such as sway";
     homepage = "https://hg.sr.ht/~scoopta/wofi";
     license = licenses.gpl3;
-    maintainers = with maintainers; [ erictapen ];
+    maintainers = with maintainers; [ elyhaka ];
     platforms = with platforms; linux;
   };
 }
diff --git a/pkgs/applications/misc/wordnet/default.nix b/pkgs/applications/misc/wordnet/default.nix
index 5a1093b47797..1f0414838adb 100644
--- a/pkgs/applications/misc/wordnet/default.nix
+++ b/pkgs/applications/misc/wordnet/default.nix
@@ -41,10 +41,10 @@ stdenv.mkDerivation rec {
          for computational linguistics and natural language processing.
       '';
 
-    homepage = https://wordnet.princeton.edu/;
+    homepage = "https://wordnet.princeton.edu/";
     license = {
       fullName = "WordNet 3.0 license";
-      url = https://wordnet.princeton.edu/license-and-commercial-use;
+      url = "https://wordnet.princeton.edu/license-and-commercial-use";
     };
     maintainers = [ ];
     platforms = with stdenv.lib.platforms; linux ++ darwin;
diff --git a/pkgs/applications/misc/worker/default.nix b/pkgs/applications/misc/worker/default.nix
index d8d9598e54a2..8b9ed8300648 100644
--- a/pkgs/applications/misc/worker/default.nix
+++ b/pkgs/applications/misc/worker/default.nix
@@ -13,7 +13,7 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "A two-pane file manager with advanced file manipulation features";
-    homepage = http://www.boomerangsworld.de/cms/worker/index.html;
+    homepage = "http://www.boomerangsworld.de/cms/worker/index.html";
     license =  licenses.gpl2;
     maintainers = [];
   };
diff --git a/pkgs/applications/misc/workrave/default.nix b/pkgs/applications/misc/workrave/default.nix
index 4fc06b5c1ad4..b0020b64eded 100644
--- a/pkgs/applications/misc/workrave/default.nix
+++ b/pkgs/applications/misc/workrave/default.nix
@@ -37,8 +37,8 @@ stdenv.mkDerivation rec {
       Repetitive Strain Injury (RSI). The program frequently alerts you to
       take micro-pauses, rest breaks and restricts you to your daily limit.
     '';
-    homepage = http://www.workrave.org/;
-    downloadPage = https://github.com/rcaelers/workrave/releases;
+    homepage = "http://www.workrave.org/";
+    downloadPage = "https://github.com/rcaelers/workrave/releases";
     license = licenses.gpl3;
     maintainers = with maintainers; [ prikhi ];
     platforms = platforms.linux;
diff --git a/pkgs/applications/misc/wtf/default.nix b/pkgs/applications/misc/wtf/default.nix
index f12f96871c00..e557c5081c81 100644
--- a/pkgs/applications/misc/wtf/default.nix
+++ b/pkgs/applications/misc/wtf/default.nix
@@ -7,16 +7,16 @@
 
 buildGoModule rec {
   pname = "wtf";
-  version = "0.27.0";
+  version = "0.29.0";
 
   src = fetchFromGitHub {
     owner = "wtfutil";
     repo = pname;
     rev = "v${version}";
-    sha256 = "0j184s82bnnhrpm7vdsqg7i3xfm2wqz8jmwqxjkfw87ifgvaha5d";
+    sha256 = "0v6yafpz3sycq6yb7w4dyxqclszvdgwbyhqs5ii8ckynqcf6ifn7";
    };
 
-  modSha256 = "14qbjv8rnidfqxzqhli7jyj4573s0swwypdj11mpykcrzk9by8xk";
+  modSha256 = "0csxc5q7i2iq8z71ysfan2kwf4mghi89i5zja5g1a4cvmcabiq1g";
 
   buildFlagsArray = [ "-ldflags=-s -w -X main.version=${version}" ];
 
diff --git a/pkgs/applications/misc/xastir/default.nix b/pkgs/applications/misc/xastir/default.nix
index 4086c0e094a1..e5dc92c4ad62 100644
--- a/pkgs/applications/misc/xastir/default.nix
+++ b/pkgs/applications/misc/xastir/default.nix
@@ -6,13 +6,13 @@
 
 stdenv.mkDerivation rec {
   pname = "xastir";
-  version = "2.1.4";
+  version = "2.1.6";
 
   src = fetchFromGitHub {
     owner = pname;
     repo = pname;
     rev = "Release-${version}";
-    sha256 = "14f908jy5jzvgm1h1sr47hjqjq3q2nq91byhimk84kj044fn21w9";
+    sha256 = "sha256-IdlRScAy7tCyVCElCceY4PvqPXWfZZ35f+MwCo3nO3s=";
   };
 
   buildInputs = [
@@ -28,7 +28,7 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "Graphical APRS client";
-    homepage = https://xastir.org;
+    homepage = "https://xastir.org";
     license = licenses.gpl2;
     maintainers = [ maintainers.ehmry ];
     platforms   = platforms.linux;
diff --git a/pkgs/applications/misc/xautoclick/default.nix b/pkgs/applications/misc/xautoclick/default.nix
index 295d721d3c5f..4f441d8a9a99 100644
--- a/pkgs/applications/misc/xautoclick/default.nix
+++ b/pkgs/applications/misc/xautoclick/default.nix
@@ -26,7 +26,7 @@ stdenv.mkDerivation {
 
   meta = with stdenv.lib; {
     description = "Autoclicker application, which enables you to automatically click the left mousebutton";
-    homepage = http://xautoclick.sourceforge.net;
+    homepage = "http://xautoclick.sourceforge.net";
     license = licenses.gpl2;
     platforms = platforms.linux;
   };
diff --git a/pkgs/applications/misc/xca/default.nix b/pkgs/applications/misc/xca/default.nix
index 8946e83c94a2..bf6b37b10286 100644
--- a/pkgs/applications/misc/xca/default.nix
+++ b/pkgs/applications/misc/xca/default.nix
@@ -25,7 +25,7 @@ mkDerivation rec {
 
   meta = with lib; {
     description = "An x509 certificate generation tool, handling RSA, DSA and EC keys, certificate signing requests (PKCS#10) and CRLs";
-    homepage    = https://hohnstaedt.de/xca/;
+    homepage    = "https://hohnstaedt.de/xca/";
     license     = licenses.bsd3;
     maintainers = with maintainers; [ offline peterhoeg ];
     platforms   = platforms.all;
diff --git a/pkgs/applications/misc/xcruiser/default.nix b/pkgs/applications/misc/xcruiser/default.nix
index 8875c95fe578..80a1ced563f8 100644
--- a/pkgs/applications/misc/xcruiser/default.nix
+++ b/pkgs/applications/misc/xcruiser/default.nix
@@ -4,7 +4,7 @@ stdenv.mkDerivation {
   name = "xcruiser-0.30";
 
   src = fetchurl {
-      url = mirror://sourceforge/xcruiser/xcruiser/xcruiser-0.30/xcruiser-0.30.tar.gz;
+      url = "mirror://sourceforge/xcruiser/xcruiser/xcruiser-0.30/xcruiser-0.30.tar.gz";
       sha256 = "1r8whva38xizqdh7jmn6wcmfmsndc67pkw22wzfzr6rq0vf6hywi";
     };
 
@@ -23,7 +23,7 @@ stdenv.mkDerivation {
       It constructs a virtually 3-D formed universe from a directory
       tree and allows you to "cruise" within a visualized filesystem.
     '';
-    homepage = http://xcruiser.sourceforge.net/;
+    homepage = "http://xcruiser.sourceforge.net/";
     license = licenses.gpl2;
     maintainers = with maintainers; [ ehmry ];
     platforms = with platforms; linux;
diff --git a/pkgs/applications/misc/xdgmenumaker/default.nix b/pkgs/applications/misc/xdgmenumaker/default.nix
index 56168b348596..b4d821e1deb1 100644
--- a/pkgs/applications/misc/xdgmenumaker/default.nix
+++ b/pkgs/applications/misc/xdgmenumaker/default.nix
@@ -40,7 +40,7 @@ python3Packages.buildPythonApplication rec {
 
   meta = with stdenv.lib; {
     description = "Command line tool that generates XDG menus for several window managers";
-    homepage = https://github.com/gapan/xdgmenumaker;
+    homepage = "https://github.com/gapan/xdgmenumaker";
     license = licenses.gpl2Plus;
     # NOTE: exclude darwin from platforms because Travis reports hash mismatch
     platforms = with platforms; filter (x: !(elem x darwin)) unix;
diff --git a/pkgs/applications/misc/xfe/default.nix b/pkgs/applications/misc/xfe/default.nix
index 444ab802673e..29a20e0ece29 100644
--- a/pkgs/applications/misc/xfe/default.nix
+++ b/pkgs/applications/misc/xfe/default.nix
@@ -24,7 +24,7 @@ stdenv.mkDerivation rec {
       It is based on the popular, but discontinued, X Win Commander, which was developed by Maxim Baranov.
       Xfe aims to be the filemanager of choice for all the Unix addicts!
     '';
-    homepage = https://sourceforge.net/projects/xfe/;
+    homepage = "https://sourceforge.net/projects/xfe/";
     license = stdenv.lib.licenses.gpl2;
     maintainers = [];
     platforms = stdenv.lib.platforms.linux;
diff --git a/pkgs/applications/misc/xfontsel/default.nix b/pkgs/applications/misc/xfontsel/default.nix
index 5d2b70a80ee4..c61e64a8a3a7 100644
--- a/pkgs/applications/misc/xfontsel/default.nix
+++ b/pkgs/applications/misc/xfontsel/default.nix
@@ -27,7 +27,7 @@ stdenv.mkDerivation rec {
   '';
 
   meta = {
-    homepage = https://www.x.org/;
+    homepage = "https://www.x.org/";
     description = "Allows testing the fonts available in an X server";
     license = stdenv.lib.licenses.free;
     maintainers = with stdenv.lib.maintainers; [viric];
diff --git a/pkgs/applications/misc/xiphos/default.nix b/pkgs/applications/misc/xiphos/default.nix
index 2e81e9b05d34..ae18ff72d27e 100644
--- a/pkgs/applications/misc/xiphos/default.nix
+++ b/pkgs/applications/misc/xiphos/default.nix
@@ -14,13 +14,13 @@
 
 stdenv.mkDerivation rec {
   pname = "xiphos";
-  version = "4.0.7";
+  version = "4.1.0";
 
   src = fetchFromGitHub {
     owner = "crosswire";
     repo = "xiphos";
     rev = version;
-    sha256 = "1vwf1ps6nrajxl1qbs6v1cgykmq5wn4j09j10gbcd3b2nvrprf3g";
+    sha256 = "14il9k4i58qbc78hcadw3gqy21sb9q661d75vlj6fwpczbzj7x1a";
   };
 
   nativeBuildInputs = [ pkgconfig wrapGAppsHook wafHook ];
@@ -47,7 +47,7 @@ stdenv.mkDerivation rec {
       and featureful environment for reading, study, and research using
       modules from The SWORD Project and elsewhere.
     '';
-    homepage = http://www.xiphos.org/;
+    homepage = "http://www.xiphos.org/";
     license = licenses.gpl2Plus;
     maintainers = [ maintainers.AndersonTorres ];
     platforms = platforms.linux;
diff --git a/pkgs/applications/misc/xkbd/default.nix b/pkgs/applications/misc/xkbd/default.nix
index d6709ecc1a62..d03d78a9fd1d 100644
--- a/pkgs/applications/misc/xkbd/default.nix
+++ b/pkgs/applications/misc/xkbd/default.nix
@@ -21,7 +21,7 @@ stdenv.mkDerivation rec {
   nativeBuildInputs = [ autoreconfHook ];
 
   meta = with stdenv.lib; {
-    homepage = https://github.com/mahatma-kaganovich/xkbd;
+    homepage = "https://github.com/mahatma-kaganovich/xkbd";
     description = "onscreen soft keyboard for X11";
     license = licenses.gpl2Plus;
     maintainers = [ maintainers.genesis ];
diff --git a/pkgs/applications/misc/xkblayout-state/default.nix b/pkgs/applications/misc/xkblayout-state/default.nix
index abc808477a39..296d6f38db64 100644
--- a/pkgs/applications/misc/xkblayout-state/default.nix
+++ b/pkgs/applications/misc/xkblayout-state/default.nix
@@ -18,7 +18,7 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "A small command-line program to get/set the current XKB keyboard layout";
-    homepage = https://github.com/nonpop/xkblayout-state;
+    homepage = "https://github.com/nonpop/xkblayout-state";
     license = licenses.gpl2;
     maintainers = [ maintainers.jagajaga ];
     platforms = platforms.linux;
diff --git a/pkgs/applications/misc/xkbmon/default.nix b/pkgs/applications/misc/xkbmon/default.nix
index dc618e4561e6..1e6384c7d576 100644
--- a/pkgs/applications/misc/xkbmon/default.nix
+++ b/pkgs/applications/misc/xkbmon/default.nix
@@ -16,7 +16,7 @@ stdenv.mkDerivation rec {
   installPhase = "install -D -t $out/bin xkbmon";
 
   meta = with stdenv.lib; {
-    homepage = https://github.com/xkbmon/xkbmon;
+    homepage = "https://github.com/xkbmon/xkbmon";
     description = "Command-line keyboard layout monitor for X11";
     license = licenses.mit;
     platforms = platforms.linux;
diff --git a/pkgs/applications/misc/xmind/default.nix b/pkgs/applications/misc/xmind/default.nix
index f65f5bc26e8b..3e729af71fe5 100644
--- a/pkgs/applications/misc/xmind/default.nix
+++ b/pkgs/applications/misc/xmind/default.nix
@@ -84,7 +84,7 @@ stdenv.mkDerivation rec {
       GTD. Meanwhile, XMind can read FreeMind and MindManager files,
       and save to Evernote.
     '';
-    homepage = https://www.xmind.net/;
+    homepage = "https://www.xmind.net/";
     license = licenses.unfree;
     platforms = platforms.linux;
     maintainers = with maintainers; [ michalrus ma27 ];
diff --git a/pkgs/applications/misc/xmrig/default.nix b/pkgs/applications/misc/xmrig/default.nix
index b87e62b0406d..b564c5c530fb 100644
--- a/pkgs/applications/misc/xmrig/default.nix
+++ b/pkgs/applications/misc/xmrig/default.nix
@@ -4,13 +4,13 @@
 
 stdenv.mkDerivation rec {
   pname = "xmrig";
-  version = "5.5.3";
+  version = "5.11.1";
 
   src = fetchFromGitHub {
     owner = "xmrig";
     repo = "xmrig";
     rev = "v${version}";
-    sha256 = "1an68ghs65dvxs8lvcflv7wmf431lqw417np76895w10w436gh7x";
+    sha256 = "04wsz7hcmzm5dv9q1wb26nvcz5gxdcgkf00cp5bpbr3y9vc6dyz6";
   };
 
   nativeBuildInputs = [ cmake ];
diff --git a/pkgs/applications/misc/xneur/default.nix b/pkgs/applications/misc/xneur/default.nix
index f3bbbf42d5bc..e75055e92b80 100644
--- a/pkgs/applications/misc/xneur/default.nix
+++ b/pkgs/applications/misc/xneur/default.nix
@@ -27,7 +27,7 @@ stdenv.mkDerivation {
 
   meta = with stdenv.lib; {
     description = "Utility for switching between keyboard layouts";
-    homepage = https://xneur.ru;
+    homepage = "https://xneur.ru";
     license = licenses.gpl2Plus;
     maintainers = [ maintainers.raskin ];
     platforms = platforms.linux;
diff --git a/pkgs/applications/misc/xpad/default.nix b/pkgs/applications/misc/xpad/default.nix
index 40f7ef9da08e..8944011a8d73 100644
--- a/pkgs/applications/misc/xpad/default.nix
+++ b/pkgs/applications/misc/xpad/default.nix
@@ -17,7 +17,7 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "A sticky note application for jotting down things to remember";
-    homepage = https://launchpad.net/xpad;
+    homepage = "https://launchpad.net/xpad";
     license = licenses.gpl3;
     platforms = platforms.linux;
     maintainers = with maintainers; [ michalrus ];
diff --git a/pkgs/applications/misc/xpdf/libxpdf.nix b/pkgs/applications/misc/xpdf/libxpdf.nix
index cf6f5f32ee2a..3b982b1766f9 100644
--- a/pkgs/applications/misc/xpdf/libxpdf.nix
+++ b/pkgs/applications/misc/xpdf/libxpdf.nix
@@ -5,25 +5,25 @@ stdenv.mkDerivation {
   name = "libxpdf-3.02pl4";
 
   src = fetchurl {
-    url = ftp://ftp.foolabs.com/pub/xpdf/xpdf-3.02.tar.gz;
+    url = "ftp://ftp.foolabs.com/pub/xpdf/xpdf-3.02.tar.gz";
     sha256 = "000zq4ddbwyxiki4vdwpmxbnw5n9hsg9hvwra2p33hslyib7sfmk";
   };
   
   patches = [
     (fetchurl {
-      url = ftp://ftp.foolabs.com/pub/xpdf/xpdf-3.02pl1.patch;
+      url = "ftp://ftp.foolabs.com/pub/xpdf/xpdf-3.02pl1.patch";
       sha256 = "1wxv9l0d2kkwi961ihpdwi75whdvk7cgqxkbfym8cjj11fq17xjq";
     })
     (fetchurl {
-      url = ftp://ftp.foolabs.com/pub/xpdf/xpdf-3.02pl2.patch;
+      url = "ftp://ftp.foolabs.com/pub/xpdf/xpdf-3.02pl2.patch";
       sha256 = "1nfrgsh9xj0vryd8h65myzd94bjz117y89gq0hzji9dqn23xihfi";
     })
     (fetchurl {
-      url = ftp://ftp.foolabs.com/pub/xpdf/xpdf-3.02pl3.patch;
+      url = "ftp://ftp.foolabs.com/pub/xpdf/xpdf-3.02pl3.patch";
       sha256 = "0jskkv8x6dqr9zj4azaglas8cziwqqrkbbnzrpm2kzrvsbxyhk2r";
     })
     (fetchurl {
-      url = ftp://ftp.foolabs.com/pub/xpdf/xpdf-3.02pl4.patch;
+      url = "ftp://ftp.foolabs.com/pub/xpdf/xpdf-3.02pl4.patch";
       sha256 = "1c48h7aizx0ngmzlzw0mpja1w8vqyy3pg62hyxp7c60k86al715h";
     })
     ./xpdf-3.02-protection.patch
diff --git a/pkgs/applications/misc/xrandr-invert-colors/default.nix b/pkgs/applications/misc/xrandr-invert-colors/default.nix
index 41071012ae9f..9d57b4fcfac0 100644
--- a/pkgs/applications/misc/xrandr-invert-colors/default.nix
+++ b/pkgs/applications/misc/xrandr-invert-colors/default.nix
@@ -19,7 +19,7 @@ stdenv.mkDerivation rec {
   meta = with stdenv.lib; {
     description = "Inverts the colors of your screen";
     license = stdenv.lib.licenses.gpl3Plus;
-    homepage = https://github.com/zoltanp/xrandr-invert-colors;
+    homepage = "https://github.com/zoltanp/xrandr-invert-colors";
     maintainers = [stdenv.lib.maintainers.magnetophon ];
     platforms = platforms.linux;
   }; 
diff --git a/pkgs/applications/misc/xrq/default.nix b/pkgs/applications/misc/xrq/default.nix
index 244a2c43a155..e3db746ee028 100644
--- a/pkgs/applications/misc/xrq/default.nix
+++ b/pkgs/applications/misc/xrq/default.nix
@@ -20,7 +20,7 @@ stdenv.mkDerivation {
 
   meta = {
     description = "X utility for querying xrdb";
-    homepage = https://github.com/arianon/xrq;
+    homepage = "https://github.com/arianon/xrq";
     license = stdenv.lib.licenses.mit;
     platforms = with stdenv.lib.platforms; unix;
   };
diff --git a/pkgs/applications/misc/xscope/default.nix b/pkgs/applications/misc/xscope/default.nix
index 517105d7e1fd..4db034476c7a 100644
--- a/pkgs/applications/misc/xscope/default.nix
+++ b/pkgs/applications/misc/xscope/default.nix
@@ -14,7 +14,7 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "program to monitor X11/Client conversations";
-    homepage = https://cgit.freedesktop.org/xorg/app/xscope/;
+    homepage = "https://cgit.freedesktop.org/xorg/app/xscope/";
     license = with licenses; [ mit ];
     maintainers = with maintainers; [ ];
     platforms = with platforms; unix;
diff --git a/pkgs/applications/misc/xterm/default.nix b/pkgs/applications/misc/xterm/default.nix
index 8dcd533b5223..f6837b692b19 100644
--- a/pkgs/applications/misc/xterm/default.nix
+++ b/pkgs/applications/misc/xterm/default.nix
@@ -3,14 +3,14 @@
 }:
 
 stdenv.mkDerivation rec {
-  name = "xterm-351";
+  name = "xterm-353";
 
   src = fetchurl {
     urls = [
      "ftp://ftp.invisible-island.net/xterm/${name}.tgz"
      "https://invisible-mirror.net/archives/xterm/${name}.tgz"
    ];
-    sha256 = "05kf586my4irrzz2bxgmwjdvynyrg9ybhvfqmx29g70w4888l2kn";
+    sha256 = "0s5pkfn4r8iy09s1q1y78zhnr9f3sm6wgbqir7azaqggkppd68g5";
   };
 
   buildInputs =
@@ -63,7 +63,7 @@ stdenv.mkDerivation rec {
   '';
 
   meta = {
-    homepage = https://invisible-island.net/xterm;
+    homepage = "https://invisible-island.net/xterm";
     license = with stdenv.lib.licenses; [ mit ];
     maintainers = with stdenv.lib.maintainers; [vrthra];
     platforms = with stdenv.lib.platforms; linux ++ darwin;
diff --git a/pkgs/applications/misc/xtermcontrol/default.nix b/pkgs/applications/misc/xtermcontrol/default.nix
index 51575d62ed50..f7c0edf22420 100644
--- a/pkgs/applications/misc/xtermcontrol/default.nix
+++ b/pkgs/applications/misc/xtermcontrol/default.nix
@@ -17,7 +17,7 @@ stdenv.mkDerivation rec {
       Window manipulations de-/iconify, raise/lower, maximize/restore and reset are also supported.
       To complete the feature set; xtermcontrol lets advanced users issue any xterm control sequence of their choosing.
     '';
-    homepage = http://thrysoee.dk/xtermcontrol;
+    homepage = "http://thrysoee.dk/xtermcontrol";
     license = stdenv.lib.licenses.gpl2;
     platforms = stdenv.lib.platforms.unix;
     maintainers = [ stdenv.lib.maintainers.derchris ];
diff --git a/pkgs/applications/misc/xxkb/default.nix b/pkgs/applications/misc/xxkb/default.nix
index 612e4a557a71..64d55322896b 100644
--- a/pkgs/applications/misc/xxkb/default.nix
+++ b/pkgs/applications/misc/xxkb/default.nix
@@ -33,7 +33,7 @@ stdenv.mkDerivation rec {
 
   meta = {
     description = "A keyboard layout indicator and switcher";
-    homepage = http://xxkb.sourceforge.net/;
+    homepage = "http://xxkb.sourceforge.net/";
     license = stdenv.lib.licenses.artistic2;
     maintainers = with stdenv.lib.maintainers; [ rasendubi ];
     platforms = stdenv.lib.platforms.linux;
diff --git a/pkgs/applications/misc/yaft/default.nix b/pkgs/applications/misc/yaft/default.nix
index 2135c7fd6174..e66f397a3830 100644
--- a/pkgs/applications/misc/yaft/default.nix
+++ b/pkgs/applications/misc/yaft/default.nix
@@ -16,7 +16,7 @@ stdenv.mkDerivation rec {
   installFlags = [ "PREFIX=$(out)" "MANPREFIX=$(out)/share/man" ];
 
   meta = {
-    homepage = https://github.com/uobikiemukot/yaft;
+    homepage = "https://github.com/uobikiemukot/yaft";
     description = "Yet another framebuffer terminal";
     license = stdenv.lib.licenses.mit;
     maintainers = [ stdenv.lib.maintainers.matthiasbeyer ];
diff --git a/pkgs/applications/misc/yarssr/default.nix b/pkgs/applications/misc/yarssr/default.nix
index f2da2957bd3e..c5489b8b9813 100644
--- a/pkgs/applications/misc/yarssr/default.nix
+++ b/pkgs/applications/misc/yarssr/default.nix
@@ -55,7 +55,7 @@ stdenv.mkDerivation {
   '';
 
   meta = with stdenv.lib; {
-    homepage = https://github.com/tsyrogit/zxcvbn-c;
+    homepage = "https://github.com/tsyrogit/zxcvbn-c";
     description = "A fork of Yarssr (a RSS reader for the GNOME Tray) from http://yarssr.sf.net with various fixes.";
     license = licenses.gpl1;
     platforms = platforms.linux;
diff --git a/pkgs/applications/misc/yate/default.nix b/pkgs/applications/misc/yate/default.nix
index 09a6cc4a3c0a..6c03bbc33b39 100644
--- a/pkgs/applications/misc/yate/default.nix
+++ b/pkgs/applications/misc/yate/default.nix
@@ -31,7 +31,7 @@ stdenv.mkDerivation rec {
 
   meta = {
     description = "Yet another telephony engine";
-    homepage = http://yate.null.ro/;
+    homepage = "http://yate.null.ro/";
     # Yate's license is GPL with an exception for linking with
     # OpenH323 and PWlib (licensed under MPL).
     license = ["GPL" "MPL"];
diff --git a/pkgs/applications/misc/yokadi/default.nix b/pkgs/applications/misc/yokadi/default.nix
index 6b3a4f747f47..00507d2ee888 100644
--- a/pkgs/applications/misc/yokadi/default.nix
+++ b/pkgs/applications/misc/yokadi/default.nix
@@ -22,7 +22,7 @@ buildPythonApplication rec {
 
   meta = with stdenv.lib; {
     description = "A command line oriented, sqlite powered, todo-list";
-    homepage = https://yokadi.github.io/index.html;
+    homepage = "https://yokadi.github.io/index.html";
     license = licenses.gpl3Plus;
     maintainers = [ maintainers.nipav ];
   };
diff --git a/pkgs/applications/misc/zathura/cb/default.nix b/pkgs/applications/misc/zathura/cb/default.nix
index 7c2c8fb31cab..4e2d16819ba5 100644
--- a/pkgs/applications/misc/zathura/cb/default.nix
+++ b/pkgs/applications/misc/zathura/cb/default.nix
@@ -6,7 +6,7 @@ stdenv.mkDerivation rec {
   version = "0.1.8";
 
   src = fetchurl {
-    url = "https://pwmt.org/projects/zathura/plugins/download/${pname}-${version}.tar.xz";
+    url = "https://pwmt.org/projects/${pname}/download/${pname}-${version}.tar.xz";
     sha256 = "1i6cf0vks501cggwvfsl6qb7mdaf3sszdymphimfvnspw810faj5";
   };
 
@@ -16,7 +16,7 @@ stdenv.mkDerivation rec {
   PKG_CONFIG_ZATHURA_PLUGINDIR = "lib/zathura";
 
   meta = with lib; {
-    homepage = https://pwmt.org/projects/zathura-cb/;
+    homepage = "https://pwmt.org/projects/zathura-cb/";
     description = "A zathura CB plugin";
     longDescription = ''
       The zathura-cb plugin adds comic book support to zathura.
diff --git a/pkgs/applications/misc/zathura/core/default.nix b/pkgs/applications/misc/zathura/core/default.nix
index 99729125b631..44f200174d9b 100644
--- a/pkgs/applications/misc/zathura/core/default.nix
+++ b/pkgs/applications/misc/zathura/core/default.nix
@@ -9,12 +9,12 @@
 with stdenv.lib;
 
 stdenv.mkDerivation rec {
-  pname = "zathura-core";
-  version = "0.4.4";
+  pname = "zathura";
+  version = "0.4.5";
 
   src = fetchurl {
-    url = "https://git.pwmt.org/pwmt/zathura/-/archive/${version}/zathura-${version}.tar.gz";
-    sha256 = "0v5klgr009rsxi41h73k0398jbgmgh37asvwz2w15i4fzmw89jgb";
+    url = "https://pwmt.org/projects/${pname}/download/${pname}-${version}.tar.xz";
+    sha256 = "0b3nrcvykkpv2vm99kijnic2gpfzva520bsjlihaxandzfm9ff8c";
   };
 
   outputs = [ "bin" "man" "dev" "out" ];
@@ -28,6 +28,8 @@ stdenv.mkDerivation rec {
     "-Dmanpages=enabled"
     "-Dconvert-icon=enabled"
     "-Dsynctex=enabled"
+    # Make sure tests are enabled for doCheck
+    "-Dtests=enabled"
   ];
 
   nativeBuildInputs = [
diff --git a/pkgs/applications/misc/zathura/djvu/default.nix b/pkgs/applications/misc/zathura/djvu/default.nix
index 54f68969d4f7..954df5301e31 100644
--- a/pkgs/applications/misc/zathura/djvu/default.nix
+++ b/pkgs/applications/misc/zathura/djvu/default.nix
@@ -1,11 +1,12 @@
 { stdenv, fetchurl, meson, ninja, pkgconfig, gtk, zathura_core, girara, djvulibre, gettext }:
 
 stdenv.mkDerivation rec {
-  name = "zathura-djvu-0.2.8";
+  pname = "zathura-djvu";
+  version = "0.2.9";
 
   src = fetchurl {
-    url = "https://pwmt.org/projects/zathura/plugins/download/${name}.tar.xz";
-    sha256 = "0axkv1crdxn0z44whaqp2ibkdqcykhjnxk7qzms0dp1b67an9rnh";
+    url = "https://pwmt.org/projects/${pname}/download/${pname}-${version}.tar.xz";
+    sha256 = "0062n236414db7q7pnn3ccg5111ghxj3407pn9ri08skxskgirln";
   };
 
   nativeBuildInputs = [ meson ninja pkgconfig ];
@@ -14,7 +15,7 @@ stdenv.mkDerivation rec {
   PKG_CONFIG_ZATHURA_PLUGINDIR = "lib/zathura";
 
   meta = with stdenv.lib; {
-    homepage = https://pwmt.org/projects/zathura-djvu/;
+    homepage = "https://pwmt.org/projects/zathura-djvu/";
     description = "A zathura DJVU plugin";
     longDescription = ''
       The zathura-djvu plugin adds DjVu support to zathura by using the
diff --git a/pkgs/applications/misc/zathura/pdf-mupdf/default.nix b/pkgs/applications/misc/zathura/pdf-mupdf/default.nix
index d8c1364d3957..82c94d48068a 100644
--- a/pkgs/applications/misc/zathura/pdf-mupdf/default.nix
+++ b/pkgs/applications/misc/zathura/pdf-mupdf/default.nix
@@ -1,20 +1,13 @@
-{ stdenv, lib, meson, ninja, fetchFromGitHub
+{ stdenv, lib, meson, ninja, fetchurl
 , pkgconfig, zathura_core, cairo , gtk-mac-integration, girara, mupdf }:
 
 stdenv.mkDerivation rec {
   version = "0.3.5";
   pname = "zathura-pdf-mupdf";
 
-  # pwmt.org server was down at the time of last update
-  # src = fetchurl {
-  #   url = "https://pwmt.org/projects/zathura-pdf-mupdf/download/${name}.tar.xz";
-  #   sha256 = "1zbaqimav4wfgimpy3nfzl10qj7vyv23rdy2z5z7z93jwbp2rc2j";
-  # };
-  src = fetchFromGitHub {
-    owner = "pwmt";
-    repo = "zathura-pdf-mupdf";
-    rev = version;
-    sha256 = "0wb46hllykbi30ir69s8s23mihivqn13mgfdzawbsn2a21p8y4zl";
+  src = fetchurl {
+    url = "https://pwmt.org/projects/${pname}/download/${pname}-${version}.tar.xz";
+    sha256 = "1pjwsb7zwclxsvz229fl7y2saf1pv3ifwv3ay8viqxgrp9x3z9hq";
   };
 
   nativeBuildInputs = [ meson ninja pkgconfig ];
@@ -26,7 +19,7 @@ stdenv.mkDerivation rec {
   PKG_CONFIG_ZATHURA_PLUGINDIR= "lib/zathura";
 
   meta = with lib; {
-    homepage = https://pwmt.org/projects/zathura-pdf-mupdf/;
+    homepage = "https://pwmt.org/projects/zathura-pdf-mupdf/";
     description = "A zathura PDF plugin (mupdf)";
     longDescription = ''
       The zathura-pdf-mupdf plugin adds PDF support to zathura by
diff --git a/pkgs/applications/misc/zathura/pdf-poppler/default.nix b/pkgs/applications/misc/zathura/pdf-poppler/default.nix
index 5b38555eda1a..bafa293ad9c3 100644
--- a/pkgs/applications/misc/zathura/pdf-poppler/default.nix
+++ b/pkgs/applications/misc/zathura/pdf-poppler/default.nix
@@ -1,12 +1,12 @@
 { stdenv, lib, fetchurl, meson, ninja, pkgconfig, zathura_core, girara, poppler }:
 
 stdenv.mkDerivation rec {
-  version = "0.2.9";
   pname = "zathura-pdf-poppler";
+  version = "0.3.0";
 
   src = fetchurl {
-    url = "https://git.pwmt.org/pwmt/zathura-pdf-poppler/-/archive/${version}/${pname}-${version}.tar.gz";
-    sha256 = "0c15rnwh42m3ybrhax01bl36w0iynaq8xg6l08riml3cyljypi9l";
+    url = "https://pwmt.org/projects/${pname}/download/${pname}-${version}.tar.xz";
+    sha256 = "1vfl4vkyy3rf39r1sqaa7y8113bgkh2bkfq3nn2inis9mrykmk6m";
   };
 
   nativeBuildInputs = [ meson ninja pkgconfig zathura_core ];
@@ -15,7 +15,7 @@ stdenv.mkDerivation rec {
   PKG_CONFIG_ZATHURA_PLUGINDIR = "lib/zathura";
 
   meta = with lib; {
-    homepage = https://pwmt.org/projects/zathura-pdf-poppler/;
+    homepage = "https://pwmt.org/projects/zathura-pdf-poppler/";
     description = "A zathura PDF plugin (poppler)";
     longDescription = ''
       The zathura-pdf-poppler plugin adds PDF support to zathura by
diff --git a/pkgs/applications/misc/zathura/ps/default.nix b/pkgs/applications/misc/zathura/ps/default.nix
index 48d42b5e9399..05cc570eb8f1 100644
--- a/pkgs/applications/misc/zathura/ps/default.nix
+++ b/pkgs/applications/misc/zathura/ps/default.nix
@@ -1,10 +1,11 @@
 { stdenv, lib, fetchurl, meson, ninja, pkgconfig, zathura_core, girara, libspectre, gettext }:
 
 stdenv.mkDerivation rec {
-  name = "zathura-ps-0.2.6";
+  pname = "zathura-ps";
+  version = "0.2.6";
 
   src = fetchurl {
-    url = "https://pwmt.org/projects/zathura/plugins/download/${name}.tar.xz";
+    url = "https://pwmt.org/projects/${pname}/download/${pname}-${version}.tar.xz";
     sha256 = "0wygq89nyjrjnsq7vbpidqdsirjm6iq4w2rijzwpk2f83ys8bc3y";
   };
 
@@ -14,7 +15,7 @@ stdenv.mkDerivation rec {
   PKG_CONFIG_ZATHURA_PLUGINDIR = "lib/zathura";
 
   meta = with lib; {
-    homepage = https://pwmt.org/projects/zathura-ps/;
+    homepage = "https://pwmt.org/projects/zathura-ps/";
     description = "A zathura PS plugin";
     longDescription = ''
       The zathura-ps plugin adds PS support to zathura by using the
diff --git a/pkgs/applications/misc/zathura/wrapper.nix b/pkgs/applications/misc/zathura/wrapper.nix
index 6c8ad97d3556..5d37b5190d02 100644
--- a/pkgs/applications/misc/zathura/wrapper.nix
+++ b/pkgs/applications/misc/zathura/wrapper.nix
@@ -8,6 +8,8 @@ in symlinkJoin {
 
   paths = with zathura_core; [ man dev out ];
 
+  inherit plugins;
+
   buildInputs = [ makeWrapper ];
 
   postBuild = ''
@@ -17,7 +19,7 @@ in symlinkJoin {
   '';
 
   meta = with lib; {
-    homepage = https://git.pwmt.org/pwmt/zathura/;
+    homepage = "https://git.pwmt.org/pwmt/zathura/";
     description = "A highly customizable and functional PDF viewer";
     longDescription = ''
       Zathura is a highly customizable and functional PDF viewer based on the
diff --git a/pkgs/applications/misc/zk-shell/default.nix b/pkgs/applications/misc/zk-shell/default.nix
index ec8deadf9f54..df6e011e4d58 100644
--- a/pkgs/applications/misc/zk-shell/default.nix
+++ b/pkgs/applications/misc/zk-shell/default.nix
@@ -20,7 +20,7 @@ pythonPackages.buildPythonApplication rec {
 
   meta = {
     description = "A powerful & scriptable shell for Apache ZooKeeper";
-    homepage = https://github.com/rgs1/zk_shell;
+    homepage = "https://github.com/rgs1/zk_shell";
     license = stdenv.lib.licenses.asl20;
     maintainers = [ stdenv.lib.maintainers.mahe ];
     platforms = stdenv.lib.platforms.all;
diff --git a/pkgs/applications/misc/zola/default.nix b/pkgs/applications/misc/zola/default.nix
index 201a3eda3cc7..6616f7e4294e 100644
--- a/pkgs/applications/misc/zola/default.nix
+++ b/pkgs/applications/misc/zola/default.nix
@@ -2,16 +2,16 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "zola";
-  version = "0.10.0";
+  version = "0.10.1";
 
   src = fetchFromGitHub {
     owner = "getzola";
     repo = pname;
     rev = "v${version}";
-    sha256 = "112aqv21gy1fbly5v2x3ph32pr82d1mwh0q57yfaaqygz2madypb";
+    sha256 = "07zg4ia983rgvgvmw4xbi347lr4rxlf1xv8rw72cflc74kyia67n";
   };
 
-  cargoSha256 = "0hqa60bx8pxhgad7x6r4zbwddrkcspnnp53bl94zbf3j47p10ggz";
+  cargoSha256 = "13lnl01h8k8xv2ls1kjskfnyjmmk8iyk2mvbk01p2wmhp5m876md";
 
   nativeBuildInputs = [ cmake pkg-config ];
   buildInputs = [ openssl ]
diff --git a/pkgs/applications/misc/zscroll/default.nix b/pkgs/applications/misc/zscroll/default.nix
index 18876cf355b8..402032b5cec3 100644
--- a/pkgs/applications/misc/zscroll/default.nix
+++ b/pkgs/applications/misc/zscroll/default.nix
@@ -20,7 +20,7 @@ python3Packages.buildPythonApplication {
 
   meta = with stdenv.lib; {
     description = "A text scroller for use with panels and shells";
-    homepage = https://github.com/noctuid/zscroll;
+    homepage = "https://github.com/noctuid/zscroll";
     license = licenses.bsd2;
     platforms = platforms.all;
   };
diff --git a/pkgs/applications/networking/Sylk/default.nix b/pkgs/applications/networking/Sylk/default.nix
index d99a87954dec..7079e3afa9a6 100644
--- a/pkgs/applications/networking/Sylk/default.nix
+++ b/pkgs/applications/networking/Sylk/default.nix
@@ -2,7 +2,7 @@
 
 let
   pname = "Sylk";
-  version = "2.5.0";
+  version = "2.7.0";
 in
 
 appimageTools.wrapType2 rec {
@@ -10,7 +10,7 @@ appimageTools.wrapType2 rec {
 
   src = fetchurl {
     url = "http://download.ag-projects.com/Sylk/Sylk-${version}-x86_64.AppImage";
-    sha256 = "1jhs25zzdac3r2wz886vlpb0bz77p52mdlrbsbv28h6is79pbd69";
+    hash = "sha256:0xjg9j69yj06ys8229x6mwsjlk3mvxi8gnr2kymx0vhhg1zvqi1k";
   };
 
   profile = ''
diff --git a/pkgs/applications/networking/brig/default.nix b/pkgs/applications/networking/brig/default.nix
index 31eb4dd7378a..66329b64eace 100644
--- a/pkgs/applications/networking/brig/default.nix
+++ b/pkgs/applications/networking/brig/default.nix
@@ -17,7 +17,7 @@ buildGoPackage rec {
 
   meta = with stdenv.lib; {
     description = "File synchronization on top of ipfs with git like interface and FUSE filesystem";
-    homepage = https://github.com/sahib/brig;
+    homepage = "https://github.com/sahib/brig";
     license = licenses.agpl3;
     platforms = platforms.unix;
     maintainers = with maintainers; [ offline ];
diff --git a/pkgs/applications/networking/browsers/arora/default.nix b/pkgs/applications/networking/browsers/arora/default.nix
index 57db827169ec..88ad2c609bfa 100644
--- a/pkgs/applications/networking/browsers/arora/default.nix
+++ b/pkgs/applications/networking/browsers/arora/default.nix
@@ -20,7 +20,7 @@ stdenv.mkDerivation rec {
     platforms = qt4.meta.platforms;
     maintainers = [ maintainers.phreedom ];
     description = "A cross-platform Qt4 Webkit browser";
-    homepage = https://github.com/Arora/arora;
+    homepage = "https://github.com/Arora/arora";
     license = with licenses; [ gpl2 gpl3 ];
   };
 }
diff --git a/pkgs/applications/networking/browsers/brave/default.nix b/pkgs/applications/networking/browsers/brave/default.nix
index 63d56a48038c..151ce5edc355 100644
--- a/pkgs/applications/networking/browsers/brave/default.nix
+++ b/pkgs/applications/networking/browsers/brave/default.nix
@@ -82,11 +82,11 @@ in
 
 stdenv.mkDerivation rec {
   pname = "brave";
-  version = "1.4.95";
+  version = "1.7.92";
 
   src = fetchurl {
     url = "https://github.com/brave/brave-browser/releases/download/v${version}/brave-browser_${version}_amd64.deb";
-    sha256 = "1a7rk4r7phlf1y3ap3942z5sfvb6i4qglvq06qqhz49wq1wbgvq1";
+    sha256 = "1f262xh88c83m6ixqxc69z8kvkl3qbjc6jnv2g8n0flw8s70hs7z";
   };
 
   dontConfigure = true;
diff --git a/pkgs/applications/networking/browsers/browsh/default.nix b/pkgs/applications/networking/browsers/browsh/default.nix
index 2b910fe0c5c4..3662c3badd3e 100644
--- a/pkgs/applications/networking/browsers/browsh/default.nix
+++ b/pkgs/applications/networking/browsers/browsh/default.nix
@@ -26,7 +26,7 @@ in buildGoPackage rec {
     sha256 = "0gvf5k1gm81xxg7ha309kgfkgl5357dli0fbc4z01rmfgbl0rfa0";
   };
 
-  buildInputs = [ go-bindata ];
+  nativeBuildInputs = [ go-bindata ];
 
   # embed the web extension in a go file and place it where it's supposed to
   # be. See
@@ -53,7 +53,7 @@ in buildGoPackage rec {
 
   meta = with stdenv.lib; {
     description = "A fully-modern text-based browser, rendering to TTY and browsers";
-    homepage = https://www.brow.sh/;
+    homepage = "https://www.brow.sh/";
     maintainers = [ maintainers.kalbasit ];
     license = stdenv.lib.licenses.lgpl21;
     platforms = stdenv.lib.platforms.linux ++ stdenv.lib.platforms.darwin;
diff --git a/pkgs/applications/networking/browsers/captive-browser/default.nix b/pkgs/applications/networking/browsers/captive-browser/default.nix
index 88bd32da8f16..3ce04842c6e4 100644
--- a/pkgs/applications/networking/browsers/captive-browser/default.nix
+++ b/pkgs/applications/networking/browsers/captive-browser/default.nix
@@ -14,7 +14,7 @@ buildGoPackage rec {
 
   meta = with lib; {
     description = "Dedicated Chrome instance to log into captive portals without messing with DNS settings";
-    homepage = https://blog.filippo.io/captive-browser;
+    homepage = "https://blog.filippo.io/captive-browser";
     license = licenses.mit;
     platforms = platforms.all;
     maintainers = with maintainers; [ volth ];
diff --git a/pkgs/applications/networking/browsers/chromium/browser.nix b/pkgs/applications/networking/browsers/chromium/browser.nix
index ec69f3d233f4..7c0609730c24 100644
--- a/pkgs/applications/networking/browsers/chromium/browser.nix
+++ b/pkgs/applications/networking/browsers/chromium/browser.nix
@@ -18,6 +18,16 @@ mkChromiumDerivation (base: rec {
     cp -vLR "$buildPath/locales" "$buildPath/resources" "$libExecPath/"
     cp -v "$buildPath/chrome" "$libExecPath/$packageName"
 
+    # Swiftshader
+    # See https://stackoverflow.com/a/4264351/263061 for the find invocation.
+    if [ -n "$(find "$buildPath/swiftshader/" -maxdepth 1 -name '*.so' -print -quit)" ]; then
+      echo "Swiftshader files found; installing"
+      mkdir -p "$libExecPath/swiftshader"
+      cp -v "$buildPath/swiftshader/"*.so "$libExecPath/swiftshader/"
+    else
+      echo "Swiftshader files not found"
+    fi
+
     mkdir -p "$sandbox/bin"
     cp -v "$buildPath/chrome_sandbox" "$sandbox/bin/${sandboxExecutableName}"
 
@@ -66,7 +76,7 @@ mkChromiumDerivation (base: rec {
       the web. It has a minimalist user interface and provides the vast majority
       of source code for Google Chrome (which has some additional features).
     '';
-    homepage = https://www.chromium.org/;
+    homepage = "https://www.chromium.org/";
     maintainers = with maintainers; [ bendlas thefloweringash primeos ];
     # Overview of the maintainer roles:
     # nixos-unstable:
diff --git a/pkgs/applications/networking/browsers/chromium/common.nix b/pkgs/applications/networking/browsers/chromium/common.nix
index 255b399ef3da..fdb8584f08e8 100644
--- a/pkgs/applications/networking/browsers/chromium/common.nix
+++ b/pkgs/applications/networking/browsers/chromium/common.nix
@@ -1,4 +1,4 @@
-{ stdenv, llvmPackages, gn, ninja, which, nodejs, fetchpatch, gnutar
+{ stdenv, llvmPackages, gnChromium, ninja, which, nodejs, fetchpatch, gnutar
 
 # default dependencies
 , bzip2, flac, speex, libopus
@@ -7,7 +7,7 @@
 , xdg_utils, yasm, minizip, libwebp
 , libusb1, pciutils, nss, re2, zlib
 
-, python2Packages, perl, pkgconfig, clang-tools
+, python2Packages, perl, pkgconfig
 , nspr, systemd, kerberos
 , utillinux, alsaLib
 , bison, gperf
@@ -21,9 +21,16 @@
 # optional dependencies
 , libgcrypt ? null # gnomeSupport || cupsSupport
 , libva ? null # useVaapi
+, libdrm ? null, wayland ? null, mesa_drivers ? null, libxkbcommon ? null # useOzone
 
 # package customization
-, useVaapi ? false
+, useOzone ? false
+, useVaapi ? !(useOzone || stdenv.isAarch64) # Built if supported, but disabled in the wrapper
+# VA-API TODOs:
+# - Ozone: M81 fails to build due to "ozone_platform_gbm = false"
+#   - Possible solutions: Write a patch to fix the build (wrong gn dependencies)
+#     or build with minigbm
+# - AArch64: Causes serious regressions (https://github.com/NixOS/nixpkgs/pull/85253#issuecomment-614405879)
 , gnomeSupport ? false, gnome ? null
 , gnomeKeyringSupport ? false, libgnome-keyring3 ? null
 , proprietaryCodecs ? true
@@ -104,8 +111,6 @@ let
             result
        else result;
 
-  llvm-clang-tools = clang-tools.override { inherit llvmPackages; };
-
   base = rec {
     name = "${packageName}-unwrapped-${version}";
     inherit (upstream-info) channel version;
@@ -117,7 +122,7 @@ let
       ninja which python2Packages.python perl pkgconfig
       python2Packages.ply python2Packages.jinja2 nodejs
       gnutar
-    ];
+    ] ++ optional (versionAtLeast version "83") python2Packages.setuptools;
 
     buildInputs = defaultDependencies ++ [
       nspr nss systemd
@@ -127,11 +132,12 @@ let
       libXScrnSaver libXcursor libXtst libGLU libGL
       pciutils protobuf speechd libXdamage at-spi2-core
       jre
-    ] ++ optional gnomeKeyringSupport libgnome-keyring3
+    ] ++ optional useVaapi libva
+      ++ optional gnomeKeyringSupport libgnome-keyring3
       ++ optionals gnomeSupport [ gnome.GConf libgcrypt ]
       ++ optionals cupsSupport [ libgcrypt cups ]
-      ++ optional useVaapi libva
-      ++ optional pulseSupport libpulseaudio;
+      ++ optional pulseSupport libpulseaudio
+      ++ optionals useOzone [ libdrm wayland mesa_drivers libxkbcommon ];
 
     patches = [
       ./patches/nix_plugin_paths_68.patch
@@ -148,10 +154,13 @@ let
       #
       # ++ optionals (channel == "dev") [ ( githubPatch "<patch>" "0000000000000000000000000000000000000000000000000000000000000000" ) ]
       # ++ optional (versionRange "68" "72") ( githubPatch "<patch>" "0000000000000000000000000000000000000000000000000000000000000000" )
-    ] ++ optionals (useVaapi) [
-      # source: https://aur.archlinux.org/cgit/aur.git/tree/vaapi-fix.patch?h=chromium-vaapi
-      ./patches/vaapi-fix.patch
-    ];
+    ] ++ optionals (useVaapi) ([ # Fixes for the VA-API build:
+      ./patches/enable-vdpau-support-for-nvidia.patch # https://aur.archlinux.org/cgit/aur.git/tree/vdpau-support.patch?h=chromium-vaapi
+      ./patches/enable-video-acceleration-on-linux.patch # Can be controlled at runtime (i.e. without rebuilding Chromium)
+    ] ++ optionals (versionRange "81" "82") [
+      (githubPatch "5b2ff215473e0526b5b24aeff4ad90d369b21c75" "0n00vh8wfpn2ay5fqsxcsx0zadnv7mihm72bcvnrfzh75nzbg902")
+      (githubPatch "98e343ab369e4262511b5fce547728e3e5eefba8" "00wwp653jk0k0yvix00vr7ymgck9dj7fxjwx4nc67ynn84dh6064")
+    ]);
 
     postPatch = ''
       # We want to be able to specify where the sandbox is via CHROME_DEVEL_SANDBOX
@@ -216,8 +225,6 @@ let
       ln -s ${stdenv.cc}/bin/clang              third_party/llvm-build/Release+Asserts/bin/clang
       ln -s ${stdenv.cc}/bin/clang++            third_party/llvm-build/Release+Asserts/bin/clang++
       ln -s ${llvmPackages.llvm}/bin/llvm-ar    third_party/llvm-build/Release+Asserts/bin/llvm-ar
-    '' + optionalString (stdenv.lib.versionAtLeast version "82") ''
-      ln -s ${llvm-clang-tools}/bin/clang-format buildtools/linux64/clang-format
     '';
 
     gnFlags = mkGnFlags ({
@@ -244,7 +251,6 @@ let
       is_clang = stdenv.cc.isClang;
       clang_use_chrome_plugins = false;
       blink_symbol_level = 0;
-      enable_swiftshader = false;
       fieldtrial_testing_like_official_build = true;
 
       # Google API keys, see:
@@ -264,6 +270,16 @@ let
     } // optionalAttrs pulseSupport {
       use_pulseaudio = true;
       link_pulseaudio = true;
+    } // optionalAttrs useOzone {
+      use_ozone = true;
+      ozone_platform_gbm = false;
+      use_xkbcommon = true;
+      use_glib = true;
+      use_gtk = true;
+      use_system_libwayland = true;
+      use_system_minigbm = true;
+      use_system_libdrm = true;
+      system_wayland_scanner_path = "${wayland}/bin/wayland-scanner";
     } // (extraAttrs.gnFlags or {}));
 
     configurePhase = ''
@@ -273,7 +289,7 @@ let
       libExecPath="${libExecPath}"
       python build/linux/unbundle/replace_gn_files.py \
         --system-libraries ${toString gnSystemLibraries}
-      ${gn}/bin/gn gen --args=${escapeShellArg gnFlags} out/Release | tee gn-gen-outputs.txt
+      ${gnChromium}/bin/gn gen --args=${escapeShellArg gnFlags} out/Release | tee gn-gen-outputs.txt
 
       # Fail if `gn gen` contains a WARNING.
       grep -o WARNING gn-gen-outputs.txt && echo "Found gn WARNING, exiting nix build" && exit 1
@@ -281,6 +297,11 @@ let
       runHook postConfigure
     '';
 
+    # Don't spam warnings about unknown warning options. This is useful because
+    # our Clang is always older than Chromium's and the build logs have a size
+    # of approx. 25 MB without this option (and this saves e.g. 66 %).
+    NIX_CFLAGS_COMPILE = "-Wno-unknown-warning-option";
+
     buildPhase = let
       # Build paralelism: on Hydra the build was frequently running into memory
       # exhaustion, and even other users might be running into similar issues.
diff --git a/pkgs/applications/networking/browsers/chromium/default.nix b/pkgs/applications/networking/browsers/chromium/default.nix
index 8968a10bed00..25ef76f331ba 100644
--- a/pkgs/applications/networking/browsers/chromium/default.nix
+++ b/pkgs/applications/networking/browsers/chromium/default.nix
@@ -1,25 +1,28 @@
 { newScope, config, stdenv, llvmPackages_9, llvmPackages_10
 , makeWrapper, ed
-, glib, gtk3, gnome3, gsettings-desktop-schemas
+, glib, gtk3, gnome3, gsettings-desktop-schemas, gn, fetchgit
 , libva ? null
 , gcc, nspr, nss, patchelfUnstable, runCommand
 , lib
 
 # package customization
+# Note: enable* flags should not require full rebuilds (i.e. only affect the wrapper)
 , channel ? "stable"
 , gnomeSupport ? false, gnome ? null
 , gnomeKeyringSupport ? false
 , proprietaryCodecs ? true
 , enablePepperFlash ? false
 , enableWideVine ? false
-, useVaapi ? false # test video on radeon, before enabling this
+, useVaapi ? false # Deprecated, use enableVaapi instead!
+, enableVaapi ? false # Disabled by default due to unofficial support and issues on radeon
+, useOzone ? false
 , cupsSupport ? true
 , pulseSupport ? config.pulseaudio or stdenv.isLinux
 , commandLineArgs ? ""
 }:
 
 let
-  llvmPackages = if channel == "dev"
+  llvmPackages = if channel != "stable"
     then llvmPackages_10
     else llvmPackages_9;
   stdenv = llvmPackages.stdenv;
@@ -31,9 +34,20 @@ let
 
     upstream-info = (callPackage ./update.nix {}).getChannel channel;
 
-    mkChromiumDerivation = callPackage ./common.nix {
-      inherit gnome gnomeSupport gnomeKeyringSupport proprietaryCodecs cupsSupport pulseSupport useVaapi;
-    };
+    mkChromiumDerivation = callPackage ./common.nix ({
+      inherit gnome gnomeSupport gnomeKeyringSupport proprietaryCodecs cupsSupport pulseSupport useOzone;
+      gnChromium = gn;
+    } // lib.optionalAttrs (channel != "stable") {
+      # TODO: Remove after we can update gn for the stable channel (backward incompatible changes):
+      gnChromium = gn.overrideAttrs (oldAttrs: {
+        version = "2020-03-23";
+        src = fetchgit {
+          url = "https://gn.googlesource.com/gn";
+          rev = "5ed3c9cc67b090d5e311e4bd2aba072173e82db9";
+          sha256 = "00y2d35wvqmx9glaqhfb62wdgbfpwr77v0934nnvh9ks71vnsjqy";
+        };
+      });
+    });
 
     browser = callPackage ./browser.nix { inherit channel enableWideVine; };
 
@@ -115,6 +129,14 @@ let
         cp -a ${widevineCdm}/WidevineCdm $out/libexec/chromium/
       ''
     else browser;
+
+  optionalVaapiFlags = if useVaapi # TODO: Remove after 20.09:
+    then throw ''
+      Chromium's useVaapi was replaced by enableVaapi and you don't need to pass
+      "--ignore-gpu-blacklist" anymore (also no rebuilds are required anymore).
+    '' else lib.optionalString
+      (!enableVaapi)
+      "--add-flags --disable-accelerated-video-decode --add-flags --disable-accelerated-video-encode";
 in stdenv.mkDerivation {
   name = "chromium${suffix}-${version}";
   inherit version;
@@ -134,15 +156,14 @@ in stdenv.mkDerivation {
   buildCommand = let
     browserBinary = "${chromiumWV}/libexec/chromium/chromium";
     getWrapperFlags = plugin: "$(< \"${plugin}/nix-support/wrapper-flags\")";
-    libPath = stdenv.lib.makeLibraryPath ([]
-      ++ stdenv.lib.optional useVaapi libva
-    );
+    libPath = stdenv.lib.makeLibraryPath [ libva ];
 
   in with stdenv.lib; ''
     mkdir -p "$out/bin"
 
     eval makeWrapper "${browserBinary}" "$out/bin/chromium" \
       --add-flags ${escapeShellArg (escapeShellArg commandLineArgs)} \
+      ${optionalVaapiFlags} \
       ${concatMapStringsSep " " getWrapperFlags chromium.plugins.enabled}
 
     ed -v -s "$out/bin/chromium" << EOF
diff --git a/pkgs/applications/networking/browsers/chromium/patches/vaapi-fix.patch b/pkgs/applications/networking/browsers/chromium/patches/enable-vdpau-support-for-nvidia.patch
index db9d6082756d..b5372d1a2556 100644
--- a/pkgs/applications/networking/browsers/chromium/patches/vaapi-fix.patch
+++ b/pkgs/applications/networking/browsers/chromium/patches/enable-vdpau-support-for-nvidia.patch
@@ -1,6 +1,6 @@
 --- a/media/gpu/vaapi/vaapi_video_decode_accelerator.cc
 +++ b/media/gpu/vaapi/vaapi_video_decode_accelerator.cc
-@@ -635,6 +635,7 @@
+@@ -641,6 +641,7 @@ void VaapiVideoDecodeAccelerator::AssignPictureBuffers(
    // |vpp_vaapi_wrapper_| for VaapiPicture to DownloadFromSurface() the VA's
    // internal decoded frame.
    if (buffer_allocation_mode_ != BufferAllocationMode::kNone &&
@@ -8,24 +8,22 @@
        !vpp_vaapi_wrapper_) {
      vpp_vaapi_wrapper_ = VaapiWrapper::Create(
          VaapiWrapper::kVideoProcess, VAProfileNone,
-@@ -650,7 +651,8 @@
-     // only used as a copy destination. Therefore, the VaapiWrapper used and
-     // owned by |picture| is |vpp_vaapi_wrapper_|.
+@@ -665,7 +666,8 @@ void VaapiVideoDecodeAccelerator::AssignPictureBuffers(
+     PictureBuffer buffer = buffers[i];
+     buffer.set_size(requested_pic_size_);
      std::unique_ptr<VaapiPicture> picture = vaapi_picture_factory_->Create(
 -        (buffer_allocation_mode_ == BufferAllocationMode::kNone)
 +        ((buffer_allocation_mode_ == BufferAllocationMode::kNone) ||
 +         (buffer_allocation_mode_ == BufferAllocationMode::kWrapVdpau))
              ? vaapi_wrapper_
              : vpp_vaapi_wrapper_,
-         make_context_current_cb_, bind_image_cb_, buffers[i]);
-@@ -1077,6 +1079,14 @@
+         make_context_current_cb_, bind_image_cb_, buffer);
+@@ -1093,6 +1095,12 @@ VaapiVideoDecodeAccelerator::GetSupportedProfiles() {
 
  VaapiVideoDecodeAccelerator::BufferAllocationMode
  VaapiVideoDecodeAccelerator::DecideBufferAllocationMode() {
 +  // NVIDIA blobs use VDPAU
-+  if (base::StartsWith(VaapiWrapper::GetVendorStringForTesting(),
-+              "Splitted-Desktop Systems VDPAU",
-+              base::CompareCase::SENSITIVE)) {
++  if (VaapiWrapper::GetImplementationType() == VAImplementation::kNVIDIAVDPAU) {
 +    LOG(INFO) << "VA-API driver on VDPAU backend";
 +    return BufferAllocationMode::kWrapVdpau;
 +  }
@@ -33,7 +31,7 @@
    // TODO(crbug.com/912295): Enable a better BufferAllocationMode for IMPORT
    // |output_mode_| as well.
    if (output_mode_ == VideoDecodeAccelerator::Config::OutputMode::IMPORT)
-@@ -1089,7 +1099,7 @@
+@@ -1105,7 +1113,7 @@ VaapiVideoDecodeAccelerator::DecideBufferAllocationMode() {
    // depends on the bitstream and sometimes it's not enough to cover the amount
    // of frames needed by the client pipeline (see b/133733739).
    // TODO(crbug.com/911754): Enable for VP9 Profile 2.
@@ -44,7 +42,7 @@
      // an extra allocation for both |client_| and |decoder_|, see
 --- a/media/gpu/vaapi/vaapi_video_decode_accelerator.h
 +++ b/media/gpu/vaapi/vaapi_video_decode_accelerator.h
-@@ -204,6 +204,7 @@
+@@ -204,6 +204,7 @@ class MEDIA_GPU_EXPORT VaapiVideoDecodeAccelerator
      // Using |client_|s provided PictureBuffers and as many internally
      // allocated.
      kNormal,
@@ -52,3 +50,25 @@
    };
 
    // Decides the concrete buffer allocation mode, depending on the hardware
+--- a/media/gpu/vaapi/vaapi_wrapper.cc
++++ b/media/gpu/vaapi/vaapi_wrapper.cc
+@@ -131,6 +131,9 @@ media::VAImplementation VendorStringToImplementationType(
+   } else if (base::StartsWith(va_vendor_string, "Intel iHD driver",
+                               base::CompareCase::SENSITIVE)) {
+     return media::VAImplementation::kIntelIHD;
++  } else if (base::StartsWith(va_vendor_string, "Splitted-Desktop Systems VDPAU",
++                              base::CompareCase::SENSITIVE)) {
++    return media::VAImplementation::kNVIDIAVDPAU;
+   }
+   return media::VAImplementation::kOther;
+ }
+--- a/media/gpu/vaapi/vaapi_wrapper.h
++++ b/media/gpu/vaapi/vaapi_wrapper.h
+@@ -79,6 +79,7 @@ enum class VAImplementation {
+   kIntelIHD,
+   kOther,
+   kInvalid,
++  kNVIDIAVDPAU,
+ };
+
+ // This class handles VA-API calls and ensures proper locking of VA-API calls
diff --git a/pkgs/applications/networking/browsers/chromium/patches/enable-video-acceleration-on-linux.patch b/pkgs/applications/networking/browsers/chromium/patches/enable-video-acceleration-on-linux.patch
new file mode 100644
index 000000000000..bd278633f67e
--- /dev/null
+++ b/pkgs/applications/networking/browsers/chromium/patches/enable-video-acceleration-on-linux.patch
@@ -0,0 +1,48 @@
+From b2144fd28e09cd52e7a88a62a9d9b54cf9922f9f Mon Sep 17 00:00:00 2001
+From: Michael Weiss <dev.primeos@gmail.com>
+Date: Tue, 14 Apr 2020 14:16:10 +0200
+Subject: [PATCH] Enable accelerated video decode on Linux
+
+This will enable accelerated video decode on Linux by default (i.e.
+without "--ignore-gpu-blacklist"), but on NixOS we'll provide
+"--disable-accelerated-video-decode" and
+"--disable-accelerated-video-encode" by default to avoid regressions
+(e.g. VA-API doesn't work properly for some radeon drivers).
+
+Video acceleration can then be enabled via:
+chromium.override { enableVaapi = true; }
+without rebuilding Chromium.
+---
+ gpu/config/software_rendering_list.json | 16 ----------------
+ 1 file changed, 16 deletions(-)
+
+diff --git a/gpu/config/software_rendering_list.json b/gpu/config/software_rendering_list.json
+index 22712bdbf38f..a06dd19a50e4 100644
+--- a/gpu/config/software_rendering_list.json
++++ b/gpu/config/software_rendering_list.json
+@@ -336,22 +336,6 @@
+       ]
+     },
+     {
+-      "id": 48,
+-      "description": "Accelerated video decode is unavailable on Linux",
+-      "cr_bugs": [137247, 1032907],
+-      "os": {
+-        "type": "linux"
+-      },
+-      "exceptions": [
+-        {
+-          "machine_model_name": ["Chromecast"]
+-        }
+-      ],
+-      "features": [
+-        "accelerated_video_decode"
+-      ]
+-    },
+-    {
+       "id": 50,
+       "description": "Disable VMware software renderer on older Mesa",
+       "cr_bugs": [145531, 332596, 571899, 629434],
+-- 
+2.11.0
+
diff --git a/pkgs/applications/networking/browsers/chromium/plugins.nix b/pkgs/applications/networking/browsers/chromium/plugins.nix
index e600d134e9c0..1dd9baa628ab 100644
--- a/pkgs/applications/networking/browsers/chromium/plugins.nix
+++ b/pkgs/applications/networking/browsers/chromium/plugins.nix
@@ -45,11 +45,11 @@ let
 
   flash = stdenv.mkDerivation rec {
     pname = "flashplayer-ppapi";
-    version = "32.0.0.330";
+    version = "32.0.0.363";
 
     src = fetchzip {
       url = "https://fpdownload.adobe.com/pub/flashplayer/pdc/${version}/flash_player_ppapi_linux.x86_64.tar.gz";
-      sha256 = "08gpx0fq0r1sz5smfdgv4fkfwq1hdijv4dw432d6jdz8lq09y1nk";
+      sha256 = "0znk8an892mykgbz56hyv3gz65vc9mhb3vn96c6bsvicwl1fn460";
       stripRoot = false;
     };
 
diff --git a/pkgs/applications/networking/browsers/chromium/upstream-info.nix b/pkgs/applications/networking/browsers/chromium/upstream-info.nix
index 8c8e8149f93b..defb58822a03 100644
--- a/pkgs/applications/networking/browsers/chromium/upstream-info.nix
+++ b/pkgs/applications/networking/browsers/chromium/upstream-info.nix
@@ -1,18 +1,18 @@
 # This file is autogenerated from update.sh in the same directory.
 {
   beta = {
-    sha256 = "1bahnvn6i08gg10r9p012n7xjwhnjk1xq4c70kw6sqr4p53423mn";
-    sha256bin64 = "066lvnh18k5982dv9481g9i31g9pq6a8q92g93xkqgj2bipbv6si";
-    version = "81.0.4044.26";
+    sha256 = "0z9p4v5mkinf7hbdagh4bz6ymqjxg3df3wjpvm201ilzzngmjqz1";
+    sha256bin64 = "1srvlirhnynh0q2a17p8z13p7r54z0cchh1d1h07hqljnwmsf8qj";
+    version = "83.0.4103.34";
   };
   dev = {
-    sha256 = "0k35sa1qq54cixybb12nyzkjyrwb4cbjfffwfvr5dl859i5bz1kk";
-    sha256bin64 = "0ckbgk6jw3zq3gqvvwdlcrqlm110hkvija6jfh9dk0ip1wdx8wkm";
-    version = "82.0.4062.3";
+    sha256 = "178fc112bsbrgj2hss78y8rhnz8hl85fr33gawk9fz88zk5qz7xd";
+    sha256bin64 = "06qra245l2bbgxc3k04aabkgq1qnzybnrjhrjb25vriv31ji36b1";
+    version = "84.0.4128.3";
   };
   stable = {
-    sha256 = "0wr487drgd030d7p84rdz1cys0c87wbgh2qg3d7qd98gqbfcpss8";
-    sha256bin64 = "0kipzd0q3p3wwklcl1fb937xhklc0s76apsfrjwy0jcmcy47blzf";
-    version = "80.0.3987.122";
+    sha256 = "19kpzmqmld0m0nflx13w9flxfal19msnxhzl3lip1jqih65z4y7l";
+    sha256bin64 = "0sl4wv7npc3rhi7jgn679hi7j5ykzwpx5dahy78h87yfg4fx84wx";
+    version = "81.0.4044.138";
   };
 }
diff --git a/pkgs/applications/networking/browsers/dillo/default.nix b/pkgs/applications/networking/browsers/dillo/default.nix
index 8d6c99d2468c..fa1fa76340c3 100644
--- a/pkgs/applications/networking/browsers/dillo/default.nix
+++ b/pkgs/applications/networking/browsers/dillo/default.nix
@@ -20,7 +20,7 @@ stdenv.mkDerivation rec {
   configureFlags = [ "--enable-ssl" ];
 
   meta = with stdenv.lib; {
-    homepage = https://www.dillo.org/;
+    homepage = "https://www.dillo.org/";
     description = "A fast graphical web browser with a small footprint";
     longDescription = ''
       Dillo is a small, fast web browser, tailored for older machines.
diff --git a/pkgs/applications/networking/browsers/elinks/default.nix b/pkgs/applications/networking/browsers/elinks/default.nix
index 8d62bd7d5cc1..985497a095cb 100644
--- a/pkgs/applications/networking/browsers/elinks/default.nix
+++ b/pkgs/applications/networking/browsers/elinks/default.nix
@@ -14,7 +14,7 @@ stdenv.mkDerivation {
   name = "elinks-0.12pre6";
 
   src = fetchurl {
-    url = http://elinks.or.cz/download/elinks-0.12pre6.tar.bz2;
+    url = "http://elinks.or.cz/download/elinks-0.12pre6.tar.bz2";
     sha256 = "1nnakbi01g7yd3zqwprchh5yp45br8086b0kbbpmnclabcvlcdiq";
   };
 
@@ -46,7 +46,7 @@ stdenv.mkDerivation {
 
   meta = {
     description = "Full-featured text-mode web browser";
-    homepage = http://elinks.or.cz;
+    homepage = "http://elinks.or.cz";
     license = stdenv.lib.licenses.gpl2;
     platforms = stdenv.lib.platforms.linux;
   };
diff --git a/pkgs/applications/networking/browsers/eolie/default.nix b/pkgs/applications/networking/browsers/eolie/default.nix
index b9b183a03ff3..cfccacf1ae08 100644
--- a/pkgs/applications/networking/browsers/eolie/default.nix
+++ b/pkgs/applications/networking/browsers/eolie/default.nix
@@ -59,7 +59,7 @@ python3.pkgs.buildPythonApplication rec {
 
   meta = with stdenv.lib; {
     description = "A new GNOME web browser";
-    homepage = https://wiki.gnome.org/Apps/Eolie;
+    homepage = "https://wiki.gnome.org/Apps/Eolie";
     license  = licenses.gpl3Plus;
     maintainers = with maintainers; [ samdroid-apps worldofpeace ];
     platforms = platforms.linux;
diff --git a/pkgs/applications/networking/browsers/ephemeral/default.nix b/pkgs/applications/networking/browsers/ephemeral/default.nix
index ea840694bd31..ead9555c3a6b 100644
--- a/pkgs/applications/networking/browsers/ephemeral/default.nix
+++ b/pkgs/applications/networking/browsers/ephemeral/default.nix
@@ -19,13 +19,13 @@
 
 stdenv.mkDerivation rec {
   pname = "ephemeral";
-  version = "6.3.0";
+  version = "6.4.1";
 
   src = fetchFromGitHub {
     owner = "cassidyjames";
     repo = "ephemeral";
     rev = version;
-    sha256 = "0h159szljvphs2hvagxwv6nncx46q0mvr4ylhl2nimap9jvss91n";
+    sha256 = "1lzcwaczh601kwbx7fzg32nrzlg67asby7p86qy10qz86xf4g608";
   };
 
   nativeBuildInputs = [
@@ -62,7 +62,7 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "The always-incognito web browser";
-    homepage = https://github.com/cassidyjames/ephemeral;
+    homepage = "https://github.com/cassidyjames/ephemeral";
     maintainers = with maintainers; [ kjuvi ] ++ pantheon.maintainers;
     platforms = platforms.linux;
     license = licenses.gpl3;
diff --git a/pkgs/applications/networking/browsers/falkon/default.nix b/pkgs/applications/networking/browsers/falkon/default.nix
index 6e21456a9a92..954b45a2042b 100644
--- a/pkgs/applications/networking/browsers/falkon/default.nix
+++ b/pkgs/applications/networking/browsers/falkon/default.nix
@@ -36,7 +36,7 @@ mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "QtWebEngine based cross-platform web browser";
-    homepage    = https://community.kde.org/Incubator/Projects/Falkon;
+    homepage    = "https://community.kde.org/Incubator/Projects/Falkon";
     license     = licenses.gpl3;
     maintainers = with maintainers; [ peterhoeg ];
     platforms   = platforms.unix;
diff --git a/pkgs/applications/networking/browsers/firefox-bin/beta_sources.nix b/pkgs/applications/networking/browsers/firefox-bin/beta_sources.nix
index 67936928d297..a0a0b7003be9 100644
--- a/pkgs/applications/networking/browsers/firefox-bin/beta_sources.nix
+++ b/pkgs/applications/networking/browsers/firefox-bin/beta_sources.nix
@@ -1,965 +1,965 @@
 {
-  version = "74.0b7";
+  version = "76.0b8";
   sources = [
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0b7/linux-x86_64/ach/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b8/linux-x86_64/ach/firefox-76.0b8.tar.bz2";
       locale = "ach";
       arch = "linux-x86_64";
-      sha512 = "371391df688dab86c5126b1af61cdd94a05ffe5fd001c465406000f5d50eb66bbb24d0d18e4b4d4293f06f02913344ed6ab1241841441dbd9696e20ae806efc8";
+      sha512 = "f4b15745610d97f3919b644ed47b515eadfeb654eb81c5a890a2d225f1223f2f554612a5df14c4514f0f835b25f44649a923d09fdd199db4b052384075df89ad";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0b7/linux-x86_64/af/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b8/linux-x86_64/af/firefox-76.0b8.tar.bz2";
       locale = "af";
       arch = "linux-x86_64";
-      sha512 = "8ae751f86a6cef220e586f64fe0253a9d86b69c90034665ea94bcaa9981b2a9e8844988a8940853f58837577c00a275b8f5c316bab51709c829b0135524e372a";
+      sha512 = "a39343493647a46579ea6f37e5da14ed59ab5ef91a4e47b9b7f43cd3f469110b9544ef660b214b7a5f3df6373a9f6bf9b55656586a96a7f2991b4fb9a66abe42";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0b7/linux-x86_64/an/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b8/linux-x86_64/an/firefox-76.0b8.tar.bz2";
       locale = "an";
       arch = "linux-x86_64";
-      sha512 = "a141d87b3e9d447174b34b8c835542d2287f88fda576171a86147251331b2dff62d1ac404566bf98348cf8d9ecd21c48be5b06fa989cfb276fe9ddca3aa35852";
+      sha512 = "ff0655c7fb043f01c8c4cbde006a7835a6f0271133a9dd07b90b3e0bf369233f9dc0ed0caf38421ea9b1870f1daaa598508865a239f5f2391eccfa6c0341c94e";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0b7/linux-x86_64/ar/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b8/linux-x86_64/ar/firefox-76.0b8.tar.bz2";
       locale = "ar";
       arch = "linux-x86_64";
-      sha512 = "e964ce1088b8e129d66bdf815a0585ad1861b77c36106c088774f642f687b0097fbbc22cea7b8b7fac8598ea6e076ff74c41804333788ddbde2fa80d8e466e36";
+      sha512 = "b89d38b6a44ebe00806cf7b16a29264c324d6afecf4d83e20ae4b35c502b13ee04a052a879d1c68e084e99ebd9850a9b597b6d4ea19350e0005c8d006d5cfbc3";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0b7/linux-x86_64/ast/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b8/linux-x86_64/ast/firefox-76.0b8.tar.bz2";
       locale = "ast";
       arch = "linux-x86_64";
-      sha512 = "8833edd124f20d62213f8e22925caecad4b5cff3b6bdad997930c60a351da87dbd4d4516c441570a621314dc1d86666448c1de95bfa7a84ed1d0494088529a83";
+      sha512 = "34a6db5926e8bc90e47e8ed8c413e3c47fe35d119aa3c2315c01b0ea38a04a8acb44551e689b798dc030902b9d3dba3f62971b2d927ed4cdc0f965657a189af6";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0b7/linux-x86_64/az/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b8/linux-x86_64/az/firefox-76.0b8.tar.bz2";
       locale = "az";
       arch = "linux-x86_64";
-      sha512 = "04856c83309a1f1c0f8ac99e998495702fa70d0dc65f6adf7a21f81e96da016dcd9b4c8d3363bff03f0bedeedcadd9fc101c54500f3b319f5e1e09269a283997";
+      sha512 = "3a1bd479e251ad695dd397d019b3f492915f8051984ba399fd93035455070eb9a2b05bc43d87506e671ff80c4b2e4f17808f37e959d94dcb6a3067f8761f617f";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0b7/linux-x86_64/be/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b8/linux-x86_64/be/firefox-76.0b8.tar.bz2";
       locale = "be";
       arch = "linux-x86_64";
-      sha512 = "cbf7858cc233b87163fd985396367dd6459cbfdfbfdbd54d3bcf9419233f03934011f1df9381725c250d6b69bb02a5b7c4a752d1d282e358998494d74c6385bb";
+      sha512 = "0c53c0abf67079d254b5da7c3d7edee506678bc3be55d24b61865e18f8e81b9e26f8ec98d08e7e8aacfb47a231460cafa52e065a4d216cadfaae70ae0a9202f5";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0b7/linux-x86_64/bg/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b8/linux-x86_64/bg/firefox-76.0b8.tar.bz2";
       locale = "bg";
       arch = "linux-x86_64";
-      sha512 = "4d142b7dc4ae68106a39196d79c92ed857354e1a4896ec30b94de26a764da07434b713faf7ddc74886e20735969b5b2dc316f9ac1b5a57b43545d9282a675441";
+      sha512 = "b608676213c5ce9cae42d18af0f6a836586d990d58042ac8bdd0112590f3aed30abd4272d4581a0cbb633043b4f0cadca7a90ac40777e5fdb7afe807fff1c2ac";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0b7/linux-x86_64/bn/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b8/linux-x86_64/bn/firefox-76.0b8.tar.bz2";
       locale = "bn";
       arch = "linux-x86_64";
-      sha512 = "916a3f4f76a944ffd13d26d630985e85bfea416d714ff95423a0761341e569a2100397ee06c32005c3f98f7926a1dba6cde817a1d94f638168edab2005c5ad63";
+      sha512 = "44fc7a158689424b3c781812e46b38efefae4f49098bce533c1abfcf9cae78a6be2369fe21f6be12c96fd85afab875b8a6f77af399348f82a1cce3ad4b0279f0";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0b7/linux-x86_64/br/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b8/linux-x86_64/br/firefox-76.0b8.tar.bz2";
       locale = "br";
       arch = "linux-x86_64";
-      sha512 = "d127065bfd273aae19cc9194a2f5df9a4ae797f9d1b2c8bf50df0fd177c4cc5651e5acc752ee45aeaf1b6bc419680de0a55d8c022df71fbcb6a2188b9fd99207";
+      sha512 = "f9f3bc634fe7c21e1cf9800f8875979e9f77764f71861926b67e9addd604e88b22f90cf31da5dc93b3ebb2dfac8c04ad423b9b21416732c9000e9747ab588a11";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0b7/linux-x86_64/bs/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b8/linux-x86_64/bs/firefox-76.0b8.tar.bz2";
       locale = "bs";
       arch = "linux-x86_64";
-      sha512 = "0b4706f44d63070e2d0438c0fe43d9f157cc770c6777df17e71243a6c7a9ee694aca554de5a7857dc8f450acdcde93a5c75a874cdb7cfa46d16d39b3cd97d791";
+      sha512 = "3558b3eb7da562ba50f1273ae461f753a95d42eca3714eb1e044bbca3e63de16ce1f040f5b34709c8a0e86fc59ac6c9d65f1dccf3a0fdc30e96c0f7490867d7d";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0b7/linux-x86_64/ca-valencia/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b8/linux-x86_64/ca-valencia/firefox-76.0b8.tar.bz2";
       locale = "ca-valencia";
       arch = "linux-x86_64";
-      sha512 = "73103b02b91cf205d0cd69e0af10bf7c864062703f4b11a4c47beffeeb656aa8e73796f30edcb458382bd31c728b28ce2a122681aee5b41db666cb3c647e76ed";
+      sha512 = "b79f0e814ce7df9de0f2a488a3a798ce9a33c840c7a39efc6a749a07e568ba881bd2e42b4a49fbe7ccee0ddbb3e7768382181ce16379a6b24551ad555685a792";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0b7/linux-x86_64/ca/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b8/linux-x86_64/ca/firefox-76.0b8.tar.bz2";
       locale = "ca";
       arch = "linux-x86_64";
-      sha512 = "6bef2c5a242d7cdbe511cdb4491fae34c5897900b5a61aaad34f6511916fdd937f39fe53c29249eb0309191a5f7c7ba3c2c6e44522bc3033c0adb6086967bcfc";
+      sha512 = "69a6c978b4c896091f6118b55783988fc505c819d74cd455ec6274d54fb6994a012f41d09d9b574be90bc10e47b8d186b8021421d86d05db6945ecda1e51d127";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0b7/linux-x86_64/cak/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b8/linux-x86_64/cak/firefox-76.0b8.tar.bz2";
       locale = "cak";
       arch = "linux-x86_64";
-      sha512 = "91893441b0ca1ad8d2887a52569374ec4fa51522bdff7b468fb2664414406b54ee6910c5c9fdc70b2b9ec502c999829594c24a20240acdf2f2fef7dda06e7e2e";
+      sha512 = "8253f68114e9bb035edb0d718439f0d28f04e6afa7ea33d1001a1457723c4cbcd17362c0b517a23ca78a53ad2dfc847be396e28beb3a302f2380a6dad5eedee5";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0b7/linux-x86_64/cs/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b8/linux-x86_64/cs/firefox-76.0b8.tar.bz2";
       locale = "cs";
       arch = "linux-x86_64";
-      sha512 = "dd1da900168651d2ed545f1084f2968f7678b462773f2547a11034360170d981ba9bd813d9392ade20755e72145eaf6c1e6d0b6e2d128d1f884f0d8756d49227";
+      sha512 = "1413cbd3345770ce7597ef139242b72fcc9b7c53bca4b7cbfa707f00bc3d2778305f617047ba24fa22f808c0168524166a6fe7cc7db6ea0c5cd30b609e80d404";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0b7/linux-x86_64/cy/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b8/linux-x86_64/cy/firefox-76.0b8.tar.bz2";
       locale = "cy";
       arch = "linux-x86_64";
-      sha512 = "a7a343140c7fb381278de6475fb5204ac4d38eb07bc3813b1d84f649e69aea3807336831cf364a4a90aa8c6c6d54a202da764f59ad70c8e5509866fcf3e8e1dc";
+      sha512 = "1628a73872c268d4aa8ac78bffe6ab49341735c6abd5c8f805c86129ca0fcf5d03251e962fcd4c9ecdda6af125b8d4f9d095e42b2ff5c185267cd41f3090acd0";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0b7/linux-x86_64/da/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b8/linux-x86_64/da/firefox-76.0b8.tar.bz2";
       locale = "da";
       arch = "linux-x86_64";
-      sha512 = "e0ed22aff77496deb13843e7907e8c02f86ff9b73aa97236aff4d1ea1c6127ceb69cf7722fad2dc8a3766d863b7f728fb0ae29f64cdfb0209bc41d9db9700ee3";
+      sha512 = "f51f300911731acd439068bcbbab712ce4920345b481b8db80b3f6ca1c1cf18fd201a9e639abc78db97933d4872c7241324591a9c045bc1c6d71898e2a2fca93";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0b7/linux-x86_64/de/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b8/linux-x86_64/de/firefox-76.0b8.tar.bz2";
       locale = "de";
       arch = "linux-x86_64";
-      sha512 = "a8234fcd9d02f7ca55c99ad2bb8584f525196670111e9dc4fe8c28d3592030cf98a4619939408853f04f004828c15269ba1ab0b63b97fe04dcbf61f0318cf5b0";
+      sha512 = "196ce93a18112d7e0df8a8c1e444d503d3b0a2d11e70907963197760c2127c4f827ae9a0eb79fa7745190c92be10c7828a42414d33ec9ccea1f0b7194ffcc325";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0b7/linux-x86_64/dsb/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b8/linux-x86_64/dsb/firefox-76.0b8.tar.bz2";
       locale = "dsb";
       arch = "linux-x86_64";
-      sha512 = "98933acc4e74a1d88e4fbf8bbcdcd0310eea9af7ce88d708146408a157529fd727104fd827fa445a139721c1e1f1523637b0cb6ccc20ae0267ea723928384155";
+      sha512 = "da6f0afd218345ffa1bc0b037ca20c9aa6b18597471d35d5cc8f4fcbd4f39f91e2839fe35f186577ed4445d34e76d4c8175f2df24f7bc0795f606cc6ab47db7f";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0b7/linux-x86_64/el/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b8/linux-x86_64/el/firefox-76.0b8.tar.bz2";
       locale = "el";
       arch = "linux-x86_64";
-      sha512 = "a6656de1898fbaa3a67c1b7e0c7c45dd9f5a6f3117bf2b044bf266556750606b3eb0c00ace7e32f32ce37367d5196d28bc5bbec3a6ddb5f0fc7629f6a2156a90";
+      sha512 = "4ea4754aa0b337e94f3fec5b108c703ac80827d514e64e3e6c890e050107249367c4167b58f21177c3071c11301c37de08703136f03edc0aa901a22e2126b279";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0b7/linux-x86_64/en-CA/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b8/linux-x86_64/en-CA/firefox-76.0b8.tar.bz2";
       locale = "en-CA";
       arch = "linux-x86_64";
-      sha512 = "b1be0cbdc584520038e3df24607e8342ee71745f11c7e89f574d45270d2f024a4974d353549098ff3e5300a5c618f7274615f05858d2b9c5df090464d473387a";
+      sha512 = "f6f59d13148c7e5510a03e93644b38a788911ed904e088be48cd1bde071ac372b4b047f988714ed44d1f64ca6a32502564f01780be80f6c49373119ff7021454";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0b7/linux-x86_64/en-GB/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b8/linux-x86_64/en-GB/firefox-76.0b8.tar.bz2";
       locale = "en-GB";
       arch = "linux-x86_64";
-      sha512 = "072c48287c0346c28bed4ccae0b71b984f4b656f917b0a6c6f20ac4fbffc9bc8248070fd584ea3444f40a65ac02202b09d26548c417d8a9abe8f54e385daa609";
+      sha512 = "fa42017d8111e96c4d81ce515577e1307e187493866c04f3687746647904f2f89a3f0df822ffdc2004bb0fa06aeba102e29b660e250737b2264b5015010ab869";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0b7/linux-x86_64/en-US/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b8/linux-x86_64/en-US/firefox-76.0b8.tar.bz2";
       locale = "en-US";
       arch = "linux-x86_64";
-      sha512 = "70a350c3122e8565aabb3155bbf532f75958ea0ab83576f98b1f1a819fc54ccbffab6e0db3f5996814cd199b1a30aedf586b6bc3e6b2037c7374cbcf78fc3dea";
+      sha512 = "5f47dbf433ab20c2db027542eb0a3dcff7fb0b526ec93908f182e1dadde112da327f84edbaf44ccb26d36c120a414d64ebb9b10a77501644d9f1c9c3d34b7346";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0b7/linux-x86_64/eo/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b8/linux-x86_64/eo/firefox-76.0b8.tar.bz2";
       locale = "eo";
       arch = "linux-x86_64";
-      sha512 = "35d35b253084fee933c828ff38b8219cb742ace5c36f407fe1235cd5aebd956b813111b9cb05306ce5f85ca42634d4ab903ad409c3055ee0ae4975c007e029fa";
+      sha512 = "3cd5e9e99b73694aeded24d9acc7c594bcc582eafca5867a7123c5067e34f7e96781164fd7db2b53366bd0d0d66fc495931cad42b1e3d56726c8e5f82c8aea4b";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0b7/linux-x86_64/es-AR/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b8/linux-x86_64/es-AR/firefox-76.0b8.tar.bz2";
       locale = "es-AR";
       arch = "linux-x86_64";
-      sha512 = "0448e25a909dc951812bf5b8ff3eb39e1ba0825900ad4a4d78b3c182830a37fe8c6f226128341178e0b6612b4c9ebbb826d2484505ffed4e23097ec1210e8238";
+      sha512 = "ae43f7147a3ce843488623c4558d9088690fe6ecf7153ff30da09051e9e9fe90df28bf6529a469b8d799554c8ee3ef92006e73a2cb9e68a5b71ab392a977e849";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0b7/linux-x86_64/es-CL/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b8/linux-x86_64/es-CL/firefox-76.0b8.tar.bz2";
       locale = "es-CL";
       arch = "linux-x86_64";
-      sha512 = "703c9e4cfbf94522c1b4526bb68e7ea6941169fe1f45ef155f96587701064dd3d1c2056fb59a582fd14b4a41ff4d9b82094b40f4c95da6c8d5da66d96b012e80";
+      sha512 = "6ccde441b5c44514da5bf7cb9aa959f818d5c499fa8d33487102cb1a1cb98a501b1575ecc28f8288cbc4b69dc70bc76f365e9b52d4329b685f25a1ba9d1ff063";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0b7/linux-x86_64/es-ES/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b8/linux-x86_64/es-ES/firefox-76.0b8.tar.bz2";
       locale = "es-ES";
       arch = "linux-x86_64";
-      sha512 = "e4666af45ec236cf8f14b69ff0bbcaa4070ed9205a04cf5dd37823feb1230e66f726d980de97326c1ebc7b93c2b3b43cab61efbb1983d8882a78abba5eeab313";
+      sha512 = "3800ba267d51d9046999c931b5bd9a743d2a3481486a7ee713f76c003c863b8579d44ca53ea56f5b32c8022ffd9ee0184b7c734e5671b412f60d04653ca2c8fb";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0b7/linux-x86_64/es-MX/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b8/linux-x86_64/es-MX/firefox-76.0b8.tar.bz2";
       locale = "es-MX";
       arch = "linux-x86_64";
-      sha512 = "1aba3fb4f7d34c55b433fe886eba74b0c71ff2a759a015fa31becc8c8a207b70b816d6cdd1ab648d3b8fa220268c8c95d19689fea65dd963de6750f1ea0f2905";
+      sha512 = "600a1aa9a0b97fe66947107ee9018740e2f7c07bd3ac51b03c0c6d52728d72f93062c9dfebb97042c9a23a85631c88502feaa6a8cee395953ef23c2addf6a99f";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0b7/linux-x86_64/et/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b8/linux-x86_64/et/firefox-76.0b8.tar.bz2";
       locale = "et";
       arch = "linux-x86_64";
-      sha512 = "485cf19a8bf5a8e877ddec241a98d580b8ebd187c0b92185b116fdfb3936d31cd379f10211241b591f8927a077d7482668abc411ba67c4d5b83ef5e47e0ce6ae";
+      sha512 = "498f59dc3a6faf067c8c3d23eb5754dc8cf0478b50379359122b7a8e6ead6d7c6c39856cb34f3510f7fe1a11af3e0533a3805821ba49cb7cbf1d40b1caf36b3f";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0b7/linux-x86_64/eu/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b8/linux-x86_64/eu/firefox-76.0b8.tar.bz2";
       locale = "eu";
       arch = "linux-x86_64";
-      sha512 = "4bb9b8f3a38379011240c4ee9d0d1db9457271c5bbcddf691e42d33e281e2a63d781e962375e8dd55860ca49c872922384ddcc1f1d9ead98fafa213d2095de32";
+      sha512 = "a5d58868468f9ccf22afe78734121e1f81961efc9c7add2a065ec9b9d5d68d8fe96b5f563a85b960ea7ff94c70e1c3aa3a9f0f1bb23cd175df549375c1479072";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0b7/linux-x86_64/fa/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b8/linux-x86_64/fa/firefox-76.0b8.tar.bz2";
       locale = "fa";
       arch = "linux-x86_64";
-      sha512 = "995e24fdcddf91ab5eb2d5809b84997506c8c3967fbc2735a120c11fc69cb87c02a2d1f0b6c477946a5406bb585c73ca6361110dad6a3927745b24fa509d5018";
+      sha512 = "02a5d946542aff81bea82ec73fe30919fe4a1d1acbd18ef194a7c8879d9b70e319abaee2e4d8b3a2671cecd28fffaa37a182f7dfa06884f83d765b8701c60a9c";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0b7/linux-x86_64/ff/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b8/linux-x86_64/ff/firefox-76.0b8.tar.bz2";
       locale = "ff";
       arch = "linux-x86_64";
-      sha512 = "f504e9157265dabd9340b2974051ed9da7b4f8f56cf652c44d96fb949a3381dea16b9782a7d029f2c3e19793a9fb4aeab703f30773dbc1b9e70e937b00e4e77b";
+      sha512 = "4ab405c47fbdb83eace54b0db61c734941d5ae6c5735d50dc6800271dc59cd82de9df9e1e98f238c4726ff9319c31a8879b2f0330792289db5e4b01cd3caf3da";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0b7/linux-x86_64/fi/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b8/linux-x86_64/fi/firefox-76.0b8.tar.bz2";
       locale = "fi";
       arch = "linux-x86_64";
-      sha512 = "f97ad7cc1c1e170bef9e2da7ea51df57b32445a3b13478372735af5336251cf4da6ac2955edfb70c1ff9fd9eb997eecdac6e63c867ae80e18f2391ecaab1406f";
+      sha512 = "82f95d6462097fb2975285326ef6b35a572b4c25bf07517f3ad680a978aea95f5cd4ab946275dd74cd6aa98566d1a4288761c985c39e1cb3d9e963b892a37544";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0b7/linux-x86_64/fr/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b8/linux-x86_64/fr/firefox-76.0b8.tar.bz2";
       locale = "fr";
       arch = "linux-x86_64";
-      sha512 = "aabf2b7b4d3e564a9aa250c3bdbc3c3f3ece0c69a6047f76bff316534637ddc00eb24d1e59c419ffb9b7c4193b7a151682cf75b4470c378ed5305c1cd9329843";
+      sha512 = "a6df8eea8918292c18b281f5118a0373bc69aabc585d3a711ff77355a1aa95f5049d31df3bdb72087931dfc347050f4ccd791a9729f7bd3d95cab20c78da8a59";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0b7/linux-x86_64/fy-NL/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b8/linux-x86_64/fy-NL/firefox-76.0b8.tar.bz2";
       locale = "fy-NL";
       arch = "linux-x86_64";
-      sha512 = "057bb572d45eef62599debed8390f45a53f5b9ed720ac37bf46c3a6f352235598f17a1627989f50c0e10a5f22d1882a8170024bb9583bc2fa7923cff32feef48";
+      sha512 = "d5cbb68867369a82d84ade5a847d8574ff687c0cada8714c8a072291aa02eef748dc109b42f1b246980f1ca14060b799098885bff2d7e4c55e7ff644ccc01e9f";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0b7/linux-x86_64/ga-IE/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b8/linux-x86_64/ga-IE/firefox-76.0b8.tar.bz2";
       locale = "ga-IE";
       arch = "linux-x86_64";
-      sha512 = "9872d3692571fde83a8237a41c51c64e8a1c099174262b33032b281fc76b5f564b29f3ad1ccc7dc5ba4c8ef709810cc1a3ccdc34942361453ef15ede006b42a7";
+      sha512 = "8d9a299c49949609f162f9bba7db369fe7c34f2b29d3075c607afd3c3bdb5ffa0ae0d9bb9d5ff5a5f0cd28556eeea5265b8f9809a2db36ae11209b9cbcb5b8c6";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0b7/linux-x86_64/gd/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b8/linux-x86_64/gd/firefox-76.0b8.tar.bz2";
       locale = "gd";
       arch = "linux-x86_64";
-      sha512 = "c3e5613572ecccc67989c5d3ac5f590092bb05fb43166b931ea49fdf7cd0cca150a6208970009ffc8063d7d87dd9e5b371a9d317af8b9094240ac9314eb8499c";
+      sha512 = "4431eeb86c0e3920bd08db00c10185941bc7fb3f5b055b8ba114e63bdfd7b64ccb8cdffcb754453557bec011d08d87e08b6a2ce022c77fe32add49269f3ac6d6";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0b7/linux-x86_64/gl/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b8/linux-x86_64/gl/firefox-76.0b8.tar.bz2";
       locale = "gl";
       arch = "linux-x86_64";
-      sha512 = "766b0ce2b5b4a78e0470dd708a83423e8e756a7f44a6bb7e74ef06699e48bc848c2f1e5e452db090f1a8b8c33fe20036f1059500a14c878824516868056ac45a";
+      sha512 = "0963628808ab6f6ce65f70e09c12ca38c524992c82446a2654eb42917ee2d32dc1dae94b15578ac5209e12e0fc4cbd2f56265ae8c259336415d4a56b560be96e";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0b7/linux-x86_64/gn/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b8/linux-x86_64/gn/firefox-76.0b8.tar.bz2";
       locale = "gn";
       arch = "linux-x86_64";
-      sha512 = "f6937fec4839c3a06fe36e78958b549cd1bb0ee6ce2490ba3f05716a6853807781a51c7ddd4eb8c5c10c38624818f9ee70a3115fe53e426b27c8d9162691e3d6";
+      sha512 = "1b19d9ca238eb05709007ddf00ff40596b49ec771839f6b1ac21162796101701fb523c0b8ff18dc6d3428eca3ed2ac0fd3bf17c5ea91efac998ebe4b8ece6c9c";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0b7/linux-x86_64/gu-IN/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b8/linux-x86_64/gu-IN/firefox-76.0b8.tar.bz2";
       locale = "gu-IN";
       arch = "linux-x86_64";
-      sha512 = "005223824b6ec5e3ed8c404ac9fea73b1ca57412247ed625c667709e81be1727b04a0a1b0b59add46864601b04efaf01dcb592016b3e25c026204444a6c411a4";
+      sha512 = "c0d2fa00166926927e1985ce112a035980ad24771d4ede83143c4bb9012006c811aed2612fb1f2c4b1bfc852a7c7799309f4b579aaf86fc5b11ab216239911b5";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0b7/linux-x86_64/he/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b8/linux-x86_64/he/firefox-76.0b8.tar.bz2";
       locale = "he";
       arch = "linux-x86_64";
-      sha512 = "29ff04367e36a3df0e5d93d69bcedc6c698692a42cc80fb2f51171b784c030de832593a617e35483bb6acd849b77b5d19340a31a0322e1421d5ccc07a1b90161";
+      sha512 = "b2a5440b57ef85a3e3ee607e9e497e6b70e3652c7f258a2c7e98e18b5a95c8d34de908d64e464be9ad224aac7869efde785e38462fad3c284649bb9c524574b9";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0b7/linux-x86_64/hi-IN/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b8/linux-x86_64/hi-IN/firefox-76.0b8.tar.bz2";
       locale = "hi-IN";
       arch = "linux-x86_64";
-      sha512 = "6c78e91ed89ea3ccd7d67d46548993aae9375648ede8edd76cbbf6bcaa97ceb55f13506b8c9418b6fa94fcf15e0d4052196334f3f2b804439c3fa9db564e9b4e";
+      sha512 = "2ffeeb8d559097e9d67f7603c34585d8b4d1571a23ef5a9d04c47407b03c4db2d4633637e8352ad96989facbacf6796aa48eb94ad81b70b0be3f0955b8a0e32a";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0b7/linux-x86_64/hr/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b8/linux-x86_64/hr/firefox-76.0b8.tar.bz2";
       locale = "hr";
       arch = "linux-x86_64";
-      sha512 = "0935d78afd0739eb510f24e0ca21d9007bf89c3d587b2661e0bca2383b0a7361071a529c67c213312b390ace44e79b07826d0ddba4ed5756bd800027ecfeaba2";
+      sha512 = "91ef9459edcf44b88e9bb6c5bdf1a1d5689c99e5a44f14f4700d0821e0274e9f8c3f79388c7a97e0aa235b8ffe1099ac80a523b4d62420eba5163a608d48aae6";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0b7/linux-x86_64/hsb/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b8/linux-x86_64/hsb/firefox-76.0b8.tar.bz2";
       locale = "hsb";
       arch = "linux-x86_64";
-      sha512 = "1372280c8770db01aeb2fa5992a5ae702318b84e972c379752ca7c1a15e00dc44cc7a5e9fc212c928e987aa0599f240a73828c7296769064e41b8699bf4d1173";
+      sha512 = "8173f8c47566f7aa486266b8c0e83eadc11c484f597334aa48eebd3ed353f5910eef527bde508e98f082240d01804006ca4771aa7992290b254601d2eec6a206";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0b7/linux-x86_64/hu/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b8/linux-x86_64/hu/firefox-76.0b8.tar.bz2";
       locale = "hu";
       arch = "linux-x86_64";
-      sha512 = "6ad396d94908a40b4263866163c6de6ac3a414b27fc57a9b272df2db3b5bedb6f1a0fb31170bff456858fe8185761e58f44011a77295c41afc8dab1d7ab6550d";
+      sha512 = "7ceb26c11204ce6b1e6c3596d9dc3e6146422cc3eb0d1ef9c06251430e32f2353ee42b4363204852d6374cc845f8b84997958d2e66af3e770aad679d0ad3e66b";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0b7/linux-x86_64/hy-AM/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b8/linux-x86_64/hy-AM/firefox-76.0b8.tar.bz2";
       locale = "hy-AM";
       arch = "linux-x86_64";
-      sha512 = "c59a6adf717d489b9de000be2f9cd4c166f3b25217d2add4f790d6261cfd8395aafa5a40cf8f41a3596916b265df5734236e7ccb02e9d7958e90e6e96d616468";
+      sha512 = "cbc66db54c574aca15f8e2726ff68910d19a67cbbed9e2b63518976e3f614b4f5f6928bb7cdfd5c357d7152ef04ffe1a311656125ff5cb62e471ae59213b79e9";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0b7/linux-x86_64/ia/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b8/linux-x86_64/ia/firefox-76.0b8.tar.bz2";
       locale = "ia";
       arch = "linux-x86_64";
-      sha512 = "c971f1eddfa61f0abb9053c106688eb42dbdcae9bf96ad3b4860280c7939d38599c9cc00f41056eb5297eacd6b90bea7efd2722ddd3f4b33284468837a8a0439";
+      sha512 = "19325c8a1aa3067fa8df803b93f124427519020903ace8cf12585711634f8d546662166f11b3944880dca5eb79ae87a9e2d0e4e273d95543a4641e9cf4324ebd";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0b7/linux-x86_64/id/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b8/linux-x86_64/id/firefox-76.0b8.tar.bz2";
       locale = "id";
       arch = "linux-x86_64";
-      sha512 = "7d161578a96265e1a3fca8efcb6f54b93b3831a1b7f1ecfb7dfb5717bf9859767a136a3182482bd06946bf8b50fb8fb4a118a7e4ecc16d3a3ccd9cef54303d5e";
+      sha512 = "b74338470d7eb1aecfc75ead675e2408df33fd4841ab4953cadadfb9a7f6169f8a10c4896d4d48fe86113d3f1ff312c4298976ef8b997c26d6406f8598b19a5e";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0b7/linux-x86_64/is/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b8/linux-x86_64/is/firefox-76.0b8.tar.bz2";
       locale = "is";
       arch = "linux-x86_64";
-      sha512 = "aa462c1c49ccae93dfd16bb7f2fcaec55eb26b093332b24658a120349c9e2de233a6bf75585221c187b668f77b2bb675ac44ec9a1d5896f0845c91eeedf969fe";
+      sha512 = "cb3cae07b27f0d485f9eb70805671ae50325491d622dacace2a39606efd7a72e46220e4981ff012f115183641b8e00271ab06c5ab2e8bcf3baeda040546c8b12";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0b7/linux-x86_64/it/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b8/linux-x86_64/it/firefox-76.0b8.tar.bz2";
       locale = "it";
       arch = "linux-x86_64";
-      sha512 = "50a3d1a7dc05531cbed59ad0bb3289706c1e4558a2b160ec80f2762979ba13f84bb5ac689ffa21c58e1ee6cd3b60fc4bb96ece54aa0b2755adf28c10231dbeeb";
+      sha512 = "83b7175ff91bad6733db2cd095172ef943867aa2dd911c6ec857dbeaad8cf4cd906278f3b8fd488e8905cd5d5574f727066ae73e92948d22804dabe16b4a11cf";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0b7/linux-x86_64/ja/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b8/linux-x86_64/ja/firefox-76.0b8.tar.bz2";
       locale = "ja";
       arch = "linux-x86_64";
-      sha512 = "255c6b9291a38d431210c014433ce8d986245e30dc3bafcf13c1dfcdcead06e1988a1e960a9f3a23d37f1d527635630e2e76c3aae4a81b0ae3edd9c6daf161d3";
+      sha512 = "b97a3c637b1632b6a6285af946eb0a2c178d8fd901cb3a9b0fa5b62d14e3bc314acedd504153ae111557b78a2edbb056bd4a255f5971e1ebad3e335879dec40b";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0b7/linux-x86_64/ka/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b8/linux-x86_64/ka/firefox-76.0b8.tar.bz2";
       locale = "ka";
       arch = "linux-x86_64";
-      sha512 = "6cce90df66e85fa5d3fc96f9962d9140dad36f6fff840a5e80af608cca20c2557a79f5e01338d0fe64f6a0d1d6b15c72c883147cb3fe932a368ad04353b26ba3";
+      sha512 = "2f5ae830c52bcdef8fb47880c6941d5aaf4830139b77c59c8e188e82036d315f57732633ea785c54a950d086ea02423e97ea2ac01105b5d2990821c7a15036be";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0b7/linux-x86_64/kab/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b8/linux-x86_64/kab/firefox-76.0b8.tar.bz2";
       locale = "kab";
       arch = "linux-x86_64";
-      sha512 = "3170509b386ae0d0390dbde71fbd9397ce587bec4a47e2328796ca04c9b379585a2311b28c373ee34672b549db6c1e69471fec65de581d11d177eae536407af4";
+      sha512 = "4be9c49a6b6203f2f3b3aa3b5ee2c3246d77409da5a7b7cde2c14a3fa592eba87715199447df96688e95d9905d6f1eadaf867ffe1d01be9a12feb03255848c84";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0b7/linux-x86_64/kk/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b8/linux-x86_64/kk/firefox-76.0b8.tar.bz2";
       locale = "kk";
       arch = "linux-x86_64";
-      sha512 = "71ef08a02731831cf6fc863012f58bca054017dc854f17ade9ef885c391c437b40bda9c89c1a06f9258047b1c9e74250f67ccf07fa8ed0c47d52a425b447e21b";
+      sha512 = "d15c5f6fbbe9b16510e94d1cf49f36fb758a97af5e75069f38b33aab8be007812d88babdb8aa365fe3e4c17a822be234111885a2d71ff335bd7ec6703e81434b";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0b7/linux-x86_64/km/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b8/linux-x86_64/km/firefox-76.0b8.tar.bz2";
       locale = "km";
       arch = "linux-x86_64";
-      sha512 = "a1411bbca99f8c45c5b7a3d3793df3496d653c61d022cb7bc5d223e3dfc4b6f27228a888e429656930c05442b8e8087bca6553848f01304760483e2486ef071d";
+      sha512 = "351facfee64d07ffedd0e5509e8b796d0432c7b44ad29d109c50668adb8fb13f408026166a49f37a92f99bdbf7e032929a22088d4bc42c14169449234841dc90";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0b7/linux-x86_64/kn/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b8/linux-x86_64/kn/firefox-76.0b8.tar.bz2";
       locale = "kn";
       arch = "linux-x86_64";
-      sha512 = "a7d8e7349e65f21085b4fdf69284eeb70d0cafa528d034b5c2220cc2ba6aa2edcc846d736d288307115cb3e6139597dd47316b3d0a0a9e327b72b61f901c4eba";
+      sha512 = "dab3f1437cea072c466c9407fdf647f368838bbb7c30177642bc1247a8002874f832d0661e8a3aa32df8c0017f8c664caf6125b6989a113cd08f9c874753dfa2";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0b7/linux-x86_64/ko/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b8/linux-x86_64/ko/firefox-76.0b8.tar.bz2";
       locale = "ko";
       arch = "linux-x86_64";
-      sha512 = "e6afa5b7d32e641b5f4c04d4afdc91c7cd7422102658b932ca927daaf6652e035d8d9ce6348a9bbe07cd562f69f74bea7746df8c85aa292751b4cc3ec764600f";
+      sha512 = "b62dde501b06b4d825d9ffa8008b45a40bbfc93123df07136128f22c7f6e1f1cc42a0ea7e97c1a962a7b1a1a23bccd5eb66785a246781769b22bb43b8ef451e3";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0b7/linux-x86_64/lij/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b8/linux-x86_64/lij/firefox-76.0b8.tar.bz2";
       locale = "lij";
       arch = "linux-x86_64";
-      sha512 = "4ae2955412987487c37d24f8a4a935b14a84048627e6fbfca15a8f4fb5eb4f4339ed3c32afc1be2e9c5725a7caf6d0894ba2fd80eb79150cbf364c3927ed80f5";
+      sha512 = "9fe6488ed61c360ec1ba0d784409938159637c96abff94ebe18f198a8c0a72b052b5b0e6b5946339cdc5b5b3288c8e76811704366a4e9f9c498a9041955f7df8";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0b7/linux-x86_64/lt/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b8/linux-x86_64/lt/firefox-76.0b8.tar.bz2";
       locale = "lt";
       arch = "linux-x86_64";
-      sha512 = "df9b514e06272fd0eb3f73e14d9a9ae9c22e5e3e7bf456a63a95054158f2c3fe81bb6750cbc6ed3a53d5a3f11f63a801b6c6d412df50bc08bc3ebde71028efc8";
+      sha512 = "804c3639ec0275d844f9ea37b1ccf5f259c50301cd5ee719b6be07a5097218937b5337a25d375c0d534d59143af3fdb338809fd9490a898d226e9cbddf39b6c8";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0b7/linux-x86_64/lv/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b8/linux-x86_64/lv/firefox-76.0b8.tar.bz2";
       locale = "lv";
       arch = "linux-x86_64";
-      sha512 = "28471815ab78ba35fed8b77fc2722920e848eba3ee8cf9cda62dccecb055b8684e2ff5587f477b38b286a515899b1b9c23b38fd04a8f510a3dc4a48d05bd3c9e";
+      sha512 = "14b263e7abfdad1ce738d58bc30f054f80099a7513ae443d32aa8dcde6b12f2daac56aefe9d3cbc2db9f9cab573a5ef2b046b8e8df9d5417cffea44d109d1403";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0b7/linux-x86_64/mk/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b8/linux-x86_64/mk/firefox-76.0b8.tar.bz2";
       locale = "mk";
       arch = "linux-x86_64";
-      sha512 = "3cc80253d3dd1b5a55035a5b2ac0ba1b10b8cae71537fd277ed95c91fa5d88e75f0c95a4373a0a2c5f9d887709679cdbd154b1babbd1089f6c63cf2484a3176a";
+      sha512 = "068eae194df8e756a668b8e372a0790ab8fdcbd5c54b823c82106230a9cba32b5b6e530de7a981273c67af25e5d329da2c543c8a5c96c91f010d19b6ecb25bb9";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0b7/linux-x86_64/mr/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b8/linux-x86_64/mr/firefox-76.0b8.tar.bz2";
       locale = "mr";
       arch = "linux-x86_64";
-      sha512 = "e7d702978faac40984d1fc5ceb7b689ca6e5acb30c3b4e119431013a8efcd89421ff57ff74ae8283ed3c818cc171c1cbba461d17106e22f1cb7ebc1e1080d832";
+      sha512 = "6775e61398e028c2a6dcf9171ffb3d8fd4746653beb58e8c012f3256685e545abf4a62d53d67aaed3a2f04f216dedbb14a09920f24c2b6bc288fd29caa1ce2f9";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0b7/linux-x86_64/ms/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b8/linux-x86_64/ms/firefox-76.0b8.tar.bz2";
       locale = "ms";
       arch = "linux-x86_64";
-      sha512 = "6912c3bf5b7dabffb89b9814c4d451aab946233a489a76ad2d456856b56d94c3403179436facb4aa344844fd130b550b7223113db7155084be2176c07c4b04e5";
+      sha512 = "b66a91988d816963731c823f16d001b89ce14928caa129ef90dfd1f01e3c54cea2ddcf0e5f7fe34ffe23b265c0a64715c3877fe0c5c8365f80b859d3e06e84ea";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0b7/linux-x86_64/my/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b8/linux-x86_64/my/firefox-76.0b8.tar.bz2";
       locale = "my";
       arch = "linux-x86_64";
-      sha512 = "07a5cd6d3376b0e4b4dcc4db5801cf9e8cc17e2ba7269953c10c8620e597f837bdb29cbe4707da17f87e3778f42257b4ac71511dc8941b72c4a7b7e5e1f8373d";
+      sha512 = "29796ba9076ab6c46f16fc06119a267861b34652322397e77872a7570e8375e3efe88c3c08731cc8909d817d3eb71e269f7d245e691b8ba4778bb653a766914b";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0b7/linux-x86_64/nb-NO/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b8/linux-x86_64/nb-NO/firefox-76.0b8.tar.bz2";
       locale = "nb-NO";
       arch = "linux-x86_64";
-      sha512 = "d974a6686d12df092f84aa6bf4519de0700565fe2c96b5a80b9b994bef08e1f2879d602019d8f9f42db771586558f2b50dc474478fe8880d08c95a3b17a800b7";
+      sha512 = "d7fe426dcbd53043a94d143a038fd901875630627e98547997be62b3319d5f2c2172ccf9315886d97d30c4a041a099e0ad8a229e840a0f4061faa9d6d3c64361";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0b7/linux-x86_64/ne-NP/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b8/linux-x86_64/ne-NP/firefox-76.0b8.tar.bz2";
       locale = "ne-NP";
       arch = "linux-x86_64";
-      sha512 = "832b0d811e6adf9f0539f359f3b13d3e0f8fa8583e3d862979e6c44d3da94b4375c5ccff27ba9dc23936dc666fba8cbf1e55dfd6b8bf563f9ba35dc46d600502";
+      sha512 = "093ee3c1d513adaff69bf84f5b9236c245c4580ae25f7caa642be239a591ad9242b329f15e2dde0969d12223cb6ab8decfc657ca440e344a87e42dd880450adb";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0b7/linux-x86_64/nl/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b8/linux-x86_64/nl/firefox-76.0b8.tar.bz2";
       locale = "nl";
       arch = "linux-x86_64";
-      sha512 = "436421d93e8daf719fbea0a0e5f71163f150091e00ccd2bf64f9eab9be8359247c57fa7b66d16786644f9d96738d57316b75feff4da1a2a75f5d4a302fc6cd08";
+      sha512 = "e912de72ee10ac764cccf1243c0c1f8fcf159d6ade88c7ff575a5f7a5175efe8086d8b4ad4c9a72cd65d59186665d0e11abc4399b0692428bb8c93d025de2f9f";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0b7/linux-x86_64/nn-NO/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b8/linux-x86_64/nn-NO/firefox-76.0b8.tar.bz2";
       locale = "nn-NO";
       arch = "linux-x86_64";
-      sha512 = "cb3cf186419c3303cacc92326d901a4f1b79991ec5054a8438047df06e052ed981eac7cad8a6bf5a360c673f232d623ad40af83537de962caa361e0e8839210c";
+      sha512 = "52c57e140593211af5abdf729d4dd45be242539aaad4688ab081d311804d56afe05ac6ae3e21c439a560f5213e49abd1ae0e5650f091215948ca514ad3eb7e20";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0b7/linux-x86_64/oc/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b8/linux-x86_64/oc/firefox-76.0b8.tar.bz2";
       locale = "oc";
       arch = "linux-x86_64";
-      sha512 = "28b65b10cda0c34ec99975d3612576619a897eb2bff5ed215068b133c3c32793810994cfc15877529fe1fcdd9abe48001a873ad929f1f6578a91dafb075375eb";
+      sha512 = "d249ab86026370ce7f417ddb7d7cc0a4fc58563a1c12388a4e1628938e3af8a1428f2e43cf7ace0c9e455e4b4999942221fc3d96723bd927c50f7e45c7bc1a1d";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0b7/linux-x86_64/pa-IN/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b8/linux-x86_64/pa-IN/firefox-76.0b8.tar.bz2";
       locale = "pa-IN";
       arch = "linux-x86_64";
-      sha512 = "a4068e759d8af078c3e7f9cf58c00c2fbebe09fc2c204373d5850d195c9d6923721d43091aae2cd27430967254a16dc3f1dbad44da9eadd3974f5b38257a21bf";
+      sha512 = "7d5d1861559627f9a77160106dd5c527d09656be5586791c2bf2a61292b1cb1150c545ff1f39a6744453af58bd44777b9668993a10e654ed4c8edddddec12467";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0b7/linux-x86_64/pl/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b8/linux-x86_64/pl/firefox-76.0b8.tar.bz2";
       locale = "pl";
       arch = "linux-x86_64";
-      sha512 = "49e50aa82149d9c0bb06d6351326c43a08198e321cda4b8023b02a48d53931447dffe70c3fab55eeae979898749cf884b57a4b49bcdc223231ba9034ed9ce089";
+      sha512 = "24a419ca7b8c82112bac80aa9d956f3198cb324991492f9f66bcf0d64fcbe5618a2e654849dcb5794399dad32de91bf48bd3bba70003e02b9bf28634b8d4b267";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0b7/linux-x86_64/pt-BR/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b8/linux-x86_64/pt-BR/firefox-76.0b8.tar.bz2";
       locale = "pt-BR";
       arch = "linux-x86_64";
-      sha512 = "0c2b334dc66242cf7653665a66536b23be1bcf5b8e8278714b437b894f80a679f13bc92e409ff9674f60015c8046e97b9847f4d613eecb64787b766898bdf9e3";
+      sha512 = "cf33be7018dfffc891e4cac9950ead0274957b9a44e27bd7924abd62f93e69b575dbaab1a663ebf829a05283f957dae0a7442abe76e8e1a8a6e35e12be6e2821";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0b7/linux-x86_64/pt-PT/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b8/linux-x86_64/pt-PT/firefox-76.0b8.tar.bz2";
       locale = "pt-PT";
       arch = "linux-x86_64";
-      sha512 = "ecd47ca036187a034913b59510081d009b6932e8e7d328ff917aa99c717523da96468f843b25e5044dafa15d1858e8331d6558dd344e31263de27d0dfd76c2c3";
+      sha512 = "c368498ffa8eb48801634fa6b50a74a563a28d4fcd23e4634eea52fb6ecf2872e4cd91aef5799afd8dcbf6020c7f694dd3eeff1197c3cfdac63bd72acfa7d7cd";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0b7/linux-x86_64/rm/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b8/linux-x86_64/rm/firefox-76.0b8.tar.bz2";
       locale = "rm";
       arch = "linux-x86_64";
-      sha512 = "fd6d6db19134f494e72991f300e1990b78db9391b0a3a447eccc57add51ba7a1008a492532149d39afc561ee188a7836c3a0fc75c222c59400dbf60dc28080ae";
+      sha512 = "d2064ab0dba1c122a599954efb01e4a68f189a1ce1d5059d60373e8c4b89c860d6b6a68c1e58afebe65107c3f8c5c5f87e771cad61efe7449e86f8ce25bacc5a";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0b7/linux-x86_64/ro/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b8/linux-x86_64/ro/firefox-76.0b8.tar.bz2";
       locale = "ro";
       arch = "linux-x86_64";
-      sha512 = "62ec3ba94ca44e2ca92fb0dc02834d39b91f7a1ce6446407531019332f1b9d129bdd8ef9de7c0cc26cd8857ae82d03539f7d0f2a51e5f755d4311fa3ae410eb5";
+      sha512 = "64d566ac3acb823cc062dddaa33e1ae321edd3a4e54b02e317a04595bbc145ee4cd06f3f84b20d1853ad6d0eb4cb7b13bb10bfc8383799264342a409e2254dd3";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0b7/linux-x86_64/ru/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b8/linux-x86_64/ru/firefox-76.0b8.tar.bz2";
       locale = "ru";
       arch = "linux-x86_64";
-      sha512 = "2b89defde47592774464b8570b81636d94d77a891c22e353e5bafede7c370b4331aa8aa49b2701239ca58eb8d08d74a7525661a57374f1686a427346fc425f9f";
+      sha512 = "2240c612c9d746774fba47019068391d6e08fc4933b082670269cab1416ce538b2bf9b948aac994e81a31a52b91a11df6968b847ce0e843615a75b8841443c23";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0b7/linux-x86_64/si/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b8/linux-x86_64/si/firefox-76.0b8.tar.bz2";
       locale = "si";
       arch = "linux-x86_64";
-      sha512 = "8a86deb917486f679316b9f8d2d7bc54ea175d87f972cd9697d1ddd3e1fc357059fb6383a777d409d5b3a110ae7f74505e327eace3593ec4b4fb35290edbc0d3";
+      sha512 = "f579d1d21cb45d91394b9a08e1b960a43ddadd7040e417c20e66e1dd4d3f7ea3a8963ab8334e49cb22ad6eb2ef81ba98eae1298acab3abfa512fffb6024da622";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0b7/linux-x86_64/sk/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b8/linux-x86_64/sk/firefox-76.0b8.tar.bz2";
       locale = "sk";
       arch = "linux-x86_64";
-      sha512 = "ea15d6e49b8987f4c6136de6fec19a627d71434378f2839046a3fe443ee340a925773bcb09c5dfd3779cd1118aebdac808f54c5872245b11ab882564f81467aa";
+      sha512 = "6d2436ef789404b6d7247ca222cda81ccf518b91bb854d7f53b6c2c1c68b96cf5785bf6b768e49a0b0a4db02fc899c72969ac0c1441ad6bfb8ddb944e2388d8d";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0b7/linux-x86_64/sl/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b8/linux-x86_64/sl/firefox-76.0b8.tar.bz2";
       locale = "sl";
       arch = "linux-x86_64";
-      sha512 = "3dd20c0ee05318cc7f80a27d895af4952bb13b8ee3af1fd733a0bc03902f470fa31fd8b3231d608e76df3885c6036f27ddc5241bb889fbb43b09467d34fe77bd";
+      sha512 = "4ed452c03a08506498ec2663b6fab477b2aa52c9505085b493d799b19e5215ac72a90ab642ab2ba3520c609909b93a5b176d5f13c79066598492e7babd94ecaa";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0b7/linux-x86_64/son/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b8/linux-x86_64/son/firefox-76.0b8.tar.bz2";
       locale = "son";
       arch = "linux-x86_64";
-      sha512 = "513c17a2d91d28f5ac958d45f872a931b3f3db198355a70b72e0238938811e2387fa5d15b0106feb3fcaaf455e19e7603c37b27dd39d8d81dff4106face87481";
+      sha512 = "d3c77c8a85dbb280f75068ca49891de95fc081b4074cfbd569c773fcfd4d0b017e2b734a6531dabc41dfb3e3f7accb51d47e7cfcff2bae6f230fed8d69db2073";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0b7/linux-x86_64/sq/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b8/linux-x86_64/sq/firefox-76.0b8.tar.bz2";
       locale = "sq";
       arch = "linux-x86_64";
-      sha512 = "ce96e1f7f0f0152afc053d4f2ae2c8774cd79e12ee250de311fe39c22b933fdba701dddbc2430c5aaa3ddef8d4920c2a04d9373fe8e8aab7a3bab9a6863ba68c";
+      sha512 = "94aa56c2d731533105c9e1c7d20862ca9cfd5729fd474b2ca784e2528f798915e9dc177e5966e2b5bb77d6eebc7962e6564f1494ecc284a91175565d25451cdf";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0b7/linux-x86_64/sr/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b8/linux-x86_64/sr/firefox-76.0b8.tar.bz2";
       locale = "sr";
       arch = "linux-x86_64";
-      sha512 = "67691bade82b21bffbe312b6dd3db5c7aab2bcc28ec59cd0ac378ede98d92c15d98b2c4ccdd6d7bcb77d88f760e7c8880d3db5d93286cf6a71a79816adcdb0ce";
+      sha512 = "3785e6ba189c2ec41f56282ca8925c8eb14d68157c5c035e90fab09f27941e67c9286298c07c31ab0792488f2cba86bce166adf76259d10cc3007f5047847392";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0b7/linux-x86_64/sv-SE/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b8/linux-x86_64/sv-SE/firefox-76.0b8.tar.bz2";
       locale = "sv-SE";
       arch = "linux-x86_64";
-      sha512 = "5e890e03090c8d3317f8910c16602e9d26df02d91a05159d4610a3b8f0c3b8a026e6256c59406d40d979f93a20f162e1d344d6c430b33e86709dd66b211246ad";
+      sha512 = "a98ea8c31d5e6ecf3d3c4b0def2d2921aacd901d095ab53aed1da202937022c073834fcb1d3ced826c294c18660d2e4888473b2f8f9e91083bbfd0e040fa6ae5";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0b7/linux-x86_64/ta/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b8/linux-x86_64/ta/firefox-76.0b8.tar.bz2";
       locale = "ta";
       arch = "linux-x86_64";
-      sha512 = "30a030bfb1e92f3375411c9bd38b8c75db01783ed45bd6d1b3919442bf386ffbabca7a3064ca22800e22b9255b81d415e8487f00a50e0641c9f8bff297d0a4c5";
+      sha512 = "5c64882b2fe34cbff29ebe7668ba96526abfe29cc599881331e048da2655ec735f8425d98f64475073e86508626b464364e3a7212b44ac297e6a50c7fdb5b4f9";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0b7/linux-x86_64/te/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b8/linux-x86_64/te/firefox-76.0b8.tar.bz2";
       locale = "te";
       arch = "linux-x86_64";
-      sha512 = "bc2685e7a6e4e1e744367e01222b192cb35a5cbbc0e5e5f8e3c03e9ef8dd54b599f854bd045d03b02c2fadc36bd778b9f4c72e660357f96e7fe8e49a9b555331";
+      sha512 = "1506161ae00a4fa203cce5b31779a38f0e7df94021123cbd57197cff807a4a6ab2ee9907240b70b55e6795574b4074a83bd692d2b4ae208438a12357d6a898d5";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0b7/linux-x86_64/th/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b8/linux-x86_64/th/firefox-76.0b8.tar.bz2";
       locale = "th";
       arch = "linux-x86_64";
-      sha512 = "8cb0fdf71183382c11d3d8244cca52dc9ab1d95a929809e016867ebfdfe1e9ff722a6a54d8e829cd659d218097df8ad503286fa2d60aeab0bc29d514cc1cb304";
+      sha512 = "97950bd4c56df1defdcc7f6f1693dd6fd0065805d63145aca80242e2d5a83186585dc1a165e7fe9a0dde52a8f60fa6b32ee097fe0febdbac5937a410e654b20a";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0b7/linux-x86_64/tl/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b8/linux-x86_64/tl/firefox-76.0b8.tar.bz2";
       locale = "tl";
       arch = "linux-x86_64";
-      sha512 = "807581a2d4f4b87938058ba8173cfeb944cc54790c01d6477fe9a9b75848341f785768b4b011c33f3010ddc02fb1937cceea27a8260e3d53c386acbc21d7152e";
+      sha512 = "994980dc3ad618140b0b422db46cf19cdaeb99c4d3202c426c415494812b5cac525b43c4b290fcb58ea66ab9330680c4add11e8ed92a5e36b7daeab19c96b4bf";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0b7/linux-x86_64/tr/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b8/linux-x86_64/tr/firefox-76.0b8.tar.bz2";
       locale = "tr";
       arch = "linux-x86_64";
-      sha512 = "089f764a47b35d5a96edb36f3f056fefd2a2e649036b713a28a482a5cf5a61f5ccadd5e8f20588a0c40bf707f556ae238688b605db189e9a1efc2dcb7d9ecdc4";
+      sha512 = "65558235961baf87812242607d8b77f6e843bc5828e79002d55dce462bb2d40a00ccc97a9e83de56777d1e0ca35991a2c577ce40217964c481930a4081955289";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0b7/linux-x86_64/trs/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b8/linux-x86_64/trs/firefox-76.0b8.tar.bz2";
       locale = "trs";
       arch = "linux-x86_64";
-      sha512 = "35622a3df18be8710530531cf934b5d3c79b942e4f1024edc75b810bd71d45d52ce88ef051fd051083f45b50152602b76d854d2ae56bb64a38739be937884a87";
+      sha512 = "cbc3c626919406af47ea8a00e01fc8146838042a8b7a04fde88f39e8b21bb3ec8c15b9ed2b327f5df1bae621427c8c2917837a29c95f27b1bade9d82e4eb93ef";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0b7/linux-x86_64/uk/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b8/linux-x86_64/uk/firefox-76.0b8.tar.bz2";
       locale = "uk";
       arch = "linux-x86_64";
-      sha512 = "77a2383129c6f60f77458e3e17bc57015f91d8f58d9d0211dda918d075b57398d7cf80cc2409eef2c6053c843667e6b094733026533e5ae665845bc925a67f40";
+      sha512 = "70ac4bcb16191992de317cc6dbe2f3e8d6ccd0b7bee0568d7a2272429bf164610621f53d6d3817ab6b3c7643d63db243273f6e99dfc5c5133dab4645f9824174";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0b7/linux-x86_64/ur/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b8/linux-x86_64/ur/firefox-76.0b8.tar.bz2";
       locale = "ur";
       arch = "linux-x86_64";
-      sha512 = "45d49bb2de384d12749c45f02cc726627123f9b50f920f144a2aebae694407226497df5c0273eda168f11f2adec22495cafc82c114f711c858b9b207d997e1f3";
+      sha512 = "e66011a9db9ff2512dd3b2a338440ecf268141200754b0dc09c484d1504534b109aeb83364181b3bee7b534ea078c879ebca1860af63c388689517397055f670";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0b7/linux-x86_64/uz/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b8/linux-x86_64/uz/firefox-76.0b8.tar.bz2";
       locale = "uz";
       arch = "linux-x86_64";
-      sha512 = "14bdd8d672660b0cfa8099276870e54b725d1effdd7128666dc77e942c7295e466544806ea134d48b56e8c5b37518876c5a14c79419fa232f30e35cadc217948";
+      sha512 = "e09d595c56d8fb54592a046a6e4f9868a1bcb2bb638cbecbb87f94000127d0f3acedca67ea7f8db15445cd2142052873bf73ddf4df2fcea16373c614d6501728";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0b7/linux-x86_64/vi/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b8/linux-x86_64/vi/firefox-76.0b8.tar.bz2";
       locale = "vi";
       arch = "linux-x86_64";
-      sha512 = "3633f9e834c5ff0dd0a888a35f414d87ca35ff0acf63fa41ca4169531f20c21a7debc649c583ed2826b1217b209e42355625a7d822c8e354d4d973aeeb07c359";
+      sha512 = "04d5647b360d52ddb714c25443b55558b3d54fdb31a385513832fba336e7db28a8dc27653ceef32e72a4dac7cb771e82178b6161b55917c07da839e80523a8bf";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0b7/linux-x86_64/xh/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b8/linux-x86_64/xh/firefox-76.0b8.tar.bz2";
       locale = "xh";
       arch = "linux-x86_64";
-      sha512 = "b49201efcbaa9254d94940d87529ea15c1ec18682098e46bb4c6df96d20396e6884538bd93ef79a0539d52bea808f9c9e621f4a157b0fa48310bc89ecc659052";
+      sha512 = "bc564788b8fa57981b7963b584a445d69e4c198ae83d8d6ae1a5e4402796492bc2cf92d0119a9db067f75577240b0e9d6afb2f38fa94e3e101ce6481b8406fe2";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0b7/linux-x86_64/zh-CN/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b8/linux-x86_64/zh-CN/firefox-76.0b8.tar.bz2";
       locale = "zh-CN";
       arch = "linux-x86_64";
-      sha512 = "5d00ab9e02db12e34a69d5a8301075f695e103c73bc5d3942e8aa6312010fd9bcbbfae2db19dffb12e369e4abcda0919842a839eae48e27b63a9a40a2d152943";
+      sha512 = "38fc3b4eef5cc6ffe867665d82dae4156ea2676749a9dd0b15bfbd9e01798829570bba75e0023ffdcf9b104ebe85911586eaba95868ab0773b22e121fc75679e";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0b7/linux-x86_64/zh-TW/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b8/linux-x86_64/zh-TW/firefox-76.0b8.tar.bz2";
       locale = "zh-TW";
       arch = "linux-x86_64";
-      sha512 = "8b5c6e59a6a93c1e569ab0549deb0ed529ff7463b999c39e1f737805d71edab8553bed6bce5335aa75657c1356fb847d8389829f74e0d8977765fe6b5f7ae615";
+      sha512 = "73477a782280c18dd42d7d62e26cfc5674201d3904d155c2ac712251ef8b65f422b522804104d7374865cd7e8286a8ea9291cbf7da37d412a1cdf8d24d18a3ae";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0b7/linux-i686/ach/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b8/linux-i686/ach/firefox-76.0b8.tar.bz2";
       locale = "ach";
       arch = "linux-i686";
-      sha512 = "4182a91809587cb00b5b15cf244385625dbd1043f64ec67719fd4532315f02983c605554fcec94e3ac9e152c5a69519b9f3cb274c4dfa4850b509669214ab970";
+      sha512 = "a35694c831c424eda7b6e5069c1b03d1e6b2fba051b3a29a7e8ebbded9b3b12fc1fbd39131d86f1c0d28a728a9ef2b7c8f903f6ba792d522c5e96490cf68563f";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0b7/linux-i686/af/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b8/linux-i686/af/firefox-76.0b8.tar.bz2";
       locale = "af";
       arch = "linux-i686";
-      sha512 = "37505dd57623b9b8ed5c9481b3c355790f4a83758629fecde8f286126455f83b4908f0dcafaa6b53a78ac2d1c0d77e8f8d3721d3677461729561b0460c0e3da5";
+      sha512 = "9fdc8e1e39d2fb69d3afb64f676fa85fd674b45eb86d4d4735df403bca27eb499be9e7a6f5f9e67cd3e588352adb29ee805b403f35a859c3226507684a69ecc2";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0b7/linux-i686/an/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b8/linux-i686/an/firefox-76.0b8.tar.bz2";
       locale = "an";
       arch = "linux-i686";
-      sha512 = "bdf45ce1f39caee0addced219c3702e888d749249c81082f0fd851375029557c995cad40bd3ead24aba1c52b96b440b3004b43994a4a9268c1bd041a7dd92e07";
+      sha512 = "1da6aa658841d59069bf57960f9c5888e879056777e4c227037c1745648417356bd87bf062de6afe41058a290998e7e080ea7fec895cbc86619d0466ab0bf64a";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0b7/linux-i686/ar/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b8/linux-i686/ar/firefox-76.0b8.tar.bz2";
       locale = "ar";
       arch = "linux-i686";
-      sha512 = "c69b667ef5066064fffdbe8adce20784c23e0985e30490d4ab7905da6cebdbf49557ddc321221130e6e7af63753bc7b9bbd290960ce1b86591cccf0ec53fd171";
+      sha512 = "8cfc1c08b728727053277a60c19e289f0d0407e01cb2da5632cbbfe5ab48f751298f4f83930dfd5907d4be8973a4aeec3f3a719dae16827f48f0eb0d4151cd03";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0b7/linux-i686/ast/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b8/linux-i686/ast/firefox-76.0b8.tar.bz2";
       locale = "ast";
       arch = "linux-i686";
-      sha512 = "a697e44af702f500d72e8142cd76230b886b893a310dad7136b583204f8201b0718b97f5b11cbe3af4baa0e95f46fe6f1e69ccf4b9ed42c34d782c320d6d2f19";
+      sha512 = "96c7451450e0d6e133a6576b098b37dfab5059240a6107fb95be17a82e9600ffc4003b60918f4ccd8907d8aef814d55a79a61107504f41fe086fe3d6c83232b1";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0b7/linux-i686/az/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b8/linux-i686/az/firefox-76.0b8.tar.bz2";
       locale = "az";
       arch = "linux-i686";
-      sha512 = "ebe0786c3790da17fc1dd5ca0f10ab3fb854e90b08c3093aeb14d5df09b58d8ae0954b7bb99d159736f0cbb70391d81a47dcc9e229b02ed5fbb2b9ac7e19cda4";
+      sha512 = "0211b3ff84eb9e7e9f6a0c81a141273009a2afc7ff237bdad751bcd68a24b60c9e9c896a836068d3373f0a0e6469fc77ce8f502197cdf9701ba033ab63eb5e03";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0b7/linux-i686/be/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b8/linux-i686/be/firefox-76.0b8.tar.bz2";
       locale = "be";
       arch = "linux-i686";
-      sha512 = "74003379f102a2c8c8079eab756afe16ab1037d985fbd266bfc80abaa5ce6dfe911b20ddcbe5dc228e87dcda4f0f7f874cf2dd762dff90c89c5e865c77304d1a";
+      sha512 = "e268741abb735b0425d42fb21a1a70b7035f915122c64e45418f2e61a3fb5f9c123b53e93979c96e7a183b8511cfeea4c3c6e3af87756622f4f8d049657a7a4f";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0b7/linux-i686/bg/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b8/linux-i686/bg/firefox-76.0b8.tar.bz2";
       locale = "bg";
       arch = "linux-i686";
-      sha512 = "71ad6c25955e6c840e583ad8a7f83c5de21445f0784c36f2073e42a036a16e58ca768ba43468bf5432148ff6d254b5cc547341cc38dcf844c7f40c3225df21c1";
+      sha512 = "3de7753956fcee2d2697f2c8a3cde18719621ae4c728b190d43b7e936c39543d6d6dae3ca593698931fb17b0270a19840377ec9392d1eb8bc591dcc7fc915404";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0b7/linux-i686/bn/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b8/linux-i686/bn/firefox-76.0b8.tar.bz2";
       locale = "bn";
       arch = "linux-i686";
-      sha512 = "840e225c9112502bccdda79146dd5c9b920f1eed97afe7423e539f750f02a0b343bf3313ba8826145efdf318fdd17bbff5de142fcd3e1178334af55fecec67dc";
+      sha512 = "ff9b2217e043c7cbba98f9993c729d23dea838e6f120c6adcbb4d03ff127484111ac2be2426de2134dc914aa765550ae62a464822ed31b24231fdfb50d295610";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0b7/linux-i686/br/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b8/linux-i686/br/firefox-76.0b8.tar.bz2";
       locale = "br";
       arch = "linux-i686";
-      sha512 = "6dfaa0af20e6b874fe675b879da9e7edb80b0486ef283d3e957be8d7804781c083f9ee12c9b5da758e9e38806cd35cc0ec78ea3aca3f7e2dd994e6c06c167abd";
+      sha512 = "805d85cad7af9264c1e8e3534b6c6248573ae445410616a8d74402cda2273b68dfeae4d47240e0247fb29b56bcf6f2d627f4a872afa8eda3d8156f14bf8851af";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0b7/linux-i686/bs/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b8/linux-i686/bs/firefox-76.0b8.tar.bz2";
       locale = "bs";
       arch = "linux-i686";
-      sha512 = "ee62dbead4c185915d72facdb7ddfd42f6e543d3dcb48ede83cb0026581e0b4236e3b29c89053c302441b51b13333d3cc46500eb389fc1c72c7d467da0f21d06";
+      sha512 = "40f56cc3fa11d85b7e9e8d770ac5bec91ba5b8203e11a0cf898ef6bc94d58ddc73d6919e5c56a2e79a846393f28922233211784e693f3da63ae9315f3befc80d";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0b7/linux-i686/ca-valencia/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b8/linux-i686/ca-valencia/firefox-76.0b8.tar.bz2";
       locale = "ca-valencia";
       arch = "linux-i686";
-      sha512 = "56ef6d6859e260058cdcca261452524eead1cd1f57811f64776f3703e16e44599c665c2071f1c29188fbb5f02481467d1bb569722460970f951f7c50ed44f2bd";
+      sha512 = "00dafbfb3095d7b76d1bf08bdbe5e99cfd207b39ae2a787eacb39ca412f1b2ea7c4fade4c99715f44cdd774823c4929d0efb65b40757f1b86faec738d4f11493";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0b7/linux-i686/ca/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b8/linux-i686/ca/firefox-76.0b8.tar.bz2";
       locale = "ca";
       arch = "linux-i686";
-      sha512 = "32249eeeeb5bfd1155d9a7e8ec13d5da92a49193ff6d3298df01f525ff08186ca2a6e7e14bbcba048abbffa1fcad3ca0ee3394f8ee548b6470f9c961a26a8276";
+      sha512 = "24c21262e498e8840cba3f8411d8f46108f736f10bba2a0c37ad9fab6e0bc773f38ac086334d3d572e19223309e9d106035d3458e05c9b7b8db237b7bb1e1984";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0b7/linux-i686/cak/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b8/linux-i686/cak/firefox-76.0b8.tar.bz2";
       locale = "cak";
       arch = "linux-i686";
-      sha512 = "00b5766bc6b96dd85222d9a9e9ba58b22bd0f78d42c0ed929279242a3973efee0b7c6fbaa5b8796b3b6488a3c2883a06e221916201740c8352be134fa2f988ba";
+      sha512 = "fa849173b8af4d6be6a499734042763d2ac532e213cb863a611e66e405acb5df7a51649bb1f9509ec637e15c055fdaac63e380128290623b6d3818e528a9c532";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0b7/linux-i686/cs/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b8/linux-i686/cs/firefox-76.0b8.tar.bz2";
       locale = "cs";
       arch = "linux-i686";
-      sha512 = "2d6ffdbb0ac90d626f613942f3c1e474e39dd73c7f54ee9587882ef09006f78f5bc9e9738d25d63e55123c9e8652b4b5484e9881720e911f1f5e01d55209884d";
+      sha512 = "5b718c2dc82230343e35b8d45725e9f7c331cdf5716d973d671b7465e06d50e92e0a353c73c7c31c33cec1115b9332e2457f17f6e5fcf8f033bcf7e222802267";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0b7/linux-i686/cy/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b8/linux-i686/cy/firefox-76.0b8.tar.bz2";
       locale = "cy";
       arch = "linux-i686";
-      sha512 = "867b673671dbe387069de42909aaccd04f4c164ee73cd1ae4170fc0333c54a48ba557b2d3956b60953f39463b86a6d6525b2a5e325e22c22cfa3c446f7fc3340";
+      sha512 = "7b037bdbe658d26c2ea75b8da80b4040b9a0c4cefc00784bb94512481de435463605c565eda38f0e958725adea11f09a9ec5a37d9513c16118214d0486db9031";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0b7/linux-i686/da/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b8/linux-i686/da/firefox-76.0b8.tar.bz2";
       locale = "da";
       arch = "linux-i686";
-      sha512 = "d0cfbf8493cb53096d1667b2a453b569c1ea9fc3815f95de9128fe784416671ef770fc3e70701ba0a5a935563b3b055cf3db5cd849520ec2d75d52527111156b";
+      sha512 = "9752b73c59784ea54a95b0bbf63123ebbbfdfb7d2742e3418a872982c0d8198fc0450b3c33f4fc569fcd43a633cead3ea1893057b6d7e8c6ab78632fad3555cd";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0b7/linux-i686/de/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b8/linux-i686/de/firefox-76.0b8.tar.bz2";
       locale = "de";
       arch = "linux-i686";
-      sha512 = "c52ec2293b4f7d61ddf1860a63d76e01555023f203420bc6fb53bfb24e407aefb4276896b343bfea2517bed9674fb39431bf1a38124288b6376d480b9432a51f";
+      sha512 = "067ad7a8a5a4c6120c1f1be2f9b4066f1ef830e3cb49ba850478d18693c8e4ab12d54a07036d23ddf3e138837320728f1fd6bbfffed760b530d8ab6addba6b20";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0b7/linux-i686/dsb/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b8/linux-i686/dsb/firefox-76.0b8.tar.bz2";
       locale = "dsb";
       arch = "linux-i686";
-      sha512 = "9ad7846365072c32a841f30e1c040c56144e95fe4d9f4cab9adb282ce9a5dbd481d498fc71b0330feadaa68f23a35ca512c1ebe3d07f7a4032567a6225c875c9";
+      sha512 = "9f4b6f73a3966a7aa60c168c16d88382dcfb278f934f3fa485e691a6b6af43a14f49395a3f8177b4ca9802275706b2cf701aba2310262149b0bb42cf6d096c25";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0b7/linux-i686/el/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b8/linux-i686/el/firefox-76.0b8.tar.bz2";
       locale = "el";
       arch = "linux-i686";
-      sha512 = "526d4562e8b1e239b2e15ab89c90646fff6b85daa309a9388dfdc60c4be743ce39a03505af58f827e9549fa4b8e658bffa2a5a7f22921a94f54c1737b6df11b0";
+      sha512 = "43a0710f463542a1389e98b5993d1d1b35f443f0a0ccabca65ec5505d19c28311d91cdddee4f9c102b6f4a25a87e4c2c6ad7be89252f60a724c7af935e30f675";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0b7/linux-i686/en-CA/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b8/linux-i686/en-CA/firefox-76.0b8.tar.bz2";
       locale = "en-CA";
       arch = "linux-i686";
-      sha512 = "6a7c18c9581327c40f128acc56e8a9f4c7575b85472ebf120047d3f5abb220fdc03f78b5a182c9e3ac93970d24ecec3a57224cd02ca2537ab5b86e594cb7bc2f";
+      sha512 = "6717d9c590e5f06d3b02f643ad4eb27f48499ca759c41144aa5e0351e478bacc54163378faedd731042ce56ff5e8f55b2c6b6bde7768d3576b70a0abaf4c91bf";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0b7/linux-i686/en-GB/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b8/linux-i686/en-GB/firefox-76.0b8.tar.bz2";
       locale = "en-GB";
       arch = "linux-i686";
-      sha512 = "48cc9068571767366a5086f340a5d4566e1d8261e4bb715fa3463106db4c02a5af316b37775e4720344ae2068eb35fe004bf893ac1ebe923336f13978e2ac955";
+      sha512 = "320a50b2461d617962093c1d7eea94517c56a93d6857a4d4efc4183e76f24dc9320619f9c3143c9dda017ec5e8e3d71c730a27d532bd7141c750598edbcb0121";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0b7/linux-i686/en-US/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b8/linux-i686/en-US/firefox-76.0b8.tar.bz2";
       locale = "en-US";
       arch = "linux-i686";
-      sha512 = "e50c0d061aba197a2f2e153731dc5169fab02416733669a593387338a1acfba1bbaa2d26aa0ffc75fc972524ad70ceabceec30912e06cb827a25036607acb7d8";
+      sha512 = "ea7f210807e2306d3578c39d1d58ce12525c47cb9dff3198dc9153683f8e49229e19dfd9fcfd3d76e109cda4f92392e4f9f1fac2cffbd59e6430105ebfc705f5";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0b7/linux-i686/eo/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b8/linux-i686/eo/firefox-76.0b8.tar.bz2";
       locale = "eo";
       arch = "linux-i686";
-      sha512 = "23586c04536846ef9b0750fde66b04efa265f97a5d8c30c7f5e435010b80b0d6556caa9b6c579126080fd3d58abd957dabe5723779af1936ebe4c21c185d333a";
+      sha512 = "bd1dbf20cbd4aadef8bafa74f308f097b5dce955ba7f2299cddcb1cc9cc9d8805e399684cbca1af750535ba0ddc939757f4d38331035e4a708ffe1c252da9c82";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0b7/linux-i686/es-AR/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b8/linux-i686/es-AR/firefox-76.0b8.tar.bz2";
       locale = "es-AR";
       arch = "linux-i686";
-      sha512 = "6d2c87e248b8e4e395af916d6b91eba9451e1b6664b31d843409b06e4589daa044392a1f4f31cab9411350c753d21a817411cf7149dde4eaa87ec20ab724f63f";
+      sha512 = "1e7a48ba49c4f96ff0d16efa3798e4254b7f38f0da8f51e62a4bb71c13e3f066a64c2c6d778da18b5db83da52684dc39067f6c765987d95921df2b3118de2c6e";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0b7/linux-i686/es-CL/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b8/linux-i686/es-CL/firefox-76.0b8.tar.bz2";
       locale = "es-CL";
       arch = "linux-i686";
-      sha512 = "b9576b60cb40716707c5037de36ce278c9d8410bdb68ea0e1bacab310e8c0679fe80d0a5ada111e9f605a4eb313a7d7519fde7dede3de43eed40cd88386f16ec";
+      sha512 = "9c7e6456459a4e2b6c7aba254afb145ca3c8efa4023f7e023c3cf326b0e0afd88149888265856e9f28179b686e1a458d453acace73f635a5fc8c90419e6fa043";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0b7/linux-i686/es-ES/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b8/linux-i686/es-ES/firefox-76.0b8.tar.bz2";
       locale = "es-ES";
       arch = "linux-i686";
-      sha512 = "602e5a02e5a534650036067f87fb844ddc564aa54ee219ada4098ebd4e7c60635c59b0ec1435f2a7d963cf0fc35e0850e0a86007e4562155bc1bc07b78349e95";
+      sha512 = "95e2d89e0f94f9ac95489f8a084d0857aa5339c8257fc1bbe7c7ecba31694963831917461537cb12199fda05372e1304e6820683802efc0b4ec02324194ec2de";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0b7/linux-i686/es-MX/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b8/linux-i686/es-MX/firefox-76.0b8.tar.bz2";
       locale = "es-MX";
       arch = "linux-i686";
-      sha512 = "0088acbde6764febe9b37b8485110d34bf72c20b1aa4fa9435712c3b58609ac082c7d1ea203157394ecd9d7609f35fa05e784e6fc5273f14d8c216a392d4ce9f";
+      sha512 = "5fc41cbecc716fb024df2d13e9fffb2b656e18f47adcb496d3f8f3d61580f97fe801435240576f1403805151c7183c208425e83a2ac56373051f0e82031115ba";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0b7/linux-i686/et/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b8/linux-i686/et/firefox-76.0b8.tar.bz2";
       locale = "et";
       arch = "linux-i686";
-      sha512 = "a88ad46ba958dde4ce6589e05bb941707b894ac8b5289f7dc4763d5960a7a4754fbf5dc669ef8318867482a9fff61e711e2c13befc08dc1201ddf5c3273051c4";
+      sha512 = "16c5eb3e9739e100dbce0eb93f209fecb11b5b024ed62f18a47b00927452d8823b77a14fac1788d9c4bca9062e85e724a78c39630694b0d692b3867e4f62f7fa";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0b7/linux-i686/eu/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b8/linux-i686/eu/firefox-76.0b8.tar.bz2";
       locale = "eu";
       arch = "linux-i686";
-      sha512 = "c24c9ac1869ab82ea8ce162cf441e45356583e4e5466058460ddf925c25a88580bad7672ba82abad090faf29dc804e098abf0aba72f1cec18736bab1f3410c1d";
+      sha512 = "0352971bb2d43782052f20341f8fff0f6e919ced7909e6a860648e9772101e5f79bfdf0f912647d3593a0f6dc9dbe84fc193519c3b24ddcd13742f01ec59d1af";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0b7/linux-i686/fa/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b8/linux-i686/fa/firefox-76.0b8.tar.bz2";
       locale = "fa";
       arch = "linux-i686";
-      sha512 = "16e30c57680a2ad0c7557f4819a0aa28e4e066d3a7b39ef9e1b99fe69d0c8825120f086ad628f3cd0fb85c28d9059a9ead5f9dbc695777ad06bb7430857a966a";
+      sha512 = "4856a0b482dd0676cdb5d46de7bcd96a4c9aa61bd976f3b46205019493b8933c78d7b253c41f4c2178e2f79b000dea8a9cf13e1fc7a31a5242432e1c9205d445";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0b7/linux-i686/ff/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b8/linux-i686/ff/firefox-76.0b8.tar.bz2";
       locale = "ff";
       arch = "linux-i686";
-      sha512 = "e4b53574e12f35124c3fad67f53524b8788ed2625156fd5d73742414c179a71892732643cc9d29dae3e036820f1ce1701552a4ac29c2a9de0af89094e9dbd937";
+      sha512 = "e85757478feafe009085ff55492913944d5d8490426f93cfca481cbd97842bc3c6dbf709e17c372b5b51b14fea3b057415120b6fe145de928a108c7464de9af4";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0b7/linux-i686/fi/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b8/linux-i686/fi/firefox-76.0b8.tar.bz2";
       locale = "fi";
       arch = "linux-i686";
-      sha512 = "0005ff250d51f48dbac887e2a9c4d74253f4c01a8cd1f4fceceefd2596dc5290f24147f3ec7b7e4b487b7c6036c05a74025fc7f736daba943e599d93c9c5e789";
+      sha512 = "f479d48fd6176baf30b0d648120669ba47ae2ec5d681ac6b610d6f0b0a617a0f259db863966625376b63a6b871d56049adc500ce8e8e0e27da3520a953bf1736";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0b7/linux-i686/fr/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b8/linux-i686/fr/firefox-76.0b8.tar.bz2";
       locale = "fr";
       arch = "linux-i686";
-      sha512 = "419ed2989376b876c13851f98c4d278b79b81f9dd5be9c2121e2fc365681e7348e077f5e70013cfa8d271ce7d10cab487f1479c031d3a4d428885ae3614db2bb";
+      sha512 = "4caa574275e5c0756ae787e73398f73a2702b36d4d3f49d3a3dfad8cda8393cef24ec0375d65d0cee4f41be8fc94b5419a3b613dda287d884f8e7b6317e3fe13";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0b7/linux-i686/fy-NL/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b8/linux-i686/fy-NL/firefox-76.0b8.tar.bz2";
       locale = "fy-NL";
       arch = "linux-i686";
-      sha512 = "ebba32714ef12a12a7a1c1cc485cc5d0287c3d7657278a599f906cd5c214612bf1be0a786d2c8079b483406c4c1161fb96b50f046cd9c878bddae5f927453588";
+      sha512 = "28d31bc60979c84d874f444555e6157b906b9d34399cb87608099e67127dc7480d6789b855c38615b075f5b07f8a6b222f04dd99e5690ae36d56490953135149";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0b7/linux-i686/ga-IE/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b8/linux-i686/ga-IE/firefox-76.0b8.tar.bz2";
       locale = "ga-IE";
       arch = "linux-i686";
-      sha512 = "86d2d878625c230cb251f2f88dda89fcd82e6ab8535b1eb7476a11f023145c6d5b38f3615920b11079357e8af7ff17801326380543e6b0a5d9e4d9e1356a8ea8";
+      sha512 = "b83c50b728bb1e4febc53ceb3a4fb8a6589751b5ef77ef81f03941ff33d3e289c8986b501d95afeb56feb8f94be7d9a7b38e5330ca359543948d762e71402f75";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0b7/linux-i686/gd/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b8/linux-i686/gd/firefox-76.0b8.tar.bz2";
       locale = "gd";
       arch = "linux-i686";
-      sha512 = "ed5cfc312da1b7c336f449301a37b8ff6f5c83c8ae0aee3ef83bae8f3e4accf56da7680694327a5ae6294df7015037f31afdc30a409678406fdc83c821aaf490";
+      sha512 = "e1b2535e07364a29cedf36047b99dffeec8937b775a247b605532376b3a43a8c0037e2cc9a6a461a9b68e00eb67ac1d337bd40ee7110ce9890cf862dde3cfb60";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0b7/linux-i686/gl/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b8/linux-i686/gl/firefox-76.0b8.tar.bz2";
       locale = "gl";
       arch = "linux-i686";
-      sha512 = "701fe5b9dee8b64314b3e1bfce55ae3d1d33aceb871650098c8e10826f5e88e6c734698937cbaf2f0fbe07e2e6c914270842a3df399cdbc82a3556b1ec048a45";
+      sha512 = "776e2fb5cd75a8f5dd1e6340af21356141a24be87eeb6968ca926cb3d3aec1b48adde0881a7e4413a83fdf45f5caa3e829c0ca1754cf7176eebf2b9e3ccbb02f";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0b7/linux-i686/gn/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b8/linux-i686/gn/firefox-76.0b8.tar.bz2";
       locale = "gn";
       arch = "linux-i686";
-      sha512 = "40be9288775e6411f7f682cac10ba9d5ca3618a7b8d64086278c4fe9e2766c6bb24b5c1444d344643adfa93a2751f1855107d66b4b2260e0da3f4f473b71d2b4";
+      sha512 = "bd3bb0d416557c94a57c8b364ad08ddcc1885bf55a2435f5a2f74f5af1607a828795fc68027a470cc95bf46d553d84eed1c0af3de1ae9d72546587b486a1bafa";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0b7/linux-i686/gu-IN/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b8/linux-i686/gu-IN/firefox-76.0b8.tar.bz2";
       locale = "gu-IN";
       arch = "linux-i686";
-      sha512 = "057941bb40197fca1069bf7eb787b2bafcf998d1cc83af1b64abee3c17cb5a0b5d2975f4183ed33dbbc2c056e3e316f29b8aaf21f2c711b7a474000dc159d5b5";
+      sha512 = "b789f7adc37302354f797988e052957fd95f270dce838352636a367e03475ea92a740ab5ed49c9561eb5e90b106e38a767d6d3b4e8f1b3f07db7dada400b6aa6";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0b7/linux-i686/he/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b8/linux-i686/he/firefox-76.0b8.tar.bz2";
       locale = "he";
       arch = "linux-i686";
-      sha512 = "f75b88b8de0aca5e31594a592b3827d2f0925d9c307200dbf8c2cf0ea04239d371412daabecc29a689ce5cd273ffdcfcd40fb03c2e91fe9162fe48bde5178a74";
+      sha512 = "afbb11407ee19f4d3846673c451848ebd4efaf5795d1f864871c57f7e5d36d26e38c7107e326c5843109f89a315cbc38f25df1622f97d6c355f824d06986341b";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0b7/linux-i686/hi-IN/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b8/linux-i686/hi-IN/firefox-76.0b8.tar.bz2";
       locale = "hi-IN";
       arch = "linux-i686";
-      sha512 = "f4890834127bac76196e2b94461f28916b4467e35b43f40a6153e43ce90eee60903ac7d1d7cdbfc1eec8d27fa47e2cde6d2c95a1a996a5179b9d1cd9b160d927";
+      sha512 = "03c32d07601cf4b98d02495baf97b70a38a8e82abc8685ed507f0c9abb907468b1e8b8403b2272c9c06ea8b0cb020bb330f70f8abe5b5fe0c757fed710c912ce";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0b7/linux-i686/hr/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b8/linux-i686/hr/firefox-76.0b8.tar.bz2";
       locale = "hr";
       arch = "linux-i686";
-      sha512 = "ffd75c9101ebcea645f704c2fda287a7365f473a8d9efea75df889ad7a9d36c1c170690adafe20a1b2b09cd39014ea4913b440044d08b0e9c2f412dd17ed2ea4";
+      sha512 = "47c923096c22e509063298e9229f3b74df60142aec4296d7008b5e49c69ee9542915e639b52ef8aa65a7ab9f118d1d23117874a3b717b37930d8a988386b6ae7";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0b7/linux-i686/hsb/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b8/linux-i686/hsb/firefox-76.0b8.tar.bz2";
       locale = "hsb";
       arch = "linux-i686";
-      sha512 = "0c0912b483c984f6ea58e2a35f07a2932c3ea56e1e49324d979638ec8d6652d89c6690672f17dcf6ba4a751d8d2395b9a1e2a6503f3c8476f8e3a199e2ce3843";
+      sha512 = "2e2b3c390ad20fef9860c4e3516a32a66b091e1f60a0dc71916172de3a667cdeab3d712f8f2a5baef8857da3d9211fb7bea808b975cf3cce1920e8ef2d73614d";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0b7/linux-i686/hu/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b8/linux-i686/hu/firefox-76.0b8.tar.bz2";
       locale = "hu";
       arch = "linux-i686";
-      sha512 = "716dc8e392758954849fc7928864bed6cd0fe40aaa51872f4dfdbccb28edeed138b1eed6f7d1c401bdb7b080c7c5fbd0e62c0133bff270c68421fb48579783eb";
+      sha512 = "4c5e5fc5e859751cfdbe1eea6217b92dcd3bf2a30b4967965d0242de72deb6d497823b0d17c170be1e7113a15f9d607a6890a5283c47c254ef2c94022397b977";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0b7/linux-i686/hy-AM/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b8/linux-i686/hy-AM/firefox-76.0b8.tar.bz2";
       locale = "hy-AM";
       arch = "linux-i686";
-      sha512 = "bf28485aa9ff76aa20db8be6020763e46151d87d3e4f8fbe8c8e72af9e81198ec645d47cfac29254fe802304269fa00addbd75aac6fc2928880b92feb87e11d3";
+      sha512 = "6953bf0ef7dfb0b703d4aa1ab9c26b85fc049c12a04d669121e9e98005ae870d92df9ce16bd567aa1586d02162ee94fd01800d4d291f5a0c1b6e0cfdafd89c8f";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0b7/linux-i686/ia/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b8/linux-i686/ia/firefox-76.0b8.tar.bz2";
       locale = "ia";
       arch = "linux-i686";
-      sha512 = "1a3811dce3493851734afc5b955533edee0029783a5cabce62e72649a0cdadab52206dc72d414ae2b92f34b425f111bf5b399f07c15f7b5c81f7eec3ddfb82fa";
+      sha512 = "e7bb763c2049dfb8081384059313e977ca44eb3d147caa2fbba755e288e45d6ee5e47b6aef1267e23d4e8c6a625f9dbdda7b938a9183a7012b3d943b857645af";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0b7/linux-i686/id/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b8/linux-i686/id/firefox-76.0b8.tar.bz2";
       locale = "id";
       arch = "linux-i686";
-      sha512 = "67b851f947407b7735d7335bc3d9fad5ea736e9bdf03cde7a28b3854b398263ca6956c2baef014bd6969b254d203d0784afc53127f66270ab8df1922ea8f1ca1";
+      sha512 = "a4139cd488a85cd70e595bcbd3f8fce96fdebcce2c61c04c06b70ea0f2a99348ab69590f1ccabbf803798952fd436a30bf6c103beb3006ecbd14f70d6c3ecf93";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0b7/linux-i686/is/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b8/linux-i686/is/firefox-76.0b8.tar.bz2";
       locale = "is";
       arch = "linux-i686";
-      sha512 = "5eea1c115b5725fefaad5be3cd401fbac96ea50886ec3bdfff586cfb08c48b2f5611a797f476f34f43706c0708ef460e7b0b75e104f87ad358369f07743a9b76";
+      sha512 = "e485e4b6f5a8ae5fda9be8ebcdfa102bad2c55ccee6d9dfbaf2778f92c68e68133a26a599998e134314186b296df68fc0dba7c849a109f699d3198a2c5a31001";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0b7/linux-i686/it/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b8/linux-i686/it/firefox-76.0b8.tar.bz2";
       locale = "it";
       arch = "linux-i686";
-      sha512 = "0f44fdc04418f28d24638cc1893bb8aa6ca790e8afdf5d29da8b13e491f3acc53a0edc91c61679feef7eb4a2714308c36453f19a20c16d939dd7c248ba35dad3";
+      sha512 = "032e3e3b854a0be7ace835d71dfa864c0c84004c87ff09314615e633d64011f8676118ea73797b725bcb1c1e079fe632e16c15eeedf78602201c7ed371222e2f";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0b7/linux-i686/ja/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b8/linux-i686/ja/firefox-76.0b8.tar.bz2";
       locale = "ja";
       arch = "linux-i686";
-      sha512 = "e951694a4d8f1f9570a869cc5a0dcca733fa3d9c4089528ea55ee8ee70251dbc0e873530c87df293c2259dca59b8c92ae247897846c93b0f9e2b510643ccbdd3";
+      sha512 = "dbdf163abdde2bfc22f5574d2be4e3daea52c7cca394a9b0f1f1b8af19c65593383a112a2fc7dc55e224ea6f5d63537f03be8d2cf02fd3d3566963bd0d51d204";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0b7/linux-i686/ka/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b8/linux-i686/ka/firefox-76.0b8.tar.bz2";
       locale = "ka";
       arch = "linux-i686";
-      sha512 = "f4613efe42a9b2ac03d85e5d8164031d869d8e253c681f2d002e180eb2bf214a33671da7a39d9e0149ceef1ea27f783a5b69be7d2e02e0497c474b2149477f4e";
+      sha512 = "2cd1446890227f1ba4d7f50ef778731b350f694646b6cf33e1407325784b071db4bc2fe43eeefef2ed98ffc5353538d42df48ff8e546f4495a366d5acbc2aace";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0b7/linux-i686/kab/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b8/linux-i686/kab/firefox-76.0b8.tar.bz2";
       locale = "kab";
       arch = "linux-i686";
-      sha512 = "e59813d89542a9fc68291a3a8cb75de567b247142596147f54e6a2e83170444d684003274e449649055225c0c8b882d96924a265b8d2de98711299e21776563d";
+      sha512 = "87c131e32ad46194175e8ca8061cc1399813b2259c9c3e83e612c74bac27c9364cbbc63860c283eeb8416e3b108297ced4a1d9755c0a273c9143cc6b468f5cbc";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0b7/linux-i686/kk/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b8/linux-i686/kk/firefox-76.0b8.tar.bz2";
       locale = "kk";
       arch = "linux-i686";
-      sha512 = "b944ab903eb5b7075f3ea633e1ec40b4c688a2a97103f81ac80f6de77a3bfd4384de1314010b82937c986240e8e8dd40841a07c27e72c56b962a428aed24aa39";
+      sha512 = "6977a2478623dd8963121a1cb3da0a8669d1cf17357ed85475f61384a9e1ffc2c1b4286b3d7150386031786e365c33c188cded495036012a63dcf2db44e19d50";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0b7/linux-i686/km/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b8/linux-i686/km/firefox-76.0b8.tar.bz2";
       locale = "km";
       arch = "linux-i686";
-      sha512 = "83eec772f2bb78198a955dad41ad6d68d9247006bb3430bc058da6da2d0d42c4a691ae20a4cee1a7b8c3495f6b07c15cb1487e7e3d4b30b3cf79ec42ab76dfae";
+      sha512 = "4893ae9bb4695b227a6906db91c1df7997c866953ae3960a334856f9a1c99e05937518ecea2e59c5bdf12a4ccd3e644ce328e99294dae53d7a9d9a9f5e2e483a";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0b7/linux-i686/kn/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b8/linux-i686/kn/firefox-76.0b8.tar.bz2";
       locale = "kn";
       arch = "linux-i686";
-      sha512 = "f9f85e4a01b56b74c062b9b06a7a372426ab43ff2635fecf9b9eeb1c83d60682f17a19d1451e773593a0cefe15e39711a70e73ac3ce76a43b1274175faec06ad";
+      sha512 = "eb78a32ea736f139fe1c5cf0a1ae59df33272c6078e643a571968d0a5e4f3801c280aade938a5a714a7695700dbd2db84116f6e5ccbb7362d394ee929a2d9efe";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0b7/linux-i686/ko/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b8/linux-i686/ko/firefox-76.0b8.tar.bz2";
       locale = "ko";
       arch = "linux-i686";
-      sha512 = "f0da90b5634db1db5576b8506f208a7e3810473d63c78228833eadffb512b202dd2866fab1964150a271c61c869589adef317c6be82978d5caeae148058dd819";
+      sha512 = "3bc572b109fe9c5b14cb94d7705ab7fa972a99e914eabddfbef4901e5be9f058ee6412c59b2173fa0620166612c982ed6bccb1f4fd684189845a5446c93364ff";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0b7/linux-i686/lij/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b8/linux-i686/lij/firefox-76.0b8.tar.bz2";
       locale = "lij";
       arch = "linux-i686";
-      sha512 = "2d580111b1b20aade3eb7dfd607ecb7b7003b268dbad127eac13625d62396562c0e2d39f04597c1225f43ea84555307f9a3805df23743a1a5304175d5bd7a0c0";
+      sha512 = "9364ab431f931727157b0722ed021736bb8a2771a01fd8e12e616c02d7ff8a2ad23add11ea720b1d462e727df51c985b5fcad908307af04ffb57af5d25674c24";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0b7/linux-i686/lt/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b8/linux-i686/lt/firefox-76.0b8.tar.bz2";
       locale = "lt";
       arch = "linux-i686";
-      sha512 = "b786f7f6b5ec6910d994f48d625365a386ed461f86a4397cd9ab074b164ff30c2c88ab8d4edad93b55d082bc806f7648c048c4a76ec6a68dd18b5f65dc6c6e4e";
+      sha512 = "c2ebacf0d93c38d51d16cda493aa1152f8a682aa41b7f6626422596f21038ae16d3419873dd253f60f59971486568f3a71420df4d2c503a79aef80ec413adbc8";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0b7/linux-i686/lv/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b8/linux-i686/lv/firefox-76.0b8.tar.bz2";
       locale = "lv";
       arch = "linux-i686";
-      sha512 = "cfdf66bd7eef43a619cdf3cfa67fbc863a0bd886adde00d1d5286d17608f4e3c605001a0e5fff1b01fbba3f28b371cffca78b4ee82fe8f2c487e6df32c2d8ae6";
+      sha512 = "a1e0962bd4a10f1c1336650e97ce79fccfba6e752e2929156f60ae10a9b3a9e74b9e2cb8c265d7b1c242b2a34ec52f2368d07777bf7c687dbdd7914daae55c6c";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0b7/linux-i686/mk/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b8/linux-i686/mk/firefox-76.0b8.tar.bz2";
       locale = "mk";
       arch = "linux-i686";
-      sha512 = "d27d5ff71a465081b931ba2d3dbe8d69ff7e8532f630f541ffb24861808e43988e11f4fb3427809197cee3e7fc488dfa7bf0ea274b5aafd8e1bcf910b4e3e239";
+      sha512 = "e6b4cc5658ffdcc1a52979845abda4870917f8d036588daf1c1db93645696c85cbddc8a8dfcdb6f6166c43276ff52069c3c4289db38e9e98e7592b0d83fe3d08";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0b7/linux-i686/mr/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b8/linux-i686/mr/firefox-76.0b8.tar.bz2";
       locale = "mr";
       arch = "linux-i686";
-      sha512 = "b455f77ec2a081f4ce8f45e5bca6348c7b62a524e7d5439e1f79417ea57b33508aa97fa9fad149d207f59a8507dbf0be8fb18d19b72c822b030cf7061b0d5d20";
+      sha512 = "9d4cad2c1b192b199ac9a7c0ba233c0096546de7be31a21c4ee5789c82fa8fbaa5b9c5a37ac4001ef9bd774b62f57d33aa5760fbb0ee6ce60000f256e91f7054";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0b7/linux-i686/ms/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b8/linux-i686/ms/firefox-76.0b8.tar.bz2";
       locale = "ms";
       arch = "linux-i686";
-      sha512 = "a81696357fa5138622e5f2032ceb5c271749bf412d5e6e5b88087918397732727ccb57186193ff36e80f9109aa4b5c0313245c2bb62d73b6821e10f1ccaf64e0";
+      sha512 = "56d8a03ac84fab825c387ce84a45efd656abae43f9ea965ee45a09b417bb2634ed1f7fde0874294cb09ff3e3789782df7db19b6fce4598073a81854a91a6f800";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0b7/linux-i686/my/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b8/linux-i686/my/firefox-76.0b8.tar.bz2";
       locale = "my";
       arch = "linux-i686";
-      sha512 = "1c280d2d0b608b5c718a7c829b6b8a10f806d6206ca88d7246b4401d9c60c9905dc4aad659b4ffdd183897a3b7f497ce5adc963f5813ec498d0db313a6597c25";
+      sha512 = "a9768618490611f5073438986de4265bbc7bf3a2613f4314b78533430d1f830f83b7929c74d431d8bfaa2ee9d5ef64b189695ac838c52c5ee6dadde88d3a3606";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0b7/linux-i686/nb-NO/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b8/linux-i686/nb-NO/firefox-76.0b8.tar.bz2";
       locale = "nb-NO";
       arch = "linux-i686";
-      sha512 = "425cf32bb16362a3a7270413ec6c95ef81a1f35c3fe18e21f55773ae68ceeb9d07c3ef309e8593e613a0238a5946e1b431b37dddf7ce44c336b35ecdc4115927";
+      sha512 = "4a413a17a3796f4ba4b0b783c4226419f7fb800ce4965288129cae2f1f087a11226376764afe51e09c57a23a85df762bbe833d167a13b6c93c22fa378f0ae47d";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0b7/linux-i686/ne-NP/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b8/linux-i686/ne-NP/firefox-76.0b8.tar.bz2";
       locale = "ne-NP";
       arch = "linux-i686";
-      sha512 = "91abdccdcdfb2af196d5ee78837143d515198649c4345c9d19d79a01b35381e6fb813f9c99e4b69ff5efadfafdd11deb53418190bf223122ca40d9449d3cdc80";
+      sha512 = "899e26c0ab61e7dcd4ba97b4df082b13fd93d07c22e849a02dcbd887f870df0a6de4b05517b200a4917fda6f7cc83d7ff603d8e0bbd96a39ff016adacb669c32";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0b7/linux-i686/nl/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b8/linux-i686/nl/firefox-76.0b8.tar.bz2";
       locale = "nl";
       arch = "linux-i686";
-      sha512 = "61e31c484176e95852e02181f2a3f892603b3e2ee021d6f2a000016f76db99e9c82989792379f39520edf9374ee57f49b08ae4245d629a4aa8910add52b36725";
+      sha512 = "59b6885bce4c6cb95288e1338d6df199e8710313bd569dcbfa2cd2029b02bdfee9e28d4aa11f561765ef9e51d982a999d689935e18fbdd0d60d8ec25cf4544e3";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0b7/linux-i686/nn-NO/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b8/linux-i686/nn-NO/firefox-76.0b8.tar.bz2";
       locale = "nn-NO";
       arch = "linux-i686";
-      sha512 = "cd51b29ff5c5815496974f80190dfe34e6ec6cd4eef605f94306e7576d332eceb1007edba11d2d0d072b1b02601efc7f2fa8f27ff5ab14a92dd75c29db25998e";
+      sha512 = "40e62963d39f0b23498a438c3ad184d0367cdceff9a2674e565153c70bc450992d11145e5f651bbb53f389d5a74eb3d7413968c608b7d7650e9d553ee26d5cb7";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0b7/linux-i686/oc/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b8/linux-i686/oc/firefox-76.0b8.tar.bz2";
       locale = "oc";
       arch = "linux-i686";
-      sha512 = "f6a5f5f3ca08b6439d02e5a8fbdf5805374d10b2512b8cda0eb45e5b0d0c4001f40144f5984791ddd8c7c147d9e96d399dc466d0004da00f245d1251d24dda7a";
+      sha512 = "3ea480ff19ffafa1812069ef7dd1ff1852b10abf2ec4cc094912173937b82c744f29f1480de2e95dc65ee1062a766f0ec33d234e3e3d714f49972458a09705f7";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0b7/linux-i686/pa-IN/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b8/linux-i686/pa-IN/firefox-76.0b8.tar.bz2";
       locale = "pa-IN";
       arch = "linux-i686";
-      sha512 = "42d4d089260373e5d16895c44b2f47610b96c0a01a0bb70c39876c376e70a58dca27efdc4a0d21996fd9479d0dd1255d6a7a448f6be8fe5d45fe675180d70d55";
+      sha512 = "8a13731a6072abb0c34241f206898fb59d91dc26eb3f4c0627d2aee2e6a53fba8b3735d8f5f2b36dddca9609ff4c1d9c5d441c350e9164aecc2ce9a69b1f0c5e";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0b7/linux-i686/pl/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b8/linux-i686/pl/firefox-76.0b8.tar.bz2";
       locale = "pl";
       arch = "linux-i686";
-      sha512 = "cbe18d3fa35ec9c4f8a43e42bf4a5b5e38c8fb8b0624eb594a340ec866f0f8eee77093cb7fc3ad9cf85aa8c8177a43ddcc1d0f34933d34c414c4d7f6c74d5ff7";
+      sha512 = "853bd27d468111e512907ca3226f399ba0be48c3332836342ff15b4a8bc4e3253e31fe91a31f462863f9a6559273ad6693f1bf65a1763178aa3488185779da91";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0b7/linux-i686/pt-BR/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b8/linux-i686/pt-BR/firefox-76.0b8.tar.bz2";
       locale = "pt-BR";
       arch = "linux-i686";
-      sha512 = "92e983cb0139204f51e97d4fe0510750f98cf93fe20f8a4b5bcd24874e266b7ebdff00170b25acdc492a7eff65f1c9c6aa1c44b29d8209c04fe5c6a43eb3ac5d";
+      sha512 = "d70bde7178c6ce76eedbd8a8e33617ddc7e7271aff41afae4d190e5f28bddec2094c1450c3782ae7dfe8ea7a6b844d50602e27294454946ab5c65a44b3553f9b";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0b7/linux-i686/pt-PT/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b8/linux-i686/pt-PT/firefox-76.0b8.tar.bz2";
       locale = "pt-PT";
       arch = "linux-i686";
-      sha512 = "1a576f343b3b93b786038ec5fe0dbcbb3df4eeacfb94c447d5242622e207dcf360500942957d0019c124c32698448c23e231b336b8681526d4d2cdd8ec78202f";
+      sha512 = "6e8e2f7519e88809dd38d694f5a293379af1529afe7fdfd6f19e09e240bfd184291720ac48db382308c8d79c38c955916c57bf88d85ec2d220de7bd872954f43";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0b7/linux-i686/rm/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b8/linux-i686/rm/firefox-76.0b8.tar.bz2";
       locale = "rm";
       arch = "linux-i686";
-      sha512 = "c5e1ca70aec643d00531d4a485e515d17bc7be7242bb66c7df5818ed68f69e33542e57719fc0cd8852e4efcc4d73d76bc2646dc75e428052c078e260d9c8d2b2";
+      sha512 = "928018a321f1c0b86d13c092a5390652fe5d13bc63ee19274b6d3a107e2c5157fc969683e59055a13798c5982c75e02ae0e5cb40f5c94203a052c7898d1ad607";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0b7/linux-i686/ro/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b8/linux-i686/ro/firefox-76.0b8.tar.bz2";
       locale = "ro";
       arch = "linux-i686";
-      sha512 = "ddff96dc6073cfeb7462b160280e996335e3dbc48ca717ff3ab09d93d686d9b5697144fe0dad7be12bb293557e431522844f9265e71d3839ad6e070b75a213fc";
+      sha512 = "b2fe56c56cb25471fd7cd40d9fbdaad10d25438b94fdffbbd81ab93a7340befd1678d904a3629a28c8db6fa10d969243c27b003817ef3c9b38030d6f43f39f9c";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0b7/linux-i686/ru/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b8/linux-i686/ru/firefox-76.0b8.tar.bz2";
       locale = "ru";
       arch = "linux-i686";
-      sha512 = "c33ac5097ab81d90cbfbcadd38b9d9906f660559ef5cf0d8978f603680d3e30505f8c65b55edf5b83fa91db2643cb893a8ae1d8d7542316d082868e341a19294";
+      sha512 = "bb4745d61f87f6e7acae842be9068a7f7b9d9da3c44d2d32a45c4d4a0dcd127e4c98bf5c7cc9ce03c9dd1782e4d9d03f8c1c82a6008a2b9b93b5ce380020d98c";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0b7/linux-i686/si/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b8/linux-i686/si/firefox-76.0b8.tar.bz2";
       locale = "si";
       arch = "linux-i686";
-      sha512 = "f99a34d222b07758af6a49067f2993d49ba5099b8ea8987ebae00a5ad908ff71782aadc49086152d84f1f1698a55ab027362247a15e05f62fabfadb7f45fc2d2";
+      sha512 = "efa44e8a4e69d10feb35385ee01b171d08c46feffea0d74ea8ee9b7cf21a839b2cc43ff138752c50ad43db1923b264495b63a0d46b5b2e579c3ba61b6bdf3acb";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0b7/linux-i686/sk/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b8/linux-i686/sk/firefox-76.0b8.tar.bz2";
       locale = "sk";
       arch = "linux-i686";
-      sha512 = "a18af4cc09828a567b9c6bf162a8800034f4b094bac20c15dbcad8a33b2a17792bd1470f77f75d8da8f954b69cee74929d8aa7ef4fd47a078f84b03824658a52";
+      sha512 = "3f9e63ad4c1e8a4f6bfac97925e189c9b3888c2e952c1801e4fcf935a246a294f9b088eaad6c18bf7dd93c136579529605bad6bcd95fa7b68c89a0fb087a44f8";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0b7/linux-i686/sl/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b8/linux-i686/sl/firefox-76.0b8.tar.bz2";
       locale = "sl";
       arch = "linux-i686";
-      sha512 = "401c261b1a523c90aecf1432bd01bfa151087d36a8331d0f4138330bc21272c4980c90dee46d2ba323a20825367bb54a15fc22ce14c7b3b91c8901d6e243f86b";
+      sha512 = "79d4a1aed3c9afab1c1847ed4365ab7e99d0982fdaf09d6d9652b9f95ce3c32b123b2389a1a9d6486e6141953d25c06fac0a06156bff8c2eff6e295c8f79c28e";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0b7/linux-i686/son/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b8/linux-i686/son/firefox-76.0b8.tar.bz2";
       locale = "son";
       arch = "linux-i686";
-      sha512 = "63cc0aeb2b8b74166bdcb5db839ae7cb2befe7f444397337f73dd8b56bd763f7844283f72837b775ab923d70dc44797f8f99f3a155cec361cec9ba6e83ff6a7b";
+      sha512 = "5faec58c78ab2acb1fb5f3aa3aabdb9d5ad9df6168215f818967bc2b3575aeee1428ee8354aabfb36b37ed66137f8ca6b2ce9ce5fee0075562c618fc3cfba9e8";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0b7/linux-i686/sq/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b8/linux-i686/sq/firefox-76.0b8.tar.bz2";
       locale = "sq";
       arch = "linux-i686";
-      sha512 = "04667fa706cbe244ee04c2e36dd7fc496899d3b09d0a251dbf15371c9e0ae00a999131642c2b137ce0f23ea1149da1d487753fa7cad96fca8de11c5225617001";
+      sha512 = "32c67a6ace809219fbd51775c421fa6a68e29bef9e908678b43b53e1bffc85d8bf773e2a5b9a00861b0a437d56ee3ad5ff1cd1e84504a48816cf74a69240b851";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0b7/linux-i686/sr/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b8/linux-i686/sr/firefox-76.0b8.tar.bz2";
       locale = "sr";
       arch = "linux-i686";
-      sha512 = "8254f5af29e06e3a83ad2b9746e90fa9b9b9eb876b64a849bedbbd2375a01a2e5d369ad8f3686bf524504cf085f463171aa9b0acbaa823b8a50c123d19dd5bea";
+      sha512 = "ea3aff47c7e428a445aea0ebd7fa98e8de3a41dad208cea39adcad84327d2181b862ecd977e9c7a6aa8fb21cc99ada9698be67c86c5a931b1b41edafb744450b";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0b7/linux-i686/sv-SE/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b8/linux-i686/sv-SE/firefox-76.0b8.tar.bz2";
       locale = "sv-SE";
       arch = "linux-i686";
-      sha512 = "89a165c71ddccc04f8b6c86bd199267bd8fdcf274db601c68903868b67b5d3c3205c4b359076adef4ec48e95ad03f2034b7cae9fae981c584214a2cf4d607806";
+      sha512 = "dcef09b5dee93167dbe6bc87d1fbb6f0e472db6471b99815d38532f6d223ac7a12183b323b5e979fa7943e4db1fc25b48760caf4540afa111f9dfd0958568767";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0b7/linux-i686/ta/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b8/linux-i686/ta/firefox-76.0b8.tar.bz2";
       locale = "ta";
       arch = "linux-i686";
-      sha512 = "0a8f218a94ebe7e667c62c0c2c2752fe0df57885abad3916dc9ecba186f1420c77c1011b05f9512c37b75eebf9062f345f0d7580b9c7dba36c8043b581965e43";
+      sha512 = "598e3169673ad39832fea1afe0c141070795d54636846b18fd7ccb4a9e66575f779789553550552f9a9786ebe691afb10b81f0d0ba127242827e2d11f941c115";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0b7/linux-i686/te/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b8/linux-i686/te/firefox-76.0b8.tar.bz2";
       locale = "te";
       arch = "linux-i686";
-      sha512 = "3a4cc3a66e8ed7a42a31c69c314ad6935fbdc3062d3a82c35e7f215f0a3e29e841c196e32f5368e2b24ce8a7abb71c65307004478269d156f68de78a945f3e1d";
+      sha512 = "a1501c3fe46adc0d29ea098aba2800c71f6eb14b33e44a367e33f5f9c705357cad8445e0980cc758102eb7c01c18a79f3007cfbd8d1b9c1ae9766e0e793ec3b3";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0b7/linux-i686/th/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b8/linux-i686/th/firefox-76.0b8.tar.bz2";
       locale = "th";
       arch = "linux-i686";
-      sha512 = "fcd070aaec8d12509047fbc4cd3a7040830e9af6b5ece30ada6388cf458daf0a26e381db22515a440d6bfaad700a0d628c3036996dd9d6b3263b192b45da33aa";
+      sha512 = "1bf0876237e5c8eea321970f86c3878770a3c54c7cbacf67bfb75904fd270ce88252d9844450086e00758cb2b1a0e1db40394246cb9ef8a7018c76bba03e3850";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0b7/linux-i686/tl/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b8/linux-i686/tl/firefox-76.0b8.tar.bz2";
       locale = "tl";
       arch = "linux-i686";
-      sha512 = "cec3476e88d5d1551fe8a6e75416d0397001eada288d270273b004777a099bdfd2b63eaa5e2f81994bc86b0a720f35602308089a469adabfe457a48b8f11a88a";
+      sha512 = "5a0f3514e196803d7d6062cac1ec75342ffb49155624a0035eb49ddcaf829dfeaf37f7e26997b31cb85b9e43ee21fca9f7129ab6bf4a065fdade9bdb06573628";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0b7/linux-i686/tr/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b8/linux-i686/tr/firefox-76.0b8.tar.bz2";
       locale = "tr";
       arch = "linux-i686";
-      sha512 = "22e71e68ccfeb4774570a94033ad7de3d90c8f327886b7c3555082b03b46bea090eaf16d63208897cfaa47094d7eeb8ee89d1d43af78cf8af2753b669d0c1fa0";
+      sha512 = "8b81e0479b60cad9b97f2108745445f584986fef5521c9ab88bb6ecd48dbc9a989b906122fad29c755dfbff859719c1c9da34452383dbf027d69288a32ea7af4";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0b7/linux-i686/trs/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b8/linux-i686/trs/firefox-76.0b8.tar.bz2";
       locale = "trs";
       arch = "linux-i686";
-      sha512 = "a6d7673761a590e7d714f8e5949e9962a7f693bf35ac9e5425c84d1d9173b220d9af3e1468c9c83aa930f31cbd2df9844f65a1b749883ec35fd5ddd4ec310463";
+      sha512 = "9b3d99608d163d860d0b123eddd794a2d3b44866e6b92bfc0f06c05fbdb59ebd1ade970850e5b1974332424886edfde04861abd1d47868e60970826846fc5b31";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0b7/linux-i686/uk/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b8/linux-i686/uk/firefox-76.0b8.tar.bz2";
       locale = "uk";
       arch = "linux-i686";
-      sha512 = "2944b38a4b71702aa04d11c68cc5fc0253614015d8ee7b63f9138ccb90a2190c52131722477218f99e917260ae7beb0736f8d8fcf275093f423fe884e9370a67";
+      sha512 = "f056c542bd5b83bdfc7b2a8d7234d40b64e88063208ee4b0b1b7b27017ede66b8acbbaa9d835a6d2667a321d6b965002bb87b68e5aae0eeae27aba8dfc87164a";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0b7/linux-i686/ur/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b8/linux-i686/ur/firefox-76.0b8.tar.bz2";
       locale = "ur";
       arch = "linux-i686";
-      sha512 = "e42728c0a24a131d831fd65c1b0006a28be594dd5011fe5a510f7b1b62c7937d06b1f0077a1ac2d454211e27f5d03c8d60f3fc725a58eebbe72f6064d875c6ee";
+      sha512 = "a36a8c25ebe88fcf086fd476619a657b1ff26364133d05b32bdc13cca81b61009c4f1afb760bae961942ed1396b178c2eb3cda9add8c6b502353a2ce8c486cd0";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0b7/linux-i686/uz/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b8/linux-i686/uz/firefox-76.0b8.tar.bz2";
       locale = "uz";
       arch = "linux-i686";
-      sha512 = "9f777b1fd31953b903123250250f7dc55d63513c49b69c3ba782702f8faf4a831b1fc84137e8554b4af6e23d1203a89ab2a61947a39f3f9a801acc1312a7ebe8";
+      sha512 = "d07515f921caedca18f7661fad83ac772369a2f7f99d65fb827a0236818fd8eff211dbab90aa9525a6318374b1a2f84d8099667d1957f21c30e9dca35f97a111";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0b7/linux-i686/vi/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b8/linux-i686/vi/firefox-76.0b8.tar.bz2";
       locale = "vi";
       arch = "linux-i686";
-      sha512 = "7023655042219b9e818fb921bd6da1941b7c75a22f7570559d06c2e10de2bb81191b266323fdd132c4c7ae881d932eae78c93dc6d8d5e20a6adf6325f87778a3";
+      sha512 = "de51d63ce79c249496222658ebbf53fa656916a753e6305d36047a99879b25e17a4ea4ebce1ccd07141cb507a7501362d0bb556aae97d115686d0d38db7742ab";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0b7/linux-i686/xh/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b8/linux-i686/xh/firefox-76.0b8.tar.bz2";
       locale = "xh";
       arch = "linux-i686";
-      sha512 = "6475fa9eb12145e13a9433fc4f1d28a8e40bbab39e9c33337deafd7021982a22e64f795382c2cea09d767df2600b39824f8cbca948a2fc6ad24fb6a94b3737a5";
+      sha512 = "b01037ce68d8147dc79aeb0d540fe22a06d89ba5cf804951d16af3a896f592a00be7519b184de2f3aca7531d3026f78283b9f6b409c24031faf4859e92bfd1bd";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0b7/linux-i686/zh-CN/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b8/linux-i686/zh-CN/firefox-76.0b8.tar.bz2";
       locale = "zh-CN";
       arch = "linux-i686";
-      sha512 = "51bd5cacf3dbcd6df7c887226641464ebe723bec4952f071da9dcfde89d714217f8677b8819425a8f1f3ce272a4228b08b4eeebe9c3aa61fe473138b891f385a";
+      sha512 = "0e6088a9b32ec76410fc45fc1433c514b1deb9fdab7f5249bd7ab3e1db9e0e5ad4294bffbfabf2f665bcfbedf8234ab64192ee50b34259e4133d7d035f6f4ff6";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0b7/linux-i686/zh-TW/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b8/linux-i686/zh-TW/firefox-76.0b8.tar.bz2";
       locale = "zh-TW";
       arch = "linux-i686";
-      sha512 = "741766345cb235586333866fcce8b33e80895b4e313306f26971f013e53189dfe4e119e1d9d6e94b09b334496cf8c49240a86c9ce1032d7ad5b5fada3e352767";
+      sha512 = "82042857b33d2dd642c8d6404bb864c79c2ffd91d2f8b342f39d9389e63ca59738b0083f192b607a391cf2fadac056760fd07c2b76a74172118eb44ed5724a1b";
     }
     ];
 }
diff --git a/pkgs/applications/networking/browsers/firefox-bin/default.nix b/pkgs/applications/networking/browsers/firefox-bin/default.nix
index c9dbe6ba4b96..71940c1b33ae 100644
--- a/pkgs/applications/networking/browsers/firefox-bin/default.nix
+++ b/pkgs/applications/networking/browsers/firefox-bin/default.nix
@@ -199,10 +199,10 @@ stdenv.mkDerivation {
   };
   meta = with stdenv.lib; {
     description = "Mozilla Firefox, free web browser (binary package)";
-    homepage = http://www.mozilla.org/firefox/;
+    homepage = "http://www.mozilla.org/firefox/";
     license = {
       free = false;
-      url = http://www.mozilla.org/en-US/foundation/trademarks/policy/;
+      url = "http://www.mozilla.org/en-US/foundation/trademarks/policy/";
     };
     platforms = builtins.attrNames mozillaPlatforms;
     maintainers = with maintainers; [ taku0 ];
diff --git a/pkgs/applications/networking/browsers/firefox-bin/devedition_sources.nix b/pkgs/applications/networking/browsers/firefox-bin/devedition_sources.nix
index 00c8ff548d27..c2f92dc1e3dd 100644
--- a/pkgs/applications/networking/browsers/firefox-bin/devedition_sources.nix
+++ b/pkgs/applications/networking/browsers/firefox-bin/devedition_sources.nix
@@ -1,965 +1,965 @@
 {
-  version = "74.0b7";
+  version = "76.0b8";
   sources = [
-    { url = "http://archive.mozilla.org/pub/devedition/releases/74.0b7/linux-x86_64/ach/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b8/linux-x86_64/ach/firefox-76.0b8.tar.bz2";
       locale = "ach";
       arch = "linux-x86_64";
-      sha512 = "2dca0c3b07364118aa4b7950769e94b75e932836ed139eee3c91168236d7e0f3bb4775a6463550e7a4b20ba57a75e62bf31c4db5ad1c46c47fb256dbaf78820d";
+      sha512 = "0c2e0175eb3950098d7e13352d037f00b46edd7094e2978ed568d4bfe7c046b533d4c5473be6e28f84baa6eb3aaa6658b174da23409eaf34841ab7ac4aa244d9";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/74.0b7/linux-x86_64/af/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b8/linux-x86_64/af/firefox-76.0b8.tar.bz2";
       locale = "af";
       arch = "linux-x86_64";
-      sha512 = "e39a8d3a8cce92984fe786d6e1d8272eea27ed049ae1fc1a6c9f5202665c84436fbbd48f04ea16b16a046521536f741c92f217c09db13d84483ed934091b3b83";
+      sha512 = "3a10b739bb0ace8331190a9bd045cd4de78fa81fd18d271903db6a29828da814454751ff56dde9181786c81ecfc373a1bae05701f4982f5889dd6007ab2bde59";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/74.0b7/linux-x86_64/an/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b8/linux-x86_64/an/firefox-76.0b8.tar.bz2";
       locale = "an";
       arch = "linux-x86_64";
-      sha512 = "75e5e95ce56a748d6c193374741f6f2c53503dcb0aa8ea33e2695b74937ade76ae723ca7b397157aecc46d04419be3de19e020427083e5002043438e1461154c";
+      sha512 = "3a4d769aa9b123fcc5080bc877b6d29444926c5c7f45665e058bf7c4c9a7c87cd3c604eb56fb2a25b4a62a84360a3b6df51d123435f23b921b03e1bfdd65ef5a";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/74.0b7/linux-x86_64/ar/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b8/linux-x86_64/ar/firefox-76.0b8.tar.bz2";
       locale = "ar";
       arch = "linux-x86_64";
-      sha512 = "fffbb5e730f1ca4925c0fca2597b29a359bb3835c5338024f15614c720a11087d36edb9a7eab4b99e42e75b3f622c80a709cc7ce08aee6acab23287f030f5683";
+      sha512 = "7febbf4429c33bdca13b978610e1f996d99e8db90290fa4c4ae5dded909d8fd60e416de328eb4b68b07af6af48b079232f9f85f64f30c751c2f877d7756d0c67";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/74.0b7/linux-x86_64/ast/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b8/linux-x86_64/ast/firefox-76.0b8.tar.bz2";
       locale = "ast";
       arch = "linux-x86_64";
-      sha512 = "b820e187245a7c22f959600e52d386188c1f9a7fa914ff03a9da9a7901ed2c090b7a057967121ac0c061047099ba800a33944fb5c629b8a41ea3e789b3385203";
+      sha512 = "6e6989857228793a3e3492a6f42b6c073c7ea58a9999daa5d88b465ecef5a0123d7607ede7c7297038747f4f0ea1c5fee70c2ff6436c6b7b642abe3f9a72be19";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/74.0b7/linux-x86_64/az/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b8/linux-x86_64/az/firefox-76.0b8.tar.bz2";
       locale = "az";
       arch = "linux-x86_64";
-      sha512 = "69b5a0f326c9c9cdb2f98709e0400da6fdf05c4abe7bbf385dc0593daee61f1e4874ef6ec6f1fc12f5a1ef6b290b6b44664c8977b17496133f7bb95683937ad6";
+      sha512 = "391becbf14940922f7a290840519af8ea5149058ae420738bb2bfa80ee057c16c04910f54660ee5eb3bc6067d6fd3b61053464eae4439eef708379bc220e4416";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/74.0b7/linux-x86_64/be/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b8/linux-x86_64/be/firefox-76.0b8.tar.bz2";
       locale = "be";
       arch = "linux-x86_64";
-      sha512 = "2734e21739a5fd0fddc3ea52d85ae268aa12f45d83e2a3a2529d96657bf03396d84bf9549decba412988e637989014b88cba773c2586a1fb04a0dfc439d71caf";
+      sha512 = "c87ec6c520c9b47541e0b6ea2bd6a6916dc5a41e03affdf3caaee7247a8ad51925fbc7208725033518f03cab72a159cc5a75076bb9089ecf85210686cc704a60";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/74.0b7/linux-x86_64/bg/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b8/linux-x86_64/bg/firefox-76.0b8.tar.bz2";
       locale = "bg";
       arch = "linux-x86_64";
-      sha512 = "d67ad4c4f282db155b41368df5094d6cd614d4e4deccb348b2873f710c3522ecd30511da368df97c4b9eb53a0588c134c7af298bf9abab602014d18d7586ef74";
+      sha512 = "f50f02c10d5c14756670aac99ccc909bcfc62d30ad7ab4ffdfa2870ded4b97ada7d21a78fe94610e01a448231d5a4b1decee47caf467978b667cd65b31d53dc5";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/74.0b7/linux-x86_64/bn/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b8/linux-x86_64/bn/firefox-76.0b8.tar.bz2";
       locale = "bn";
       arch = "linux-x86_64";
-      sha512 = "0d8b5dcaf19166878c8fdbc1dc2b1743398cbcf7506089098dba170a5999a205653a048ebfd2017c4a69da4b71c8202245b64fa0835db14d41879e8a9772a511";
+      sha512 = "f81e4f057defb28b57e218b74d115b140f595f17b40af00cacd4b46db1f45790e34a222c61551e8f9387c5dc505423f451904fc82adb2e18908786ca0e4a2ffd";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/74.0b7/linux-x86_64/br/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b8/linux-x86_64/br/firefox-76.0b8.tar.bz2";
       locale = "br";
       arch = "linux-x86_64";
-      sha512 = "9d26f9c77c6e723cf942d5a656282857db008542a451fd2db59911f07acc7387a8ccc874c1c9ee25bc8e20248dedc72d9e1289c36d1018487929bf0d53093924";
+      sha512 = "2834602a86796ca65d278ad7e13d7e1722ef6d375d294d6623256c427eaa60691211244bc10a22b48c9831f832a9d2e948e814962464beaa430962e862000c78";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/74.0b7/linux-x86_64/bs/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b8/linux-x86_64/bs/firefox-76.0b8.tar.bz2";
       locale = "bs";
       arch = "linux-x86_64";
-      sha512 = "b7d973d03d5c25c08b2515510ccf3115ebe498c73a23823254e8955f47e065c8ca2ecfd651c1762d36d7841d48a15b76792fa2ce9282f5115fa9bfed8f411b40";
+      sha512 = "f4efa6b86bb314f850466d81e8fcffdd6b1fe4f8a372750edeecfda2fd5feb172251227ae8ead7d79bae3f3757b948e45200d779d8368fabc980ae73ef8c7b68";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/74.0b7/linux-x86_64/ca-valencia/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b8/linux-x86_64/ca-valencia/firefox-76.0b8.tar.bz2";
       locale = "ca-valencia";
       arch = "linux-x86_64";
-      sha512 = "94912a03c29f673de7e0bc1ea8af77ec5b28e3694f042573e3f44d0b1298d2a8520ee5c062697ba838532d2247662ff771426de00ac6cc50d011a0bff1bc0348";
+      sha512 = "ec51ece975fa6e3fd4b3fe508c5ccacc62dc340562aefa8e22a74f2c818bbc81982ebb5d9b0f85a460ebf75030e3d25e084a554ff3ad8ea142a4bfd9b020ad96";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/74.0b7/linux-x86_64/ca/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b8/linux-x86_64/ca/firefox-76.0b8.tar.bz2";
       locale = "ca";
       arch = "linux-x86_64";
-      sha512 = "6ff2ef52764e1bdd04861373cab88ed59bd4640e420a1e9567a974b1920957f14ac1e578bf32e1cb57297455aeca40cb84609d1adfab86a751306a0554008f70";
+      sha512 = "84cb922c3b7c61185fee0f08d6c6123efad63730a8be960b2087fd6074ed3486c1ead7081dba0a6cb0ea1799e14cd9a32f3690c31017e5ce2a3d2875d0368750";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/74.0b7/linux-x86_64/cak/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b8/linux-x86_64/cak/firefox-76.0b8.tar.bz2";
       locale = "cak";
       arch = "linux-x86_64";
-      sha512 = "0a870236f57d9927361906b4098383dbc8430766b3b915e5a872ccd2c8b56b56d78edbe025aea8e8a120bf8a95c9159e26065fb24541d9e4a4860174b1d9b78f";
+      sha512 = "7245add38d451e6dbad55140d9b2aee182df94b4285645ded8713f3c2c3aa4bf4c602a3f9a0a5f39ca091561cabde58aea18be3fe4247c53c742d03dc43c9858";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/74.0b7/linux-x86_64/cs/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b8/linux-x86_64/cs/firefox-76.0b8.tar.bz2";
       locale = "cs";
       arch = "linux-x86_64";
-      sha512 = "38dcb5650759007495e76bd62a18b95c63db7f63e77e5d0c488722d00b4f7ae00df3adcb771d7a73454655b8192e3008988e742733eb56f043481e40c357b847";
+      sha512 = "883a2c0ddd7cd826e6bfe6835c8ff33c135a9bc77962d9f1f67d49a0928ad9172c07974f0681769cb874ae7db4f6a1a96fbc78af3275262cffadb744ec6527fe";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/74.0b7/linux-x86_64/cy/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b8/linux-x86_64/cy/firefox-76.0b8.tar.bz2";
       locale = "cy";
       arch = "linux-x86_64";
-      sha512 = "d07b503f1cf8b4b11a94fd2adea08ad0c37474d779d2cf7590e6700464260c81b0221ce5344f17e19634e1e6cd5f0a5addf50dce2cd4eacb10b6ff3783ef2424";
+      sha512 = "93b8379294b7a6ca49aa8b454f64de1f2df3db75f47c4bfe6e11e9317cbcea41da1ad8b73564a273c9343b4317329ee96f1f1ae7dee4a61f52b3a26e5790fc0c";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/74.0b7/linux-x86_64/da/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b8/linux-x86_64/da/firefox-76.0b8.tar.bz2";
       locale = "da";
       arch = "linux-x86_64";
-      sha512 = "5386f303e45ec533e7fefc75d29252c9612126ee1d1415745c9f3bb9d2f9c12ec1cf5f93d488f83dcb51177b17f26ded417b5c93d0ccf207749bce8f1dd9de63";
+      sha512 = "6233c7a642883903c1e8054c6508dbc5cee01a5ee08baadc12ff388cf3353d879968a6cad59ea7458e93df9e1520e2a938a30c04b0f2e3c903857275bab801f7";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/74.0b7/linux-x86_64/de/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b8/linux-x86_64/de/firefox-76.0b8.tar.bz2";
       locale = "de";
       arch = "linux-x86_64";
-      sha512 = "26003755df79996a18fde1e1f0dc73178a3eda884be22a5848dca65d9d1b60677cd6dc67435e3e40100149d894185b0b3347e418f302b21bc056d1f982547de7";
+      sha512 = "41febc39a7ade5843b45a02950ddb1485fca32abd0a0bd8f8e017cf8f1503d4b4b20e7dfaf89e8833900aefad44f5119ec9c8d73f5f5fc7641dd3ae1e5d794ab";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/74.0b7/linux-x86_64/dsb/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b8/linux-x86_64/dsb/firefox-76.0b8.tar.bz2";
       locale = "dsb";
       arch = "linux-x86_64";
-      sha512 = "a0512e2996326fd8bfa63a97509dfbae54ed8114af1ffd4e260e0389ea6e64207095cd5cd9fb4e5c4a2b98ab61a91498db2838d72e6d259a200c636bd9521eb5";
+      sha512 = "3e4f96d7653f0cc4bec4de6c3eafea64c309f8dd88d54dc9fa27eca90c877d1f026b552fa755c0742a8537bc65a2ca831fd57adccda0c3f5573df95afbdf368f";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/74.0b7/linux-x86_64/el/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b8/linux-x86_64/el/firefox-76.0b8.tar.bz2";
       locale = "el";
       arch = "linux-x86_64";
-      sha512 = "832df3733c81629f0d432ac7fbf0ba0523104532673f0b584525b5238c9a18eb30d2919ef47361a70b5a8dbd11742767a1b7f57030814dce05f07a9b54a17475";
+      sha512 = "3fe9b14954d3774a389deccbe7d7b1e81c3f50f1e7b7b2e92f8c5bd55c3f4623f99f518e3fc8acf92473dc4c05e2ce316c370aa19d8d39e970a1f99bb9d221c6";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/74.0b7/linux-x86_64/en-CA/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b8/linux-x86_64/en-CA/firefox-76.0b8.tar.bz2";
       locale = "en-CA";
       arch = "linux-x86_64";
-      sha512 = "e50ef2f8a7ef4defcb7aa151ca5a8140d28da1111dba92b1ef8a618a65dbe812345f3737f1945e0f0c31d14e3fbffa833ff8f50e0390efc004d81bd2eb5705b9";
+      sha512 = "d57062e3ca388a52485fb28eed924376f6decb324ba0cb9e9af2583f10447a24d129b1c0ae17dbeb9bcac829a4da09870eac22fd8aa378ffa2ca9dd2090292d4";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/74.0b7/linux-x86_64/en-GB/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b8/linux-x86_64/en-GB/firefox-76.0b8.tar.bz2";
       locale = "en-GB";
       arch = "linux-x86_64";
-      sha512 = "127ecc18969dc3226ca7e8a0b75cd7bd5ae96ab4f325655a049d4f57fd5471ed3e83e8587edb96e3a2c4cff0b370871266cd4d7b468791ce2e28eeed7ed91286";
+      sha512 = "62d571af76baad53a699a7e80dcc7c7e60ba87aa3d6325cadbac7230b710180dcdd7ba058b7b502303067ee7fd590247d08278583e188394a1873ba9f5f23b2c";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/74.0b7/linux-x86_64/en-US/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b8/linux-x86_64/en-US/firefox-76.0b8.tar.bz2";
       locale = "en-US";
       arch = "linux-x86_64";
-      sha512 = "c4f47f02ec25a34590159f3e04b8e49841aad1092156b54b342869a3330cb7b36317196f3c65f57e73e4ecc6cc53f4cb19168425930febc100c53f626631fb78";
+      sha512 = "b934ff6b86c84600fae27cd006606b26cea62a42c8c21bdc5472b776f95faaa8604acc9c7072a8ea5aa6bc7fee6a62375b75ca4b34ae7ad83d16e074445ed327";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/74.0b7/linux-x86_64/eo/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b8/linux-x86_64/eo/firefox-76.0b8.tar.bz2";
       locale = "eo";
       arch = "linux-x86_64";
-      sha512 = "07f5f34b74c768d8748a32103163fd6d0d390241e8cc7a1c7e0c90d627d822457ffa5406d06ff28b7b18ab1f9ec4cbe42a9712d56a5881351efa40ea6deb7dbd";
+      sha512 = "7135b45b7424650933d579778130484b877766ddc7db83a5c4bf2f7faa662b127d475126d5fd67fffa3406f637128ced63693946e9ddfa4d33d57fe1396f3fe4";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/74.0b7/linux-x86_64/es-AR/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b8/linux-x86_64/es-AR/firefox-76.0b8.tar.bz2";
       locale = "es-AR";
       arch = "linux-x86_64";
-      sha512 = "6f3531ab56ed0dffa9a1e22c86dca8f7869cfdf9b9adf8ae3c7d5ed12a567c1033db7b5c15daf98edbbecf0b450ff5a064e48ede479ada4b72ccaf0c851932ca";
+      sha512 = "0e66427df853ba3ba45880e45f466349bd4805812a879e6f654b2a02d4bcca71de27578140e4ae301b3bb329335453ddf3a756be6f49b1e92ca06abc58ff1654";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/74.0b7/linux-x86_64/es-CL/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b8/linux-x86_64/es-CL/firefox-76.0b8.tar.bz2";
       locale = "es-CL";
       arch = "linux-x86_64";
-      sha512 = "c969ce949167600c414b9f0ab649a72cd9b9c12e766b6b92ddf36735939d4d5471bf8312e309db5b2b6e1f508b0af33ebe35b8e76b67af663b300893b539cc5c";
+      sha512 = "36ed5cedcf9a2a75b19de328c5a5d89f07c09e9da728fb3431a31781a5c522b5a53a03fa5dfdcb079ce140f5bab3d7bedc79c0e3c79e3aaf672b5cce3eee2b1b";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/74.0b7/linux-x86_64/es-ES/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b8/linux-x86_64/es-ES/firefox-76.0b8.tar.bz2";
       locale = "es-ES";
       arch = "linux-x86_64";
-      sha512 = "e5060f9a575b6cb430265f214a554b21794673db9334665d6cb72c476bebd3c1b2797c8fb3447297c2a06f0e243a6da5da7f9d22a403472d81dc8f754eead226";
+      sha512 = "616477226b52076c86371cf1f1a548c2c95112685ab0e4b9835bef7b8bcf6c0ebb839ed3cee2f348cf26d990bd88b2dff46e20e38938421a6670cf66a82ee3b7";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/74.0b7/linux-x86_64/es-MX/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b8/linux-x86_64/es-MX/firefox-76.0b8.tar.bz2";
       locale = "es-MX";
       arch = "linux-x86_64";
-      sha512 = "48048e589d5b57c75a5eb7e3048f541766129f5c63d7e3773d5d62fdefa5afb02338e14f76d44c6ca0c4ca0a688cf259fe98d0fe23759808b9c45414d5009389";
+      sha512 = "87dcfd61c3e02515f772e02b182fdd465d34c79dea55d5fc125ad6f32e504c22aa3d7cc6f23a7b2905dc4f2fb73106ecd7c662758d218349fd6419ab889a98f4";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/74.0b7/linux-x86_64/et/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b8/linux-x86_64/et/firefox-76.0b8.tar.bz2";
       locale = "et";
       arch = "linux-x86_64";
-      sha512 = "3f196d585242bc7387233223210f444bbff50309ed2638e16a19f42f48c06701af560e65f127addf861536151717e099f548fc837d5bcb7982831c0e20384055";
+      sha512 = "81221fd364e6ba5e6300e93402dc727f9640b73015060d5a3fcb3d0d60f8fd031bcad94c9a5b35157bdb0ee2671fb2020656916fa2f5218d6e5cc1745d47629e";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/74.0b7/linux-x86_64/eu/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b8/linux-x86_64/eu/firefox-76.0b8.tar.bz2";
       locale = "eu";
       arch = "linux-x86_64";
-      sha512 = "9b831ad80c7e5234243607b3391d422015fdc5276e083291e75ec1b2074c69e824c49481bee0ca9f7d23ec31f02a9fb72540dcf0634afed2a8427ece7d4e0503";
+      sha512 = "58b0849c7df2d8d4cd5bc1e076728678b85adadcd504978356e6ac2810a4b1b9d2318e2ad9e056fd9598d3ddc829c16a1ab89102a11d17a8742021d9c8b5e293";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/74.0b7/linux-x86_64/fa/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b8/linux-x86_64/fa/firefox-76.0b8.tar.bz2";
       locale = "fa";
       arch = "linux-x86_64";
-      sha512 = "8318bd18537396c99f496ef5d43b1d70756cbf7ebd153c6dcc272c13eacc57737a48c186e055bb9fcd10936510b038560257ea03ae1bc8afd563df4e703b05a5";
+      sha512 = "9f8db5e7054f377e4672333c3f775dbec755e6096660d1d642080bd5e9bcd0c8d50a05bcc92bbb357555f60f8aceb21fbffacb019f8b3c901b1390ff3dcee034";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/74.0b7/linux-x86_64/ff/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b8/linux-x86_64/ff/firefox-76.0b8.tar.bz2";
       locale = "ff";
       arch = "linux-x86_64";
-      sha512 = "d2c46c0569d98f96415f451d2956e0a86fb030b254852cc552c48b546e31f75c5a6bc54a97607f3653ab330f1b3ea5d988fc933f1d0654919f2abf4d1e7c396c";
+      sha512 = "4fcad8469fc5c742e4b4c4dc838da969ec3ee4af5c8c856aeb2afce85e2de7927713acc1ab9c422814d51c1114917e131af7c1a9efb6b91b1e68a5c5b36a3c92";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/74.0b7/linux-x86_64/fi/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b8/linux-x86_64/fi/firefox-76.0b8.tar.bz2";
       locale = "fi";
       arch = "linux-x86_64";
-      sha512 = "8b1cac6cbb141bc7dbf8bd33f6cf8b0abc7b97f38df83181241948b8d376d67c77125795a24ff64506e9ee5f986508005120b7952bafcbcd76fe0e802c23bdba";
+      sha512 = "a86ca2d70706f2c3aa8601372986525eddd8a268e47fdc7613223cc322fbfae68b86e8041c244366969cc1d5f09db7aa9c6cde9dccbd007fadcffc27b9310cc1";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/74.0b7/linux-x86_64/fr/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b8/linux-x86_64/fr/firefox-76.0b8.tar.bz2";
       locale = "fr";
       arch = "linux-x86_64";
-      sha512 = "41b55258d992c751aeb60ea8c9819f05fa5365d98a0d305c3129c989c46d1022e667edf654856b666c84e48eb799f3194acbe8c2a278baab8ca5984656317e54";
+      sha512 = "ec1c210cb0bafaaf14a6f8d79c81d2777d228ed31a7a4b1516227ce9c505574a2ad9a15bf72150439ddf32e5e2200f07471c92540d25bff31c6b9b3e123e8091";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/74.0b7/linux-x86_64/fy-NL/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b8/linux-x86_64/fy-NL/firefox-76.0b8.tar.bz2";
       locale = "fy-NL";
       arch = "linux-x86_64";
-      sha512 = "cb2368446de46f90a567c6a2d698e6fc0e48aca18093c7feff581b5b7fd15d5699e3d4bbf02254b3c54cb28acf95c29b1f86cf8e2fcd40b0759dfd068907ae6a";
+      sha512 = "530c2e803501a91433401445badf6528ccb51b0459028c098d3708a33369e566f679702fbcb50190fc5236acc3aaf4ebb4acfabb529b86a47dceecedeea9e45b";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/74.0b7/linux-x86_64/ga-IE/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b8/linux-x86_64/ga-IE/firefox-76.0b8.tar.bz2";
       locale = "ga-IE";
       arch = "linux-x86_64";
-      sha512 = "0c55d65e2b1ebab4c2e976c76eff205c6232b0f9ddbdace008c9d27d9bf25773e91b516a2536b1e7f069b4c7b468703da22d1814cc2fdd3ac1eff798184147df";
+      sha512 = "a81f82c5b4623afc3344eeded3d786f4e666627fbd40f64390dc21b728452cdca9f3510e21572d62e550c4e3b9230503eb771b615c3d4ef77e1a0211d79a5f08";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/74.0b7/linux-x86_64/gd/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b8/linux-x86_64/gd/firefox-76.0b8.tar.bz2";
       locale = "gd";
       arch = "linux-x86_64";
-      sha512 = "4723a47718cf1dec08bd9b3d6e0e7a4f857b5ff16ebba926f26cc6bd2000bfd19c238d05df1362d602da57864578fc2fc14c9f9c6c49e6b430a5118b22636cf0";
+      sha512 = "633b05aed902b9a655d22f45e5cb62d8978596e4d9b63f403a3f7f2a7db63b0dd2b9a1e5a82f7c9f5e8231edd15eda1ede415a80d9debfb96fc98058ed48472c";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/74.0b7/linux-x86_64/gl/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b8/linux-x86_64/gl/firefox-76.0b8.tar.bz2";
       locale = "gl";
       arch = "linux-x86_64";
-      sha512 = "69e719b5f65c0b8392f1515bd46ac0d22d763ac3911b082bd1201f7dd70db53862a60a0a43157f3e3cc468bd133eda0d5ef915b225159736d936e754237b711d";
+      sha512 = "052141759e0bfebedc42a7c9209b122e4ef4bb15f83ea42b8559d7b2894544e26167a6935e854541082a60dde2b301e17f2fd3a5c659642f6a4c83828ea55273";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/74.0b7/linux-x86_64/gn/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b8/linux-x86_64/gn/firefox-76.0b8.tar.bz2";
       locale = "gn";
       arch = "linux-x86_64";
-      sha512 = "cfcdc2deda122556e89f7b32b97e0cd5a9a01970babd11c3fcec205de1adb0744674dba06d0a5b725c379d2a98dee592724d5310f4c8ce55d9fb46e58dbf113c";
+      sha512 = "74977e4afb2d61c01834cc63f0d4440012752254ee475f28e80d33c63148b7c43520e141f043d90e611be4268da89103ec6432af8beb96ae243b8acdf4f4e934";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/74.0b7/linux-x86_64/gu-IN/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b8/linux-x86_64/gu-IN/firefox-76.0b8.tar.bz2";
       locale = "gu-IN";
       arch = "linux-x86_64";
-      sha512 = "b2c9551e6cb5c047c6169e5bb1e3eaa6272391fe3905554762b21037b832e2db75497b3e3d680e886821390a5df1df8c28cef64022e4fea77e439c97b5608ba8";
+      sha512 = "bbe4e976026c98c7f32b83941841c3da8992495122e96954d550fc8263e989539372f120d8b359423ae9fce043e79421c096d8dbdea921ac7bea8133485ad62b";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/74.0b7/linux-x86_64/he/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b8/linux-x86_64/he/firefox-76.0b8.tar.bz2";
       locale = "he";
       arch = "linux-x86_64";
-      sha512 = "ec076d4f9f178c3ad69f38e10796057e6650c4771002ae3ab06b7334634482db783ad1ff946e291e55d6112bcd1fd07e37cb8a475af268ddb6fc4541e4ba31fb";
+      sha512 = "cd7b957a983efe5cf9c4760f0dbfe35a06e6a7dd01702d94474eccc19b91fe136a3c14c5eb5d5a1dccbf02bece9535f059179afce15c42567a918c40cceba1aa";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/74.0b7/linux-x86_64/hi-IN/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b8/linux-x86_64/hi-IN/firefox-76.0b8.tar.bz2";
       locale = "hi-IN";
       arch = "linux-x86_64";
-      sha512 = "3c7e6b5343c6bbce4aba4069f543a09fba4df38350e30bd792028209d1f3f6a862a5ad8b08ece57b0e10b49775d97a5846a0fe71872cb3b8e7de0ff11059eb23";
+      sha512 = "0a12a9cadbaaab40db835e5986d9211527d175a4724207af1e3ec6a22879a16054f4e9d7d5deb2c428f0b59b72b6f2d2d1c2d8ea5aaf10e20c0f4be1aaebc174";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/74.0b7/linux-x86_64/hr/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b8/linux-x86_64/hr/firefox-76.0b8.tar.bz2";
       locale = "hr";
       arch = "linux-x86_64";
-      sha512 = "44b3186b2de73acc348b2114818c3361dc6e09b8a865f6ca81af5956a7a5bbf84932d39e2a970d8eb314524bff6c0b59923e50ddff203c3844a7e075b01d16f6";
+      sha512 = "0d219e5bea0ac4d75fd7b6d1ec2819e6bae95ebdb6766a09e34eeae2f8de3a330b58f6292c3a00e9d1b255e8286858db39ecbffdedf7af588ef393bfc7cddb02";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/74.0b7/linux-x86_64/hsb/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b8/linux-x86_64/hsb/firefox-76.0b8.tar.bz2";
       locale = "hsb";
       arch = "linux-x86_64";
-      sha512 = "b367e8059e20aaabbb53bcdcf6b84d2687e748d832b1eba6fbc23ff097b5b8351d303fcfaf6cc12cb9921231072838c3c865ea1737e25ed533f523cf70cce194";
+      sha512 = "ee2325e90ff0e3fa5128e9a13938afa532fedc7565cb9d26c016a37227dd9417bb78eca928c9c33bd2526cca0b2c3a6f469a76ac5d7685755aac29f06ef6c506";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/74.0b7/linux-x86_64/hu/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b8/linux-x86_64/hu/firefox-76.0b8.tar.bz2";
       locale = "hu";
       arch = "linux-x86_64";
-      sha512 = "bdf99f29203f13973eb100e83827ae669bc0d42bd12488a3653caab92c1b73edeef5304db2678bf6ad59a86e40aa14c552518765468bacde63ec4b4b12da09a2";
+      sha512 = "df602af7bc01521ff5c37876db7deb0d25414cdeabf34346c7cdf61e9083a12784ff94ee647fb75fcc9bb33e7458371b137cf3400b4d07dad4064b32a7cab11c";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/74.0b7/linux-x86_64/hy-AM/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b8/linux-x86_64/hy-AM/firefox-76.0b8.tar.bz2";
       locale = "hy-AM";
       arch = "linux-x86_64";
-      sha512 = "4677da96c94600d9becd6870acc2911e385093775969afde671c900700eaa56b25a4292862ebf3873a704897995c87bb249bc17d0da8394bca4d71d13bb85369";
+      sha512 = "774ed56ff51c7ea363c81fc11dddf8e6d54fa7242d9c7dcfc6cc3678dfe032cbd70ca93f014299690ff461da6c8013b946fa9ed170ca755a33fb95a85eb726f4";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/74.0b7/linux-x86_64/ia/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b8/linux-x86_64/ia/firefox-76.0b8.tar.bz2";
       locale = "ia";
       arch = "linux-x86_64";
-      sha512 = "277cf81214b0cb0a41f9dce8704d387eee36e6d947e7f625239fd84bca25d850d6f43db92a88bf68b3aeb12bc6e2174421fe0a006b80b89bade5de949914bd71";
+      sha512 = "c2513985cd2d6f1d874eb4f28eee05f7f42e639f8dcbc4d2a39d331507cf6681dbaae35e400a1f8e876598e8a633d67cd51b133391db30e36db46f65ede1cca2";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/74.0b7/linux-x86_64/id/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b8/linux-x86_64/id/firefox-76.0b8.tar.bz2";
       locale = "id";
       arch = "linux-x86_64";
-      sha512 = "26b3e8b4d375e57bcc3c1b7a641f27240106a1c42fc97913eb3fe4cf5f51885ca9d004cd95df1a798270a7a16c5407ec519e2ceeef4626480e7a3440e45f237c";
+      sha512 = "3bcad2477cfc42e2f01f5ef1bf3e907f80d96649fb5b2f143f58f6478939694fdfbab33bcd35b1f95023ad39ff807cf532faf43e1dac8aa66ca1e8d95c44ebbe";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/74.0b7/linux-x86_64/is/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b8/linux-x86_64/is/firefox-76.0b8.tar.bz2";
       locale = "is";
       arch = "linux-x86_64";
-      sha512 = "ad3bd0a308f8444ba01b84175b3bd72dec2c234edac61d5ad839644d4a09b89fbda61951229ac43b4f152c5ad8af7055477fac2fdaf71c2ff737ea73089339f3";
+      sha512 = "f01ce9358446ed8ed4b01297fc175e2fc36804262905f2d5e6732827ffcccf2897d5daaa6464a4ca146fe46d9a1487164de3febb6a222343277cb26492e5a787";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/74.0b7/linux-x86_64/it/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b8/linux-x86_64/it/firefox-76.0b8.tar.bz2";
       locale = "it";
       arch = "linux-x86_64";
-      sha512 = "a6c2ae689f748c8c306122057b267191e59e9b8bf273600beeff7181586c54c3c014b74aa88dc286132b8c998607b0246012a12255025899e7c44619a3940a9c";
+      sha512 = "52f23996de3c4cd409cff547348757f48e421555c965a58dc43fa82c99b51260b1ec24a97a04b046f29455955d62bc28a41d67d8087e23b9c490032cc28402c4";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/74.0b7/linux-x86_64/ja/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b8/linux-x86_64/ja/firefox-76.0b8.tar.bz2";
       locale = "ja";
       arch = "linux-x86_64";
-      sha512 = "1418d6e286a20860d7b7073e5f3a15127545e27cc8692a50c178e7d5311948716823bb9ab713450f6bc3fe2d443165971a8e6ad2c8251ffbb2379d4953b37714";
+      sha512 = "490a950113acbc895226749335d8fbda813708ed916fb79719c0980920401871c632150bd2d88749cffd26bc7d3e7352b6706f379b37d11df6a8519d6a6642e4";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/74.0b7/linux-x86_64/ka/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b8/linux-x86_64/ka/firefox-76.0b8.tar.bz2";
       locale = "ka";
       arch = "linux-x86_64";
-      sha512 = "039af653f9e75736027acec1f0e405c350ec66f4d343044297089601bae01fa76d6baae8a9b2eedfd31981d8022f4ff350817fb2505ad3f5e59aafce3441fde7";
+      sha512 = "12191f6adf723389595e7b9b3ff1ae20c3873b511a021205046c51f29e960db1faf45e74c055edfeaee506e6c8dcdadca7967da4b4421f892a88bc337c6b5046";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/74.0b7/linux-x86_64/kab/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b8/linux-x86_64/kab/firefox-76.0b8.tar.bz2";
       locale = "kab";
       arch = "linux-x86_64";
-      sha512 = "688930d5d2e67d03695abbcaad36880a052a4196fbe8ff406cbd7bfa0e540394836b15762e2ff64627a4f4e9abc16a58cbcd2d362624bf84db2efd6a4008c612";
+      sha512 = "a21ab0cff70609b3aebc28ce34ab2e6404b53638135667c330915491d8cb5c5ed7f292385e118e03e1bf2b4cfd197ad114f98b41371f5641c02d8372a7682286";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/74.0b7/linux-x86_64/kk/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b8/linux-x86_64/kk/firefox-76.0b8.tar.bz2";
       locale = "kk";
       arch = "linux-x86_64";
-      sha512 = "1f794ac9678b81af8cfb8ebc6c379d9e0603f2da337c23df1161170d54dc3967d6f89411e7b550da0ad1a2b7cd5db11ed5040d4056b333ce5dc66c1cd4629534";
+      sha512 = "93b2d1d091f9c14619d575eab5fa41ebe5a36f3278fa537f8143bd9fade793859d2d94e14d809e82fe037ecf2a05d0f84ef49c70970d00274d51beb2bc14fdc2";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/74.0b7/linux-x86_64/km/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b8/linux-x86_64/km/firefox-76.0b8.tar.bz2";
       locale = "km";
       arch = "linux-x86_64";
-      sha512 = "54057be25090fcfef69ab8ca2e4bacdfb96769f4e797fe83932bea198605a183e8bd8941484cf0e91c3e3a4fd4ffbc384be09894cf381b777649cbe340bfbb6e";
+      sha512 = "184185ab33f3d73ea0a5f38b5e9931201ce3018e5060b72b0344211d11f8ebe9ee685e77c2160ce58a60b61e1377ba28f4bbdc2732f0a3ccef2190ce55072065";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/74.0b7/linux-x86_64/kn/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b8/linux-x86_64/kn/firefox-76.0b8.tar.bz2";
       locale = "kn";
       arch = "linux-x86_64";
-      sha512 = "6e36f0aff051302132e5f83667638171b3bd7437b9d0fb3160d0f069b1131c617df6668d0de0a866e905073e57d6ac1990c9f00d59d6cfb179dd4eaff6384aa2";
+      sha512 = "b0917c696844114ccfeb854d13e75d48038404e1221b13629dcd981b1272f7765cfc85a0843d85957a1f3ead2a98288ae28739da47d1186b762058213681eae3";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/74.0b7/linux-x86_64/ko/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b8/linux-x86_64/ko/firefox-76.0b8.tar.bz2";
       locale = "ko";
       arch = "linux-x86_64";
-      sha512 = "6be107f8f29914633196903bb687f7d23ecbfe70f4655247a5a260ef01a0841cd843600791867de64575caa63e0d3f09935eaa7ff154673d72fe044e5dce7c4e";
+      sha512 = "4ce9e202f6d794585294d6bf664c999b88674d74d2b085109ad48f7f16737e26c89980c76e9d6ab34800e841bce9074fdde6c574b228116056922799369fa04e";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/74.0b7/linux-x86_64/lij/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b8/linux-x86_64/lij/firefox-76.0b8.tar.bz2";
       locale = "lij";
       arch = "linux-x86_64";
-      sha512 = "7b2ce6efa438363584daec053c99a4f61133ecf151070c9fb7a44b340a60f3c132ab92b9df50ec7ffc8ae556951876d3a4a3ef32551fdba4a359d7fb80da13de";
+      sha512 = "3138f5abddc0f49355c768fa84ec475bb3c013fad94bb4c87a2eae616b590244339236b112f03fe16dfd0b10ccb6d106cc1db0f73a5eb95df7e0dab9a247b496";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/74.0b7/linux-x86_64/lt/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b8/linux-x86_64/lt/firefox-76.0b8.tar.bz2";
       locale = "lt";
       arch = "linux-x86_64";
-      sha512 = "723dbdbd1881f8f072a63ec43050855dbf147e811eedd983f568fa33516f150fae2af615c565689690b3e9effb119bb0b3934022c3a5800ee9d5eecad4e42c05";
+      sha512 = "7080f9e7838c5ac076bcfd0e1192f1435b623c81144f53b1ee935aaa07c941ca8afb0cf399f161496bce02052d069033f6990bc9da16a1ab23f228417935d8ed";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/74.0b7/linux-x86_64/lv/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b8/linux-x86_64/lv/firefox-76.0b8.tar.bz2";
       locale = "lv";
       arch = "linux-x86_64";
-      sha512 = "3da0b6dcb24bacee313a5c654ede55885f538d4c18385533ba92b32543da0e6a790c242c9b6cee92c4320292aa2c7a4975241feab89647d430fe0f7cefec350f";
+      sha512 = "c058a8c6b4ea8c48991ecba72cc4c5645410da2d9a8ef9175475fbe906f5bbb2fe82f2c4bcdd86aed73cc75aaa0fd5a2e00a6a780f394b843ce075fdd031f8be";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/74.0b7/linux-x86_64/mk/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b8/linux-x86_64/mk/firefox-76.0b8.tar.bz2";
       locale = "mk";
       arch = "linux-x86_64";
-      sha512 = "e84a8051a9e8fdcf9e27084166e8da04898dc143045feae305c676a02c6381e3d0f3ef2cc4a74c6395075d9172fd75b4763ce262c42284669d542c56ff0056d9";
+      sha512 = "f64a6373a56c7ee37ccca43708ab33b3e001b477d2ce25870553eb96fd3c42f20206171f46c93513cb328203c4454461d808b6f888260b0c2df76450ba676fb8";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/74.0b7/linux-x86_64/mr/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b8/linux-x86_64/mr/firefox-76.0b8.tar.bz2";
       locale = "mr";
       arch = "linux-x86_64";
-      sha512 = "23b8ce5221190e3d147752e8267d27edde8f4f2981e4c329a5e223063839881417204076335df8c5f50f9a0a754d4b391020ea7ba5222c64ad7ccfef3ef0da68";
+      sha512 = "14f58b3f59e68b9692a6fc562888e7868becf95b53aa6be0de0d3ba6c883cfde4b56496fe017b5e6e38a89b0248794408402657a34a0db45eecae74d9ce7f9ef";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/74.0b7/linux-x86_64/ms/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b8/linux-x86_64/ms/firefox-76.0b8.tar.bz2";
       locale = "ms";
       arch = "linux-x86_64";
-      sha512 = "6b9d37b331fc1f45cbf0ebfc005f47375a24cf0bbd7e68940c6804d9afaa82aac048ad4bdfd0a018c2ba4d275a145a2a64f3c62b1f46193b2d59f7a9f0ca8b5c";
+      sha512 = "238d2c63d4ffe36db493ef153c30a6e4b33e1403e456d2c02275786d3c13c8b2e0467a80916cb08f4676ed68c94b2127ee9876614909e4bece2577609f027ef3";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/74.0b7/linux-x86_64/my/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b8/linux-x86_64/my/firefox-76.0b8.tar.bz2";
       locale = "my";
       arch = "linux-x86_64";
-      sha512 = "bf2d1cec77a74608db287c5079db8a7681f18486ace763e59b59ba0833c2e1f61d10127fbe34678fcd15f4864b1e94be2160fcffd14a62612e7a543d8380661f";
+      sha512 = "843d4d67ed852b2d0f54dee78cbe3e27ef052537270357e71f3ee0643904c2d370d5e0d25cc2e1dcc150d5f999f2841b963df41c7a98493a5101132dc6ef9a77";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/74.0b7/linux-x86_64/nb-NO/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b8/linux-x86_64/nb-NO/firefox-76.0b8.tar.bz2";
       locale = "nb-NO";
       arch = "linux-x86_64";
-      sha512 = "2c93b5c1bbb1d629e9d3fe38170b610e8f2f4332a12ae841959955051e6e6f4d56c6162f7298b9ebba78c36c81c150dd28c10b18d194c3ba7116733df5bcf7da";
+      sha512 = "e8eff86060d9f6bc6fd0f13c6f1840c77b9282f8be07177cd6ffd5472ded9b55c3d4e7641a67c655c94fd72a21a100648ff1ccbdcf90b5e7543ac1ffeb604dae";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/74.0b7/linux-x86_64/ne-NP/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b8/linux-x86_64/ne-NP/firefox-76.0b8.tar.bz2";
       locale = "ne-NP";
       arch = "linux-x86_64";
-      sha512 = "e6443dedebdb4d11e3a07adccdf92d221f7ea05e257389792962331d9f3f8839d24509dc996b39843ae9079828a21975a026f6e0dc75e06296e2c392781f70e9";
+      sha512 = "bb62e672ea5aabe57ab78dd37081922a67ea6471558c8a412bc5f6718b88439afb87debd23bc8e8076b7f0ca20083b79745ab0e85cfedbed024d82fee7a79986";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/74.0b7/linux-x86_64/nl/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b8/linux-x86_64/nl/firefox-76.0b8.tar.bz2";
       locale = "nl";
       arch = "linux-x86_64";
-      sha512 = "b6c0e5a0ef7af5cb1c9ff89e682e9aeb0b954ba754591dc54c8a73fa1de8e3f37f5f78f614e5aa82eca5289dfd62782f9128e984f79fc3d36486a2dbd4affc54";
+      sha512 = "9e0ffb62fc391ffc0bee82e67c26fd24f22be3c9ab0d14d929cc0ddaaced27facebe49b55bbcb53dad9e27466d22a4edbcc1358cf38c4beb1f846278574fcf76";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/74.0b7/linux-x86_64/nn-NO/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b8/linux-x86_64/nn-NO/firefox-76.0b8.tar.bz2";
       locale = "nn-NO";
       arch = "linux-x86_64";
-      sha512 = "9b2c0e29d4bc92685ef2c914c783dbbc663cd6bc9ea6f15e398ab8f8fb238159ad0dd84647c28b2c9e5991e75195fa2f305690d9f7f98360c8d40754c10d4bab";
+      sha512 = "ea71229a06a26c13d436662336e5a9b52b290c2094561c3626bdda069930c3a5b4dd61a25f76d147fb152eaefa07fd1e032b7a739b5a2038a2c4360827322144";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/74.0b7/linux-x86_64/oc/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b8/linux-x86_64/oc/firefox-76.0b8.tar.bz2";
       locale = "oc";
       arch = "linux-x86_64";
-      sha512 = "9a50ee9b626f3f96e9d08a5f5df174f8b89692ea2fc3b927f260e9579174273f78a9d11efbd1007b4165331dd52e52bbaed83a77ed458aef166b764a2bc5d559";
+      sha512 = "f0ca79deb5450984e1f70bafddb2002f81adba022ffd2ae9c68c009fa559253f47a5fd66bb232afc5ed685721c78d7c81335e4e5e898e4a469019f98330bc602";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/74.0b7/linux-x86_64/pa-IN/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b8/linux-x86_64/pa-IN/firefox-76.0b8.tar.bz2";
       locale = "pa-IN";
       arch = "linux-x86_64";
-      sha512 = "9f29ce7b0002e41a08c64129a08a0946dd622fe69e6dcc30747d432990bcf4fa209256e74b1a7ed51364fc142449e010f6dcd61606441f1c4cfaeb4440269ae8";
+      sha512 = "6e730c323889c7d889bac2cf7d4d2fe13347c4c9ed6251ce9e3f3825e99248c896740ee24557e9238e8fe4f5b29702f6344ba4a3210279a6e6432ab94774d990";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/74.0b7/linux-x86_64/pl/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b8/linux-x86_64/pl/firefox-76.0b8.tar.bz2";
       locale = "pl";
       arch = "linux-x86_64";
-      sha512 = "c8ae484055f3b0dbc81043355903f8f8b60c3c07f431b904d4a181488461a810b8912099cc0ac23adf026e377a71a2248ba216f840ad35193d774367d484a1cf";
+      sha512 = "e48f82f35d338852abe3ddb1abcd1c06c5d401f464bed702b7b649fe29e1a8a3ae25f4a2d0b4d30615340021cc71784777eed114b1dde4a34928159b8d616ed9";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/74.0b7/linux-x86_64/pt-BR/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b8/linux-x86_64/pt-BR/firefox-76.0b8.tar.bz2";
       locale = "pt-BR";
       arch = "linux-x86_64";
-      sha512 = "7708ab164dbffcec1a90a42b18bf6520e0d1657cc33a7e96a2b241b170649c2a3808b3877bd413af835d269c3ecadcdead912bf471c6f84f811a293612257087";
+      sha512 = "cd84947d36f334740d2bc590ceaf8b052ef90c7b261712eef9c85580ee9d703e0b362ddd5d51ae24ae7bf56e2bddaf32f36081df2717e673c016ec91874f6b53";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/74.0b7/linux-x86_64/pt-PT/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b8/linux-x86_64/pt-PT/firefox-76.0b8.tar.bz2";
       locale = "pt-PT";
       arch = "linux-x86_64";
-      sha512 = "229d4ce0e510f178d08474dc663a598bddb85bcbf23db6a98aaa2179d9e8824be65da0b49313854dd96077abcbb401c1fbeb9a5e3fcff1fce457b52bf97112a6";
+      sha512 = "6c59d46bb4b740098ec69c7a573233cf871d88ec1f9a9ecfbbf5f38a4ec1977cc7d8c7b9a6ed78dde2a795d6d078a2e505646704e91ad37b09fff564585b170d";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/74.0b7/linux-x86_64/rm/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b8/linux-x86_64/rm/firefox-76.0b8.tar.bz2";
       locale = "rm";
       arch = "linux-x86_64";
-      sha512 = "1ad93043f33239894c9d38b49347445fd0e462dce882bbaea39242be93d71233fdc621c2778980bcba089d5d72e60a751fba4df663b19c0cb061bbefac5ad637";
+      sha512 = "f700e667bb8bec958501dffb33bba8cffd4bbb84cdcc9f00ddee78d43676db9afddbdf6a3d9b2ab9e58c10d2b1a2727c47224e6e824f36bcf018f7bf53b45b43";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/74.0b7/linux-x86_64/ro/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b8/linux-x86_64/ro/firefox-76.0b8.tar.bz2";
       locale = "ro";
       arch = "linux-x86_64";
-      sha512 = "4968c4a27122bac5f4bbbcf2f55064d6d42b35e7877da3a2cabc0c877e4bd70b1a5c9beb81edc4e13cd0bf34495332cc137b08a6dd223a52b8033e4a1cf10126";
+      sha512 = "e40a8935b7ad0b0656783023c622dc357921eda21583b1ed46c85a7ad2de8972167196764e98f75ee0c15ef046ebf09c99a2fa4613106c5302de8a9ce6429b97";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/74.0b7/linux-x86_64/ru/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b8/linux-x86_64/ru/firefox-76.0b8.tar.bz2";
       locale = "ru";
       arch = "linux-x86_64";
-      sha512 = "5fe2e24d79d716822463a3aa89ea63a578819a028e1f4715a5852ea1f8b05cae906b4140dc21c6fe8a2f9a33c3d37363f254dd0cc38b4c480a7e80becd2fccd8";
+      sha512 = "780f5df88cd75c306e725a48aaeae2b45ab5b30342ad74f5ce521f10dcf6b96affc92693fbc0dd1e95c927a21ec26e2fb9cfc74774040656459f2a7477520d61";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/74.0b7/linux-x86_64/si/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b8/linux-x86_64/si/firefox-76.0b8.tar.bz2";
       locale = "si";
       arch = "linux-x86_64";
-      sha512 = "10e1023ff62b4e66244a8f0e9d937b338087934d12cd9ddbb1d5935612d47668bb2e704406662efe962eec89b2dd4ea53c2369c524cfcce0b38dbed01cc3fa1b";
+      sha512 = "59a20ec7a102830976fefad4f87fa4a59ce723541b069204c03728e4c7f19cddfd74e604844da72969439542bb67e404cf5d6a649372f85250cba4fb8fb42d7c";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/74.0b7/linux-x86_64/sk/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b8/linux-x86_64/sk/firefox-76.0b8.tar.bz2";
       locale = "sk";
       arch = "linux-x86_64";
-      sha512 = "15fdb81e23eddf249eb5c2fd2f0f5ea824560a8a34f3080efa29ef484251379b9eb86afb66987311fc892c38021f81fc2664fc41d0f9eef6135e426188083a34";
+      sha512 = "56c540f1a5d46f7e67cfcf8c6197febb7e7c4761bdbd0d4250a0c79671f84ff87c3f146f549c8dab85392c7ee94d59a4fa2101d5d8b9c7379b0f39a24d37b5e8";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/74.0b7/linux-x86_64/sl/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b8/linux-x86_64/sl/firefox-76.0b8.tar.bz2";
       locale = "sl";
       arch = "linux-x86_64";
-      sha512 = "44cd71b632c0012133d68537aa4cfb5512f992ddf227901d35f9ac6034e38cf36190c4c75b95e0ab93ca172e0317922a62497e9458edb0b724d8b66ccbb06190";
+      sha512 = "af3c4e96ca34c177fdfad0203daf1a85819e731b4137bd7685ca95d33583a04fbaf54097777c571fdc0ffafc4748f57b683cdf6773177ceef1e6ffe764f780ed";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/74.0b7/linux-x86_64/son/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b8/linux-x86_64/son/firefox-76.0b8.tar.bz2";
       locale = "son";
       arch = "linux-x86_64";
-      sha512 = "419ee0cc45d6d0bef462f093b017856cbf33e1dbb190d822ea0b85bf91452f583244a876771e1680de1e68bcb0977039187dcef56b44b1cc14e4e5e2e7c3478d";
+      sha512 = "045767b189c1f8ba26bfbec61f841ae2c66c7e1b35569edb26ddbfc9169e1cb6122237d83808a87e3bb3ce4a6b1f080a9bd77bd6f8d7f731a87a894a559cab1d";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/74.0b7/linux-x86_64/sq/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b8/linux-x86_64/sq/firefox-76.0b8.tar.bz2";
       locale = "sq";
       arch = "linux-x86_64";
-      sha512 = "787ca501dcda265430e825fd890b6760b2295c812ae882bb7d07ce40f349ad2dcf4852bbfff0c6cdb56011f3948afafaf0dbe76842e0f011f9e4e15214e07b9a";
+      sha512 = "4126eedaa46dca25e491e74ad788af4ded93127061219dade8be09cd18d807b4df549178c4e1d525ba1530ddd50dc4c6e35586e7762f550cc0381bb7d9c2d7ed";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/74.0b7/linux-x86_64/sr/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b8/linux-x86_64/sr/firefox-76.0b8.tar.bz2";
       locale = "sr";
       arch = "linux-x86_64";
-      sha512 = "8bf08f9460852e66649d60b551d3d628f7507c2302f56d457f2649437d6523e74ea702115895fe2ab8ecd4a3994969b89d24094c0c41cf8ef81eca140c63f80b";
+      sha512 = "60ef4c3830baf02481d7371d4a55ad8da7b7cb059c1e7171b3aca0be159baeb287b2aeac15e0ef0936f452a12c8e6d2570f50a846af7b87f5d8e1779fcf8c8b6";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/74.0b7/linux-x86_64/sv-SE/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b8/linux-x86_64/sv-SE/firefox-76.0b8.tar.bz2";
       locale = "sv-SE";
       arch = "linux-x86_64";
-      sha512 = "75f71a1c906d86ab92c0bfa6b2d07e54b3b411037614f27b463f7f97b39a73df920300ac3c227a7c35a062c99903fee84fa685050cb9eb25bcdbacc99650ad12";
+      sha512 = "354e699c53e9b9e0a803824a4f5d00fc991adc3822a21f5842a1268e6d028c89951c943aa2461402d39b7345487bf74c73bcf1cb49ea2acbce5a24a49ace8b9c";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/74.0b7/linux-x86_64/ta/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b8/linux-x86_64/ta/firefox-76.0b8.tar.bz2";
       locale = "ta";
       arch = "linux-x86_64";
-      sha512 = "cc147836101fd0b17d24f696fa0e5d4a4fdc2579f21deaf95757a3213d967e6e934691af5c7fa84bee9a5e0a3dab37067c8d44be821eb5f145fdbb5cd96c30dd";
+      sha512 = "ada3a7ee976f82841096b9cd80fc1af79000833cf65971b3c141f70cb9ede5a523c6e7e8f6be36d6a175c7b1e8415f95a84553d21b35bed90bf1865861ed9d19";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/74.0b7/linux-x86_64/te/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b8/linux-x86_64/te/firefox-76.0b8.tar.bz2";
       locale = "te";
       arch = "linux-x86_64";
-      sha512 = "f4ec0d17d604caad1b3eb37b413b9685bcd39517e680e1636ab007cc4cdb253e71a2643c85436be72de2fa62bda13dad6787e2e8fdda3689e421818d2bfa4fa5";
+      sha512 = "ec9d5f601856bdedfa4f005692911e4e9a5afc88d8c0a5551e507ccebe28f2280b2ee3f842df5255e1cca5b1e35308354827d8c6006c593366a08e917622366c";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/74.0b7/linux-x86_64/th/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b8/linux-x86_64/th/firefox-76.0b8.tar.bz2";
       locale = "th";
       arch = "linux-x86_64";
-      sha512 = "f09b98036d5822d588a1afd3befeca14748d9f7938ff101f0555d740f5586462c07ebf76c90a3238636a3d37fe3f5a90b26fcae1de8658cc0db712e2ce3d2116";
+      sha512 = "e939d4888cb59e0a1f066c641c213bdf33ad56c60e73eb7b97983026249b223f2465703bf8df931b6b844ced18a8703b77310ac61c847be054eb83b8196dea6e";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/74.0b7/linux-x86_64/tl/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b8/linux-x86_64/tl/firefox-76.0b8.tar.bz2";
       locale = "tl";
       arch = "linux-x86_64";
-      sha512 = "28ff7d5cbd6a41ad2887dee8c04b4e129d588cd20758a2f2233cc69e6ea24cfe7013f5f21524be30139e243fd6bcae1193949b653360db65d8544e6cb654459c";
+      sha512 = "4f269b9ce6f25e236f00374e68438d09cb30107babbe3fcaf88312b7abdcf8d4a5b619860e3e4010f367b341646cc9de027ee094f175cb144a00bef47f427806";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/74.0b7/linux-x86_64/tr/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b8/linux-x86_64/tr/firefox-76.0b8.tar.bz2";
       locale = "tr";
       arch = "linux-x86_64";
-      sha512 = "2b676a0d0db8edb3f1af3174b7543f6cd704a61197ce9f505eecc53f7431c66c1b0853a0d5cf57c9ec601377bbf66efddbe648ec992b4e518e85bc83c8f052e1";
+      sha512 = "9275209304112ead1c200f9f62386de665922bedfe8501f5975a7598a6ab19ec6941fa61cec4904fabf75d76c42105f7abcf86d91c746b609bcbc6957b8c40b5";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/74.0b7/linux-x86_64/trs/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b8/linux-x86_64/trs/firefox-76.0b8.tar.bz2";
       locale = "trs";
       arch = "linux-x86_64";
-      sha512 = "0a934e3106d9e99e6bc2d93d7f50d6a87e146f0a5d771a6a9f52a18db8cbc59ded661443d6bed42c148e6981e8d809f3449b27bce9194d584f6d457edab1b549";
+      sha512 = "4b06342ca02d40b6bf9de58e50d29ff2ffd3ffba60e79b6aafc7e59a1ff8bc28e1d32ef6fed7ab5d90d5224fb98ea11aee57c758938ae84015c52202be97a300";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/74.0b7/linux-x86_64/uk/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b8/linux-x86_64/uk/firefox-76.0b8.tar.bz2";
       locale = "uk";
       arch = "linux-x86_64";
-      sha512 = "3860b93570cb44849ba351b15318425c8a5a2e3dc82f6a229cfaba21d22245f74b56672ab82fc48d52c250c528b9bccf53d25b6d358e5b02493b6fdd82037f4d";
+      sha512 = "02189417dac9ad1371fedf3a2909d3a1cb612566d653255a58402dd79656a56fdd859b23aa7b9872a928d2ac088e96bc9d24d97504ac183d6e3c7baec8c072a2";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/74.0b7/linux-x86_64/ur/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b8/linux-x86_64/ur/firefox-76.0b8.tar.bz2";
       locale = "ur";
       arch = "linux-x86_64";
-      sha512 = "89ff25d895fd5a484ea78ee6be21b7789998215847445d8aec7487966042fd88e5703938274245b940807d7f668f21b41b8eca5eff0d5ac715f3958ed8a32dce";
+      sha512 = "6a629c7c06883c0cb3d62f69d996c6778a0929802bfa086fded6f7b5d3572e615f6280a68b3343c43a111c02ff6b18f77ed411029ce9c6084c98f418f9cf5fa9";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/74.0b7/linux-x86_64/uz/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b8/linux-x86_64/uz/firefox-76.0b8.tar.bz2";
       locale = "uz";
       arch = "linux-x86_64";
-      sha512 = "60cb02c912f359915ceb6732a1b8c358177966bb24ac7849362b865b1570b31266e9a9f2790384eb2ba6c15298642e8e112ee85c9cae1da65b62eea5332f65a1";
+      sha512 = "f890c9c046244c476250ec89821f5de5a2e0a2acf12be2ece12b192276163dd9c86c046e8d22280592fc0b22e799b3681a3138a624564f45e3ce3e17dab20119";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/74.0b7/linux-x86_64/vi/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b8/linux-x86_64/vi/firefox-76.0b8.tar.bz2";
       locale = "vi";
       arch = "linux-x86_64";
-      sha512 = "b19c3a265bd2f218d1f7012397c081690f8c949d4146c0d504409858b323a9084c00e04e540904d82c31ebe586a47d1cadf3f9ed74be0d20544af7ab95583486";
+      sha512 = "360cb88f79705ac8b6e50a52ef23b10923a15c952795f1bc885cff09d99e23f200b7e67ca8637fad0447abfdb07ee9526f26ffbc424cc6c9bda399da0e4ef0b6";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/74.0b7/linux-x86_64/xh/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b8/linux-x86_64/xh/firefox-76.0b8.tar.bz2";
       locale = "xh";
       arch = "linux-x86_64";
-      sha512 = "d0e177251ee7c2f756083f1f19993d16c365d77f4be3811a11e6f93384cf58c23ae8579a9a65cf289264e0e45705226b4cd1365dda3f8731d95c2b0d20912066";
+      sha512 = "03cf616b1bcf80c2dda6a6eba15f28b9e5c8741aa37c383c3b16b6f1ddc834d51fd144ce3484709335e06119769bc021da6d1006cb385929451d6db1f1480a4e";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/74.0b7/linux-x86_64/zh-CN/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b8/linux-x86_64/zh-CN/firefox-76.0b8.tar.bz2";
       locale = "zh-CN";
       arch = "linux-x86_64";
-      sha512 = "30bf6bc54b91826ed9fa30988f069afa7b13e35d3ca0441f10107abb367c970080217123b22bf4ddf046db99394e9df46d825d91e5fd4ff717f3f025b3d54159";
+      sha512 = "de16b1013dba1726a146c3212310da5e51f6dc706ae1e5fbda60e1181ab19510a485908bad50b6a4d87ed1e56027627777bb005bfc2a5e104df9f7d1e95cd7db";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/74.0b7/linux-x86_64/zh-TW/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b8/linux-x86_64/zh-TW/firefox-76.0b8.tar.bz2";
       locale = "zh-TW";
       arch = "linux-x86_64";
-      sha512 = "b10365171ba6fc4265f9684524d1270c7dbbc1890fe01154c7c4286335523a3ee7bc98fe8e86f874a584fdf30bd64746c9e3c62ffc48b55e97f9f728ec844910";
+      sha512 = "15826e8a03c1c0496a7d9ffcec580f283b789c594f6dfa64de2ac8bc86398d2cd267a84a274a94063d980cbf984741f1754c644451dcb1e56d06c1c8393d1294";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/74.0b7/linux-i686/ach/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b8/linux-i686/ach/firefox-76.0b8.tar.bz2";
       locale = "ach";
       arch = "linux-i686";
-      sha512 = "54cf3f1a2b73f95e6ebd276c5b9ca40ee598c67e8a8f308ca969a79532614a10c9dd4e06f0a5f2d580a514009938a493676d46c969a257c1d3d90ea20d588a4d";
+      sha512 = "619cef2ed7c9a8fa67723548aa826926f0dbe34996a1c6132571173a15c15dc7a8f9165296f4a94e1b8beebf67cdf79c388fdc898a013cf25985b4fdb4a5c200";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/74.0b7/linux-i686/af/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b8/linux-i686/af/firefox-76.0b8.tar.bz2";
       locale = "af";
       arch = "linux-i686";
-      sha512 = "dede24db1ca9c1064b8afa51e87187e9eddfe8f3f159bf268227e941c7d9edd08823927c10b6681eb79c335db567575c0e0a10eeb24561deff0e587d4d5d6f78";
+      sha512 = "3815642e4bab2ffeab6208d9c6901c80c89a42dc8453a97ff288da7847f033402bd48c0eba8a8e62f0c696fba75f95e7dc9795089894e99c70306cf4e40d37fc";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/74.0b7/linux-i686/an/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b8/linux-i686/an/firefox-76.0b8.tar.bz2";
       locale = "an";
       arch = "linux-i686";
-      sha512 = "841d9c1b70a1ec0a58939abfd7c5932c7db76ccf1b77f7950ef3e4a7541219120d638562d96159d9f6606ad9090db04796c7b5e1048192fadf5a490ee2489135";
+      sha512 = "b6a740e7273be146958a99a5a4e16f7c1c7e21b8df76d22473c6ca16e510d7f37fd9fdcb672c2d6ad29aa354a20ee3a7c5a9aaa03b9332ea3f5b460e7d271565";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/74.0b7/linux-i686/ar/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b8/linux-i686/ar/firefox-76.0b8.tar.bz2";
       locale = "ar";
       arch = "linux-i686";
-      sha512 = "7e12b8cae568f82de67d8f4848a092ddab634fb8c3ef3caeba4f7bceacdb260a12cce70df7fd80c30ac3b227647755141fb367aafe692db31c0e58415a9fbf85";
+      sha512 = "e3fab302b21d5f6de8b41faec14cfd842def6f2a65259cd8d5b0b481fca33bece3e7fa4610c60013153b676dc9e53d790734d27837e4701b393e322c5eb0f602";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/74.0b7/linux-i686/ast/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b8/linux-i686/ast/firefox-76.0b8.tar.bz2";
       locale = "ast";
       arch = "linux-i686";
-      sha512 = "c3b52dc3eb427e24e2566c383f8acc1119f6f6db5447ff6aeffccd65c97f370532252aca2bfc7bc83ae1c98824c8ee9e39b76a50ab3b5849669621ca9446e136";
+      sha512 = "28f62c0a906283c1ebfd47e598918349c066c33512d3fff2daa44885faadbfa8b00309254b754d758d86acf23bd4ebde9142e56302c23ffcdbbe2baac6fd6e47";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/74.0b7/linux-i686/az/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b8/linux-i686/az/firefox-76.0b8.tar.bz2";
       locale = "az";
       arch = "linux-i686";
-      sha512 = "7d61d36d5dddb26de5face1f53aa74104b3a451eed26a194d4918cfd5e1c8983007b2ec37c60327d1c733b6595521c88d327a2b71e3e237b0ba2b52f06d6c659";
+      sha512 = "c9e00425a869501867f20b22c85e72dce9798437ee8afe718eb21c06acadd9d618d614e25463f84d0a31901261d92603374f9b2b91879e19973d50942ae6774a";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/74.0b7/linux-i686/be/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b8/linux-i686/be/firefox-76.0b8.tar.bz2";
       locale = "be";
       arch = "linux-i686";
-      sha512 = "233258a22818b7a3b6726dfa3fa8d3e702d3ee28440ff987676472e8b865bc23907adab61ce994648617a9e83fd530afce567f77536c3fcdb7434c9d1663ca5c";
+      sha512 = "58811c55d4a5f41e3ef8b378c00a9a08adfbb48294eb20c32dbaffd972e1df1ae55191a8ad5c4705002f07d3b7d3eda90ec759b805995c14c29fdb8707517378";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/74.0b7/linux-i686/bg/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b8/linux-i686/bg/firefox-76.0b8.tar.bz2";
       locale = "bg";
       arch = "linux-i686";
-      sha512 = "8a5170979d50e1e2546fbad96dcba9d5fbc1618b4c6faf770c417e44308dd22ee0aa27a5b18f5f073f7b555f064744c4b1b627e6648afc2c5a120093c747682c";
+      sha512 = "428b34c8dd2c926dbbbd2a8ccd72ea7f023e5fb0e9cb664810d29df1008ab744eeefdd34f6f6de1596f3fd7da9d2e3b23d5c216c8a9ac94b96aefe5fe987828e";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/74.0b7/linux-i686/bn/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b8/linux-i686/bn/firefox-76.0b8.tar.bz2";
       locale = "bn";
       arch = "linux-i686";
-      sha512 = "76a3a07092cf6d921b94031a2b3baa8e7d356df3b49dfa9e0d7310c87f020236d7b8525532e26a77156a465bc70bdc477f285223e4f3adba81dab63165023951";
+      sha512 = "5f1d54165939ef8448a5abb734f8bb914626964493e9ace1a483f5d6003c0fb087e6cc1d76afdc15c1fe563ec64f022233204be92a5705d8456a6cf75219cb4a";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/74.0b7/linux-i686/br/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b8/linux-i686/br/firefox-76.0b8.tar.bz2";
       locale = "br";
       arch = "linux-i686";
-      sha512 = "b64af8927deeda0460144e05ef1c8bf8eae4fa3932fdf8f1e0d23a9df417296e7e195946b2d5090c8986af0b5561a26a3098cd0b01b4dd1353ac8b55a192ae8a";
+      sha512 = "4eed64845ca603e21de1e60632b7d75e4bff5a5a2af792131de4141a2454fc8922109f67c13c9cd97032e3cb2cfa4d5a0ca3cb3e64faf2754fe44d8a161c464e";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/74.0b7/linux-i686/bs/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b8/linux-i686/bs/firefox-76.0b8.tar.bz2";
       locale = "bs";
       arch = "linux-i686";
-      sha512 = "ec02811bdc0ee960fa05e676a1d5d92dac953e8db66919d2e1f2ec1f4ef426438b242bf34e0e1fe10d7735605e17da0efbc5b50a7caea2827cd41d0f2cc22e3d";
+      sha512 = "7525926461a5e89d4aad85bf3176ff36c39fa18131ead378ddce015688830051dcabb4eb3dd05922d84ea2fdb666dc8a2f8751c6bb3405b4c6e1f7a5241dcfed";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/74.0b7/linux-i686/ca-valencia/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b8/linux-i686/ca-valencia/firefox-76.0b8.tar.bz2";
       locale = "ca-valencia";
       arch = "linux-i686";
-      sha512 = "5d2191d153d02525a50667faf39f8454da9fd87154e205fc00d085bd2e8ffb4216f5b08716ef6464e0788ea100f4241bfe2d746f57a503e9098929fb5674f286";
+      sha512 = "3ccda6fade937406e9ad8c609e1cbecc2ebc064d0793e9facf3910569ad5f8997d8e9165a60d59de645d29bf1411a439904af504a5daf519774bcd76a371b567";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/74.0b7/linux-i686/ca/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b8/linux-i686/ca/firefox-76.0b8.tar.bz2";
       locale = "ca";
       arch = "linux-i686";
-      sha512 = "74ff21b0633a76c726bb3de02d6f148083e72e1db622ddf8f188e5181bff9808475db7d7f94a0384f6b17682ef74b0f531c1e00aed2ac572f5690ebf5cb8c6cf";
+      sha512 = "d1a6c8a42fb947547d460d8d244f0b091f609aa3590fab7a785a5a9aebffcbb96fd6254797b19ea3b0bacc8ba086db210ead35260cac69d980432fc0a7a7b9e1";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/74.0b7/linux-i686/cak/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b8/linux-i686/cak/firefox-76.0b8.tar.bz2";
       locale = "cak";
       arch = "linux-i686";
-      sha512 = "3a303ff95a0ac27ed0c8b4993b858305e36c95d69e144af2b7ac9eb08de5527739f37c97f7cc762094ec9b68f86a2a676b1c59768b447ca95cb4f7674e86e579";
+      sha512 = "b0052bbd85357bf6bd3d550021013d3f97cde943be85c08835e9d51b829f9fa66fb3a34937f806552373bcce2f36d949ea872f0eae115e7b1d13382502fd2c3b";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/74.0b7/linux-i686/cs/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b8/linux-i686/cs/firefox-76.0b8.tar.bz2";
       locale = "cs";
       arch = "linux-i686";
-      sha512 = "15e5a4c4c6a81c3c23ddca3deb09766c22525681075e3f488b0e4bf9c2dac5fdeb859aa41522d76eac5ae342b7cf9b962968d186bd86d1a5d942ba554bb7980a";
+      sha512 = "8f8f91ee726b3526b0d375f6075e466781fae463e55f8e7140b859e4418466c3653a3a39ef69c5395393840e8d09188d1be503ef7ac9cd2f34bce7fb6fc8719d";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/74.0b7/linux-i686/cy/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b8/linux-i686/cy/firefox-76.0b8.tar.bz2";
       locale = "cy";
       arch = "linux-i686";
-      sha512 = "3d8b06c9cbd823c331184c5372748881d91b6673f2bcb2c201bd052ca7bc6db36f502fb5b6d8b5880df34574ca860fee32f675c32157c9cc2fd022f1bb420672";
+      sha512 = "895f1e28b998d27c99ae8cfd8f6bdb94dc526d5dfe39d537e5ece92a76b8ea3a9905197c40967e7e90bed60567628dfb23219843dcb313bc65b8dc1300dca51d";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/74.0b7/linux-i686/da/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b8/linux-i686/da/firefox-76.0b8.tar.bz2";
       locale = "da";
       arch = "linux-i686";
-      sha512 = "8bf4415f1c2402767a7d7cb30fb32f5f7f3ebe8131790c4bc5d8520447b4970a4e55b7b102e532bb24ed8ca431027f7d407932cae0ea7b06f23415854910c677";
+      sha512 = "3b206e9d0b2fea0fc445617fce9c9908d0d4ca15e68ac04fbab74dbb7239c986de7f5e0a5ab601f25b3481a20eb9fe1f39aaa535ba24fd6e1c76fefe81e26474";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/74.0b7/linux-i686/de/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b8/linux-i686/de/firefox-76.0b8.tar.bz2";
       locale = "de";
       arch = "linux-i686";
-      sha512 = "8163578f08c87792a890c52fb1b7a5af1ed16b7065013593d72e7af6b8321467b2230eb5537e5443bf86c8a4eafd47710a9181e4fb3c22f5039dc40fd2f9fa84";
+      sha512 = "8a9293278b5a426aeb3f1da45fc5c8d8508297a81534c33ed3d032fcb0a0c67eb4cac72b591f4fed9b159934b1e3f84a6996f665ec7955f37b6acef78886ac3c";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/74.0b7/linux-i686/dsb/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b8/linux-i686/dsb/firefox-76.0b8.tar.bz2";
       locale = "dsb";
       arch = "linux-i686";
-      sha512 = "3c7fe1cd45fa52f5d0f385c2549f4b146291fafd8828ed4a5e68f8b79c5163ca81f052149222f80c48246da45bfc0ec35769dedccb4b3af66a1b35b983007ee1";
+      sha512 = "edc302624c544c455f1799b271b0c6590131f0e01e4cf1691fb8f6fa3b470ff9a5b4db301ca87ae97ede4482782d802e24233d20d84dc8adc2b18deb25b249e5";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/74.0b7/linux-i686/el/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b8/linux-i686/el/firefox-76.0b8.tar.bz2";
       locale = "el";
       arch = "linux-i686";
-      sha512 = "a5319e5daaa3721e6b47fd7b338acb1ccc6f9f316d127d4fc83fe5be13411e68b0fa597f5ab5f44a290eeb848fd58b5db28fa25749ca4a8180cd32e765bcfbd8";
+      sha512 = "98259fefb0d9a3ff9d5e80afe251cb001c767736887d6c342d857536a031d013442a271b3aeb1c227c789a5695e134b31a81777ca7d13249451bce4325bc9a8e";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/74.0b7/linux-i686/en-CA/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b8/linux-i686/en-CA/firefox-76.0b8.tar.bz2";
       locale = "en-CA";
       arch = "linux-i686";
-      sha512 = "bb9a61e88c9d847fb579b35e4fd603c7d1b18114de00b155cd7816bb72f4bfbb3f5988703f2c2333446fb9e0092c0656c5d6cddc41f84a0c004fce9f057787b9";
+      sha512 = "f0f8d81d0700d8539a9697001a9bdbfc75a36e3f4a1786d46e5dbdb77f61d69df10097040ea8e5aaf722b7eb578a58300c2feb32bc010443fdbd2e5eeef1eff5";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/74.0b7/linux-i686/en-GB/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b8/linux-i686/en-GB/firefox-76.0b8.tar.bz2";
       locale = "en-GB";
       arch = "linux-i686";
-      sha512 = "6e2afbf7ca225ce980928931073be020e9c4421d8780449a8ce5d46e3e1cd122d5be813054b2abf57c9e5f8f680ae1dc05ea733336e7e9479c3b04116a119f51";
+      sha512 = "97994f92d574726cf0553378f3a0a90d32cf92b8810b33a4c422355ae5dd5ce7f411352f8f45311c24caea005b727a2886bc60589231608604f97dd684e5e3db";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/74.0b7/linux-i686/en-US/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b8/linux-i686/en-US/firefox-76.0b8.tar.bz2";
       locale = "en-US";
       arch = "linux-i686";
-      sha512 = "d0a72bac65daf49aba93e84c781830fb4f6fa365d8e5aa23571aa52fb0f0058465afe7b84b40330d6e5abd8403ca075fc787343af724664ce1d328a0d7523864";
+      sha512 = "8e212c9b394d887ec8a27e47fab45f15e4d179b82332605360a951fc4bed5693be1136bddd8821ecbd31aca926a1277cf9f1fdcd07e365ada5ad35e19c64e213";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/74.0b7/linux-i686/eo/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b8/linux-i686/eo/firefox-76.0b8.tar.bz2";
       locale = "eo";
       arch = "linux-i686";
-      sha512 = "3ccb3970b2623a31e741d7c88aa2e5f3c71bdca83ffded16508939fe9d2ed431b2b83d09deb00e2d5fadb0915b8d17c8a7e1073f5585167c28bbe41c9e03d94d";
+      sha512 = "f8ef36d7d4cb44a170fe575d6bf94854549eb311422ea5c6ce9220f6852d76c7d1d9b65f8f959526b6d91e88b1dc34bff6f30d8534fe565574b78b045a652662";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/74.0b7/linux-i686/es-AR/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b8/linux-i686/es-AR/firefox-76.0b8.tar.bz2";
       locale = "es-AR";
       arch = "linux-i686";
-      sha512 = "c59405042b68ef5f7e50428700440972c082436950d03e2988ff2187c28767d709ac4a4cda71241c3c2f619db2f9e5cad38e3c9631300fa86ada966d6659015c";
+      sha512 = "6a6a67453a7b48f635b2ec0b6fd34ded5d1624a375ff526ec1693affb77d7c503215d91a29c0a266228f2f1780f0f5e6b8ab215e810faa8eb5bed5a36c998975";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/74.0b7/linux-i686/es-CL/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b8/linux-i686/es-CL/firefox-76.0b8.tar.bz2";
       locale = "es-CL";
       arch = "linux-i686";
-      sha512 = "12666d98f08d3de2385d47e6b864c548c9dbc95dc34a1dc52b2a893650859bd383586e7870cceb591471e3e9edb47027198896971e29d2e5eff4ec3bbab978f7";
+      sha512 = "7755a4cd53704f28a137d8588a969475df4ae444e1a15591941cb409528deda93b45bcd4cc0d8a10321402f01ca8439db6ee0d634a1a50f964d824e61cdc789c";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/74.0b7/linux-i686/es-ES/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b8/linux-i686/es-ES/firefox-76.0b8.tar.bz2";
       locale = "es-ES";
       arch = "linux-i686";
-      sha512 = "0af2573f041b1b7e4fa8b1698c221e986bf83389966f5937b66d13e68a544fb366871e1a5316b675a5af00db9992478b00a1569953c194754dd6bb449bda4da3";
+      sha512 = "88b173d9b150f4973fb59d3bc51c3cb5f9e2580805310a73f2de993f6cb053c2c8a09d97c6979a7a501610d924a97ed6cd848325ba5142680c2e7e83ed026c37";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/74.0b7/linux-i686/es-MX/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b8/linux-i686/es-MX/firefox-76.0b8.tar.bz2";
       locale = "es-MX";
       arch = "linux-i686";
-      sha512 = "6eaa4cb7db3d5c129853a8457eff48fc619c8da16127bb4158633f001a8459578550f9feb3883bf1590857dd9ecfc99666372306ff86d6275d66523d2ea7f590";
+      sha512 = "e84b113f5c8a4d5a242c174fb5752e23be54bdd79d19926ac46f29ffd7d0d5d2d35a7f2aba68967c0cf0a352a8bc8f5e7ff50883a1423a99d811a260323475af";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/74.0b7/linux-i686/et/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b8/linux-i686/et/firefox-76.0b8.tar.bz2";
       locale = "et";
       arch = "linux-i686";
-      sha512 = "fb0fcef92df95bf3d9be3ff49a87bee5e98d123008d07455557fe2f282ca53a3763103ffcde2d63c395c45ffc24e994b4d182dc6b72f78118ed972ce007f5405";
+      sha512 = "6618cdd88ff48e3ab9b1d5f301d668c5ed1e659c3777cf1d87f7fb33c8698659766291b821f1fda11d13a72e50321a48afdc42438f96a8e827b2cb6712a60e66";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/74.0b7/linux-i686/eu/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b8/linux-i686/eu/firefox-76.0b8.tar.bz2";
       locale = "eu";
       arch = "linux-i686";
-      sha512 = "63528ff70397a343c23660b6e281924056c3d15581f9d090b1f546422074bbc4727732c763d03670bee0d7e58dcfc5753418a885b10a36b09c11c1ab3b55a643";
+      sha512 = "56488e4dc90422b1df30265dedfbb2d0ed9e2569b989d642e83d68f71be8e5c45caa9e7df0849993b7763ed91dba937a66231288cc821cc753e9631ee1cc6118";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/74.0b7/linux-i686/fa/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b8/linux-i686/fa/firefox-76.0b8.tar.bz2";
       locale = "fa";
       arch = "linux-i686";
-      sha512 = "1a5416eb730a81ace3675542f7c870f1c0b083a86dfadc7b027244caa283a29486175c6a2cf1ffac3ed8d2e0a1600dad1e2d63216a91c6322164308cd1e590ce";
+      sha512 = "87c044f5b2e86c65f03b164b4875805c01fdbeb8cc1f1a431c3e8dc1c5f7cfe5e836e2c32cf4a6a26621c3a9f06a831edca828b5a343d8547e69684c6da23924";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/74.0b7/linux-i686/ff/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b8/linux-i686/ff/firefox-76.0b8.tar.bz2";
       locale = "ff";
       arch = "linux-i686";
-      sha512 = "29017cf396ad93e5c9ed098ee6324a0a49183965c1983935187d3de644cd3522c2fec34b61d12b4527d4cff307e0f2945b616711ac5ebfddaa982ec3467697e6";
+      sha512 = "22722fb25b81ae05faad99a81af7aa21489c0fc031ce039c7f917f0d329160748f7ee6378c53e26846c466a472b19f88fb0a71080b37f16fc036f4199b75f67e";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/74.0b7/linux-i686/fi/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b8/linux-i686/fi/firefox-76.0b8.tar.bz2";
       locale = "fi";
       arch = "linux-i686";
-      sha512 = "653ec6123b84002602413e89c152d6cb406be55d9a9fa5ff72839c0b90d3bf1a87a32d2e113ae907721f53f85397621d7a06bf3e38a32bc274b89bf1a7487e98";
+      sha512 = "680e8889e1b4b162118dd781cc43a928ab07359d31d61f0e2053223d5eb858d24a12a81dffa3ba562428d958940019b0a775867553cdc5156d2c380f1ff98d13";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/74.0b7/linux-i686/fr/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b8/linux-i686/fr/firefox-76.0b8.tar.bz2";
       locale = "fr";
       arch = "linux-i686";
-      sha512 = "7845a7c8c1e9f844e4f01414bd52f172bf397c6eb8bfa0033c0216c30f8c14ff7ccc5a213428d187f571e8fc4ff393dbe37180510da4a1b4154f63b2a4285e55";
+      sha512 = "45d39ff9ef3de3229e1a6799fbbfe8ea9e773041c9f98998aaf07a41146cf8a034a46927df8003d953ecc10ce50b375b311fef5b3cd532952761b6d05c4316db";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/74.0b7/linux-i686/fy-NL/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b8/linux-i686/fy-NL/firefox-76.0b8.tar.bz2";
       locale = "fy-NL";
       arch = "linux-i686";
-      sha512 = "9cd9f134c4ce2b5d465c608f211acb45f50d9d3a0c200e9080fbbeba13f25f5faed6b6baa1a9149f88b3806f4027e72866e004e3934d0331f10e25673fb213cb";
+      sha512 = "5b6b196fcd7c1a23664e10a0351a5f13e2168ede27627a1aa66a6c6e586095c47de071e917b82092f6df72540e50a93fa95e0c81e0e06687517622ffcb9b8a6b";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/74.0b7/linux-i686/ga-IE/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b8/linux-i686/ga-IE/firefox-76.0b8.tar.bz2";
       locale = "ga-IE";
       arch = "linux-i686";
-      sha512 = "2a75c341c77530075d8598efef163f245040c602a62380fa0792b32c746e455ffd2a1220fecdf321db665cb6ac0d1d7963a7750e733ca59f1c413449ec1df9e8";
+      sha512 = "44d1554d851e650f2121183059625f3c8f633c50b309cfbad2cd0dd3b3c7cfcda33c8a14ab74fbb3481725c530c5140363dca573a4e686d6921974c191da093a";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/74.0b7/linux-i686/gd/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b8/linux-i686/gd/firefox-76.0b8.tar.bz2";
       locale = "gd";
       arch = "linux-i686";
-      sha512 = "5bed7e36547adcfed70f68ffe5112029e5a03dd900f9f35efb7ac2d5c9e18e051bb26000ae9b157f9d2855db701122fdec826944e1ced7a67d78d257801c17e9";
+      sha512 = "b8210e2afd5f13522dd367baf6724a0982ab0a98b548b1f2e6fc3af93d704a4e5929ed4e235f292ed666b6064beb5e1e463d715c8c14bfb47cf9b2687e321b1d";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/74.0b7/linux-i686/gl/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b8/linux-i686/gl/firefox-76.0b8.tar.bz2";
       locale = "gl";
       arch = "linux-i686";
-      sha512 = "fa5c6453ba164c5c14c33bcdba3defe56bc19df2494a26f4666477d950606f69e69fe2d3d162b9dea506308b28b8728e0cfd31c343b0b1ffcd164c2f580246b8";
+      sha512 = "96349751178a2cf264e1ec27c74ba725d2c3a9b54641bc4964e5d8237d3d6b6f98c116d44b883aad132ba7c4962c3c1b471fec08394e969dcff42598fdea6841";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/74.0b7/linux-i686/gn/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b8/linux-i686/gn/firefox-76.0b8.tar.bz2";
       locale = "gn";
       arch = "linux-i686";
-      sha512 = "29a584ba3ec860fb44b06bad43fa9ef02cabf5bb14ae65e54f732d195af11b9acd3dcca5be7939b3790126cdd4882109a645dd31cb0da41e8469f81edcc87b99";
+      sha512 = "61b270273fae12b485d93707d358e5a3d7a9198ad147e31c2fac2465f65c9d6a803326fb042ec0a6de2d46cfc61e505b09f6093a7f62e3dd69b8e44e017d7b26";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/74.0b7/linux-i686/gu-IN/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b8/linux-i686/gu-IN/firefox-76.0b8.tar.bz2";
       locale = "gu-IN";
       arch = "linux-i686";
-      sha512 = "553942bf2da825b5173b4076b534db357a56f180e77663c132cb1392a678ab2d42d532d073aa99c0de40e0f0ebb622d321c01fc0f2f20d2ec6ba426588219955";
+      sha512 = "52e497831de58f7abb221b4906f0fb64182a04a93e8d7ee83d42a1391f029e4873dbe977b4e8a405d0acff537d98504f659971075b9b76e33c09a46607a6106a";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/74.0b7/linux-i686/he/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b8/linux-i686/he/firefox-76.0b8.tar.bz2";
       locale = "he";
       arch = "linux-i686";
-      sha512 = "7dcdb7443875614d0ef9820390c672b324a4742c4b3f50bcf0b42caaadd5c113777ae684406f5a5beed975c81d12e9d2df4e0211e4187dafe2cad351d23d5140";
+      sha512 = "8212b67f9447128a4cb9ee0864c50d07fd3595de15d8e3c6bf4a8f3b19bd2288ea1f55b7fe003f75249db6de0a8aa4ad6962b2913657bbdfbbf282cbc14a77e0";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/74.0b7/linux-i686/hi-IN/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b8/linux-i686/hi-IN/firefox-76.0b8.tar.bz2";
       locale = "hi-IN";
       arch = "linux-i686";
-      sha512 = "2267a22af52773bbd793ec9591ac0fe42db52b61d396a040bf2583ca58c8a97a651dac26922335aa35c830523f4d0074568d45c5e74c4aef7b541d0a76a08189";
+      sha512 = "61e8954d14b9b7f06919c23d60eba00213c57709a5013c4a9b3376f7823f5eec262ed891a24857fe5e5efcd0245bcfe474c3838f1463dfa38427c4335ce7f1e7";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/74.0b7/linux-i686/hr/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b8/linux-i686/hr/firefox-76.0b8.tar.bz2";
       locale = "hr";
       arch = "linux-i686";
-      sha512 = "8b0cdf350f423fd695b291296a345cf8d5b194d0a762f99b6d0d066b723f9e374ea40f93e08657c9e6ca8d824ca6a5465c7fc935688c1c859a6c783a1b409cea";
+      sha512 = "a58c582cf0a9dd154ab53819197eb4c84fdacb2133e59b367df5111a5807c4ac63d1ca0b2567fa218a64f570b19dda9b70b13a2c15d2359cdf962f241d4ea275";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/74.0b7/linux-i686/hsb/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b8/linux-i686/hsb/firefox-76.0b8.tar.bz2";
       locale = "hsb";
       arch = "linux-i686";
-      sha512 = "214d1b272b9d1c6aeae23c221ed76b0966e0d9d2b9c52f53b65f3eac6727e4d9e840f427ff62f37fb8a1103f2a81c2baff18f5f9ca6e3b776ccf00127a2796ed";
+      sha512 = "fdd4d7618fda5b950fcdfba0c47c27311881bdd62d1ba2028ba13adabb4beda99351c97a3ac0d3e7c1d9b9fdbe5e32bd04c4863f24e76144f6b21725a5d5d8d2";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/74.0b7/linux-i686/hu/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b8/linux-i686/hu/firefox-76.0b8.tar.bz2";
       locale = "hu";
       arch = "linux-i686";
-      sha512 = "37f1f312899525e83103062d1d51074303459ba845570781b0ed34702cff5779329615cb38846db9728f8ae242ead2c7ce7dc8207e8dfb8419c1f9146570f4b5";
+      sha512 = "2d6455843faa19b8fcd401a897eb03b76bcb5da784b6aa8598e88d1b3d44ffbccbcd01d9480fdfd61039197f8e6dba86353e400cfa9537568d81debd31428c50";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/74.0b7/linux-i686/hy-AM/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b8/linux-i686/hy-AM/firefox-76.0b8.tar.bz2";
       locale = "hy-AM";
       arch = "linux-i686";
-      sha512 = "64fd466a0d9d6e32cfda8a320f189f40bd8426c41e5401097936d1bc92cd760ea8ed2dd86366a914311a7994d904e55ef7310433cb91b7edfbb3b3a5248005b0";
+      sha512 = "6ea49a50bf8e22e6caffc95936cadf3e6373b131b10a5a96faffe786a9a9a4ca8737600cec76c071bab4a20f7c05003f25d3f573af6450a5c995e08e3b939acb";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/74.0b7/linux-i686/ia/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b8/linux-i686/ia/firefox-76.0b8.tar.bz2";
       locale = "ia";
       arch = "linux-i686";
-      sha512 = "e13b02893891cae774fba02de7d2f15d57d0912f3985d2d5ec2d4c9299f54cdd0fb7d0f75a2e1643ff2be4e85944ab71df822b3dfa4e189b7728d4f97cbe3dd0";
+      sha512 = "7f5bfb9d4c7debcfb8a19c59f464a47af4f729d780b3940420326303d129f93363a6b9d606285d6d1e87b51d538b8573911356be2318b72e9544adaa0c64cc83";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/74.0b7/linux-i686/id/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b8/linux-i686/id/firefox-76.0b8.tar.bz2";
       locale = "id";
       arch = "linux-i686";
-      sha512 = "1aa455734b272e4b1d31c8c252604fd9d8a37def3fa6085cf6927815a661344c22d2b100c1c155b508d1b2a809dcaa68ba1090020a852699756c7f494ac1980b";
+      sha512 = "f98fa51506a9c5f8da4ce090778eb675ab922970a94f7fcc93b2f0af20b08889238188f8def9f001ca757b68cc321f7f023023b53c2d2c1f87dc645d9a9489a8";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/74.0b7/linux-i686/is/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b8/linux-i686/is/firefox-76.0b8.tar.bz2";
       locale = "is";
       arch = "linux-i686";
-      sha512 = "60a50ea36dfb707ce877074fd68ca8fe95d9367f57350e35af9a252c1235a34b05f4d8ec2d76daa2f4bdc1026086924c53ea1f75d130286a124425b3d6dc603b";
+      sha512 = "54a2ec07da6259d6fcbf38a9bda6636fda9a15dad5188c3a8cf5a80bd813ce5c399d44daba0ba49281a7d503ee38542753560ca322324d86bc528c509b34d3c8";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/74.0b7/linux-i686/it/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b8/linux-i686/it/firefox-76.0b8.tar.bz2";
       locale = "it";
       arch = "linux-i686";
-      sha512 = "6d6119b936c957d54bc4c5dfcd2df3ee42543024a89e48ec5cb08645d7b7ce9f53a8437a92afcd2c4cf4395724324599f9bde922fd0c88e6ccd2ed76a1141359";
+      sha512 = "944dabeff41606eff6a49ff87142aab2934cbc658015a8ef05a8416252b8c8c64fd446f5f88516dbea67e269a6514ba7a59038b39b2bb21b909f5342e90b9fd6";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/74.0b7/linux-i686/ja/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b8/linux-i686/ja/firefox-76.0b8.tar.bz2";
       locale = "ja";
       arch = "linux-i686";
-      sha512 = "8f76e03d072e9d6c4bf9b6fda4425f29f4645e089886d8ed9a648ea82a7a602ee6296ff7c5c0e505195bbf9e051d758095d23c622cdb5b606a285b550b3b0488";
+      sha512 = "22bf40ed5c37609dce3ed3ea4e88ab8bbbea31a2610697ca72446c201f874c7a4fde8c3f0f859e492869a8a3421e917d6eef37f71cba58658c584f30c683e9b8";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/74.0b7/linux-i686/ka/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b8/linux-i686/ka/firefox-76.0b8.tar.bz2";
       locale = "ka";
       arch = "linux-i686";
-      sha512 = "f173d6bd7ced596da30f9c76366d1caec34548e08d676286bdacb1ae336f01174b391588eba9b725f25079271d9e8378f5248ab9896532dbe395f925912f1f56";
+      sha512 = "b746405cd39c261ca7e18193fb0714520c59f58a595be513660d609ed3373b36f07444283d8ed1a6106ef0a48de45ba61fd5c8a1798d45088ac886917e883772";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/74.0b7/linux-i686/kab/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b8/linux-i686/kab/firefox-76.0b8.tar.bz2";
       locale = "kab";
       arch = "linux-i686";
-      sha512 = "ae1633a7dc1ef1120f5922ac237020d54e1e3783f339948394d3811e87baff35a8fbfbc17fe1efd7b0c5ee0ef5fbd4b28f9ca734a3cf03e6c19255ae5ad9d2eb";
+      sha512 = "eabc8a30e4683de833a73a49e2d3d6a25d92ca6fbddbab672f13a6ed5094edacda15ee85a1a8582a05b6e3382ad8a2063a6b1f9acd02771711d43a5e43da8f4d";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/74.0b7/linux-i686/kk/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b8/linux-i686/kk/firefox-76.0b8.tar.bz2";
       locale = "kk";
       arch = "linux-i686";
-      sha512 = "6389efbbb824b59a1817fff041b3529a1466b310b8b93229b2d8cacaf6b009210ceef136b579c154b232cd0b756e13676487fc8018a00ab22ba800eefb183e55";
+      sha512 = "938991eaea630be2ad5818f97a9f43808ce7978c07177b5eaf10bfc74d495c1bbd5d66af79c25ad66ecf6b1d35acd94b04b70c5a8efbce5e26d53e45f3db0c7b";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/74.0b7/linux-i686/km/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b8/linux-i686/km/firefox-76.0b8.tar.bz2";
       locale = "km";
       arch = "linux-i686";
-      sha512 = "e57271974dac3818ad52838fc9db0e486eff210ce85a74ccad57a76072aae7a7eb46fb88b8080473098619279c515122a22d986b38c53c34b5cb6d80303f2220";
+      sha512 = "ae6eeef2328c92c26b6eb9c2a600162d99c58fa04bfd526f8b0d3d1b147a9f19b7976342e17415d8cca2df65ef5335c5da0a68378e900c09c941fb18a92ea8ff";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/74.0b7/linux-i686/kn/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b8/linux-i686/kn/firefox-76.0b8.tar.bz2";
       locale = "kn";
       arch = "linux-i686";
-      sha512 = "49d5f860bba705238eebe7f94dc2efba3f05c69f3c1813a27479e514031ffc1f6ff0e1c6316424bd73f2c750f5bfceb07212486122c5b3575ffa7930690cf214";
+      sha512 = "af171a1f641c50b7f50794d6a1ea0b2d9d2230724c08774ab594b1c9d02ba0660e7f349de65dc4638191b855183b9a0a45fba1ecab5e87199522d6c36103e6f6";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/74.0b7/linux-i686/ko/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b8/linux-i686/ko/firefox-76.0b8.tar.bz2";
       locale = "ko";
       arch = "linux-i686";
-      sha512 = "47f90c68de6663bd0ae774cda94c2a0a85a92e743834c74f667049f18faa4836e403da8abcbe04b8dfb5f12f6518925e672967fe23754dd045e37a26a3d8d285";
+      sha512 = "7a2a61748c0f79f6e65da80e013dc9cc4550253298e6abf01b431db16a3373ba4fbdabba25dec3c994435b6e6330aac58067ed95003695bfb7e49fe6af70b094";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/74.0b7/linux-i686/lij/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b8/linux-i686/lij/firefox-76.0b8.tar.bz2";
       locale = "lij";
       arch = "linux-i686";
-      sha512 = "5ccb1acea6a156d972854b6396a1a6d3c7d8bfc297113fd8354f9062d954bdebd5c0566ae4886453fdc4aca27dd3e1732c0d45d91d859fdcfda230f50e1bf826";
+      sha512 = "d06298f697163b89f7195393a660534080595b6630b8e2b5c67cb311001bdde4b69cf5a2bcecae4ca90a0abf275736842a33f6d57dbe021458599f0a531b5a13";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/74.0b7/linux-i686/lt/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b8/linux-i686/lt/firefox-76.0b8.tar.bz2";
       locale = "lt";
       arch = "linux-i686";
-      sha512 = "1a877afa01166cf14116633aaf2d3fe3112c0adf5e45272bc71de9b6c56343da0c1c87a459529a318262cd80e5d0d3a436f92b79ec4cc5b92329dcc15fe11871";
+      sha512 = "b9ac847949d35872b0d56c41d58c26768afc1c6157d87a0e0059c4b4928e7eaeb6aa7564754b739dc757e049ed485a2c94085e8881515ebf18f250cd5c9e8ccd";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/74.0b7/linux-i686/lv/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b8/linux-i686/lv/firefox-76.0b8.tar.bz2";
       locale = "lv";
       arch = "linux-i686";
-      sha512 = "37403fcda86c796c082941e8e8e14b621c0de2a7080b413b7868b79ebc0fa5ae6069a8127739a7d271de109e7a9fc8f7562fa5d342b03926f05e247d7d5299da";
+      sha512 = "88cd61ed1bb4eb1d871d1844e83acbc932685e10993ed64e84c63fea81fd1d5f79937ca9fff154a699334a4f10942415b6cbb90312d5be508d482de064cdbba6";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/74.0b7/linux-i686/mk/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b8/linux-i686/mk/firefox-76.0b8.tar.bz2";
       locale = "mk";
       arch = "linux-i686";
-      sha512 = "f87d35121c20aaccb8b344940d86114f3ba34878f9cba2c5031e10e54d29e7fc548ef1a58882cd5e8bcb97b170760581e6df787ba1ad05960d61c5f67e6aa878";
+      sha512 = "6359356fe1c2eabb3757c6906d925b80a7a069e0dcd7a56b958f614879b942a295bb6345a84365fa21a2cd527bea48d6efe01a603d98571deb6141ae35ff59e6";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/74.0b7/linux-i686/mr/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b8/linux-i686/mr/firefox-76.0b8.tar.bz2";
       locale = "mr";
       arch = "linux-i686";
-      sha512 = "07b5750823b4973c494b9b4f9c76d4269097489c7362630fb59eb995b12a58f3b69dc9931d802f40f3109e939ffa026402455afd57e487225564169cb14a198c";
+      sha512 = "7b57efa8b87f662a56cd202102d220fe8f5a72d2e9838528384c4e40206df75e57a26df35544f595460daf471a565c5bfc7071f9a816b11cfeb48f84437d40a6";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/74.0b7/linux-i686/ms/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b8/linux-i686/ms/firefox-76.0b8.tar.bz2";
       locale = "ms";
       arch = "linux-i686";
-      sha512 = "c13597c3dceab6935def4c629b24a52fce3ff3406fc3fea395c68444993cd2d9ac25a10647a2d4818db49faa36a69faff61e5b648886b4c662caaf69e435158b";
+      sha512 = "fbdfe0a1f4ee6831a1d09d9349ddd43d6d540877c1272484429a7ac735a9b326ca5d99fc45a305fa1a36293a4e3eba3d03c4451b0f68a011e58c055d7e89ccee";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/74.0b7/linux-i686/my/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b8/linux-i686/my/firefox-76.0b8.tar.bz2";
       locale = "my";
       arch = "linux-i686";
-      sha512 = "1dd123936837ef7d806449df7458ee0879d3da33d16824587e55830a88f5c52dac9c66d4d4678e9cad35ea1456ccc6a9f282caf3e6b8888145729123aad33556";
+      sha512 = "8106d80e99497435ffb5a58c0f4002fc1286e223688ebd7c9e406d4181c621abd831819339a6ce65c7a3ebec7a7e8963bf711d7fadc5b94653d83e1fdd13ea75";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/74.0b7/linux-i686/nb-NO/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b8/linux-i686/nb-NO/firefox-76.0b8.tar.bz2";
       locale = "nb-NO";
       arch = "linux-i686";
-      sha512 = "b9c4ddcc16a8403f82f1b2c9bbf390fdd94efbcf442a9010b8a127193826cd4c21258edadbb887dabe5cc5aa642842e371be01cc3fffd353ecf3c2815a2dee2e";
+      sha512 = "165c134b673a2a9cfb38db68e5020a284bb087b21ae37a70ad8ab25808c1fd68c0f6385a433d4e16bf34cf7fb07510b36edd0563078a644d6c0a44633946be23";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/74.0b7/linux-i686/ne-NP/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b8/linux-i686/ne-NP/firefox-76.0b8.tar.bz2";
       locale = "ne-NP";
       arch = "linux-i686";
-      sha512 = "1bdd91de19876c54223c43543b73df2d9c37d27a8986544d48707810f12657626c2491ba09313c0fc51733232c4b5008e0236148feecc415b9d3bcb52b126536";
+      sha512 = "c0450269268b5e89de324c3e5fc6a864461a4b29d1fb8646846f8ebd87f661be2a340963a5ae8282cddcca5f05a3ca14f2b155eba99f4357983b5977eac808e7";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/74.0b7/linux-i686/nl/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b8/linux-i686/nl/firefox-76.0b8.tar.bz2";
       locale = "nl";
       arch = "linux-i686";
-      sha512 = "6cfd830592b5342b18a0c0382b33be36fa060df7fa8892ae6aba2b7dac37f2578108491e2eeddeab73546336c354ef0456206c37be4638942ad28124c14a7792";
+      sha512 = "6cd6dc6545e481c28f9d63e5bf97e8dbeb275821c829c729c2dacae5e16d913424bff0e2c6b3cd65a566708f6b047a6eda29793acdf45de295911596bfa49ef9";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/74.0b7/linux-i686/nn-NO/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b8/linux-i686/nn-NO/firefox-76.0b8.tar.bz2";
       locale = "nn-NO";
       arch = "linux-i686";
-      sha512 = "b092affa3674da00ead882e26b27fe61d3719b69ac0ceb5ece2e88225c26d78c066a47ddb642e539a77f01263ba85f503b7dbfe1bad0529f1cb68275cfef6ef4";
+      sha512 = "03865af4dd626a188682ce32b4e817af44cb3059bc8ed7620853234a15972556fa57a2b6c6046ae40cc9c714dc09e54c2111adacd2a0a315d347e4322233fd3a";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/74.0b7/linux-i686/oc/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b8/linux-i686/oc/firefox-76.0b8.tar.bz2";
       locale = "oc";
       arch = "linux-i686";
-      sha512 = "44971c64acd96da8c144671c82be145ec46118f0f38bde69580c83d2e7a6b6f0d6bb1a9b6f21cd2e84b70725aea9c388ca2b4d6545061bd4a4f9f4f5eaf2d929";
+      sha512 = "9a774f343442ee10b673cc9894fb8e4adb0a02d824dce5bfa8b3c699a1deb17dfc2ebff86126f9e0743075091c37ad170ed49f0c7818b602373f9fff20240b58";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/74.0b7/linux-i686/pa-IN/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b8/linux-i686/pa-IN/firefox-76.0b8.tar.bz2";
       locale = "pa-IN";
       arch = "linux-i686";
-      sha512 = "0583f4b15cce5c1c4fe70d0f9c9d446035510c158fee6da27a135b9efaeac7007177b4ded5983c8130f1d1e9c377990545318f5955a99737426424dad50e448a";
+      sha512 = "6413054a66903741f6a50c8977dc61866067ea54f915f1d7eaf972dd26cba592945bda62348b3cb397d7e045cc7af36581e374deca2812a5112f0bcbd7703b43";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/74.0b7/linux-i686/pl/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b8/linux-i686/pl/firefox-76.0b8.tar.bz2";
       locale = "pl";
       arch = "linux-i686";
-      sha512 = "75046f40fe1dd1950091f61e487c6b8c9f424db14f05872c528e602fdac0a0f00ff147194f953fae941cb3bb93b75367c7434c1db95d8a31e7961278fa820a27";
+      sha512 = "98c9403b1567d02c1571aed5d6b1cdae7bdddc01ef16a2df44fb8efcb728b7c16dfa27231795fcb9ac3b1cdedbb66fcdda70a8971ed08caa89f8a0bb11dea5e9";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/74.0b7/linux-i686/pt-BR/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b8/linux-i686/pt-BR/firefox-76.0b8.tar.bz2";
       locale = "pt-BR";
       arch = "linux-i686";
-      sha512 = "25df8753b7363b4cfca6882fbd1941e8d4b532708f17ff7299f685c9ea2d15df61b12bd0ad293daa80e6b184d53ef2e36aafcbb4b2a7cd5b976bf81700d4c68a";
+      sha512 = "ac721c8b4e104285cb8eb025916da8ba1c7c0481eeaba2b60e35ceed7d26afa7eea9a83168608daff25c025f2f06208cf36c56a4ece68b66b2baacefdb8b5d9f";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/74.0b7/linux-i686/pt-PT/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b8/linux-i686/pt-PT/firefox-76.0b8.tar.bz2";
       locale = "pt-PT";
       arch = "linux-i686";
-      sha512 = "f06faae5ecf8c873c8fd2c1999adf23b8b08c1b782f33e929bc97630d4094a098324454c87af9321332ab39f8543013bd827f10299237dda8d7decfaf29fb59b";
+      sha512 = "720d6a5c0bfeab99f4360e9e64c4bcfc49c987f1dd040eeb1ff580f1f4b1c4a29fb7a3c88a369574fd966237f817959baf9db7117bd515cd6458e13155128df1";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/74.0b7/linux-i686/rm/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b8/linux-i686/rm/firefox-76.0b8.tar.bz2";
       locale = "rm";
       arch = "linux-i686";
-      sha512 = "9b026decebb2be032a7ebef1e5d7a18643bb3ebfd31baff4022d1fbed444edf93ba4db70c9df2f899de3d4f9c1fe8c0a218e0ec40015f0d46ee156c5181d1235";
+      sha512 = "e06fd7a663dd341f8cc9f60de2edca6af622bbcfffb9b1d9e3b75c07fb6b27f3b0ca9eeccb6173a91f52ee8241f167c4a399160e20377b3738e4cf4b2dfb84b7";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/74.0b7/linux-i686/ro/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b8/linux-i686/ro/firefox-76.0b8.tar.bz2";
       locale = "ro";
       arch = "linux-i686";
-      sha512 = "6977c73f7207944ba646cc6593aefbc5b24b94d8e63b95508412967b6da6c5076e6875827789330bebd02c50b0f6b9a1d40dd49e3c079e614ee0e273cf2a8c59";
+      sha512 = "d7738a3039202e9cd3b30652b4c069f9b73f88e5db1429e26324ef30f87af88f79452cb5dfa687bb988b513359ae65d7319c8a3dd59207af85b618d51519f335";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/74.0b7/linux-i686/ru/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b8/linux-i686/ru/firefox-76.0b8.tar.bz2";
       locale = "ru";
       arch = "linux-i686";
-      sha512 = "49c458fc0c307904c25e7d55dd1b4acf41020777ed559828cd01bf416585a1479c853909dbe29d2d90b1d52471f8628cabecbcd98918dad7eca7a0cf4096f1a7";
+      sha512 = "cd0c2ea6af241de3d382345fd783b75e15499e0d666df99bb6ec06ae9e9da233e5ebbd181bec6a3b044682456dd78f5405177e4a781160b9a3b110008782f32c";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/74.0b7/linux-i686/si/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b8/linux-i686/si/firefox-76.0b8.tar.bz2";
       locale = "si";
       arch = "linux-i686";
-      sha512 = "54078ba7d22c1a280347d18ed30dbef9079adac167e8b79f3bec686693acebcca90bad4ba8747d173fc762499bfbbb6bf8fd23906666ed005f568ae8c5683392";
+      sha512 = "94aff48579b1fff63decdc6640b853907abc508da23e3d7ec13ea01c2fae496e870261fc5616821bb0c2dd5279ceb1be054691f501dd183ee0ea9aae7d24d5b1";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/74.0b7/linux-i686/sk/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b8/linux-i686/sk/firefox-76.0b8.tar.bz2";
       locale = "sk";
       arch = "linux-i686";
-      sha512 = "47fc04108bdebcefa46cb366d071adcc45508609530bf02eddc65eb6d13b34ca223b2a9e552563b475c2f8dfeda58101ed8af21312170330bc8c48ae79427a35";
+      sha512 = "189f8bc5db155eb0f50d0b60d321ca0dd67e15cd30749d830a21397df0b314608393c08daf70712a6077ea5ac663d5e745a836483750fd26ec1e92dda265c061";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/74.0b7/linux-i686/sl/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b8/linux-i686/sl/firefox-76.0b8.tar.bz2";
       locale = "sl";
       arch = "linux-i686";
-      sha512 = "cba41a4178b971c136b3853d96568152a1583a00c9d859327e41dbdc278fa7bb31b2bde537551bbc5549c2d506cc09871bc53aa3da486018210b0f86634b3865";
+      sha512 = "f6f1d2ac3270e639bea54eb04c8f292d17ec2c4e70848a4104219800af1a17f78658eebc39d3c244e351d0511d681ab66a61358523d7edf93d4b317993cdb10c";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/74.0b7/linux-i686/son/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b8/linux-i686/son/firefox-76.0b8.tar.bz2";
       locale = "son";
       arch = "linux-i686";
-      sha512 = "2a4fbdec227edeb83448ea9575b991b574e467d2e2ff14d75f000a1d912d3bac6cb6caa6cb7fa3c61236d2729decfa5f0aa9f0e756e503dcde076bc095ffb786";
+      sha512 = "747f109672e47a6a344a09c32b5e2694de1ba125dd29d583a5f6a31859247e659b9ea204af31337dd5a635c0d1d7662efcf37d0d708e0936b59dfe3c975e9990";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/74.0b7/linux-i686/sq/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b8/linux-i686/sq/firefox-76.0b8.tar.bz2";
       locale = "sq";
       arch = "linux-i686";
-      sha512 = "c0743b88f8c33e8bfa934f0b63eb67a9ea55489b01167e5bdde91362f7217375d2e2834eccce5a7e61543ae81fbc45c296a7fa31126f61cd0f2dd8b04c807df4";
+      sha512 = "5f6ad0ccd20bcd09783de5307a1ac2b149cf63ab922162149d8c0632698de86b78170e378dca7103374ec356bbb03b373bf573512e6b27b95550ed95178dc1f7";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/74.0b7/linux-i686/sr/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b8/linux-i686/sr/firefox-76.0b8.tar.bz2";
       locale = "sr";
       arch = "linux-i686";
-      sha512 = "20faa1be8b168ca94c8c4a8a22c4ebb3f1aa3555358b0d8ae765a13ff5a185a7c16ed8bd9f9f1e137cd02cd3f5119acf912649e46d84a180e285c4f5f9b25f0d";
+      sha512 = "01c8f958ff9c5e9e65459b20c7a42208bc985246445d6ed310f80fc0dae2c8bb5684e118baf1c3dc2947dfd66ca148537d94ae726e3b3d8cc01c4990e42e2f96";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/74.0b7/linux-i686/sv-SE/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b8/linux-i686/sv-SE/firefox-76.0b8.tar.bz2";
       locale = "sv-SE";
       arch = "linux-i686";
-      sha512 = "cf272cbb87e59751eb5f24c1d07b1a5926aef006d6c199b58c3cd90f853b9ebc78d11d03a2c7600c0cfefd07499c0946f26465e22c29cf69b74f6e0c8474a15e";
+      sha512 = "1fcece2f00f98e769fd7023b5cd80eeac27b8f987291bf4041dfd90538482e7184137471cff73aaaff1c307813efa26cea3f7e77082ebe08d11769b35cd21d12";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/74.0b7/linux-i686/ta/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b8/linux-i686/ta/firefox-76.0b8.tar.bz2";
       locale = "ta";
       arch = "linux-i686";
-      sha512 = "8ea559be2b493eb925dcb01dc5091b7bf776ce7af47fc95dbc33e1e1038ddd5bbe31c85c19e616746e1c6fbac42f4476bd1f2b62df03850a144bfa880ac6c27b";
+      sha512 = "557646065e7370bfe43fffc9a57eec3da2ec8176e2371e948f70c92e54e3cd7d194022dab508c0b384545c121587e41ef19bda7ec8b1827118adf12aa82c653f";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/74.0b7/linux-i686/te/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b8/linux-i686/te/firefox-76.0b8.tar.bz2";
       locale = "te";
       arch = "linux-i686";
-      sha512 = "10190b94faac8db9385119b21d8fa46b930eca4a4371dc53415995d132430a9aa83d7e6af4d406d96a831b4318ff160be1f301d7f91b02a082d90285f03b6ef0";
+      sha512 = "d7f95cefdf312d4c3ec157208266c9eba7e394cc1deb83e4cb9baa98f99292f6d4996b4c6f663a303556769a8c6b81fa6ee127f84464fbabc8fa0f55763dced8";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/74.0b7/linux-i686/th/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b8/linux-i686/th/firefox-76.0b8.tar.bz2";
       locale = "th";
       arch = "linux-i686";
-      sha512 = "b95d95ce5bb0f42502aa88d24884a14f84af84133ab0702cc84c0c8c2e3b4ca1471133da971e85aee81f5979d99af575712366fe38f470e030275f73071c20f2";
+      sha512 = "9c9d80fe8157f7f844c81a99439d9e35ccd51c8cb9dd4e8c1bc16591aa2e34654440e1b926f3737790c2fe4fa1ef9720180393260adf1dc1b6d22a805ed8edf8";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/74.0b7/linux-i686/tl/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b8/linux-i686/tl/firefox-76.0b8.tar.bz2";
       locale = "tl";
       arch = "linux-i686";
-      sha512 = "149891af8ad8016d33e7db3144a9c5167be895cd7bb098972a51f35a5f4f97ae03fb3349c7d0c2222217d7f133d483344a3a4796c1be89402f8843cd7cfa5cf4";
+      sha512 = "21fc8ba0d1374fe0dbdba8a0f5ac940085f89886f0eb7ae28aae5e152ce7d68518172238042fd0287ec62127489ae3c9b750334d38676ecc7b60633187311fde";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/74.0b7/linux-i686/tr/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b8/linux-i686/tr/firefox-76.0b8.tar.bz2";
       locale = "tr";
       arch = "linux-i686";
-      sha512 = "bb152289951ca25f42b227c8e851c5fc8cd6788d654d64478417760b4999e10103247ac21216ecdc6d4e3faa5e39bcb3ecd3b0f4c03cccb67ca546fa673de03f";
+      sha512 = "b91dca298f68ef9f1a9ff17ecd58d7fd2f0d47193fb03781027be26ecc75d3391ff47dbd1d9b6796617df00b28ff8b2610858188cd03d87efcf704f2ad4cb0df";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/74.0b7/linux-i686/trs/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b8/linux-i686/trs/firefox-76.0b8.tar.bz2";
       locale = "trs";
       arch = "linux-i686";
-      sha512 = "f1f47c635364e7da15a80ed33bb2c0841dbaf2734bb24fc21b33967e909e1cd047496c1c30fa83d3ba11802e46eccadedac14b033705a66f542b3b084b9e729d";
+      sha512 = "ff2b2be81f48758bd52a70ec6da9cf2950fa595bd7d3a26a4929ae28a6c612aa6ca1c127318587fe4adc03257e259a1b68ea39b9b4741e7edea53c55ccb9036a";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/74.0b7/linux-i686/uk/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b8/linux-i686/uk/firefox-76.0b8.tar.bz2";
       locale = "uk";
       arch = "linux-i686";
-      sha512 = "a5cae41b115e9ef41bc5f5bfe618dd7f317333083b83ec9c52a0a56e4962135cf3d644d136fb03b5b12d1e0609bb2c554cec87215a279ff42cd3b3a6b3a357a2";
+      sha512 = "980175a00523c0ba2b4c67999e5afcc59946b45bc58d6b813e25dd0a5f1678d23d329dc70611bdb55d9ad9debe2adf0a5fb867a9d83d43ab5934ad2bcc132da0";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/74.0b7/linux-i686/ur/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b8/linux-i686/ur/firefox-76.0b8.tar.bz2";
       locale = "ur";
       arch = "linux-i686";
-      sha512 = "077667c2264347c301c3744a0f65fa2546e2168b8aeadf13b8b86a251bbcc16b65d10d0e91aa9368a4aecd86abe3f2b6685b16bdf8e2bc1b9003bb41fb4f0ef2";
+      sha512 = "9648cb55f355c68852430f9a7c5486b0fb5be65c7f258b81906d19119f437e033121f46b884d65f1f64c33f511c605d8a42737a26ff7089306ed6bde4fd5ab4d";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/74.0b7/linux-i686/uz/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b8/linux-i686/uz/firefox-76.0b8.tar.bz2";
       locale = "uz";
       arch = "linux-i686";
-      sha512 = "6b4aa50c39d355f9a8d55d1bc58e07b17a72bbdcd5e9b45816dd00e7f45105bad90e1ea0d38990af8d7c481a45f7de4f164cda6db2b35f85b1b903f403211c16";
+      sha512 = "2fdc0572a32112310044936c9b81f7238172f9ef2c2e502813b82ac0f61fa96b9d1ec96d396c7baf79c27b44673a72bd9e484d6ab68087993ab44310a52d453d";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/74.0b7/linux-i686/vi/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b8/linux-i686/vi/firefox-76.0b8.tar.bz2";
       locale = "vi";
       arch = "linux-i686";
-      sha512 = "a2e91a40f0ff57f800ba2ebb6a6f7bf355b2780acb4e72d759cd01d1ddec134d0f7e33852cee2e15c1382ca6f432d58a7ff653e1885b21b9657a85b9c52f11f7";
+      sha512 = "9b6b6ccaf74e4c3699605d43d51c02f7ccd3f4f28ed93e9b800fc0adcf662f08e554f081cc51e5706c73f308cc289976e5523d0424988b5ae3d5bb1ef6260503";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/74.0b7/linux-i686/xh/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b8/linux-i686/xh/firefox-76.0b8.tar.bz2";
       locale = "xh";
       arch = "linux-i686";
-      sha512 = "d86daca8654c7b3ba1687ad6be2f00f42fa66caaf6086339045323b2f1c7d127b07f3e7c6104147402ab4aaf9265610b4514d8e6f7c73c1698711aedf0800ad0";
+      sha512 = "d417c0efde71e18f8dc04f5cb8b61c6b4410579051cf3816b55a52f3165ede2921691ed67307999ba48d6b46ea2acfdf82d063ea349fd7131402155f50dec01e";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/74.0b7/linux-i686/zh-CN/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b8/linux-i686/zh-CN/firefox-76.0b8.tar.bz2";
       locale = "zh-CN";
       arch = "linux-i686";
-      sha512 = "169e02a6bdc822547feea77359ac35932dade565c99d9b9cbff9d6d3a7a007b5dfe98d006f9b4b12d03e8fa0a96ba3fb2552c7c15196c5c269f07ae21fe9bd98";
+      sha512 = "d4da856a2b142d4a088a0a5b460eaa2466da9280890c62b178d1bcfc18e91e494d7be357915880a0369ecf578b00e087cdf47eb8591d605595e9cc2356cbd086";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/74.0b7/linux-i686/zh-TW/firefox-74.0b7.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b8/linux-i686/zh-TW/firefox-76.0b8.tar.bz2";
       locale = "zh-TW";
       arch = "linux-i686";
-      sha512 = "3eb488a91dda4c3ab1b8eb421519e196da4bd78f66bc49716f1c743e961ef397f3d24cac2e30e7c21c8c898d8b96f84a34de8d0a0c85908a68fa8225978544b4";
+      sha512 = "6a43e2db9823f0ca86628b77df193183182208c27a7c0347fb0cb324b615bae58ca9319038c4ac642428f4ab0f1bea557ca46f313256d849cb10e8da87942247";
     }
     ];
 }
diff --git a/pkgs/applications/networking/browsers/firefox-bin/release_sources.nix b/pkgs/applications/networking/browsers/firefox-bin/release_sources.nix
index 9228dfebbdc7..28a3c085a2f0 100644
--- a/pkgs/applications/networking/browsers/firefox-bin/release_sources.nix
+++ b/pkgs/applications/networking/browsers/firefox-bin/release_sources.nix
@@ -1,965 +1,965 @@
 {
-  version = "73.0";
+  version = "76.0";
   sources = [
-    { url = "http://archive.mozilla.org/pub/firefox/releases/73.0/linux-x86_64/ach/firefox-73.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0/linux-x86_64/ach/firefox-76.0.tar.bz2";
       locale = "ach";
       arch = "linux-x86_64";
-      sha512 = "9b93c28d9236318f779df24675207e14976a3a303852f111e3e54f81fe24019f48d16c13c92dcf8301d2f7a40f127c75ca940adda251437d45edd1c11d961395";
+      sha512 = "d1bd187497c76c624e010ec50a43e68bd91cdfded37f85e02047acdb53027c79c8071632f1a31f35f0a2b52eacf94c905984f2edb7b83e0a74fb0a0565eb18a5";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/73.0/linux-x86_64/af/firefox-73.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0/linux-x86_64/af/firefox-76.0.tar.bz2";
       locale = "af";
       arch = "linux-x86_64";
-      sha512 = "b6828a008030b775176d165082cfa9c6eecfe5857ab0702702c7298b4d946f0aced8338182c5dc84437b7b02e42a33c6df6c1d38b0b4da6cf0bebc3f364d7f96";
+      sha512 = "bd9e45046cb566cd3fc94eec9d5587b0270417d68091da1b29eca40645b2aff4f081c2a5b0292a0e06da410a64fd1f617543bf0702852a6fe424680fdf3ec39a";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/73.0/linux-x86_64/an/firefox-73.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0/linux-x86_64/an/firefox-76.0.tar.bz2";
       locale = "an";
       arch = "linux-x86_64";
-      sha512 = "b1676964b0b9a935b4be440d82dca37c75362a4d47b227435d04d84ebde94eec469faf9fceff32235112bd816ae85f5290e776b9e983c9a3566b89205800ca06";
+      sha512 = "d5df04a513a349291d629941e519617cdcdee1c004ec8bcc3c02bf02ad310dad2dc33878268d8a4a6b115b3b02bd558159a8eaddda48e83aca29f2a377225396";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/73.0/linux-x86_64/ar/firefox-73.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0/linux-x86_64/ar/firefox-76.0.tar.bz2";
       locale = "ar";
       arch = "linux-x86_64";
-      sha512 = "058be707b6348036150124d85010f9d8475efd2a6d910a3f4ed114d2b51cb63775b35e83e0799635755c5c016b21595efb20ec5c53a362280dfb424efffe0d54";
+      sha512 = "753550131ee986f7a770f95959a26b24b17e0a6a5f2e12ec1b7d42b31886e32b9c93a559b7824cd5348f34f1fe26901f5198fca57ab2c9f412ce032882cf7b5b";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/73.0/linux-x86_64/ast/firefox-73.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0/linux-x86_64/ast/firefox-76.0.tar.bz2";
       locale = "ast";
       arch = "linux-x86_64";
-      sha512 = "6e36766b939f42f6f8cf551e5ebafbf57a857ab584579797c84eccaf1a669e2f9daeb13b1a897b90153eb502c97f63a55ed7a2bab2de4feb92719e2aaf42ba52";
+      sha512 = "8561ba0236a9524672c7ebacde935d4c3761fe2c5fc0125951d28f53c3d27388d48c108a6fa71064cbfa54cca57a72f6fb49b3b8314d28b875e250b218be4d55";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/73.0/linux-x86_64/az/firefox-73.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0/linux-x86_64/az/firefox-76.0.tar.bz2";
       locale = "az";
       arch = "linux-x86_64";
-      sha512 = "f6c065ac0af3cb2ef1dca288810192b8ee5906f7fa03bab713a8abea4b811c78b4278340bc5226ddd4113851f9b753268965905e020f74875d2ef3d2c2ecafbd";
+      sha512 = "53b7a939d02ccc0a809079070afd4db528a4cb617a4fbfaa58cca573450be764e3894caf3a40477903151f8116460dc574749f0edf9bfae6981616772b649703";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/73.0/linux-x86_64/be/firefox-73.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0/linux-x86_64/be/firefox-76.0.tar.bz2";
       locale = "be";
       arch = "linux-x86_64";
-      sha512 = "710c468adc051a5895ef429585f9d94f4f6ac533703f2674c9433c04011e411bde0827739c28d300a2e90cea13db0dac4bca1f37a711ff0bdf19d5c4853b7570";
+      sha512 = "36658c05c6b7b1f64ffe14ded709dbc08f0236f99f9457964c15a36a4ebf8d73bf482ac2f8518927b2d66fc9a1ba19289db1855a6dbc7b9502c2a3c0137bd7ab";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/73.0/linux-x86_64/bg/firefox-73.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0/linux-x86_64/bg/firefox-76.0.tar.bz2";
       locale = "bg";
       arch = "linux-x86_64";
-      sha512 = "328586ac2b3182c455f3abab8b6177e97d7389c4150f8708807b52f632d84e88cf342358818514b93b5d8428c6c870b21f1138803e8a7256c95487f5dff5e9db";
+      sha512 = "890066ff182d6ce79cf0adf307a92a26ced29f633cbaaacd02eb5c1c3f0e2bc2de336a7b22fbb530ec85561d26dc44f93f2ce1f58843e1d87322badbdc92e8fc";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/73.0/linux-x86_64/bn/firefox-73.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0/linux-x86_64/bn/firefox-76.0.tar.bz2";
       locale = "bn";
       arch = "linux-x86_64";
-      sha512 = "c7730bc40976685b40161a6238d0982775ec02429923443265d5165d12adb8b863190c4e57c082c09c4c6ab3348be035e338f3c34d78503b521928f3722139eb";
+      sha512 = "c6f9bda8a95351d79ecfe1e138ace440aecee6c1dc5ad2d7c6d249e5277b75b27797cdcbfa1b8d3ec2a899974f555b8b20f7c38f03a7979ca917ab050feb6cfa";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/73.0/linux-x86_64/br/firefox-73.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0/linux-x86_64/br/firefox-76.0.tar.bz2";
       locale = "br";
       arch = "linux-x86_64";
-      sha512 = "2083a6598a60dfae7093828fa8c47a149b2af18180b360817333de126077a067a81a1b7aa98aadbbba51cab5a8e66811a8a3513e68f5fb6e0320807cce782502";
+      sha512 = "b15b1cd34dc4799836d67ce4ed8b166b54e21076313a2f726c7b872aeabbcc40a35c7f859cf78e0f17825fcad38b6d4dfaadf5d27ef89ebea8da0ce427492311";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/73.0/linux-x86_64/bs/firefox-73.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0/linux-x86_64/bs/firefox-76.0.tar.bz2";
       locale = "bs";
       arch = "linux-x86_64";
-      sha512 = "4e5f04c7ecd8b4707c5107bc0e862a9ea0f099ce070c6d271c4d5b034330a0595a07c3de2117b1199dd475492edda863e02d541eb2f7e507710e06665741d5c0";
+      sha512 = "fee05346fed30422b79af7c0626a7763f404f8a3a2617bddd17b95434060bd1c47b47409a0147c130b51d08d98de2232abe8fc7ade9bc58cc1eeccaf0987aee7";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/73.0/linux-x86_64/ca-valencia/firefox-73.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0/linux-x86_64/ca-valencia/firefox-76.0.tar.bz2";
       locale = "ca-valencia";
       arch = "linux-x86_64";
-      sha512 = "103ba1a390de36018e8ab834d7ae144dd8187e8211d94c18fe2d84935efdeec64093531f2e3dade16fbc123930549ac2282d1c5c915ecef38428726420915925";
+      sha512 = "beb5d44cabc7a80a0ceb4573e4e6fc2b554c6cc0ae38c9a5699d0d87d5f36aee892c4bee8ca1d103001b3305ef814f9a96a8fd63dc5b495363443f9abb4edc91";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/73.0/linux-x86_64/ca/firefox-73.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0/linux-x86_64/ca/firefox-76.0.tar.bz2";
       locale = "ca";
       arch = "linux-x86_64";
-      sha512 = "90f2e9b575e390d57c6ac91f784e20cc740049096747bedeba1fe467e77a2b7b88e119f66e7be46d8f3261ec66aefa73a7ce11e3ea5b4520dcd1fc2467a7d169";
+      sha512 = "1b8cc942602134a48e0d16a3244e97edafa133c74651ed4545f5e3eb515ad1881276cd2adc204e5c9cfd677dacec79030311483469174415199b9eb679729442";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/73.0/linux-x86_64/cak/firefox-73.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0/linux-x86_64/cak/firefox-76.0.tar.bz2";
       locale = "cak";
       arch = "linux-x86_64";
-      sha512 = "fffd827c9b8b5d5e83eab130ac7c34cae00c166314757576f3fae5f978d090bb9bc6e793eb1265d91c34ee95f4321f1e02d579680990d383e385a346c16ac61c";
+      sha512 = "2738e924257a81bb1ff956a6717e6ef4769e96f5940bb0fad58030e3d2ce65e84ecb2807e6e04ca820eeba61bd386c85716112535cc28d2bd3c9e7a364c734b2";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/73.0/linux-x86_64/cs/firefox-73.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0/linux-x86_64/cs/firefox-76.0.tar.bz2";
       locale = "cs";
       arch = "linux-x86_64";
-      sha512 = "f544d707deced655448ce595ff700671d796180d3df9e5e651176a72daed9e203bf8d8bfe6fbd6c57907cefca7bab5e9beda2b785c7306a87e426df88335982d";
+      sha512 = "3d58acd8bafbd11307ca58894992fcf8325a5679585d5c5e09e397b941019a8a8f7bc9b63997bcad2722e8cbba88715b789683b0428632e4ec4b728a36b54099";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/73.0/linux-x86_64/cy/firefox-73.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0/linux-x86_64/cy/firefox-76.0.tar.bz2";
       locale = "cy";
       arch = "linux-x86_64";
-      sha512 = "a039a02f17483c4d9b7a5563af4fcc72a73c35ebe9d9d383b3e1ae8013e0dd5b9660ec650a6f11a21d4359605f6252faf1dd99fa8b9525edda5336a3f28138b6";
+      sha512 = "aa7aa1b06c1a28e30b532d41b4cf3bbae26c42a24a63afb1999f421577afac4e4591b465b3e659ed5c9278b2c5d2c4c449a84fcfa69b451804d2a0470524ab04";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/73.0/linux-x86_64/da/firefox-73.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0/linux-x86_64/da/firefox-76.0.tar.bz2";
       locale = "da";
       arch = "linux-x86_64";
-      sha512 = "f8829df5163a12e806ed29a640159cc220dd8a39eba48b51e03c5524f5976ff4452eb19064441b4e81fd0e30a8c3058117f5a022e2b7a8e76e5e8898eb4ab54a";
+      sha512 = "48160d3a437dee94c1070e2742c6bde4a36811e8d2eae87d7c8450476b30b912bc9cbef8a5f7d917ad4be771eeede9d7fa9315e27b154f50049ce80f4911024d";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/73.0/linux-x86_64/de/firefox-73.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0/linux-x86_64/de/firefox-76.0.tar.bz2";
       locale = "de";
       arch = "linux-x86_64";
-      sha512 = "45c2ec4167c4f6cec18c306fb04c1eb0a430809220157c5757ca7565da3150ab82490c946afd7b255ebc75118fe2a2ee8228a31149545e5901b15b5c9fd113ca";
+      sha512 = "fc4d0ddd9649dd555b4abd4d90f9d6cff8fe7e702bcf5d2931565c469842f51ee215286f68802304868848f043e54c8224358c8f4060435a4674401d19bd6989";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/73.0/linux-x86_64/dsb/firefox-73.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0/linux-x86_64/dsb/firefox-76.0.tar.bz2";
       locale = "dsb";
       arch = "linux-x86_64";
-      sha512 = "f67dc560d458660eb16eed78edce3157c31e195721cd350722c189fbd3936b13e9d230f00e5079a52fcf229bac352f7e6f88c5972c26b3797c470278b352d2e9";
+      sha512 = "3cab1a498db5900b055a8bc6398e4dc9770657c41ba9bb6bf0f196566e9c535db99f02e5c51750e7c7185f2f0b1a26e84da51403775c33ef34915b43e3a8b27c";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/73.0/linux-x86_64/el/firefox-73.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0/linux-x86_64/el/firefox-76.0.tar.bz2";
       locale = "el";
       arch = "linux-x86_64";
-      sha512 = "247eaa4b6bbbb34e809232f5f907d67e01e95c77397734a5fee7483a6215ab8492e138e1b593a9b1a4b647c7aadf662e14a51e6dfc2b4acb4151be61767393ed";
+      sha512 = "d099758283e38566a4d9db744590f42b5fd28de8e985c2f240096e158995da00711e97d6feb3979bac40a2ad57cf7876da37c4ba69f3467930415d87a2d10c50";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/73.0/linux-x86_64/en-CA/firefox-73.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0/linux-x86_64/en-CA/firefox-76.0.tar.bz2";
       locale = "en-CA";
       arch = "linux-x86_64";
-      sha512 = "d4705fcbccb47d765ed3a56ae7895b285d57486c2c95ac9e12e13b1b403e6cf713291960315808350d452c05ce7441ef3da4042e29d1e2e59ff50bfb3bf567f2";
+      sha512 = "442e60f0d132d96c58364e0d5f70e43ade8e6508f5d0a76b3d7e5c61bed0bffa5f9bc2096c89879dcb1681bc394699e39d3c31f2d02fa790dd8e38f1b406154c";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/73.0/linux-x86_64/en-GB/firefox-73.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0/linux-x86_64/en-GB/firefox-76.0.tar.bz2";
       locale = "en-GB";
       arch = "linux-x86_64";
-      sha512 = "3a27d69fdc1c1d4aa47a3181bf7d9842c0833da8ce1c132da7b289f6d49054e6b666184d1866506bc05f802c9e817e0ca659ac3ea228c91866b64df66ef7dc8b";
+      sha512 = "8c0d31a9123d8d8baf94f73505233786f7fd2ce721f8792f4cc1db337a1659badf08393a22159dcb9d8256e43f24661c3975e6a1f801e30d21bc54083f4da041";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/73.0/linux-x86_64/en-US/firefox-73.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0/linux-x86_64/en-US/firefox-76.0.tar.bz2";
       locale = "en-US";
       arch = "linux-x86_64";
-      sha512 = "1acb3149e99d0e38eb624c98a6471b4d8e3fa6eedb13cc516f581aaa561f1de9d3238e6ec9364e937532d2beacd9aba2ccad72872f114013e7490412c56195c5";
+      sha512 = "993e5410a946f802a47d8167c83e767fa9973754cfc1365e4cc2698a25524dc27c83f3b202990744dd654d68226c601ad9608ecc49d2c3952e50967e20ece34a";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/73.0/linux-x86_64/eo/firefox-73.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0/linux-x86_64/eo/firefox-76.0.tar.bz2";
       locale = "eo";
       arch = "linux-x86_64";
-      sha512 = "d8a598569daeda5e5fdc5c5fd2580e85f5933bb1ebec806373755442d3c660c5b0ad38b24bc41e0b05c734489fe27836f5d22718709d1447bd36b1480b2f02f4";
+      sha512 = "c2021ecd345cc45fd26ccd8a75ee66cd1eeb506a8e0f6b9811b4149b6bb15121edcdc9a0825703db52beea61f7249f45d23fa3822a9f47701adbc2e86c7ccaa3";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/73.0/linux-x86_64/es-AR/firefox-73.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0/linux-x86_64/es-AR/firefox-76.0.tar.bz2";
       locale = "es-AR";
       arch = "linux-x86_64";
-      sha512 = "531eea7a2cb3d98b2a61226f72ac1cc33ac94844787f5db0db84a81655f1909a1f9633353b5b0aaa25aa892d15a1789ada008274b955ada991e5eea1c71ab168";
+      sha512 = "c397cdeebd4527189b898db2640c1a5b8b5bd4fc1664ef384662136232b5dc21f7033686d2624ec421542d1140f46cc95c8364d47e1c89a8653d541fab52e28c";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/73.0/linux-x86_64/es-CL/firefox-73.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0/linux-x86_64/es-CL/firefox-76.0.tar.bz2";
       locale = "es-CL";
       arch = "linux-x86_64";
-      sha512 = "9901d90be922471ab32b5780ece1ea3f5756250229a8d30a336890823dc8dfadc96992f582c3671afef94802b2003d64a7f77ff469ba5a7ce104b34852f123ea";
+      sha512 = "86940cd36df65d0515634c7abe6c7c81157a8bd3576acd9844784041c2239d25aa455da2fc33ba9b8cac0e5a840546dda0cc04765589dab0608ebe9b3cd53967";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/73.0/linux-x86_64/es-ES/firefox-73.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0/linux-x86_64/es-ES/firefox-76.0.tar.bz2";
       locale = "es-ES";
       arch = "linux-x86_64";
-      sha512 = "5615f29da4d69a93b1b07f90f248aada987d56626fd61684ae2d0c4c2d7d2398d30e0de41ce9eb2a7e066b1f34ea07d06f50ccc91dee41dfa2427ed8f2ee8166";
+      sha512 = "9a1404626e2b9716567e0c1b0a7d681acfc47bd488fcc585172fb40c4d18dc1bdd4356244c74d042ad085e0300aff73ff7619d651658655bdf7d668f64e72a3a";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/73.0/linux-x86_64/es-MX/firefox-73.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0/linux-x86_64/es-MX/firefox-76.0.tar.bz2";
       locale = "es-MX";
       arch = "linux-x86_64";
-      sha512 = "49453184964bb88329f6385afa382f440e2400333cf53e737491f248e43c5522e171bc85da86e3c2e5b6e2aca6c1136c529d91dec58cfade30ff67fc552d09c9";
+      sha512 = "870b2b135ffe3ece3ef4d16abc74d469421742bb32fe8b0add3a39dbd580aa07e251df4137f3a2950d6992cefcf0eaff162959ad5eeeb7e493c016769ad2751d";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/73.0/linux-x86_64/et/firefox-73.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0/linux-x86_64/et/firefox-76.0.tar.bz2";
       locale = "et";
       arch = "linux-x86_64";
-      sha512 = "1e5e2f0bbed1e9dff29f646b8038fb27c46ef8cbf6a978e324efe9522c78983133ea3a675f077f837ffc53816c6120b7ff680fd1ba5a761de74162764aedbcfe";
+      sha512 = "d20a3c1cb0649406d9cfcc22bffb4dacdee124b68c210ff25b1316be76a1ec26b7b9f21ee8d208cb7a6f1f733ae71b70af3fe084b92640cce03989f4d45cc375";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/73.0/linux-x86_64/eu/firefox-73.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0/linux-x86_64/eu/firefox-76.0.tar.bz2";
       locale = "eu";
       arch = "linux-x86_64";
-      sha512 = "c99b22564d7d3d16aff4ec9749ce1699b61ddf271ebcd9b24934271b31bacc68936d11f166730f93b5346acbef3116ee67b336364c33bbe3fca1fa18d41c6c9c";
+      sha512 = "fcc4a18ab042f31153e1f5a4d090c920e687687ae8be4259394a771c839e8af167efdf9b0a3cd8ae80f15e70300d24ca894ec1381bd91738b7a5c1160dcf8eac";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/73.0/linux-x86_64/fa/firefox-73.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0/linux-x86_64/fa/firefox-76.0.tar.bz2";
       locale = "fa";
       arch = "linux-x86_64";
-      sha512 = "91ca6ec0f36895609184a1be784848ca208534dffa9c554f7d271d16585e9d220cfef7da176ae23e4836f7e8d26493088f863f59dc9f6af5b58e7006d7e4a37c";
+      sha512 = "7ce0bce00836d4497a440f3c66421cbab38f5b856a8b0e3dea13b88c167b689a061be7261d9daed1ddebd23f21eb806fbe72c7cf08a2f49c31ea1486287404b7";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/73.0/linux-x86_64/ff/firefox-73.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0/linux-x86_64/ff/firefox-76.0.tar.bz2";
       locale = "ff";
       arch = "linux-x86_64";
-      sha512 = "07e0096e432fc7e95d26ae4af3cda0238f28272bda6239f54e891df28a50d414301da8218813ed36b959a2db004c55dfc6f1d3a5b1a31a321fed72d6cdc47f11";
+      sha512 = "41c0639955bb82c8042e0cd9e76c6c6b30c5baf8f94206f1932e8a56cbc21a2de53fc9b31b6dec656822e215d11259a7b2dc158e58d1edce48dbe41f2cda4098";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/73.0/linux-x86_64/fi/firefox-73.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0/linux-x86_64/fi/firefox-76.0.tar.bz2";
       locale = "fi";
       arch = "linux-x86_64";
-      sha512 = "1199ed222e7092a852d3911e576057d52add578acd68a28ec334e377644aed48cf8ea0ca145f6996181bb006a067b3560112599d4bf9dd07528f31a0036d7fd0";
+      sha512 = "540f26080c0b85b71e40bb0eb5acd92d8b71cd9ad8dbe72121225afc2b9821519ed6a2d2bc58cc77b445c3fa42ac6e39647c1da8c8a8935617995dcb0376b9d8";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/73.0/linux-x86_64/fr/firefox-73.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0/linux-x86_64/fr/firefox-76.0.tar.bz2";
       locale = "fr";
       arch = "linux-x86_64";
-      sha512 = "9d287d14eedf1f32c6b5b8b0556191892541db4ef23e7a7a4aeec956ea26e0a5361f15560aac45970cd702909f654058549114cba98f7204adbc1decfe66c074";
+      sha512 = "ccf845aec06d7274acc7a850702e2dbfe69db8198a44537f7f0eef6b65bdf0cb71682b2a443f0e6a5e8ff310922bd29c39229813cd12ba54f70c0fa3418ff23a";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/73.0/linux-x86_64/fy-NL/firefox-73.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0/linux-x86_64/fy-NL/firefox-76.0.tar.bz2";
       locale = "fy-NL";
       arch = "linux-x86_64";
-      sha512 = "db42296b84eb0a383728e79b024aff82fc3f5da1f35292b5b9a78ec65b8c7955dc502b2a2107ecb845b0816343cf05abeca075a4291bcee78ce8be8d4337b696";
+      sha512 = "5eca2e853a3458f5adf0a960cc7ec4f21db344e67e7e419ca19d34b807809bd0c954ae4011b5ee73b02d9ef88686ac57f2a0d1d3af43e6a4def2031b698cd656";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/73.0/linux-x86_64/ga-IE/firefox-73.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0/linux-x86_64/ga-IE/firefox-76.0.tar.bz2";
       locale = "ga-IE";
       arch = "linux-x86_64";
-      sha512 = "789b435790aaade6a52b9ce4aca30bfaf9d9e2899d2cc640b095227712ff06b503b36d64c3330a8c4ca7b867cbb4ee324e66a5f338ac3e01c85773955ff3c70f";
+      sha512 = "4ceee43db5cbd6ef5b18442cba0c7c74998129280e14b20ad41de041b3053b518fe77767a7aed9c62fa2467b2d6ac36a680e276d79edbc959313b260950f7c8a";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/73.0/linux-x86_64/gd/firefox-73.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0/linux-x86_64/gd/firefox-76.0.tar.bz2";
       locale = "gd";
       arch = "linux-x86_64";
-      sha512 = "bb6aa1596ecc3b71562d4e83a0ab1e49d28a2c4de75b4f5056f8d38b83e65b79231e06ffdabc61ddccf358a79583be568db3374d748686379da2163ceb8494f6";
+      sha512 = "9a5115acf49a15e10a530041029081eff7bd7a6877dac1331391d5321533083162be0dbc5dcede2bb708d8a54d47af3773c89e498d8c7d99c28f7229747c0721";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/73.0/linux-x86_64/gl/firefox-73.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0/linux-x86_64/gl/firefox-76.0.tar.bz2";
       locale = "gl";
       arch = "linux-x86_64";
-      sha512 = "1315eaedb0bb6336377fd61a3b02cb0391cb81441f1c6c4dc3935bb9bf707fb0d5b8b32ca6c9c6bbef77a5d5c0d4cd476234348f398acdaa24280437b0e0eac2";
+      sha512 = "435de08a8d536491b645d630e81bd9190b61e0073c3b170977a995f9599b0ebd0fe4a18279f0ef40ca242e854fd43ea36dab41a86a73c515a691b621f8b74ae2";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/73.0/linux-x86_64/gn/firefox-73.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0/linux-x86_64/gn/firefox-76.0.tar.bz2";
       locale = "gn";
       arch = "linux-x86_64";
-      sha512 = "6d810e69ad78fe5fc07c2f04c2b2ace6550183fcd9e1e9e3af863c219948999bd0c2c095a8f85806d6b8b6da0d6e88e59789aa55b3eedd821c0dc59e37114005";
+      sha512 = "e4e4d05239306cbc0f91cf6d1eb890af45c40fff8ac53fa47c6dde6dbaa583d31b6e5e51bfac91d2fddba9f89e51125235b11f766ebc39ec5e55da65e1ba732d";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/73.0/linux-x86_64/gu-IN/firefox-73.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0/linux-x86_64/gu-IN/firefox-76.0.tar.bz2";
       locale = "gu-IN";
       arch = "linux-x86_64";
-      sha512 = "ed0574ba20986bae45a9ffde86d4b4568de296d4c8809f102c25c85f155ab0bed03f20ac7cfe3eef7225c77193343950ed7bc3714f5e56e709c47aaa02a823ca";
+      sha512 = "727b7db843fc1722cb5d837e02388170d06f8c6ef42aba22dde9e237808e5404820c8b14dd43ec5cf2ddfcdf4883bd678d5c9aeb2845e428c096382d8a805afa";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/73.0/linux-x86_64/he/firefox-73.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0/linux-x86_64/he/firefox-76.0.tar.bz2";
       locale = "he";
       arch = "linux-x86_64";
-      sha512 = "d4c1f23b270bfd827c4babdb24a7a7e97aad1620f886c27430ee4136ded392a4921395fc87fc031608e6e056ebafcc74766b028aebca787bc51025f38d2b0173";
+      sha512 = "c151a281f8aaaf82a0021c20af2d12332674b27f2e5ac9c0ffea070c5c350f96de978a1662b5886f1d3b1d514061747f247ae3ebbd965e3ce940a2494c164243";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/73.0/linux-x86_64/hi-IN/firefox-73.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0/linux-x86_64/hi-IN/firefox-76.0.tar.bz2";
       locale = "hi-IN";
       arch = "linux-x86_64";
-      sha512 = "485ec6ddeeb2e6fe9f0a141a33f55491eedd3dfae5793802118ba8bac53322b1f2abc3f14e3eed3c8c9bf5b8beb9e53e3d80d0c2a05fbba850697aa262151298";
+      sha512 = "5048f072162e3b2cbfbcc24885aec83599a7c47bad212fbae741fa15b903014a9e29b362f1492b42341498398b009e5d929de0801a22b4333093f9057c47b42c";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/73.0/linux-x86_64/hr/firefox-73.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0/linux-x86_64/hr/firefox-76.0.tar.bz2";
       locale = "hr";
       arch = "linux-x86_64";
-      sha512 = "1d1ccb53fafdef570efe7991902413a6cdc005f5fafd3a395c0ea9d7d764357525429c5f34825a0437242b2e816c86d207c91c92c557bb0b0eafa9bbe86debb5";
+      sha512 = "ebd9c280598ebec64a230f6711d4d7839feb005d790c0660fe789e129a1acba78e170686eff21e0bad558dc7e9b0dc98a9139b7fff2426d9050ec0b3ed3e815b";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/73.0/linux-x86_64/hsb/firefox-73.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0/linux-x86_64/hsb/firefox-76.0.tar.bz2";
       locale = "hsb";
       arch = "linux-x86_64";
-      sha512 = "79a71e0255cbaaf49afd0077f0a73a2d8f21037055b6f43a8a16ce6f512712b536fefcc911cbbd6c5ba4db493b1c9d0ecb23e99bfeeccf92a9159dec57328da0";
+      sha512 = "197ea2000df14ad17191e2e7eaf54bf7bd1df21fbd25c0e18b200d2c43686c4e256be329f57254422a8e156917ea3bf312a38e332b72596b5b93b97f61319be2";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/73.0/linux-x86_64/hu/firefox-73.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0/linux-x86_64/hu/firefox-76.0.tar.bz2";
       locale = "hu";
       arch = "linux-x86_64";
-      sha512 = "0d5ef5c1589e184fa78ba6cb8bd86530f30dd94ce1e9f2e3a4116539d1f676d60672cb5fc20db3a9e513ec6e7e6fe4b98e340c457ecce583f73bbebf47913eb6";
+      sha512 = "ce3b86d39f27f1a5f2287cb88bb45be0b70ca8adf7e814e3fd5191fd41ab7e33c427d8ee0d4f5c7c5b279e2079e318239aa3485771bd2f211c9f1ae2e654fc5f";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/73.0/linux-x86_64/hy-AM/firefox-73.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0/linux-x86_64/hy-AM/firefox-76.0.tar.bz2";
       locale = "hy-AM";
       arch = "linux-x86_64";
-      sha512 = "4198b61f6708feb15d6d20e0a447d8d9f9ae353c77565fbd5c185e74043d7c896ad8a0c5744e4ed4eee813761df9053b0ad578b8a34ce89ff475d477245e23b8";
+      sha512 = "022053cf588d2f7aebb564342068d4bf3763dde50f3bbcf433dd2d7e5d90ecb134f9302b44f5bdcc84f56e74c7c965555e931ac7b6d85ce58dafe838026a91b6";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/73.0/linux-x86_64/ia/firefox-73.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0/linux-x86_64/ia/firefox-76.0.tar.bz2";
       locale = "ia";
       arch = "linux-x86_64";
-      sha512 = "79f01a78363ce26e31d32c21aa8191db748be7f831aa5143bccdaa35912c23bd5ca3586796b931cb84f92cf28c495fe239b1bf7b6feeca9581bb0c8a94a9c1a6";
+      sha512 = "bd57679165653b1557569d20eaa3ca83011e5704b76e3f29730e91d2c7a5fb553ab3563a1f26d38100ff8330d7efbbd133e959c4ae5c534da2e0888dac12ca5d";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/73.0/linux-x86_64/id/firefox-73.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0/linux-x86_64/id/firefox-76.0.tar.bz2";
       locale = "id";
       arch = "linux-x86_64";
-      sha512 = "afd876da8a8914f88c043f7ffaf8296e14278503e7ff1b94f8563cfc13c2ecf1e0ecf52c18b5c2c16799878de836056f403c67ffd9333a77d3ad3142f9236769";
+      sha512 = "72a391de2d665db794e5624f341245a85a85c45d8d2f3c71bcf526b273bbf1a06cdfca5e9d45ec05627570ee496e0899fd7756066f6f40a86df088c4e5025ac2";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/73.0/linux-x86_64/is/firefox-73.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0/linux-x86_64/is/firefox-76.0.tar.bz2";
       locale = "is";
       arch = "linux-x86_64";
-      sha512 = "3d98244f97a7c0169f272de877ef3193d4c09392a92ec2ee931d95df610617e00529c1e2c86d31115b4df88dd1a15fee6b6d166a55535396e6203b9b104e0d14";
+      sha512 = "8707e9ea8665b0f2f773c98b7c457c00c99528676afaebd56570fea1460b11ac016ca257f10397e447581a3a8966db671bf33634255c015104c8435c067fbce3";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/73.0/linux-x86_64/it/firefox-73.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0/linux-x86_64/it/firefox-76.0.tar.bz2";
       locale = "it";
       arch = "linux-x86_64";
-      sha512 = "22c2dad95a21743ff3350ac8765340fd96c006dcfcadc68c3fca1814d0b6669066d8f76136cc7c4fc6717929d41df0b0b5a01d40de36b9d1c4eeb8529ed1850d";
+      sha512 = "10d74b74ca47e406919ac9589937ecadc55b637678f895d6bb3700aa072c261416591378845fcc2f032755da08a4e996c726fa1694b18883feb9fb90a36ab71e";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/73.0/linux-x86_64/ja/firefox-73.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0/linux-x86_64/ja/firefox-76.0.tar.bz2";
       locale = "ja";
       arch = "linux-x86_64";
-      sha512 = "6297f970de4b35aa7e3ad43fc5112ac0a36bedc5b2431f143e65344cebae74ca36da7af3fa23e1c522e62ae13d2069ff2f1114867e0b0960f9f740904f18ae82";
+      sha512 = "9d7d45b0e1ef893145bce37a137e648b6292febbb08e66a0f0e8b6e9765e19ed3e864483c3892d327f3c75a4f73592a5cb2957ff6c17b20d19bf18179df5b083";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/73.0/linux-x86_64/ka/firefox-73.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0/linux-x86_64/ka/firefox-76.0.tar.bz2";
       locale = "ka";
       arch = "linux-x86_64";
-      sha512 = "2e4ef3085f01d66e7d2b85b058f7be2a7122f1cfd53757494bc6e66a2fb9840013c2f3f68ef7bcd363f6d3f84926449650e8ff2e1f6641dae70893ff1dc00ff5";
+      sha512 = "22730ebd0eec5fe1c9f993c8964c81b31d2bce1b1b7ba901c3a7911d9544659e459fdd19024bb551169d17c9430e15a92c039969379da28a49db2f0b04d799c4";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/73.0/linux-x86_64/kab/firefox-73.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0/linux-x86_64/kab/firefox-76.0.tar.bz2";
       locale = "kab";
       arch = "linux-x86_64";
-      sha512 = "eda0492c8528bb4eb9ddda9f2d585aa63794ba34231b58b5ccf66dd9bc49feca36a837a786c1f0d182398fe5cf5cdc735c45bb56d1aa743554697b6c6a9d1b8f";
+      sha512 = "e7455deffe566f95239e6b1b6eb5a4b20d849ff9f0fa26518d993581b5e76975e41a5bdb54f69be7ff182437ceca868779b67c6a6c118155569dd8792793979e";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/73.0/linux-x86_64/kk/firefox-73.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0/linux-x86_64/kk/firefox-76.0.tar.bz2";
       locale = "kk";
       arch = "linux-x86_64";
-      sha512 = "6d8b29ae3a21f952e7e0633bdee2f82d53d015e134812a24c2bec73e21b923add3fb7470097bd96a6ad41d7cb1488574475c51140db7616d66024178774282c3";
+      sha512 = "56e36532e5babf3682edf5f278b971897cbd4854b0864dde5aedffa6a7828048557dee5992f9eabdfdb67c2054abc0dc2e5d0df8ec5882b07d8b266183177e06";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/73.0/linux-x86_64/km/firefox-73.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0/linux-x86_64/km/firefox-76.0.tar.bz2";
       locale = "km";
       arch = "linux-x86_64";
-      sha512 = "95773f7848250ad0c7f4e4a76ccd956e94dbe9994e451b349f862b3854cf2daa021de7b47c014b14e588189413bbabfb84bf3c2245550a4f824c56ab3964645a";
+      sha512 = "6d1ef5fb7b555d667bc1ced25b7ef49f8832b9c077b113db79ff8509d845d693af33bcccf4039805fc0c69293139a22f24ea3294706097ebde859cd0f9aae8bb";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/73.0/linux-x86_64/kn/firefox-73.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0/linux-x86_64/kn/firefox-76.0.tar.bz2";
       locale = "kn";
       arch = "linux-x86_64";
-      sha512 = "f1c66d17d7c8957ff804b77ef49e5389703506019bb3fe24e44f31f6958e65a83f90082f399a351e8bb3c869f2663c1737ee618cc6ee8732a753bcb50893140d";
+      sha512 = "04626f922214d666f1da224b2ba52960f1697ff76a0b40f92718c536eb07de6b319700566a9c3d702e50b137d54b7a75af474bdf56d39bf80165b8430b636944";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/73.0/linux-x86_64/ko/firefox-73.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0/linux-x86_64/ko/firefox-76.0.tar.bz2";
       locale = "ko";
       arch = "linux-x86_64";
-      sha512 = "2661bfba5959c05752c818119ff29e22bdea6ffcd52eccf1f3dcb2f68c9c0f83ed900a9bf77e99de9e2fd1b4bd153339e5a212e5b7b4c365ea12b02f6fd75637";
+      sha512 = "e83f42c7c24b5a0536510ee736114d8e8ab6c6393ce63ca9e2f9d0e0216831b192781d0617e9793c6a8b687429275eafa6f84a8839900858412abff751256a4f";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/73.0/linux-x86_64/lij/firefox-73.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0/linux-x86_64/lij/firefox-76.0.tar.bz2";
       locale = "lij";
       arch = "linux-x86_64";
-      sha512 = "e1c6d44e2301ec9223798dfef54aa2bd1cf0553ea0691089f5c345ef7cf276727dd420261ae3a4b40855d58e241ea41af2e7856fecf334f534b6ff4459bc0155";
+      sha512 = "524261eaf2fd311f92d85df46459bba17b06ca4e1a61a14453c9edbf37c31b1de2d781d466812c250353546bbde2044c79626840297c76a3986fc6ef869db863";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/73.0/linux-x86_64/lt/firefox-73.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0/linux-x86_64/lt/firefox-76.0.tar.bz2";
       locale = "lt";
       arch = "linux-x86_64";
-      sha512 = "42316a0775d8cfb8a12545485762268feb74052c6d022b092644dec77048cc4e5f6a2e00288739f0a0b39b5530bc43f2946eaaa16711140bbf2ead3d1c28993b";
+      sha512 = "f9c0665c4f4fa6f4a8f0fcc02b92c88d0c9eefcc7b018dd54c605c6b0f024282e25645ddf14cb2bc82827f7c4c8191a83c38d4d749af45db07bb81df99ec6d44";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/73.0/linux-x86_64/lv/firefox-73.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0/linux-x86_64/lv/firefox-76.0.tar.bz2";
       locale = "lv";
       arch = "linux-x86_64";
-      sha512 = "51118140b18c9f911e1ce9932d08cd5dc9e0a9f6cc31160e51c3e06f640322b3ffd28f74eae5fc7b5bc2a9423e820fbab8392b96f55770e8e4503dfd86cd6111";
+      sha512 = "b89f91a5223a2431ea272115b18fba29491d60ab5e0a69af4a1152644596b477876a7c8109ba08c5210b782ad11ddd2b65c775a4fe8cba1126b21cf31e31d1e9";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/73.0/linux-x86_64/mk/firefox-73.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0/linux-x86_64/mk/firefox-76.0.tar.bz2";
       locale = "mk";
       arch = "linux-x86_64";
-      sha512 = "96b5fefd5f1c7f37db059db505864210a872597e8d3f11247c6e68f30122eae15784d5eff7d94a48a38679ca6ea7338a82dc8b0cc65061d03be0c12aa570eefe";
+      sha512 = "f10771c9b2f8634259b7252488e4fd3f9b249b33ab59ce9a02c77d0c4cdc5c567222a91271d4cf3949decd86602613e9fcf9e5e8a403f91255ad8a69bf2351dc";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/73.0/linux-x86_64/mr/firefox-73.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0/linux-x86_64/mr/firefox-76.0.tar.bz2";
       locale = "mr";
       arch = "linux-x86_64";
-      sha512 = "fc5a084fc9d71eaa4a31b4445390ebeea93f828ce0f492802dd38da3a2d5a71f865c5884efb9883545fdb3f2aeb374f93eea133de6c0809b75a924d14ae973a4";
+      sha512 = "49bf1846a330c4d43d554f048bc1c5061c1059d62c57ffa224d19b3b4b2fdc806be73e6bea8409763be182b37ab6a1243652c62f5f3e48a36c3443f509a06c56";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/73.0/linux-x86_64/ms/firefox-73.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0/linux-x86_64/ms/firefox-76.0.tar.bz2";
       locale = "ms";
       arch = "linux-x86_64";
-      sha512 = "c084b4c6e2e9ed3f646b18d14cd7d8f76e46ccd0152a74ee101b0fd532dc91acfef8f26d827e759c2bfd8828ff762a430cec3fc9d0b9e7423166951aaceb8b72";
+      sha512 = "018622ef6cec81de014191bf94f88aa1a7ce732324f70a1524e3866e5500ee93dc6ac48dff4603b2f86b909301ebd2440ab87bf976cf041f6f8ecc4bc7da25fc";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/73.0/linux-x86_64/my/firefox-73.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0/linux-x86_64/my/firefox-76.0.tar.bz2";
       locale = "my";
       arch = "linux-x86_64";
-      sha512 = "8fed2a79499f57b0401da536a557809b152d65fccc91c76fcd2deacbab35b370dcc1c812c8e8217aa4b61e9a02fd41359b84080313fc572fec936ec3ab15935d";
+      sha512 = "24685648158e9da5e74bba611884c3d260e7bad4eb3b6b2e70cf57f15d505b87a7886868e88bfaf440f03f37f7da04fb6fcaa5947ac6ecb62a987b24e0be5759";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/73.0/linux-x86_64/nb-NO/firefox-73.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0/linux-x86_64/nb-NO/firefox-76.0.tar.bz2";
       locale = "nb-NO";
       arch = "linux-x86_64";
-      sha512 = "d316c653e922c6f71d14bd9b6baae661a1d2d93a9ef2ec2c1ac368cdd5797df5896f927c909feef7ccd5323bc4290585ecf119f0bbc6eabe4c69c67127b82c98";
+      sha512 = "4fd040d08c704cbcade0a290020d591fc265bcbf63467f93c58603a3f96af06cb3b38d03aae5a32b4b78fe2c4f89ef81112a69bf539fa052b721f549423b42d9";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/73.0/linux-x86_64/ne-NP/firefox-73.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0/linux-x86_64/ne-NP/firefox-76.0.tar.bz2";
       locale = "ne-NP";
       arch = "linux-x86_64";
-      sha512 = "1ecd87e201addeabc43050279bb175511bedbc5e2e1a541641e5bf6eeadd1edeabaae9e6d7a7cc53d6a4a46d84f256f0abf8bbe9d211dd6b7d8b3bb91b341443";
+      sha512 = "0708208411de209aad6a692dc1b867011d589f2fe1e60dbb5c8448f96735d811aca6a444f7a3ae2d93a2953965b57a728e3af1b2a31ff8c86d1941a21ac2147a";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/73.0/linux-x86_64/nl/firefox-73.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0/linux-x86_64/nl/firefox-76.0.tar.bz2";
       locale = "nl";
       arch = "linux-x86_64";
-      sha512 = "77d9e23944e5fdc8e08394b46811146d95560663e91a534c115986772b5c0b5c9c2e20dabde58ddbc643b3bf0f600c3b0b2f8f31045cf92ea8353610e0c78c67";
+      sha512 = "2c6df617fe9e4c3ba1940aa86e313fa4a5e64db98f4df9abdcef2a5e7832e8586e939646e435c9725e5b97ec80da0f987b620a78faaf445c374a46cdda862f23";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/73.0/linux-x86_64/nn-NO/firefox-73.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0/linux-x86_64/nn-NO/firefox-76.0.tar.bz2";
       locale = "nn-NO";
       arch = "linux-x86_64";
-      sha512 = "6923adac5fc7c616ad94ff4f45db0c5ba20c5c77cc23661196212b419437db8d1d8b9feab9f68556545b3553b6e22858c2f0c7a2afa81f7b4e914446e92fe418";
+      sha512 = "5f02a673edacd9e9e9171c7324b3b45974bc5374fc5a05835a450b6aad1219dc76ee50dd4084243523fc3e10e7b65a51f33e33009f4393f790a9a8430442d87f";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/73.0/linux-x86_64/oc/firefox-73.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0/linux-x86_64/oc/firefox-76.0.tar.bz2";
       locale = "oc";
       arch = "linux-x86_64";
-      sha512 = "eddd11c121dc1933272d1557d220a5590e5fe695cedb261e382d2a0e560646f1f4706dcc46f4bbf1b6c10df2f0b59e15d43398a32975c9505317aaf86bfc8a49";
+      sha512 = "cf24d386d8ad5a927e86929d053eebaf03be667bee4a4d0a85a76b6030e85f254b8e9b14091cb17ce3082890affa2c75ae2c1c0da8e007fed5189c9c2fb3b95a";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/73.0/linux-x86_64/pa-IN/firefox-73.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0/linux-x86_64/pa-IN/firefox-76.0.tar.bz2";
       locale = "pa-IN";
       arch = "linux-x86_64";
-      sha512 = "cd2eb4dd3b29299786d094699dbc162be2c073f25b6feda13e9f631f36530dc9abfde5f473c0276fa8b099010c66938f4e8bd9346a2d1761c59f63190944b553";
+      sha512 = "1a8f07e70425bc65552fa82a16eb4009e036de60a6b84aacf7a4d47c2763b00b116f61fb87aa2a5dc28d2e09a82dc3621470b5589b3fba449e2eadf2996686aa";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/73.0/linux-x86_64/pl/firefox-73.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0/linux-x86_64/pl/firefox-76.0.tar.bz2";
       locale = "pl";
       arch = "linux-x86_64";
-      sha512 = "e039394e335b13bd55a214a8345645e1d5640d2dbcf76234cdb5710c2ae0b81e568b8ff8456780edbb74fa2ab186eed004c1d54a04560406909702555a318db2";
+      sha512 = "ba8dcd5ad68f8506d4c637be831365fe230209ef58640da8bfec20cde9447daab678229e0a82931c022aa0c6fecdd0e405e92a4bfd51d7627235b689aa78c555";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/73.0/linux-x86_64/pt-BR/firefox-73.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0/linux-x86_64/pt-BR/firefox-76.0.tar.bz2";
       locale = "pt-BR";
       arch = "linux-x86_64";
-      sha512 = "4649c45fdf1b8b3a93e8a5f88b88c47104b6d1781c89fba4cb9630a8998f3e4e28ad3aafa0265d04a3c10323916fce73d834cc95e5968a10b4a28a9ccf70aee1";
+      sha512 = "fa1f67341221a907f24ce2953fd75a0003c04540a7673173fdc333081c82c24e68c0fcaa85e10264435a9540e356e94f0b4d5b38d892821bd307530ee10f9b7a";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/73.0/linux-x86_64/pt-PT/firefox-73.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0/linux-x86_64/pt-PT/firefox-76.0.tar.bz2";
       locale = "pt-PT";
       arch = "linux-x86_64";
-      sha512 = "44d65ac6e2df986638de77b01c7c544a846f92444de25208247c93ef2701d0398f77de10e9035c8fd383cc998adccbfe2dd76edebb646ba1f29a639786b61259";
+      sha512 = "c282b71b30ee4f2f67d98551eaeb1700d2867e8ae1f19dad417f8774b8a91db63ecc14c37712910b7476e837c4c23f4871a20d2afe37f61ba4ba0ca4b1684569";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/73.0/linux-x86_64/rm/firefox-73.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0/linux-x86_64/rm/firefox-76.0.tar.bz2";
       locale = "rm";
       arch = "linux-x86_64";
-      sha512 = "6c9694d25cbe53e129148080e365b4964f5e683ede81d7a17fdc94045359480cf57cb8e4004b36645c6cc9c987845ac723e11407302eeca1e2e1fca9924eff2f";
+      sha512 = "70cd918ccbeade126f36dee76600f7c6e78ec3291a12e6d60f684dbf5fba322bb7ab847cda9f101af5b48d9b0374573e8f6295dd8683ff3acf9a89512117d054";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/73.0/linux-x86_64/ro/firefox-73.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0/linux-x86_64/ro/firefox-76.0.tar.bz2";
       locale = "ro";
       arch = "linux-x86_64";
-      sha512 = "b1e98c052f5b51047ebb5c28f83e7c36a74b85d0aab3226438bdbc502619a2f9767cfee6f9a2f72653ab8102f058cdfe40dd7f6cf11f88652ea8f00a0985d9cf";
+      sha512 = "acf9a4914255bdde374ecdd77b39190c945621c51ab13b2d9e1e8b1655df593c6c7e174113d89e8b1afd223e6a0f63560ef4d991706d5f23db35a939ddf793da";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/73.0/linux-x86_64/ru/firefox-73.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0/linux-x86_64/ru/firefox-76.0.tar.bz2";
       locale = "ru";
       arch = "linux-x86_64";
-      sha512 = "681214c7286392c8267cf73bfd4a57fe3cc9710992019aa645e052a8839234f4f65ccef2e98e6f4e8b4d099a0d2932c8d909291ad46cb581036930715a916565";
+      sha512 = "9457048e428958b55ae221471cfb2874ca16ea9c1e34a33d538b9964e6ed77711283207106814f6d18ab73f8c690e6c20b2c84d361242b228cc92c7ddb675a27";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/73.0/linux-x86_64/si/firefox-73.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0/linux-x86_64/si/firefox-76.0.tar.bz2";
       locale = "si";
       arch = "linux-x86_64";
-      sha512 = "daf1cbb9ae4e3892b138fe0f3aaab8aa11fe175c1bed70d374e5da7baf0c77a3d1e836647a8a0e36b1b2791c3fa638c63ca960a361751b7dbaac5d87a1e73e56";
+      sha512 = "897b488d3ba0592b902f2cdc4eeb2f454b9b6f67fb5e4c583f5f49fb062483ce1d30e64f6273894c698406f8be7dd8a2af02a67e8d9bf47f8d30a572fb18e7c9";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/73.0/linux-x86_64/sk/firefox-73.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0/linux-x86_64/sk/firefox-76.0.tar.bz2";
       locale = "sk";
       arch = "linux-x86_64";
-      sha512 = "4d34b4c6eda6297461191388266d5d281be23b4e4390db9999832f384431bd5f5f323be80fa1cbc645b7d1bcb8bd6e80077ae2f0ba66239308eb3b72c062bb37";
+      sha512 = "2847545533829f45c22b85368c5fe262e2a43cef0e5d480a540ca47f0dacc8003b8e155b11098944c7012b03feb8ddca216649f645c46da0975183f42580e285";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/73.0/linux-x86_64/sl/firefox-73.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0/linux-x86_64/sl/firefox-76.0.tar.bz2";
       locale = "sl";
       arch = "linux-x86_64";
-      sha512 = "7ab8ea5037264ef3853376c000582b7a423ebf366d84e50fbb642f8510609cbfc7d8cff6b48eea499cf7dd14da3dfbda635871fa7b2990beb386b5e6b1db35f4";
+      sha512 = "9b0223b409774a62216c97e522696700dd95b65e1755d889d58137602fe4302d8f5280464636d94c97cfdde8c56e49492005e487730b591d19bc947271754e1e";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/73.0/linux-x86_64/son/firefox-73.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0/linux-x86_64/son/firefox-76.0.tar.bz2";
       locale = "son";
       arch = "linux-x86_64";
-      sha512 = "afda3965d5934b4cbc3ce0c9df16d286cb3f2054c5bf5a174349691d12abed45d47e0c79a5b4e730cf6791a118daab6cc4e7438ee2e50529002fb9a99db4eb88";
+      sha512 = "097ff1df64b7ef62eee3a29672447c42c46dc23741ebe87365c4d41159052ba3560f7a10956dbae6b67daaf80607600d2241dd997573b8ef8c54fa94f064e629";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/73.0/linux-x86_64/sq/firefox-73.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0/linux-x86_64/sq/firefox-76.0.tar.bz2";
       locale = "sq";
       arch = "linux-x86_64";
-      sha512 = "6a1535b6440a805f60b5085f4e34e54453e36f01cd10536b169cfcd8cb67d61bf325469d33981e261855deb0ea158a68710b4606a912c1a2d8769f0c83ec33d4";
+      sha512 = "8a76a933f261708504fb637a93bf4d600514558f08832ceae8db23a404e5d911ef23803436e5513a4b7e4cb85f536e64c5ed801457ad2e1f9c559dfd1f8be807";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/73.0/linux-x86_64/sr/firefox-73.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0/linux-x86_64/sr/firefox-76.0.tar.bz2";
       locale = "sr";
       arch = "linux-x86_64";
-      sha512 = "a5cf593a21ed3c2a825cfb4a7280b1b4a8d4905cf85cd69edcb36f733189ced40a9a5c6e86cbc9870cd9bc1442f4c7ef19621e43181335d0b9d7090a3d4b102e";
+      sha512 = "bf7d631608e91989a8cb63cc07b8e253cc2c764e9f712eb113c7b735bbe2da04ddcc91d43fc418eb208a75f4027256cfb10d15c21e82b7e3eea096ce6fce9a5a";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/73.0/linux-x86_64/sv-SE/firefox-73.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0/linux-x86_64/sv-SE/firefox-76.0.tar.bz2";
       locale = "sv-SE";
       arch = "linux-x86_64";
-      sha512 = "bdf87d4f3a960ac38dfc39183d7a7a7ae68d45e52d4f356a47a122a1a93fcb6d49cac463c6173c87495c39f717c68533e0234f828c45071a9ab59b3b0dbb87af";
+      sha512 = "cfec4b5942c193b37e881569de1d40907d44b7ffdd6a08fdc3dc44ad27151427de0e368a08e4888d9248e07fda8de54f1b7d1eb3e106f0cb41c7fa1a8e4acb10";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/73.0/linux-x86_64/ta/firefox-73.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0/linux-x86_64/ta/firefox-76.0.tar.bz2";
       locale = "ta";
       arch = "linux-x86_64";
-      sha512 = "808628662c860b996124c367ff3d9ae89fd622648b46a985da4c3be50baeecf5b5d4de7de0488b2f46810dd7e8d91dd6923397830c58d27fbbf847772ba42c74";
+      sha512 = "8f487289fff43075239d79d1d4b8b0e9e7a645a8dca26eff58ec32e534a870b5b67232ea6d43dc58b1b4bae9be8af65793f185e4b5747d9c374fe7802b92c9b4";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/73.0/linux-x86_64/te/firefox-73.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0/linux-x86_64/te/firefox-76.0.tar.bz2";
       locale = "te";
       arch = "linux-x86_64";
-      sha512 = "22190521d45ad61965b5e863d877bf92da4633bfc7638f2f83825f478dda5ca5ad333707a874c0b992b2b9e8613c96f6e5f7144a9e51e696edce88cc36bd8c1c";
+      sha512 = "a3ed83d4c34fe6d24c2d33c490d6d2de6fe56382bb87807f530bef967c25bfb9a00a1958ca13f2936357e3f1d75b029dd2bb89a13171574bc022f7da8b4f49f6";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/73.0/linux-x86_64/th/firefox-73.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0/linux-x86_64/th/firefox-76.0.tar.bz2";
       locale = "th";
       arch = "linux-x86_64";
-      sha512 = "0131790f8fc79abff771b28e4b3f4f894c680f790e9999be22ebb968a869b17dc18c4fb15f992bcc025863eaed5887662a3ccb98c4d3e85f385ec00c37f1b891";
+      sha512 = "54c9f36ff4f00f1bfa3f947930988ce6985bf4e2682613a8368ab60d07abd02d3171cd2457987b2bcdd7d0929003580af9e4683b7e0f529b1ff3661004aafff7";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/73.0/linux-x86_64/tl/firefox-73.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0/linux-x86_64/tl/firefox-76.0.tar.bz2";
       locale = "tl";
       arch = "linux-x86_64";
-      sha512 = "5c20780883b844c5f3206c4c2d7fb0d341afdfa5b30f87d0356445cf279b0be7396433e1f6ef7aa20c88016f540eb773a66aee172c678a172f378b7ffa28c2d6";
+      sha512 = "6dd5f5908e9ca66b7ab9e132dd6db3c5c2ea2e28eb9de211ceb6d2736746fcd50408cd327f098ffe1beb57199af6b60827bc11614c4c781d109ff315ccf9d7c8";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/73.0/linux-x86_64/tr/firefox-73.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0/linux-x86_64/tr/firefox-76.0.tar.bz2";
       locale = "tr";
       arch = "linux-x86_64";
-      sha512 = "211842a6177af5397be00b18d42e038c2a82a185305dc2bc36803713d16461321ec96838c21873a23816198bcd2d9e1b5298b2885afa60506702e8f07b803b7b";
+      sha512 = "0222ab139a87a195fcc4489a2d2b1024e95b4b76d4ffd8c63408ab3f4c9ea0e4be019a57e31ef3eee3216fb0217c01cd92cbab9ea33b2d7f0a4660326dd0b8ce";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/73.0/linux-x86_64/trs/firefox-73.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0/linux-x86_64/trs/firefox-76.0.tar.bz2";
       locale = "trs";
       arch = "linux-x86_64";
-      sha512 = "3d1292229c645bbd3529763c4729be8ed044bb8081f0127b39f62a3b21c670889c915fd982866451ce494299438caf7380e4b72b971c4163a2e9e96575550439";
+      sha512 = "a50634af2bb7d9cdd8ae8fd268b2bd5f24bbe68e7bfcb810e51921a56db7f831e84e73f93001a12f83a269a27df956df03e70aaf6231925b08399bc54aa71de7";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/73.0/linux-x86_64/uk/firefox-73.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0/linux-x86_64/uk/firefox-76.0.tar.bz2";
       locale = "uk";
       arch = "linux-x86_64";
-      sha512 = "58da46b39c491278be85ff9a37eabe993166b9f950aabf6b5776634779d2427bd8c044e7b851462d59584051299c954fd5e35491a32a2c893678ca0fce0b4a8c";
+      sha512 = "9e32876027449c3b145cf7088b5b9bf7d941d3086f6d1da1dd13f3f06138b1c7c375dd7561d9342dd7a1aad1adae6da3a2f354927be1318eb79703753dbb0d00";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/73.0/linux-x86_64/ur/firefox-73.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0/linux-x86_64/ur/firefox-76.0.tar.bz2";
       locale = "ur";
       arch = "linux-x86_64";
-      sha512 = "c0f35fb5e3967fcefb7bd708e621abb138a3972b52d871ffd5f9e636c9d27e040e5f99313c72ae31cfa2313c9edc2ac9b64e9ec1710a5b1288bf7d1a7be80136";
+      sha512 = "f4331e2c47373a612083697f4a693d7c05edda3f08518642617aa274e735f7a64ac49f28a0c1681addfe488107367377757b12dedae49a14a4752ca726d0fe02";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/73.0/linux-x86_64/uz/firefox-73.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0/linux-x86_64/uz/firefox-76.0.tar.bz2";
       locale = "uz";
       arch = "linux-x86_64";
-      sha512 = "68d335c31ac07a2790c4fc142b3f17c527bcb289e0f6e19a228dce248062c89df18874fe22a73623f6d94309fe4089a072dcaab533bdcdc1855c539395222b45";
+      sha512 = "ba7a39e9f8537bb5fff9253d01b3fb2a0c815c3d93fda024d1da6dffcaf313e7c75068c302887355b0e1b498157917be5f290fe81a2c30f8303c33ae2f23d9fe";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/73.0/linux-x86_64/vi/firefox-73.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0/linux-x86_64/vi/firefox-76.0.tar.bz2";
       locale = "vi";
       arch = "linux-x86_64";
-      sha512 = "e7c846995285b3194a12b14a844c4cb01871012d1f7df241c3b9ad73191c567c04127a4d7a7aa2ed33ecf6deff8d483a92b2b3511ffe180e4f61cdb114a3285d";
+      sha512 = "4382a78302dac11f2ec626627c65c528d756364b8332c0124cbfd45ce9ae226d4b42eddf723e306a1b1e0b7bb3fe70c9efd3019f91993ac2e140492900fc0ab0";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/73.0/linux-x86_64/xh/firefox-73.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0/linux-x86_64/xh/firefox-76.0.tar.bz2";
       locale = "xh";
       arch = "linux-x86_64";
-      sha512 = "cc9b6e46fbfe9fae1be6e501069932e35b8e53a91bee226ed8b7179cff98e3092e984dfb194fdc0e4554b983bdf203b28e271ff40565bb30a140aff24bf88e02";
+      sha512 = "b23a1f3b7fa906fd6dc25638d8cafdf3adfe63346fdcdcf878b9f0f98c8803631fa608fd75086aa7808fa0d4730ea7a89998e2d695b2d1f140a178f14294d318";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/73.0/linux-x86_64/zh-CN/firefox-73.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0/linux-x86_64/zh-CN/firefox-76.0.tar.bz2";
       locale = "zh-CN";
       arch = "linux-x86_64";
-      sha512 = "d967c3de22a110ed948a055d3d1e5f29ff473a8eebf1cc08d960135dac0bdb3a812c240cf46f789be8de5a5769bec2518d60dff5b31c8149275c0650b387053d";
+      sha512 = "b73405a8872f079f5f69cbd9fd69aa60e614a0e22f1f933be9a8a9e7312fca362549f57af17629548694e92679c763786978fb572faf4f9f6cb72d64b2661d60";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/73.0/linux-x86_64/zh-TW/firefox-73.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0/linux-x86_64/zh-TW/firefox-76.0.tar.bz2";
       locale = "zh-TW";
       arch = "linux-x86_64";
-      sha512 = "3e9838ef076f360f09c30deb25298d23c7c067ee4956061b5d19c51eba91e28bacb9e22cf6fc6f7df929d1fd541f5aae383137aefeb3c0f2f0d41625875578e9";
+      sha512 = "0069f82c583d88e9630fcb70c481969ada68a7ce919c4f5ab12ee442ca77f69d15179a46e5f2e7850a6686bcd6cd896f2e03163ddaa7e88affe6d62856d1fde6";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/73.0/linux-i686/ach/firefox-73.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0/linux-i686/ach/firefox-76.0.tar.bz2";
       locale = "ach";
       arch = "linux-i686";
-      sha512 = "62f98561f7dc2b856474d5915ab1ce9f9939cfc4102d33532c2f933fc1887be5995abe4b16fa715647ee1b7b5a68e5fd9f263e928d05b6f6ae35ce924aaaea2b";
+      sha512 = "1e81c77813d8f489ca2d2d75dcf74ef1085ddb367df885c2d25cc7051d759f26685da89860f67920a49ae4331762be74fbd2293bc2a6e0549187ed8fde643d4c";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/73.0/linux-i686/af/firefox-73.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0/linux-i686/af/firefox-76.0.tar.bz2";
       locale = "af";
       arch = "linux-i686";
-      sha512 = "cb203a3cddc9fd71178c1d158f31ca55b15f3388761c4347a3b2fdbde921effc335ea6f2b49b4fbda624b79621df9196b2e08bc42caeeab9feedac05a25aa04c";
+      sha512 = "a753254f0e302af7aea86499c1b03cec34a83691eff48231840a20c0afff1c595fab893d804b83aa0964eb5e570185102a701d31c668764d58c4715b3d0feeea";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/73.0/linux-i686/an/firefox-73.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0/linux-i686/an/firefox-76.0.tar.bz2";
       locale = "an";
       arch = "linux-i686";
-      sha512 = "77bec37a0584e2cb00dbbe6278f21f3814a73ffcd026b33c2c4ccf13e13561263e314aee2c39595d037a9a49e54510844db44d521d3c550a19f1c2bddb66be00";
+      sha512 = "e1fa38d89cdc7d7c9a01f8de5ee19316b1ddbdce1f4f868e8ce1bbbf22e68b8f741246a5ba4f2a4e67c959b9575c73acd7b88e918e3be5fa285dc5ed42e9af61";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/73.0/linux-i686/ar/firefox-73.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0/linux-i686/ar/firefox-76.0.tar.bz2";
       locale = "ar";
       arch = "linux-i686";
-      sha512 = "c84047c4267fd8f872876a87a809604a1d65245804b5cdf45ccbca764d9ec9b39cd6edb13e282a7ab0278bcd17111487d5a22a36d9cfb7c1544353111395216a";
+      sha512 = "10270f9783b09b09fd7f43b8f3c4196d332644820796b097ca219819e81bd5fe23ffcd4df988d3f2f3d59fd005e38feece57b7dedb84a78aac6af7965e73421c";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/73.0/linux-i686/ast/firefox-73.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0/linux-i686/ast/firefox-76.0.tar.bz2";
       locale = "ast";
       arch = "linux-i686";
-      sha512 = "8d87ec12eefa47af400d0c3da5c103587019d3f4584ccb5ff7fc02017451be0417673a3b539ce3191339f9afd8bf9e562aa962883bbabe3355cbfba2c7748cbe";
+      sha512 = "1df6b8b479fe391bd128cd9b175ddc233b19b61b3f538ee75ba7728a4b59e4cf1ec09bd9576f82df66e89048b62ebd9cd2206038a0387492cf7b1994c36d84b2";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/73.0/linux-i686/az/firefox-73.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0/linux-i686/az/firefox-76.0.tar.bz2";
       locale = "az";
       arch = "linux-i686";
-      sha512 = "0801cdd56ed2217f52bdde2f541112540853f79385d3488a2d01e9e95e5d8e8cd4f3d2433f9c272dc7309445f11ae36ab4edd0bc24ad343cce46ef3d74826261";
+      sha512 = "81305694cb1601b45d09aedb7bf6c0ecdda500c95209abaa00feb2cd2aaa1f5d86f5bb18933f00cbb5a6b676710db4e96495b17141cc62dea06c26483d90976f";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/73.0/linux-i686/be/firefox-73.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0/linux-i686/be/firefox-76.0.tar.bz2";
       locale = "be";
       arch = "linux-i686";
-      sha512 = "34a7d7abb122fa4fe4d38cda591fc88a5b5e38bf0415a89a87cc04fe14216408c56b3c7a67a29eff8409cea95bb82df4ed885110e0b39a5606e8278ef30085d1";
+      sha512 = "13e5c72791ccc0ee12844d8a9ffdb5ac60a2a9d79bb3f25818f4f1b3b606137b5eb3c8911f81d654028cef48a00d9cf10841465c7fe0304000357c62d964ec44";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/73.0/linux-i686/bg/firefox-73.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0/linux-i686/bg/firefox-76.0.tar.bz2";
       locale = "bg";
       arch = "linux-i686";
-      sha512 = "a1deaa04a797865ab9d62d1c820ed837c723bb66723397218d9afc114c4d1146c64f3c49ac558c69476938ef5c4f815b300bc25e53cedeef41c9022a6173e24f";
+      sha512 = "06a1ba2fc944a15375029ff12ed9f566ccf6a795ea8e63743be8084c7e11004d72693c65b8a330cf945a530fde5298c69c83a0f549edca8fa50d85a904ee744f";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/73.0/linux-i686/bn/firefox-73.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0/linux-i686/bn/firefox-76.0.tar.bz2";
       locale = "bn";
       arch = "linux-i686";
-      sha512 = "8fa4631d3a5c4aabb0ddd587f66a8802530864dbf99e1035d3a13efda65cba93a7824e72abfb6388ebdad045d981ac818368406ac345fa4bfb65b8560a9e1943";
+      sha512 = "4b4c8871d5da372ddd15ac410ecfae08385a74b68e142b64e4e463d58b1e60583025f3855375b5adffb8a218839f86cf538a96dd285dabde96f8695af2ed1a4d";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/73.0/linux-i686/br/firefox-73.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0/linux-i686/br/firefox-76.0.tar.bz2";
       locale = "br";
       arch = "linux-i686";
-      sha512 = "c9de94ec51f4cb7bc77c5db2b5d359cfe24d60c76fd6c368907f6dfae8c2166b6b0a4954d791e808a52b145cc5acba1e2bf82237d63b357fb2920b1e4a057bcd";
+      sha512 = "e33d927f88d4e0a67b28f27ed32696cadba6241fd3bb48800e68248173bcd7085adfd3dd3700c8d4ddf5be3df93403e20e9c0d57db9ff5d6a141ed58b74c26b8";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/73.0/linux-i686/bs/firefox-73.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0/linux-i686/bs/firefox-76.0.tar.bz2";
       locale = "bs";
       arch = "linux-i686";
-      sha512 = "08bd5b8a337e0968c618903ba137d9340f83282bae27f286d4fd65f89c7ecdd36d771cf7a63767102e1885c7588d29645feab07e1c7c970c0ba9e5b8c38db7be";
+      sha512 = "680587ff748248a665751f004b02d0b0d4e28f90f672141961d47cff6239823431b863e8ba702cad8f43fa70b295ad69b47954d2abe2fcec423e68f704fddc6c";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/73.0/linux-i686/ca-valencia/firefox-73.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0/linux-i686/ca-valencia/firefox-76.0.tar.bz2";
       locale = "ca-valencia";
       arch = "linux-i686";
-      sha512 = "5036cfd9bda8de708d90a3ba216bb74526a2a4b00bf16a435b8e346deeb713080049a3f39b2e9f5bc73799203c91eddce07df3bd0affa49135b3cea2d2c4081f";
+      sha512 = "3f740ce2af373a3154372796edc4e85f8bf87b83cf4895328dcdb357aa4214e7711cdacbed596c4d7a1ce1ccc16bfba32fdf2d38749f3144faf747d05e76e208";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/73.0/linux-i686/ca/firefox-73.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0/linux-i686/ca/firefox-76.0.tar.bz2";
       locale = "ca";
       arch = "linux-i686";
-      sha512 = "1576e57936866754bcce40c8daa9fcbb7b8c4b86c44c66dd0288764a12cfb7b03c9274327d06e3d1e98808a720acb5c01fb1cbd83b1cc580208e29754cfb8864";
+      sha512 = "ea9b71eee4f6e967753acf4e9f0a4014eeadadc6d1bcc5fad11a5975b778f92cade729338636d86a783ca08b0363942d7d9b7e4ad65fc3186760189ead9bf0ae";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/73.0/linux-i686/cak/firefox-73.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0/linux-i686/cak/firefox-76.0.tar.bz2";
       locale = "cak";
       arch = "linux-i686";
-      sha512 = "715ff756b1781ee74a12025163443ae22fa54891f8978356acb816db254f0e9ab999b8855e6b542329a42fae6a3f3bd319295b9b17953234c1107668f3414009";
+      sha512 = "bab4ceb14749b67877a99b96f47aa7a9d6d65281e78fc416d3bc3e5296ba2133d7548ccfd4ab32637c976d178fc911f55b6acc60dc6658b4193e1c6146bb641d";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/73.0/linux-i686/cs/firefox-73.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0/linux-i686/cs/firefox-76.0.tar.bz2";
       locale = "cs";
       arch = "linux-i686";
-      sha512 = "835be53ef8be7772decc01e0ddc9115075c26f15bef7b4cc659022e2c7c6997bcdebd8ab4efa431e61af92c13b59734e4e9a433efd068ac2bc93fd79aa706f44";
+      sha512 = "e33adfe91886dc66f09cce26dc33ea26cdf432915674541a8fbde09cb41d2b14c0ebb3c41683cb1c29908dd652c83c92bacea3b8cab9bb3e8d9d6010a19f9646";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/73.0/linux-i686/cy/firefox-73.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0/linux-i686/cy/firefox-76.0.tar.bz2";
       locale = "cy";
       arch = "linux-i686";
-      sha512 = "be5702229cad8438312ee14e24b3267bea91e131736bc8dd4796798285dacec2863843f844bcac47eb64dd9a2ebb6966f161a3530db7743dfb8ccb3b5cab9fe0";
+      sha512 = "1c5b5d518914fb69b6a978fbb8530589c0aa117da1f2f7398696fe29c6177f0ee932f88bfabeab049bdc80d6e457835a492853ee9095b10f12b68172004a2b73";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/73.0/linux-i686/da/firefox-73.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0/linux-i686/da/firefox-76.0.tar.bz2";
       locale = "da";
       arch = "linux-i686";
-      sha512 = "bda6c747c1eb8de22850aa418fcdf57f5a39d96546cccff3d82ffd1be93bd1be499abcce60f5e1b76595eddb1fdd4e3dee3855fb25fdb8c1f2ad82ba97a9d854";
+      sha512 = "90d385bf3faaea5ec6884c4042a72e6a23c68f1454309bc933670d0fed7a5aac2210ab4c6b23755d883fed385ae0f11639a932c2540687b219aa009067a3ab89";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/73.0/linux-i686/de/firefox-73.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0/linux-i686/de/firefox-76.0.tar.bz2";
       locale = "de";
       arch = "linux-i686";
-      sha512 = "aa7510f2dc6846ace6a9754a4105197b238a22bcb034ea22453b7550aa00b3ad87d6aa9a7e909366daccf21427659802e7bc3eb285ceb4e38bb1c906cc782399";
+      sha512 = "7fbc20a9cef66a6760fa314f2d074d2c597b420fee45fbc8c61a85f963130564e18d47a97833299283faf5c959d12f70e4f99089dabcbc3d83f3bfbefaec0f63";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/73.0/linux-i686/dsb/firefox-73.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0/linux-i686/dsb/firefox-76.0.tar.bz2";
       locale = "dsb";
       arch = "linux-i686";
-      sha512 = "9a97a6b634685f02e3af6492378a3db600ccc80678ec9d9fb75e08ea123ae6d3016254a2fea5b4736530480671e7095fc21840e6c3db50bcc8343a800897b704";
+      sha512 = "2dc3dde5159c64b61a4599a0ee2aaf3e4d9e71d7a3913e086c0c187cca48e8bbaebf7d4253dab7a3cb4fbce55a1119e3f4c30026671b92b70059b8b3256e72db";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/73.0/linux-i686/el/firefox-73.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0/linux-i686/el/firefox-76.0.tar.bz2";
       locale = "el";
       arch = "linux-i686";
-      sha512 = "7b15f63414a9b08fe54ca249b99e80a9a2a62a0a9462911b31c4220c7941eea7e1f4d170d969770fa1a0bf76b25cf539ee0eb5c41106fab3200ed32ea580fe94";
+      sha512 = "73bfdcc5482d5793c0c5673738ae08cb6a2187e61d8ee057ef89f4ceb801bfeec48b8c0a9f48bdd996bca8ae4a232afc61c6539a1c22c7bf96d06180364cecc6";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/73.0/linux-i686/en-CA/firefox-73.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0/linux-i686/en-CA/firefox-76.0.tar.bz2";
       locale = "en-CA";
       arch = "linux-i686";
-      sha512 = "92c8f0132880dd0d3af36e1ee489ec87a7169ce76afda68367f977a3dba346aed727d04a9ada0aa96c1c26e6b029e27b2edaa266074f49399ba10f7cedc12bbe";
+      sha512 = "baf1441e6f6ce7a31ce5ff12b600b61068bdbb9beebfe74f6c9b97ed2533ec734bc34b702caa9e9c59bb4563bfdd64c2612151793067cef3ffa1fb0ada312e28";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/73.0/linux-i686/en-GB/firefox-73.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0/linux-i686/en-GB/firefox-76.0.tar.bz2";
       locale = "en-GB";
       arch = "linux-i686";
-      sha512 = "b4cc2106924be7ed68a96a97fe3410ddf6a0dd57861a6e93185f396ec92ad40dcf901de8785e9814a9e9499b5828c34c61910c88a257e1f45103f737030d7376";
+      sha512 = "60b276043c2ec3456b6b06acd2edf6f3df5149824d20c33974f3ac77fa0ef81a03f99f337add0209bb88b390fbf4dec08a30da207ad72ef91c9a89cd36e4452d";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/73.0/linux-i686/en-US/firefox-73.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0/linux-i686/en-US/firefox-76.0.tar.bz2";
       locale = "en-US";
       arch = "linux-i686";
-      sha512 = "5b8bd3558e30d65d9368e86c79695c7cd5d5fca159a678394285bd5a72f74cd70775dadf176d22ee99dfc939333bb3c64225385e2e9330e04298a62718821cd0";
+      sha512 = "26eae1d8a6f9e988695d59d418749fde988e48514d7c183039ee998b400f480dae16e9d5a590ff4364954e57a4008e7104cece212fa81fe73666d2bf3f0c0020";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/73.0/linux-i686/eo/firefox-73.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0/linux-i686/eo/firefox-76.0.tar.bz2";
       locale = "eo";
       arch = "linux-i686";
-      sha512 = "e80c74cef34d4be438792e7436fa14e3008029c7ddba9884f3a5bd6f1a20ca51612e5f3a1e6c5939d69740921b0717b2ce5bf20c1a740ec6d167cd28809492c2";
+      sha512 = "55aee2c68a1cb6b7e374f2622c8aa30a8f26e14ea0f0119d97bbe6e807c15c7df94ec74c0f31ef071ea7b112c3bd8ee501c7d7b33ab5eae9a8126b2fc9673047";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/73.0/linux-i686/es-AR/firefox-73.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0/linux-i686/es-AR/firefox-76.0.tar.bz2";
       locale = "es-AR";
       arch = "linux-i686";
-      sha512 = "2dfd113477eac29985af07c05a3d2c0574104f91e44e8625fe5ec51bc5debc262d2f812761edff5a63ebff408f2e560eaced510ce34256f497317e0af5066b49";
+      sha512 = "dbd5aa229d0123a26290330df078967bff4d0484bcdcc3eb499a7cdc82176b49a2362a0ab08e2b55286141b25c8cd4970308cf48a1143a5af788eced5b84b83b";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/73.0/linux-i686/es-CL/firefox-73.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0/linux-i686/es-CL/firefox-76.0.tar.bz2";
       locale = "es-CL";
       arch = "linux-i686";
-      sha512 = "7cd5fe37c8eefe0ef5488feb3a4c9640f8cc25e5c01c31d84e755a84d7c42e2b1ee89fcd78cd797b3bb34c465d06966ff5f994b7b6412008628646a987abac52";
+      sha512 = "5082bef600a311f560daa09b31945961766a0ec63ebf9f38a0f0e76560fca2a99594c1f26fd0b57a2dca0c94d1991a91501ee3e931740e59010c93d46d3e8a67";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/73.0/linux-i686/es-ES/firefox-73.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0/linux-i686/es-ES/firefox-76.0.tar.bz2";
       locale = "es-ES";
       arch = "linux-i686";
-      sha512 = "7d2a3fec526f8e812597c1184a3a811c0a1f7d1545aea8f826ac934e1b694d35692aa8f47bb2a42f7a5c183075e620e29a77a927d99dea54326bc690110c575e";
+      sha512 = "87ef420353069862cd539aa8e53f93f50330e0c68bfa4a56913e9245bd4a972bcd271a7c159218f9ffb78c9d9be3046206f20fad4faae3d76e4e9687530ea6b8";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/73.0/linux-i686/es-MX/firefox-73.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0/linux-i686/es-MX/firefox-76.0.tar.bz2";
       locale = "es-MX";
       arch = "linux-i686";
-      sha512 = "03df019ca336e8b6ae455b91058c5ffbdeeed6bec6f039962c00d8b8d83668783e072f91a82439092bcc4794c1be0e52dc6f88303147f97fd67d81feb14d58a1";
+      sha512 = "d02362e93a290f34063fdfa7af8fea71a6cb92b964b872bfac8f5b5665dc6ce9cde7a38a445de1074fa8673cc2c0243af69e2663542c5c2fb8e53f2c41518cbd";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/73.0/linux-i686/et/firefox-73.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0/linux-i686/et/firefox-76.0.tar.bz2";
       locale = "et";
       arch = "linux-i686";
-      sha512 = "85d6ef77f080e8617cf490d945d45f453d04a635e1b410fa1ad78c86afd5d43a9a39c8ef7be0b4676b057d7131168a1d8ad0dab5a4fbe230266f96d25baa8fee";
+      sha512 = "0064c56cf6cfc38a5eff201f16df5c9037da8089655df5c88a348ffbeaf933941d5ce99b3618293d2154774b483298b4c28616c6e175fe0f6c9124ce00bb16f9";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/73.0/linux-i686/eu/firefox-73.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0/linux-i686/eu/firefox-76.0.tar.bz2";
       locale = "eu";
       arch = "linux-i686";
-      sha512 = "e20b16ff5539c00627bb44efc87fcbbc4017006d6a74e0a6e9421b91c297327b42405fd6b65e8b98d71028a8ca35323b7c55da9c4ab77fe7a511c2a75aec6f03";
+      sha512 = "bf5cd434f45bd057de94bdc219f25e4da878a0be58c4a864a22961ac5677d0a679204a069220cdfb353d319d493e10d3423888999de6701e33227b1dde16e43b";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/73.0/linux-i686/fa/firefox-73.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0/linux-i686/fa/firefox-76.0.tar.bz2";
       locale = "fa";
       arch = "linux-i686";
-      sha512 = "ecb9935bd89a41128955005ce003700e15efb007a98f0653f88145cc21af2ed719a0edc342b4343712814a9bd16011322cb454f36e4236d0c73a5b5306d45035";
+      sha512 = "402f980bbffd145e9f6f832ad4bff8c6dbb0db9a77a303ffe16c44b449668e621c2edf75e41686cc69684069efa10b7853d57ed5ee928298bad5ed27c253eed0";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/73.0/linux-i686/ff/firefox-73.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0/linux-i686/ff/firefox-76.0.tar.bz2";
       locale = "ff";
       arch = "linux-i686";
-      sha512 = "6bd4c591f7e6a7c0d08ccc64d7086f1863e1a2d8760c63b02a250a8b47e9c50a0f36191d7ef18d85ead4046678095cc101670511d9790962312ae1d6032ad9f0";
+      sha512 = "baae62b09a0a7fef88f64b43b854dc8c4ff583765338c4dd1e00db9c7717adfb3d8817c776cfc88f88ae6865d490a08bf4d0c97824ae3280835769ca04fd8c71";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/73.0/linux-i686/fi/firefox-73.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0/linux-i686/fi/firefox-76.0.tar.bz2";
       locale = "fi";
       arch = "linux-i686";
-      sha512 = "60237eaa42baefa008a1fe6fcfe30694c63e832df64a12175b34967a2358ad2bc0b08854a45ce698fdf9d4b2ef21dcf63e87cabd624254fc71dea5b9e1610b17";
+      sha512 = "161da9aa8cd66a9f691b218f5d11cdae19fbfb04f44a77e266731afdb7202af98f165e33107af15ee6ced477b0ae07d78f91f57d14fec0e9a6de24847cc73976";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/73.0/linux-i686/fr/firefox-73.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0/linux-i686/fr/firefox-76.0.tar.bz2";
       locale = "fr";
       arch = "linux-i686";
-      sha512 = "6f7b38cea8b38d746623ed37fe2be83d5a3ab3c9ed2b6be88e78c0c28ccafea70ce0a11088e35a45427d3c5e3a84939c3c6c2be16b15e7270d4296088ba8c3fe";
+      sha512 = "150677eb9c0aafb0486dce2c846e0997f6eb1ccfb022a9ec2914628fa2affc32801fc34f0397fdade3cbe3afd1897ead515bc240043dd1cc7b879d92566a47c5";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/73.0/linux-i686/fy-NL/firefox-73.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0/linux-i686/fy-NL/firefox-76.0.tar.bz2";
       locale = "fy-NL";
       arch = "linux-i686";
-      sha512 = "dc0eedb90ccbeb5a0de494c3a60c94704582d1b681e3281c3ab3b60fe3d1140bb5463d66e2ed36c8549a581a8e28d1b0a09ee1fef903baa6680a7c43c3d6b8fc";
+      sha512 = "b03e12ebeed5af0150715176e32a7da3ce20a57d227f3ef6da369f6fa27059cb23a8af0b4e165027598894c572d02e4d58e8fdb9a48b86d3bdc35385a249287f";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/73.0/linux-i686/ga-IE/firefox-73.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0/linux-i686/ga-IE/firefox-76.0.tar.bz2";
       locale = "ga-IE";
       arch = "linux-i686";
-      sha512 = "9c64b6586f102dfe190c8a600474bcf4a32c7b268a7ba3cb60d673636aa340407d492a7fb377308d6f0b6759b76069f4e5f573499f36ad570905060d00d85d21";
+      sha512 = "7122e4f914f5e8d42393a86e61baeecbcdf6fff646ddb38cbb2d7324a0be90d60bf609824f2dcc696c107f856a867e0ac9717fc098b1db3571bf60fb6d3b8a28";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/73.0/linux-i686/gd/firefox-73.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0/linux-i686/gd/firefox-76.0.tar.bz2";
       locale = "gd";
       arch = "linux-i686";
-      sha512 = "5f3e92b500a371e5228a2bd7c176e116e8eee7210f14dbe130ecb2a1f5f337e2a413702aec2685fec27245c281c97931bcc08c0fc7ca0cc4954c3e507e42fd16";
+      sha512 = "f35b295657bbceb293cf1bb88a140d629f0b1fc654cf3f1ebcb5d9de84f40b17a9a7bc8973dc6699c4c6609e5cfbb858df52c0153ed4dcde6eff2e25c38f7ad0";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/73.0/linux-i686/gl/firefox-73.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0/linux-i686/gl/firefox-76.0.tar.bz2";
       locale = "gl";
       arch = "linux-i686";
-      sha512 = "8fcb6890fc7664f11a833585e14e0d70f6d4f4d52b9a8cf4917a86b452d96f9b1ce76502a15bba116dec18b31b61976ccf8680949c67e53c93cec786373f2654";
+      sha512 = "4a4a37fdce02108118cca5fddc2f2ebfeddb8a4fad97ef0584fb85748e09d43abe79b0d3f7b5250deeaec8ec0b2e698771100dca486831fdde09f41d8d77b093";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/73.0/linux-i686/gn/firefox-73.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0/linux-i686/gn/firefox-76.0.tar.bz2";
       locale = "gn";
       arch = "linux-i686";
-      sha512 = "6729111f3c0e4511ae70afd2db2c9dbf9640d01c16b711cbbd1ce7c4ee689cdb844a03b2aaf93215aa85b91d3a519f135ee5fe895cb2f96c77e296ed8528b942";
+      sha512 = "6c4969572ce922eca81344f1b05747d3935f88486082bdc64c814825af2cfdf27eac7f8f0c25edfd4d249b9f469ada0b062abd0aff02b9849c7055e40bec5b67";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/73.0/linux-i686/gu-IN/firefox-73.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0/linux-i686/gu-IN/firefox-76.0.tar.bz2";
       locale = "gu-IN";
       arch = "linux-i686";
-      sha512 = "9152dd76206762dfe6fbb4ede85d2aa606c1c5455945fd6cdb31aa65267042a292f99378a7ba51c793cf50753d51ec21e896938b58d6092eef032d5c2ca89d43";
+      sha512 = "a5d1daf151be8d23dde730945343bfd507ba29314ab8acb71e4d5e71b534eadc573eb4eec1bcae0ab0bd72735cd891b72d8d931b634680881bf65f63a4a7abab";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/73.0/linux-i686/he/firefox-73.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0/linux-i686/he/firefox-76.0.tar.bz2";
       locale = "he";
       arch = "linux-i686";
-      sha512 = "bdbf71a917eeb72a47fdca61253b5f7861ab8b20d05b61833e5d6359f808fd34c518f192c8eb55883530f0b82c56f0d289c78dc369badbb59050ab092f2d2794";
+      sha512 = "87b6c4a1dfdb49bc9430d9740612d24ec9f61d74bd379caebef6d19fb3492cfd1a4c8112126ab509af1f35e3f6e10062a786a0e5397b424e057e9d13c924fd7d";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/73.0/linux-i686/hi-IN/firefox-73.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0/linux-i686/hi-IN/firefox-76.0.tar.bz2";
       locale = "hi-IN";
       arch = "linux-i686";
-      sha512 = "1cd239f79716e277518ad870bad8d01be7f558e60f1ef69d632a87e4fea570dae219fbf63d57ede37e2128888860f1899e2d702e24117071885d71e5a95061fc";
+      sha512 = "e2b96ab462227f70f4208b52b144d852e657edd3fc9885ba6b4217461a414a6aac6dedc206b4fc82d269c768662ce94ccc6cb3e0f096250d074b3d91ffa98c9e";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/73.0/linux-i686/hr/firefox-73.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0/linux-i686/hr/firefox-76.0.tar.bz2";
       locale = "hr";
       arch = "linux-i686";
-      sha512 = "47e3c93ea8a5c7094d02840a0c4dfcd74d91cb81a718a42505284f29d7dc7ae779c21ce04413eb4889369a22867f4562afb132769430ebeefe2095c23352edc6";
+      sha512 = "1fcaff37d60936b68a6f2e368c414c69718e114bcdcf8f71114f5e3dfea1eb2fbfc8b5e237406576daae74f8c4371d8a824d2542dcdd36221c931a86c9ea7175";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/73.0/linux-i686/hsb/firefox-73.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0/linux-i686/hsb/firefox-76.0.tar.bz2";
       locale = "hsb";
       arch = "linux-i686";
-      sha512 = "dbf79eab22d233809bcaa8bf9464abc143bd120f6c9258b95d61538104cb18584208a9f55206f27be5a8b7f9b2ad7ed42f58562d37b14f86a61dca0b18fa4401";
+      sha512 = "5146346331ed881f0f85f42bb43f4b4884cdeb659b392db28f7a534c685a579405fa482ad14c6c4e20422e8e22b07f2fc35ead1f3756539dcee797fb0df8c1dd";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/73.0/linux-i686/hu/firefox-73.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0/linux-i686/hu/firefox-76.0.tar.bz2";
       locale = "hu";
       arch = "linux-i686";
-      sha512 = "d8878f168fd05f6334477078ef647f70ab1e89e144756238b12dc8da7b7b703fd56958cdb4119c66e66cf3f8c0260d2fe9ce65d9d9e094c52c775b1234e2a8d5";
+      sha512 = "eb043d50e735f1b99eab7cedef601aa302dce2b0270f08a9e93c1b1fa9b85da87305aa94e8db638e81dd8f6d9bed96b6c22f87928026cb042964bbb51420fff2";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/73.0/linux-i686/hy-AM/firefox-73.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0/linux-i686/hy-AM/firefox-76.0.tar.bz2";
       locale = "hy-AM";
       arch = "linux-i686";
-      sha512 = "9348b29a96e8cacc331b544ef219049e1228ecfb4c282ea1e9a859eeb5f16d261d6ba48d6d6bf1d2cb9be6d7ca2f3f6ecfb5f58e42a54fe9eaa04742b3a42532";
+      sha512 = "eb0553646d6b53a41bff160379845b0a21c28815ea523ab0de21230ce6c519b7ee07c9d97ce26f2078f3c66448dcd1c09e978bb1f748e548d1b5c2e0fe4e7f7a";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/73.0/linux-i686/ia/firefox-73.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0/linux-i686/ia/firefox-76.0.tar.bz2";
       locale = "ia";
       arch = "linux-i686";
-      sha512 = "b8abbd7321a68fb1eb3418a8b8b871e4f27fcce07a26bed73d91482bc22030217599b515bdca16c4f409581ea3f73afca7dc506c85e4b19e0f4d9c27abd0a602";
+      sha512 = "b43efaa2e45de94e9be8b8b9bea50966b0fa089dff9e25671577c724f45d0dba502044c2da7de32cf1431a38aaa92c2e5856659fb7f1ee557e38616beb4a9c96";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/73.0/linux-i686/id/firefox-73.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0/linux-i686/id/firefox-76.0.tar.bz2";
       locale = "id";
       arch = "linux-i686";
-      sha512 = "b70c61f469f18b06baf12efecf1b4f9d617bb47721810d6069c7d3e1491cdc5701a4bce4f3c26a54825ea4ed48706a69aae731aa3514488fd90533bd128625eb";
+      sha512 = "5fd68752ab6309af0bbc6d523e2e251c8378ac0a6c2ba0627b37ddf7dbb1efc444901a254944f4384a6fc10ccd1909f6312c0fd7c9e700ba5f223ccdf76d30d5";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/73.0/linux-i686/is/firefox-73.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0/linux-i686/is/firefox-76.0.tar.bz2";
       locale = "is";
       arch = "linux-i686";
-      sha512 = "2fd9b1e7cd86c28dd43d6e0b39fb4bfafa82c05dfdeace15c792d5f2c21b80b67a664f2abe0c9f9d4dc3a1e4fc214e38428124d740aa7f63ebc4c82210e7d646";
+      sha512 = "1c128e7fffc103347329cbd65037e798292d5b0e843f878ffc44d9d53c32f1d9a917acd694cb3662ba0089e79063421705f30d39e9736c88b9c439660147b949";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/73.0/linux-i686/it/firefox-73.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0/linux-i686/it/firefox-76.0.tar.bz2";
       locale = "it";
       arch = "linux-i686";
-      sha512 = "44f2b7ca7f2e5f14107a243b1d711b487e8c71e73808f849756e65f3e61040917104836e912ba8c356754ee1b04986eabe85f4cfab10e1b49a5867dd33242648";
+      sha512 = "890812041bb3ab8cb0ddc6a54222fec9f4e342f9734f3c92f9d0452122cceff739eb46d92ebef5d2571509e4c7821704a64da1ec3dfe8150193a6dc5b4aa8477";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/73.0/linux-i686/ja/firefox-73.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0/linux-i686/ja/firefox-76.0.tar.bz2";
       locale = "ja";
       arch = "linux-i686";
-      sha512 = "86d5e55c23ec5077f32c290a4200d2b53e28184d2e01ead019a8d8d810724e692b9364cf28d7088c881bbd32cba55a6c649cae448fb92b7b1c9f309134b9ad1c";
+      sha512 = "13703e62dd8d6728553524723828cf7bd8db672febeff63324c93e300a9ed6c2f3b1919d6f4bf8f1f74164df278a0c95ac98c348531581b717ab09e921490a91";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/73.0/linux-i686/ka/firefox-73.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0/linux-i686/ka/firefox-76.0.tar.bz2";
       locale = "ka";
       arch = "linux-i686";
-      sha512 = "11b4a38f291728dfa67ce79c050cac6197e73f1de746991cb85906f648df14b72bc1d94c4e287e89575cef201a98cc91774df3872d974dfc1c3d644b596e7bbd";
+      sha512 = "929b2e3ca70c8d9ee11405b1366faf957cde5075dec5631a49ebc724d4912291b1f3826ee01e5c90e2d68c09b2664599ed73e4f597298ffb066ff8419a8056d8";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/73.0/linux-i686/kab/firefox-73.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0/linux-i686/kab/firefox-76.0.tar.bz2";
       locale = "kab";
       arch = "linux-i686";
-      sha512 = "7d817167020b89bc460e3b5ac6bad95c32c62b2e7ac816d69a4e943fad80ee06dece53762cdc6b8dbac27958cc4b851e12d777eb08c84638f0c0234a9681053e";
+      sha512 = "83900bd13db0731508e516bfafb5bb540a43f6b8ba9c9e2e9c0878d67e9cd8f9b6b496e5b77ccf314346ea3089f6d95c1902b9280741ac3325638e972794872a";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/73.0/linux-i686/kk/firefox-73.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0/linux-i686/kk/firefox-76.0.tar.bz2";
       locale = "kk";
       arch = "linux-i686";
-      sha512 = "998241399f8019c1385b2e005bf55f715ef734e0720ac3482726ac9bac82c0d656eb38511793ae96fadd810949c8ca084e4cd0810a7a0a1d0a07c9c88b69ffa8";
+      sha512 = "a62767e00ba2c0d522f503331c2b6eb4cc82d3abb4879711c2d9f611c8454f2cbfa5e76707e6ec6ce54df8d40f64da6ad8af2e15079ea75b3b8ec55e6273ef2f";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/73.0/linux-i686/km/firefox-73.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0/linux-i686/km/firefox-76.0.tar.bz2";
       locale = "km";
       arch = "linux-i686";
-      sha512 = "530210e9760266ae5680333cf94d8cdce20fcb2e8762503413b42e7bd593a163d0c9c37392aac6b89526a2109f6edfe3f6baa0ee1e0c8e85fb7938badfbd8d66";
+      sha512 = "03a47578e51da36b51bbaa98e36927a1a5b3f216ff6ed60c337d905f414902c7638cdd361b5d8f4c29960dc93b19343b18567c7b40106f0e7e95fa941c0dae88";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/73.0/linux-i686/kn/firefox-73.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0/linux-i686/kn/firefox-76.0.tar.bz2";
       locale = "kn";
       arch = "linux-i686";
-      sha512 = "43bc6d75ae2efdd31c9bc02e1808da3999ab5d1fe64df2194343bcbc9436adab4e530b67ff088727bd379c099911afd8733d6b3bd73872a6e9e5ceb14c2c7346";
+      sha512 = "c4cb00f4383f73c65930ff3626342cb53695ca4aaa29ec5f80400ed4d18e4dc87dc44445069c62265112980ac7a061d0839f542a792aa5d294561b201445b677";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/73.0/linux-i686/ko/firefox-73.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0/linux-i686/ko/firefox-76.0.tar.bz2";
       locale = "ko";
       arch = "linux-i686";
-      sha512 = "08ac6c0704f13ac266adcdd8ba8eeb62e18ddf4c3e4633acef3df31f07b6a5d4608a15d4c3bfc25b3c16556ada6296843f1ef7115bd37515cd1d5110dbf85064";
+      sha512 = "72fc61f2429fbef846eec40e53f50bd95d3b6b728d78e2199408b052b0d85ea66fbd6d2a114cd046311f88b419eeb7447b062cc9c5824cbae572debe872656db";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/73.0/linux-i686/lij/firefox-73.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0/linux-i686/lij/firefox-76.0.tar.bz2";
       locale = "lij";
       arch = "linux-i686";
-      sha512 = "7ed520a475ab533d33e392e7fb24f2444caf9fe5cb06aa5499740d36b8fbfc899af7c8f6495c46f9e363606d33fe067da9fa72a2d41a820731d764d698eeb075";
+      sha512 = "9192d46b8b16129243ee2f5af47cd0f8fdf9af3ac953ae6481452cdd1f4da9ad9b75aa9c1b96416cba47dc16ca867db3135da810f32df5a33bed233a3b68f447";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/73.0/linux-i686/lt/firefox-73.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0/linux-i686/lt/firefox-76.0.tar.bz2";
       locale = "lt";
       arch = "linux-i686";
-      sha512 = "6e49543423ec6c0e968b85702fec46587c01fb5a35c28e1617f3e206512c5b072856a7bd455549ad31c2828d1f6baac40f5916b8e38c622c84b7a54a6468ce3b";
+      sha512 = "89a5c07f1c1b7b389bf7074feb6b7c29470bfb143b720503783c35cabb36fbd0e5c3fe31349e1004728f128db36148ad6dd07f389099fab17c8a6d078c37675d";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/73.0/linux-i686/lv/firefox-73.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0/linux-i686/lv/firefox-76.0.tar.bz2";
       locale = "lv";
       arch = "linux-i686";
-      sha512 = "c8c7e30bde45f99026b3874ee70d4b9ac44d1a4921b448883faf54c9e1323066464d4eed3671b372a8e342e9bae9226ac64525a1ca285d7015f1854e5d4eda3a";
+      sha512 = "1bc60805513cfd6ab6d563108fecb176766e77bf10203c942ada3878d062e6a75c54129505fa63f16aeb72f4a1c6b360f7e65e8f23433d20fe134692e53f4210";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/73.0/linux-i686/mk/firefox-73.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0/linux-i686/mk/firefox-76.0.tar.bz2";
       locale = "mk";
       arch = "linux-i686";
-      sha512 = "e22388afa540e7abe6575525663ac7365555d7d515ad49233bfb3de16db778a634dc166b8e9680f837978cf6662bf1f460f95ae40520116988822050de731a65";
+      sha512 = "811449cc14b5bc3185c56a8ea2b640a3fdfcb60b309ae9ccb5498196677e1431719897e3e239dec4ee964575187430c1a0a1b4fa48fbd29dc874a1edceb7fd00";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/73.0/linux-i686/mr/firefox-73.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0/linux-i686/mr/firefox-76.0.tar.bz2";
       locale = "mr";
       arch = "linux-i686";
-      sha512 = "ad71b75a9b309c9166b72416ec06edc90a6621ff27fcaed07c16a42147664e3b116db8e3ffc9bdba8ddda862dbd29074b62feb9ffbebab6d36437bd5a50318d1";
+      sha512 = "940563e7a93a08372790ea3f0403c4facc900a6ec680c0e7d71fa10978fbe484c448f1e7bdc8096e26528a969178273223592daba724296f423b1293b79aa5fe";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/73.0/linux-i686/ms/firefox-73.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0/linux-i686/ms/firefox-76.0.tar.bz2";
       locale = "ms";
       arch = "linux-i686";
-      sha512 = "f4c3f8d93cfbf89b862929d74eacd3398531f43617288aefcdf7b0f4b5857e9a790802755791a202aab465349bd4f979d257d5925b45a8a28b4245ba10d5d0e3";
+      sha512 = "ab8d456745a815934736ae25cf597dd6eec2dc25320dfe99c6af804823ad71b482b19eae071be08763c82678e7c966bd86ab1bc285925945b6800ab725dbebe5";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/73.0/linux-i686/my/firefox-73.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0/linux-i686/my/firefox-76.0.tar.bz2";
       locale = "my";
       arch = "linux-i686";
-      sha512 = "4ca9a42291faa8bb4c39a9efc0f8067407ee486e37a0b32576d2519a0189efd2c86ea45ea6c19f44d321d485ccf7479a58d9fc84bc3022fa211046adcd1cac8c";
+      sha512 = "a8b4532eda52b3543767a28fb9550b21324c72976b71fd2101665e0ca89c63c4b1d8272a9f425feacb3bef188b43edacf603ac87fa1a3dd19c374d22877ac02f";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/73.0/linux-i686/nb-NO/firefox-73.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0/linux-i686/nb-NO/firefox-76.0.tar.bz2";
       locale = "nb-NO";
       arch = "linux-i686";
-      sha512 = "fd54231a3888ae659df17b64d1f8150d112bc9191387f3621b0edf8a97571b90613d387c8fcd1944a263bc20c4c2f701bc4eac3765e6d2c4529c93c70cd07780";
+      sha512 = "a68193718025329d73e07b7199fc6a11e4834cf3f0ca327efbc182d0b33bff342e8a3012ae180fec2167f842781ae9c6d63d29e312e2385ee06e4ef25c851fbe";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/73.0/linux-i686/ne-NP/firefox-73.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0/linux-i686/ne-NP/firefox-76.0.tar.bz2";
       locale = "ne-NP";
       arch = "linux-i686";
-      sha512 = "1530837c31b3f062ef0d13063d7ac071e0434a3bc9d44f53d17675cee3f6cec4f19305ce01a5ffba0c9be9d2661a6f563790d54449408eb95449c62a378e0217";
+      sha512 = "5ba2c7da5741d45b376de87c9d3abd65de5a74885cac25ba0c7c8a81d681c0dd0fb870764208b62aecbc93122daea5cd7dba1fec41a1d97eda0dc674f16dd6cd";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/73.0/linux-i686/nl/firefox-73.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0/linux-i686/nl/firefox-76.0.tar.bz2";
       locale = "nl";
       arch = "linux-i686";
-      sha512 = "914ac5e5a1495d753ca9bbefc8fc57375252bcbdb35c6b92a37ac12bb3218edbfd7caf641a52bf1448950c3ba84bbc13b7396199ef0c6b1678090fa40d3ea26c";
+      sha512 = "941cbc8f65b1b307f998c853010bd373541aa8043f1fc97e261453f7d49ed7ad9880e0cd85fd1bdb5b4b038272e210d9eeb7a5a24f27f1212ffbfde494c87b04";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/73.0/linux-i686/nn-NO/firefox-73.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0/linux-i686/nn-NO/firefox-76.0.tar.bz2";
       locale = "nn-NO";
       arch = "linux-i686";
-      sha512 = "3218d09d98d61d7c804d6ecd8be2ed48dee8f0fd9c2cea42e44a1c38485e3cb466955eb84e23ca308f1d724afdd33931d780d9f76b5d54ce942d00f0d31463b7";
+      sha512 = "0c0dd5ce17626e96c3e88a9771272f60e93c7ad4f1f40710d8b70d4f40a58010933de89a2b381dac94831db786621a35ef6894f46f1b19026c0eb7ce0b172459";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/73.0/linux-i686/oc/firefox-73.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0/linux-i686/oc/firefox-76.0.tar.bz2";
       locale = "oc";
       arch = "linux-i686";
-      sha512 = "a7bf0def44278d66532b7e4edbc0deaafaa3a0be1a3ac41ba22848893c4ad8e651114e0d39e49eb49458dfb257280c32cf8bd6bb503c8f3198db1872324a7345";
+      sha512 = "169b6a1a48b2711ecdccdd6a685ee10b5f602d0300cac13b56feb331901be88edf6e8386ce6e4bfc108f419de305a5603445f5b7561b37358a75adb8e8d418e0";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/73.0/linux-i686/pa-IN/firefox-73.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0/linux-i686/pa-IN/firefox-76.0.tar.bz2";
       locale = "pa-IN";
       arch = "linux-i686";
-      sha512 = "d052c6d72e88a31492567d03097c3efba10ab0dc4d8fd0cd489ebbe45949896effb514a7af1fa30356f3cb97a0b08caa47472d0032558197e608b1ec130bd7bb";
+      sha512 = "96dda02dda90aaa1de2bd31e04d87b37a179773d1f3f8094d33fcdfa6ffc78616f9d7539b4405911a6dfd31382cba91ce34ca6680c36e7aec22493d3bf6f15fa";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/73.0/linux-i686/pl/firefox-73.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0/linux-i686/pl/firefox-76.0.tar.bz2";
       locale = "pl";
       arch = "linux-i686";
-      sha512 = "a4dc584b9222558203be7dab78c58f5e7fb86dcba9ee565d2978ed7d8da1cdc2cc3c9bb8f93ccba8f1c5ccd9074bb642ee99d0225056a54522cb499575ce1e11";
+      sha512 = "326b8b65388b6e7d8215a665fd6acd9ad9fd5a03edfd6ee428dc53b217df7b108a351094530621c5b78f3cfaed90092c17e1d1c9656a37a10c108aa441ae0e47";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/73.0/linux-i686/pt-BR/firefox-73.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0/linux-i686/pt-BR/firefox-76.0.tar.bz2";
       locale = "pt-BR";
       arch = "linux-i686";
-      sha512 = "5ecc7aa9752a373c511a208dad606774f589e36b5daa1434c8e7d76bbd835c8f2b9c6b20c176bee0ab6fc7b4355af1f25243563eb4d97d988059bf3d08e7d279";
+      sha512 = "70a56009e39e06b701de62c7df02d3d648e04ffe94d2718f2f2cc4ee24f19e832decf0371425ab9791ed5db6a5b56d5f221163d3bd67bcbf6cd48617114353c4";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/73.0/linux-i686/pt-PT/firefox-73.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0/linux-i686/pt-PT/firefox-76.0.tar.bz2";
       locale = "pt-PT";
       arch = "linux-i686";
-      sha512 = "31c3585e7612f71b2d7369d477930aebafcc54ca8d21ed6f84ef0073144ca5fdfd1bc45e6f19b702c26ab5c6797c52420d8fa5451b889c7706f509b6c4dd5ad1";
+      sha512 = "33a770a0ea0c177c1d839056f4045e41e8e2102e840c99c48abd2cb49733d44af2753f040696e859eb724dfbb6dddc3357bf505620f74c0c29b92211d8ab9572";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/73.0/linux-i686/rm/firefox-73.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0/linux-i686/rm/firefox-76.0.tar.bz2";
       locale = "rm";
       arch = "linux-i686";
-      sha512 = "eb82d612861e1a0434edc04dd79ce33e42d116e27b001139371b7fa2802b94a46c7035152be2248941cb7ae576484da743175491c63121be8651dfe9b74a0d82";
+      sha512 = "233af09f6a4ebb88aa678362c85244f1465d5da57e193b26d676543d0d1df9e673b25096da705178d1784cf3682fb6a1d12564525b77723eca0924bad7ecb0e4";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/73.0/linux-i686/ro/firefox-73.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0/linux-i686/ro/firefox-76.0.tar.bz2";
       locale = "ro";
       arch = "linux-i686";
-      sha512 = "c5229abd0b1fce59debd4d72af3d7bcf8a3f37c5abdf9f1a6b4851c19b7191492da42901683e57c9233efff16cd99bc1499d8e16ddf7a405807c7d00a41c205e";
+      sha512 = "6be29acfa925e3524c83ccd6915523cb8a37143855361b46fbd71465002f8791426ea9985d34486db17edffcf53d6197b7115cc0dd38a2be16502d07d3b26cf9";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/73.0/linux-i686/ru/firefox-73.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0/linux-i686/ru/firefox-76.0.tar.bz2";
       locale = "ru";
       arch = "linux-i686";
-      sha512 = "3b965b0cba404679e6c9756367dfa3dd8ecb028b440cc7bb949df353f5a27efdece0878eb44f950b3bfa7e8842483b929ff70ba1fd25bce5ed0a23d7b505c0cb";
+      sha512 = "46b2a7b8370fc173101dd1e78ce12e363f80a852d55b2e6be9f5b31232888750e07937afa60bee2571e0b3b18ca2987ffbbad8c6065d4bb71064c34acc46c3a1";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/73.0/linux-i686/si/firefox-73.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0/linux-i686/si/firefox-76.0.tar.bz2";
       locale = "si";
       arch = "linux-i686";
-      sha512 = "569f2910116f51cb3be82cc2d07f76d4f8b61cdb6ca96024290cd5e523c6711009106658a09305ebf2c596928de35eca1bdc578541a9eb14fe853fead902c7c3";
+      sha512 = "934144d99326a139d994518e5aa763cf32035a7d310fa94eba7b4a2b7cf40eaff732dc20100f7bba35dbf415b7a5fc22c5122ef40a65732566063d4517321ffb";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/73.0/linux-i686/sk/firefox-73.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0/linux-i686/sk/firefox-76.0.tar.bz2";
       locale = "sk";
       arch = "linux-i686";
-      sha512 = "109afe184afc873727c4c880280ce38f6577f0688c42c7a18b692d54a4eeb3f24dd8c5ca1a062df886bb171c50d30d6707125005baa29a1db9ec5091746164e9";
+      sha512 = "a892ced0d9c5dac7cda65cd67abc1232d5be3ba8ebc2c98181f504b68d43018fc392e0e5b4b12ed22f1ca1b6469be83f68b12e60fad28fd42eba18d9b8d4d7b0";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/73.0/linux-i686/sl/firefox-73.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0/linux-i686/sl/firefox-76.0.tar.bz2";
       locale = "sl";
       arch = "linux-i686";
-      sha512 = "63af29eadaa34738b715aa23609a20decd0a805a252a80051ed54fb8a332f6ae7eb17f73159469a755eb736a1523b0552ac3dc01de5fe2a5903e21e0286c833c";
+      sha512 = "229175292f435f3cb1db7ba671933508ba7b4daba1aa5db0ed9f03fe8bb83778a0b951b0248a27b4e4a7beaa374f9bc4eef3b2762596b22bd45045efc3038be3";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/73.0/linux-i686/son/firefox-73.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0/linux-i686/son/firefox-76.0.tar.bz2";
       locale = "son";
       arch = "linux-i686";
-      sha512 = "348898f1a01cbe5191c31c8a806547b74890762163a8aeee07b61aebc969a36567255f00bf8bda7f0dfb29b81396ab71ff39054dc1910c7b7a2ec225aaeb7ff9";
+      sha512 = "44d585391132de3c4df67bdec4a5062bf71af4ae32084e0602de93d75c279e8ee76a022aa19926eee03a31022b4d7eb9feab8e349c2a6547b85f8a42f5b122d1";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/73.0/linux-i686/sq/firefox-73.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0/linux-i686/sq/firefox-76.0.tar.bz2";
       locale = "sq";
       arch = "linux-i686";
-      sha512 = "278e02254b09df8469c3ca0fd56e72b9b663be621e930a1f261276e58242c84ec9ce717a0924bfec01953e15a0a36c746a17ff43a30e98c6862697995e7f7fac";
+      sha512 = "f0b04a81888f8cac58e311f9f4fe16111a414f541bd1a5b3dc2fda028cf85b3a701ae5b91d223a3d6542580c1bec5459dd4dfe90cac517d3f974c1084ed6be1f";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/73.0/linux-i686/sr/firefox-73.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0/linux-i686/sr/firefox-76.0.tar.bz2";
       locale = "sr";
       arch = "linux-i686";
-      sha512 = "1d7f2d1f341d2621500bc4eb0885c6e2709c4621d34fcf8c1f35d3054af17b0c0490acb92867841ab605b8a6b764d9689ccf7eb6325a136f00531068c2a83d29";
+      sha512 = "c3fae910a582dbcb5b8609dbfce0d759d776667e34c737755968f1a531e83b58b098b8a88bd948ee820ab76328210631b7d85ff65a88be630f795522831a7014";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/73.0/linux-i686/sv-SE/firefox-73.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0/linux-i686/sv-SE/firefox-76.0.tar.bz2";
       locale = "sv-SE";
       arch = "linux-i686";
-      sha512 = "38772f54d574a7b0dda06a535adf934e60e06d1753c4df4a9dd52dfe1cc08dc1fcdb1e0350e889facdfbdde95707cd70d705b9f7fc6f2d030ea92bf59de820ce";
+      sha512 = "fd5feca0a4a107b018329ab2fc1d7eab9c0e51d2660d8356cba4792cf73f1176fd19411580f98a469f47eb6bacb2c311134194ee612caa7ad8a5a0021b062420";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/73.0/linux-i686/ta/firefox-73.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0/linux-i686/ta/firefox-76.0.tar.bz2";
       locale = "ta";
       arch = "linux-i686";
-      sha512 = "c75d17e579c45961c92d9a0c238276a9371f27d438182b366c8804d7d4899e9d4cb689455b5d1dfb6100165bd1b4fef1215059779eec7fd215e485fd26f4db33";
+      sha512 = "c54d20862ec7c09e4ceaca3afb120938beb7ec0bf1c38e651355fad1247c61e75acbd0fe6b96a17fc19136720ba55755a8bb04726c714c812a333c9e300b9463";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/73.0/linux-i686/te/firefox-73.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0/linux-i686/te/firefox-76.0.tar.bz2";
       locale = "te";
       arch = "linux-i686";
-      sha512 = "5d791b6bb7ad154970646e83e77513e92e284d32169d9ec6f8ae66e252be3ab6618e927cf73693d81986a2bc10ed27dc2f46ef8b39065eae028828282153803b";
+      sha512 = "a594904a68ccd42f5e6c0a829100fb99e37732a29775273ac202fbb65785549bbdf638e8ddbcf6b7269161cafd229354b5b350be8e2f2360892bcf17ef777e07";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/73.0/linux-i686/th/firefox-73.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0/linux-i686/th/firefox-76.0.tar.bz2";
       locale = "th";
       arch = "linux-i686";
-      sha512 = "6015ae88939f2bcaeb2f354ae0003695fb111e60ac0c137cd4d6cdfbb1ef27699b76bd1d02587af1996002a39955e7c1ed537f906328695b820b024c8b91ddd9";
+      sha512 = "45b5fca122f7900da176ff3d55dd70a1a2d594fd9119b75760dc094b7a254e21aa6455c8370650f1b17d69ec1e81749881635d176dc72a45eec8f632d3a2e0f2";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/73.0/linux-i686/tl/firefox-73.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0/linux-i686/tl/firefox-76.0.tar.bz2";
       locale = "tl";
       arch = "linux-i686";
-      sha512 = "471e73795238f2f65550ffc73b604f1ef41b92470b811c440fee5d2cfe41b77c3fcc38be0d2ed85f7f86c005407095780a12e8ffad02fd5f435c6492feefb8bf";
+      sha512 = "06b3fd1f4cf030377854ea39bfe0818322123d53299a3f5d7308db32683f3992240099491422858c3104079b566958dfa60b58248c0c6adcd0153d584429fca2";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/73.0/linux-i686/tr/firefox-73.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0/linux-i686/tr/firefox-76.0.tar.bz2";
       locale = "tr";
       arch = "linux-i686";
-      sha512 = "464f2df89fd62ee8649786516df21a10ad9bc0faf90f6970144dd2b3397c58643c1f7d1ada6f9f7d7710777b903de89e2bc04c7ab7b057e8fa07ec667bf62f9a";
+      sha512 = "2cb1d03ced3d88344e24bda60687e9a0c34aade38fd635a63ffea3f072188bf6f5ab76cc7c54188280932c225f1e5c9b7c6cea4d2ee0b1798335e84b7826c886";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/73.0/linux-i686/trs/firefox-73.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0/linux-i686/trs/firefox-76.0.tar.bz2";
       locale = "trs";
       arch = "linux-i686";
-      sha512 = "d9462735ef137af2defa7d580567479e97d5527b8941880a27979f496a0d74da39cce10eb3503dda54b4a732433182d3725123ecf0b49ebb503bfd56fdf5a286";
+      sha512 = "6fa6eb60bef978b82e6805c3a083ee40418125416f139bfae2695c2a4b28e34081a984e8c8e092e449e28fae28d812ac2c76b808da83f79c2be4e7f5361f4536";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/73.0/linux-i686/uk/firefox-73.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0/linux-i686/uk/firefox-76.0.tar.bz2";
       locale = "uk";
       arch = "linux-i686";
-      sha512 = "966b2fd86876b694c66e68f7e8c33e380e021be7e24196816f741ec491eddbbee33318f922b03eb8c66c5302e0d5eb582aaa1d341860b82d7c7a4a7949254bf3";
+      sha512 = "e412938a9ff5bca8b770a83a2f7b9a03f92fc155df9088f60d758aa41c47bb348e331e34c8b04b1b2b5c796ec34261aebedc697c058bc5457265ee7b87d2d773";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/73.0/linux-i686/ur/firefox-73.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0/linux-i686/ur/firefox-76.0.tar.bz2";
       locale = "ur";
       arch = "linux-i686";
-      sha512 = "03fa60920c5cbb89035fbd665135b2911bdeaa3d4387c38184aa6f7589369390ae8bfcc0ebca83749f5c2e811a8a74d0ad5dbb62a1befd009f674c7a21449fbe";
+      sha512 = "8a4d50ceae88d1ccb354135fa10df40a2427bc0e704dca5b7ceafafbfcb3970eb57d4d6eb427330a2198894e67e2da2532adcdf5f900f5e8ed15727e1dc4fa84";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/73.0/linux-i686/uz/firefox-73.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0/linux-i686/uz/firefox-76.0.tar.bz2";
       locale = "uz";
       arch = "linux-i686";
-      sha512 = "e66657c54a7edaaa80d932f8447d9edffc2e7625c6241de6ad47272c77586b5eeacb299f3cb9f75a43791d145762883632ec409c1c2b5d32d8d81d42e54cf62b";
+      sha512 = "cb1be90d64caa7ac445cc7a6b3549350eaf8859e7a4e662e602eee4218de98944360bcd828b62bdcf18a5a602b153a1e4cfb0bdac92a802a8b071f349c88262a";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/73.0/linux-i686/vi/firefox-73.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0/linux-i686/vi/firefox-76.0.tar.bz2";
       locale = "vi";
       arch = "linux-i686";
-      sha512 = "2fc3f94a80262819d72525e5ddce77344d482d22ac33992931c79d15d4476d4c564be306a35468358b7b02c167d294510c197496894fb8107062fe897bcb049f";
+      sha512 = "69fc97339bd8fddedf12ac5f545c2f768cb071c4786f08c43fe61775e43b2dcf065d84d23ef9b9fb3f09c6df6364413f61fec0fa1cdeea2b4b769e3ef0bf124f";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/73.0/linux-i686/xh/firefox-73.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0/linux-i686/xh/firefox-76.0.tar.bz2";
       locale = "xh";
       arch = "linux-i686";
-      sha512 = "806db4368b5c5f248f3992140a23734451f9b8122caf249466c63cea69e063a1274b620009d7e6e8ea45bd43f29997995ff0d23580a8bd2376e950926e9807f4";
+      sha512 = "b8013f7c0e1cfad11ef950015444105b1e8512d778fe4b2a7567e0613a1191a7a929c5fdca9c15ab846da05f189fea1b0c137784ca1061b43f7ebada27376a06";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/73.0/linux-i686/zh-CN/firefox-73.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0/linux-i686/zh-CN/firefox-76.0.tar.bz2";
       locale = "zh-CN";
       arch = "linux-i686";
-      sha512 = "b4ea2b4c2f54a7c3dc2f16754aa38555e81221062827c3339fac543528cc52062b9e9c910dc597b21f2ad1a267ca2cf1faa8362f3c9c78b52480169251b073da";
+      sha512 = "154bfde5424cca1af2e624596755fe95a1504be0ce977162117e937b6ab6ec6b03b1cdb470ef62c710129d19a16c42fac334477f8638de6472b742ab2395b262";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/73.0/linux-i686/zh-TW/firefox-73.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0/linux-i686/zh-TW/firefox-76.0.tar.bz2";
       locale = "zh-TW";
       arch = "linux-i686";
-      sha512 = "ed2e55f3279472c9e3b2bc0b51762b797f61c4fdb3fe95c652e5d2243516ea17f2dadc1711bd19154389215ede42a97bac9a607aabc14ac24d5e43a2913420cb";
+      sha512 = "6c3d36ba9e4682600c2a99d6837dfe76032d6d1618c0ddb8dab5633c2961d413959e9fe0a9c0fc7ef4bbbc41af469a92fab566d24458c43c1671cd3288dcaae8";
     }
     ];
 }
diff --git a/pkgs/applications/networking/browsers/firefox/common.nix b/pkgs/applications/networking/browsers/firefox/common.nix
index 4aa8105559b0..5dc791631d8b 100644
--- a/pkgs/applications/networking/browsers/firefox/common.nix
+++ b/pkgs/applications/networking/browsers/firefox/common.nix
@@ -6,7 +6,8 @@
 , libjpeg, zlib, dbus, dbus-glib, bzip2, xorg
 , freetype, fontconfig, file, nspr, nss, libnotify
 , yasm, libGLU, libGL, sqlite, unzip, makeWrapper
-, hunspell, libXdamage, libevent, libstartup_notification, libvpx
+, hunspell, libXdamage, libevent, libstartup_notification
+, libvpx, libvpx_1_8
 , icu, libpng, jemalloc, glib
 , autoconf213, which, gnused, cargo, rustc, llvmPackages
 , rust-cbindgen, nodejs, nasm, fetchpatch
@@ -93,15 +94,6 @@ stdenv.mkDerivation ({
 
   patches = [
     ./env_var_for_system_dir.patch
-  ] ++ lib.optionals (stdenv.isAarch64) [
-    (fetchpatch {
-      url = "https://raw.githubusercontent.com/archlinuxarm/PKGBUILDs/09c7fa0dc1d87922e3b464c0fa084df1227fca79/extra/firefox/arm.patch";
-      sha256 = "1vbpih23imhv5r3g21m3m541z08n9n9j1nvmqax76bmyhn7mxp32";
-    })
-    (fetchpatch {
-      url = "https://raw.githubusercontent.com/archlinuxarm/PKGBUILDs/09c7fa0dc1d87922e3b464c0fa084df1227fca79/extra/firefox/build-arm-libopus.patch";
-      sha256 = "1zg56v3lc346fkzcjjx21vjip2s9hb2xw4pvza1dsfdnhsnzppfp";
-    })
   ]
   ++ patches;
 
@@ -117,8 +109,8 @@ stdenv.mkDerivation ({
     xorg.libX11 xorg.libXrender xorg.libXft xorg.libXt file
     libnotify xorg.pixman yasm libGLU libGL
     xorg.libXScrnSaver xorg.xorgproto
-    xorg.libXext sqlite unzip makeWrapper
-    libevent libstartup_notification libvpx /* cairo */
+    xorg.libXext unzip makeWrapper
+    libevent libstartup_notification /* cairo */
     icu libpng jemalloc glib
     nasm
     # >= 66 requires nasm for the AV1 lib dav1d
@@ -127,7 +119,8 @@ stdenv.mkDerivation ({
     # https://groups.google.com/forum/#!msg/mozilla.dev.platform/o-8levmLU80/SM_zQvfzCQAJ
     nspr nss
   ]
-
+  ++ lib.optionals  (lib.versionOlder ffversion "75") [ libvpx sqlite ]
+  ++ lib.optional  (lib.versionAtLeast ffversion "75.0") libvpx_1_8
   ++ lib.optional  alsaSupport alsaLib
   ++ lib.optional  pulseaudioSupport libpulseaudio # only headers are needed
   ++ lib.optional  gtk3Support gtk3
@@ -187,7 +180,7 @@ stdenv.mkDerivation ({
       $(< ${stdenv.cc}/nix-support/cc-cflags) \
       ${stdenv.cc.default_cxx_stdlib_compile} \
       ${lib.optionalString stdenv.cc.isClang "-idirafter ${stdenv.cc.cc}/lib/clang/${lib.getVersion stdenv.cc.cc}/include"} \
-      ${lib.optionalString stdenv.cc.isGNU "-isystem ${stdenv.cc.cc}/include/c++/${lib.getVersion stdenv.cc.cc} -isystem ${stdenv.cc.cc}/include/c++/${lib.getVersion stdenv.cc.cc}/$(cc -dumpmachine)"} \
+      ${lib.optionalString stdenv.cc.isGNU "-isystem ${stdenv.cc.cc}/include/c++/${lib.getVersion stdenv.cc.cc} -isystem ${stdenv.cc.cc}/include/c++/${lib.getVersion stdenv.cc.cc}/${stdenv.hostPlatform.config}"} \
       $NIX_CFLAGS_COMPILE"
 
     echo "ac_add_options BINDGEN_CFLAGS='$BINDGEN_CFLAGS'" >> $MOZCONFIG
@@ -215,7 +208,6 @@ stdenv.mkDerivation ({
     "--with-system-icu"
     "--enable-system-ffi"
     "--enable-system-pixman"
-    "--enable-system-sqlite"
     #"--enable-system-cairo"
     "--enable-startup-notification"
     #"--enable-content-sandbox" # TODO: probably enable after 54
@@ -230,6 +222,7 @@ stdenv.mkDerivation ({
     "--with-system-nspr"
     "--with-system-nss"
   ]
+  ++ lib.optional (lib.versionOlder ffversion "75") "--enable-system-sqlite"
   ++ lib.optional (stdenv.isDarwin) "--disable-xcode-checks"
   ++ lib.optionals (lib.versionOlder ffversion "69") [
     "--enable-webrender=build"
@@ -301,6 +294,9 @@ stdenv.mkDerivation ({
     inherit browserName;
   } // lib.optionalAttrs gtk3Support { inherit gtk3; };
 } //
+lib.optionalAttrs (lib.versionAtLeast ffversion "74") {
+  hardeningDisable = [ "format" ]; # -Werror=format-security
+} //
 # the build system verifies checksums of the bundled rust sources
 # ./third_party/rust is be patched by our libtool fixup code in stdenv
 # unfortunately we can't just set this to `false` when we do not want it.
diff --git a/pkgs/applications/networking/browsers/firefox/no-buildconfig-ffx76.patch b/pkgs/applications/networking/browsers/firefox/no-buildconfig-ffx76.patch
new file mode 100644
index 000000000000..2fe30980a35c
--- /dev/null
+++ b/pkgs/applications/networking/browsers/firefox/no-buildconfig-ffx76.patch
@@ -0,0 +1,23 @@
+diff -ur firefox-65.0-orig/docshell/base/nsAboutRedirector.cpp firefox-65.0/docshell/base/nsAboutRedirector.cpp
+--- firefox-76.0.orig/docshell/base/nsAboutRedirector.cpp       2020-05-03 19:01:29.926544735 +0200
++++ firefox-76.0/docshell/base/nsAboutRedirector.cpp    2020-05-03 19:12:00.845035570 +0200
+@@ -62,8 +62,6 @@
+     {"about", "chrome://global/content/aboutAbout.html", 0},
+     {"addons", "chrome://mozapps/content/extensions/extensions.xhtml",
+      nsIAboutModule::ALLOW_SCRIPT},
+-    {"buildconfig", "chrome://global/content/buildconfig.html",
+-     nsIAboutModule::URI_SAFE_FOR_UNTRUSTED_CONTENT},
+     {"checkerboard", "chrome://global/content/aboutCheckerboard.html",
+      nsIAboutModule::URI_SAFE_FOR_UNTRUSTED_CONTENT |
+          nsIAboutModule::ALLOW_SCRIPT},
+diff -ur firefox-65.0-orig/toolkit/content/jar.mn firefox-65.0/toolkit/content/jar.mn
+--- firefox-65.0-orig/toolkit/content/jar.mn    2019-01-23 00:48:35.033372506 +0100
++++ firefox-65.0/toolkit/content/jar.mn 2019-01-23 00:50:45.126565924 +0100
+@@ -36,7 +36,6 @@
+    content/global/plugins.css
+    content/global/browser-child.js
+    content/global/browser-content.js
+-*   content/global/buildconfig.html
+    content/global/buildconfig.css
+    content/global/contentAreaUtils.js
+    content/global/datepicker.xhtml
diff --git a/pkgs/applications/networking/browsers/firefox/packages.nix b/pkgs/applications/networking/browsers/firefox/packages.nix
index b94a33bfa871..d33535da3764 100644
--- a/pkgs/applications/networking/browsers/firefox/packages.nix
+++ b/pkgs/applications/networking/browsers/firefox/packages.nix
@@ -1,4 +1,4 @@
-{ config, lib, callPackage, fetchurl }:
+{ config, stdenv, lib, callPackage, fetchurl }:
 
 let
   common = opts: callPackage (import ./common.nix opts) {};
@@ -7,22 +7,24 @@ in
 rec {
   firefox = common rec {
     pname = "firefox";
-    ffversion = "73.0.1";
+    ffversion = "76.0";
     src = fetchurl {
       url = "mirror://mozilla/firefox/releases/${ffversion}/source/firefox-${ffversion}.source.tar.xz";
-      sha512 = "1vdz711v44xdiry5vm4rrg7fjkrlnyn5jjkaq0bcf98jwrn9bjklmgwblrrnvmpc9pjd2ff3m7354q7vy6gd6c3yh2jhbq91v2w5yl9";
+      sha512 = "3dq9h84w1qqidabbrl34jgyjr8bbmbf5wddjazpr7znfm49fn2xyg8fmm5lx9dakghk3wp8yhfi36gmk08fzlrm47v6h17dm9hkh0hz";
     };
 
     patches = [
-      ./no-buildconfig-ffx65.patch
+      ./no-buildconfig-ffx76.patch
     ];
 
     meta = {
       description = "A web browser built from Firefox source tree";
-      homepage = http://www.mozilla.com/en-US/firefox/;
+      homepage = "http://www.mozilla.com/en-US/firefox/";
       maintainers = with lib.maintainers; [ eelco andir ];
       platforms = lib.platforms.unix;
       badPlatforms = lib.platforms.darwin;
+      broken = stdenv.buildPlatform.is32bit; # since Firefox 60, build on 32-bit platforms fails with "out of memory".
+                                             # not in `badPlatforms` because cross-compilation on 64-bit machine might work.
       license = lib.licenses.mpl20;
     };
     updateScript = callPackage ./update.nix {
@@ -33,10 +35,10 @@ rec {
 
   firefox-esr-68 = common rec {
     pname = "firefox-esr";
-    ffversion = "68.5.0esr";
+    ffversion = "68.8.0esr";
     src = fetchurl {
       url = "mirror://mozilla/firefox/releases/${ffversion}/source/firefox-${ffversion}.source.tar.xz";
-      sha512 = "39i05r7r4rh2jvc8v4m2s2i6d33qaa075a1lc8m9gx7s3rw8yxja2c42cv5hq1imr9zc4dldbk88paz6lv1w8rhncm0dkxw8z6lxkqa";
+      sha512 = "2rl5irkamxi8caa8krj0wng93lb82kk9mf09mgci87mj9hy6fxzcrlmiiffp14s03rv0raagrn4w54pbx1336mylq6saxmfhpf676hk";
     };
 
     patches = [
diff --git a/pkgs/applications/networking/browsers/firefox/wrapper.nix b/pkgs/applications/networking/browsers/firefox/wrapper.nix
index 8256487b7518..52773bf291a6 100644
--- a/pkgs/applications/networking/browsers/firefox/wrapper.nix
+++ b/pkgs/applications/networking/browsers/firefox/wrapper.nix
@@ -2,15 +2,14 @@
 
 ## various stuff that can be plugged in
 , flashplayer, hal-flash
-, MPlayerPlugin, ffmpeg, xorg, libpulseaudio, libcanberra-gtk2, libglvnd
-, jrePlugin, adoptopenjdk-icedtea-web
-, bluejeans, djview4, adobe-reader
-, google_talk_plugin, fribid, gnome3/*.gnome-shell*/
+, ffmpeg_4, xorg, libpulseaudio, libcanberra-gtk2, libglvnd
+, gnome3/*.gnome-shell*/
 , browserpass, chrome-gnome-shell, uget-integrator, plasma-browser-integration, bukubrow
 , tridactyl-native
 , fx_cast_bridge
 , udev
 , kerberos
+, libva
 }:
 
 ## configurability of the wrapper itself
@@ -26,7 +25,6 @@ let
       (lib.toUpper (lib.substring 0 1 browserName) + lib.substring 1 (-1) browserName)
     , nameSuffix ? ""
     , icon ? browserName
-    , extraPlugins ? []
     , extraNativeMessagingHosts ? []
     , gdkWayland ? false
     , cfg ? config.${browserName} or {}
@@ -38,32 +36,24 @@ let
       enableAdobeFlash = cfg.enableAdobeFlash or false;
       ffmpegSupport = browser.ffmpegSupport or false;
       gssSupport = browser.gssSupport or false;
-      jre = cfg.jre or false;
-      icedtea = cfg.icedtea or false;
-      supportsJDK =
-        stdenv.hostPlatform.system == "i686-linux" ||
-        stdenv.hostPlatform.system == "x86_64-linux" ||
-        stdenv.hostPlatform.system == "armv7l-linux" ||
-        stdenv.hostPlatform.system == "aarch64-linux";
 
       plugins =
-        assert !(jre && icedtea);
-        if builtins.hasAttr "enableVLC" cfg
-        then throw "The option \"${browserName}.enableVLC\" has been removed since Firefox no longer supports npapi plugins"
-        else
-        ([ ]
-          ++ lib.optional enableAdobeFlash flashplayer
-          ++ lib.optional (cfg.enableDjvu or false) (djview4)
-          ++ lib.optional (cfg.enableMPlayer or false) (MPlayerPlugin browser)
-          ++ lib.optional (supportsJDK && jre && jrePlugin ? mozillaPlugin) jrePlugin
-          ++ lib.optional icedtea adoptopenjdk-icedtea-web
-          ++ lib.optional (cfg.enableGoogleTalkPlugin or false) google_talk_plugin
-          ++ lib.optional (cfg.enableFriBIDPlugin or false) fribid
-          ++ lib.optional (cfg.enableGnomeExtensions or false) gnome3.gnome-shell
-          ++ lib.optional (cfg.enableBluejeans or false) bluejeans
-          ++ lib.optional (cfg.enableAdobeReader or false) adobe-reader
-          ++ extraPlugins
-        );
+        let
+          removed = lib.filter (a: builtins.hasAttr a cfg) [
+            "enableVLC"
+            "enableDjvu"
+            "enableMPlayer"
+            "jre"
+            "icedtea"
+            "enableGoogleTalkPlugin"
+            "enableFriBIDPlugin"
+            "enableBluejeans"
+            "enableAdobeReader"
+          ];
+        in if removed != []
+           then throw "Your configuration mentions ${lib.concatMapStringsSep ", " (p: browserName + "." + p) removed}. All plugin related options, except for the adobe flash player, have been removed, since Firefox from version 52 onwards no longer supports npapi plugins (see https://support.mozilla.org/en-US/kb/npapi-plugins)."
+           else lib.optional enableAdobeFlash flashplayer;
+
       nativeMessagingHosts =
         ([ ]
           ++ lib.optional (cfg.enableBrowserpass or false) (lib.getBin browserpass)
@@ -75,8 +65,8 @@ let
           ++ lib.optional (cfg.enableFXCastBridge or false) fx_cast_bridge
           ++ extraNativeMessagingHosts
         );
-      libs =   lib.optional stdenv.isLinux udev
-            ++ lib.optional ffmpegSupport ffmpeg
+      libs =   lib.optionals stdenv.isLinux [ udev libva ]
+            ++ lib.optional ffmpegSupport ffmpeg_4
             ++ lib.optional gssSupport kerberos
             ++ lib.optional gdkWayland libglvnd
             ++ lib.optionals (cfg.enableQuakeLive or false)
diff --git a/pkgs/applications/networking/browsers/google-chrome/default.nix b/pkgs/applications/networking/browsers/google-chrome/default.nix
index 53255ec51835..e5cd08f7df7f 100644
--- a/pkgs/applications/networking/browsers/google-chrome/default.nix
+++ b/pkgs/applications/networking/browsers/google-chrome/default.nix
@@ -108,7 +108,7 @@ in stdenv.mkDerivation {
       --replace /opt/google/$appname/google-$appname $exe
     substituteInPlace $out/share/menu/google-$appname.menu \
       --replace /opt $out/share \
-      --replace $out/share/google/chrome/google-$appname $exe
+      --replace $out/share/google/$appname/google-$appname $exe
 
     for icon_file in $out/share/google/chrome*/product_logo_*[0-9].png; do
       num_and_suffix="''${icon_file##*logo_}"
@@ -133,7 +133,7 @@ in stdenv.mkDerivation {
 
   meta = {
     description = "A freeware web browser developed by Google";
-    homepage = https://www.google.com/chrome/browser/;
+    homepage = "https://www.google.com/chrome/browser/";
     license = licenses.unfree;
     maintainers = [ maintainers.msteen ];
     platforms = [ "x86_64-linux" ];
diff --git a/pkgs/applications/networking/browsers/links2/default.nix b/pkgs/applications/networking/browsers/links2/default.nix
index b09be81cc418..d58fc8fd19bf 100644
--- a/pkgs/applications/networking/browsers/links2/default.nix
+++ b/pkgs/applications/networking/browsers/links2/default.nix
@@ -31,7 +31,7 @@ stdenv.mkDerivation rec {
     ++ stdenv.lib.optional enableDirectFB "--with-directfb";
 
   meta = with stdenv.lib; {
-    homepage = http://links.twibright.com/;
+    homepage = "http://links.twibright.com/";
     description = "A small browser with some graphics support";
     maintainers = with maintainers; [ raskin ];
     platforms = platforms.unix;
diff --git a/pkgs/applications/networking/browsers/luakit/default.nix b/pkgs/applications/networking/browsers/luakit/default.nix
index 0605eda7fc76..bf10043e942e 100644
--- a/pkgs/applications/networking/browsers/luakit/default.nix
+++ b/pkgs/applications/networking/browsers/luakit/default.nix
@@ -55,7 +55,7 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "Fast, small, webkit based browser framework extensible in Lua";
-    homepage    = https://luakit.github.io/;
+    homepage    = "https://luakit.github.io/";
     license     = licenses.gpl3;
     platforms   = platforms.linux; # Only tested linux
   };
diff --git a/pkgs/applications/networking/browsers/lynx/default.nix b/pkgs/applications/networking/browsers/lynx/default.nix
index 3f4f96d33efb..8aeee45b9e54 100644
--- a/pkgs/applications/networking/browsers/lynx/default.nix
+++ b/pkgs/applications/networking/browsers/lynx/default.nix
@@ -43,7 +43,7 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "A text-mode web browser";
-    homepage = https://lynx.invisible-island.net/;
+    homepage = "https://lynx.invisible-island.net/";
     license = licenses.gpl2Plus;
     platforms = platforms.unix;
   };
diff --git a/pkgs/applications/networking/browsers/midori/default.nix b/pkgs/applications/networking/browsers/midori/default.nix
index 1d1928d168b6..66f6384643ad 100644
--- a/pkgs/applications/networking/browsers/midori/default.nix
+++ b/pkgs/applications/networking/browsers/midori/default.nix
@@ -51,7 +51,7 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "Lightweight WebKitGTK web browser";
-    homepage = https://www.midori-browser.org/;
+    homepage = "https://www.midori-browser.org/";
     license = with licenses; [ lgpl21Plus ];
     platforms = with platforms; linux;
     maintainers = with maintainers; [ raskin ramkromberg ];
diff --git a/pkgs/applications/networking/browsers/mozilla-plugins/bluejeans/default.nix b/pkgs/applications/networking/browsers/mozilla-plugins/bluejeans/default.nix
deleted file mode 100644
index e8841a0ab6fb..000000000000
--- a/pkgs/applications/networking/browsers/mozilla-plugins/bluejeans/default.nix
+++ /dev/null
@@ -1,55 +0,0 @@
-{ stdenv, fetchurl, xorg, gtk2, glib, gdk-pixbuf, dpkg, libXext, libXfixes
-, libXrender, libuuid, libXrandr, libXcomposite, libpulseaudio
-}:
-
-with stdenv.lib;
-
-let
-
-  rpathInstaller = makeLibraryPath
-    [gtk2 glib stdenv.cc.cc];
-
-  rpathPlugin = makeLibraryPath
-    ([ stdenv.cc.cc gtk2 glib xorg.libX11 gdk-pixbuf libXext libXfixes libXrender libXrandr libXcomposite libpulseaudio ] ++ optional (libuuid != null) libuuid);
-
-in
-
-stdenv.mkDerivation rec {
-  pname = "bluejeans";
-
-  version = "2.180.71.8";
-
-  src = fetchurl {
-    url = "https://swdl.bluejeans.com/skinny/bjnplugin_${version}-1_amd64.deb";
-    sha256 = "1fgjgzss0ghk734xpfidazyknfdn11pmyw77pc3wigl83dvx4nb2";
-  };
-
-  unpackPhase = "${dpkg}/bin/dpkg-deb -x $src .";
-
-  installPhase =
-    ''
-      mkdir -p $out
-      cp -R usr/lib $out/
-
-      plugins=$out/lib/mozilla/plugins
-      patchelf \
-        --set-rpath "${rpathPlugin}" \
-        $plugins/npbjnplugin_${version}.so
-
-      patchelf \
-        --set-rpath "${rpathInstaller}" \
-        $plugins/npbjninstallplugin_${version}.so
-    '';
-
-  dontStrip = true;
-  dontPatchELF = true;
-
-  passthru.mozillaPlugin = "/lib/mozilla/plugins";
-
-  meta = {
-    homepage = http://bluejeans.com;
-    license = stdenv.lib.licenses.unfree;
-    maintainers = with maintainers; [ ocharles kamilchm ];
-    platforms = stdenv.lib.platforms.linux;
-  };
-}
diff --git a/pkgs/applications/networking/browsers/mozilla-plugins/flashplayer/default.nix b/pkgs/applications/networking/browsers/mozilla-plugins/flashplayer/default.nix
index 3d711f92d1c9..6672a75d574d 100644
--- a/pkgs/applications/networking/browsers/mozilla-plugins/flashplayer/default.nix
+++ b/pkgs/applications/networking/browsers/mozilla-plugins/flashplayer/default.nix
@@ -74,7 +74,7 @@ let
 in
 stdenv.mkDerivation rec {
   pname = "flashplayer";
-  version = "32.0.0.330";
+  version = "32.0.0.363";
 
   src = fetchurl {
     url =
@@ -85,14 +85,14 @@ stdenv.mkDerivation rec {
     sha256 =
       if debug then
         if arch == "x86_64" then
-          "1k7h1p6g1vf96v31j1n8638jdxacap0729n0dnmh6l0h5q518k1b"
+          "06711k4vbn6mqfd8gvx2snsxyalhw15hn5b64sja8726z5rxvzy7"
         else
-          "0gabgllx79s6rhv0zivfj6z79rcsdrzrdm94xdr19c11dsbqxd6b"
+          "0v584aqhy4xk08afi3ypkq4mqjq57y136z82i5ixyim88dqbaf4f"
       else
         if arch == "x86_64" then
-          "1pf3k1x8c2kbkc9pf9y5n4jilp3g41v8v0q5ng77sbnl92s35zsj"
+          "1g1ijxypm8a8mfc1x58gksmaakqpp7xmf277wiir8zqjn3vd6c64"
         else
-          "1xibm6ffm09c553g100cgb6grnk21dfq8m81yy0jskph157vg962";
+          "13nbxmqmbxqvdhdwdqimim2f9fz3y2vrsx6b3pck6352m4i4wzh8";
   };
 
   nativeBuildInputs = [ unzip ];
@@ -139,7 +139,7 @@ stdenv.mkDerivation rec {
 
   meta = {
     description = "Adobe Flash Player browser plugin";
-    homepage = http://www.adobe.com/products/flashplayer/;
+    homepage = "http://www.adobe.com/products/flashplayer/";
     license = stdenv.lib.licenses.unfree;
     maintainers = with stdenv.lib.maintainers; [ taku0 ];
     platforms = [ "x86_64-linux" "i686-linux" ];
diff --git a/pkgs/applications/networking/browsers/mozilla-plugins/flashplayer/standalone.nix b/pkgs/applications/networking/browsers/mozilla-plugins/flashplayer/standalone.nix
index b003a1b3f5c0..3661f6edb530 100644
--- a/pkgs/applications/networking/browsers/mozilla-plugins/flashplayer/standalone.nix
+++ b/pkgs/applications/networking/browsers/mozilla-plugins/flashplayer/standalone.nix
@@ -50,7 +50,7 @@
 
 stdenv.mkDerivation {
   pname = "flashplayer-standalone";
-  version = "32.0.0.330";
+  version = "32.0.0.363";
 
   src = fetchurl {
     url =
@@ -60,9 +60,9 @@ stdenv.mkDerivation {
         "https://fpdownload.macromedia.com/pub/flashplayer/updaters/32/flash_player_sa_linux.x86_64.tar.gz";
     sha256 =
       if debug then
-        "0wrkg2in4c0bnbifm06m4rdggzs8zbaxwrh6z3mpbf4p3bl6xg84"
+        "03zhza8lvc1nvz3racwfsajfd6rnbw3g56dp5wvr1qmaps8xaaqg"
       else
-        "08qxa3zanlgmn8sn7crz242adx10jqymd4gzf1m0zlczw20ar09c";
+        "0bhp7jv2l2agfzr8m564k749a5g75dw1390phlwvf49n1h8ldap2";
   };
 
   nativeBuildInputs = [ unzip ];
@@ -95,7 +95,7 @@ stdenv.mkDerivation {
 
   meta = {
     description = "Adobe Flash Player standalone executable";
-    homepage = https://www.adobe.com/support/flashplayer/debug_downloads.html;
+    homepage = "https://www.adobe.com/support/flashplayer/debug_downloads.html";
     license = stdenv.lib.licenses.unfree;
     maintainers = with stdenv.lib.maintainers; [ taku0 ];
     platforms = [ "x86_64-linux" ];
diff --git a/pkgs/applications/networking/browsers/mozilla-plugins/fribid/builder.sh b/pkgs/applications/networking/browsers/mozilla-plugins/fribid/builder.sh
deleted file mode 100644
index fb36125b3a17..000000000000
--- a/pkgs/applications/networking/browsers/mozilla-plugins/fribid/builder.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-source $stdenv/setup
-export PREFIX=$out
-configureFlags="--plugin-path=$out/lib/mozilla/plugins"
-genericBuild
diff --git a/pkgs/applications/networking/browsers/mozilla-plugins/fribid/default.nix b/pkgs/applications/networking/browsers/mozilla-plugins/fribid/default.nix
deleted file mode 100644
index 101ae99d6659..000000000000
--- a/pkgs/applications/networking/browsers/mozilla-plugins/fribid/default.nix
+++ /dev/null
@@ -1,38 +0,0 @@
-{ stdenv, fetchurl, pkgconfig, openssl, glib, libX11, gtk2, gettext, intltool }:
-
-stdenv.mkDerivation rec {
-  pname = "fribid";
-  version = "1.0.4";
-  builder = ./builder.sh;
-
-  src = fetchurl {
-    url = "https://fribid.se/releases/source/${pname}-${version}.tar.bz2";
-    sha256 = "a679f3a0534d5f05fac10b16b49630a898c0b721cfa24d2c827fa45485476649";
-  };
-
-  nativeBuildInputs = [ pkgconfig ];
-  buildInputs = [ openssl libX11 gtk2 glib gettext intltool ];
-  patches = [
-    ./translation-xgettext-to-intltool.patch
-    ./plugin-linkfix.patch
-    ./ipc-lazytrace.patch
-    ];
-
-  postPatch = "substituteInPlace plugin/pluginutil.c --replace strndup strndup_";
-
-  passthru.mozillaPlugin = "/lib/mozilla/plugins";
-
-  meta = with stdenv.lib; {
-    description = "A browser plugin to manage Swedish BankID:s";
-    longDescription = ''
-      FriBID is an open source software for the Swedish e-id system
-      called BankID. FriBID also supports processor architectures and
-      Linux/BSD distributions that the official software doesn't
-      support.
-    '';
-    homepage = http://fribid.se;
-    license = with licenses; [ gpl2 mpl10 ];
-    maintainers = [ maintainers.edwtjo ];
-    platforms = platforms.linux;
-  };
-}
diff --git a/pkgs/applications/networking/browsers/mozilla-plugins/fribid/ipc-lazytrace.patch b/pkgs/applications/networking/browsers/mozilla-plugins/fribid/ipc-lazytrace.patch
deleted file mode 100644
index b7d05ddd0ef5..000000000000
--- a/pkgs/applications/networking/browsers/mozilla-plugins/fribid/ipc-lazytrace.patch
+++ /dev/null
@@ -1,10 +0,0 @@
---- a/plugin/ipc.c	2012-11-14 18:02:43.000000000 +0100
-+++ b/plugin/ipc.c	2013-09-21 08:55:39.960265058 +0200
-@@ -74,6 +74,7 @@
-         //close(pipeOut[PIPE_READ_END]);
-
-         execvp(mainBinary, (char *const *)argv);
-+        fprintf(stderr, "Wanted signing executable\t<%s>\n", mainBinary);
-         perror(BINNAME ": Failed to execute main binary");
-         exit(1);
-     } else {
diff --git a/pkgs/applications/networking/browsers/mozilla-plugins/fribid/plugin-linkfix.patch b/pkgs/applications/networking/browsers/mozilla-plugins/fribid/plugin-linkfix.patch
deleted file mode 100644
index 1128381238b4..000000000000
--- a/pkgs/applications/networking/browsers/mozilla-plugins/fribid/plugin-linkfix.patch
+++ /dev/null
@@ -1,11 +0,0 @@
---- a/plugin/Makefile	2013-09-18 13:55:11.091652553 +0200
-+++ b/plugin/Makefile	2013-09-18 13:58:27.513618750 +0200
-@@ -60,7 +60,7 @@
- 	for path in $(NPAPI_PLUGIN_PATHS); do \
- 	    (../configure --internal--remove-link $(DESTDIR)$$path/libfribidplugin.so $(NPAPI_PLUGIN_LIB) || exit 1) && \
- 	    install -d $(DESTDIR)$$path && \
--	    ln -sf $(NPAPI_PLUGIN_LIB) $(DESTDIR)$$path/libfribidplugin.so; \
-+	    ln -sf $(DESTDIR)$(NPAPI_PLUGIN_LIB) $(DESTDIR)$$path/libfribidplugin.so; \
- 	done
-
- uninstall:
diff --git a/pkgs/applications/networking/browsers/mozilla-plugins/fribid/translation-xgettext-to-intltool.patch b/pkgs/applications/networking/browsers/mozilla-plugins/fribid/translation-xgettext-to-intltool.patch
deleted file mode 100644
index dcac4f17928b..000000000000
--- a/pkgs/applications/networking/browsers/mozilla-plugins/fribid/translation-xgettext-to-intltool.patch
+++ /dev/null
@@ -1,16 +0,0 @@
---- a/translations/Makefile	2013-09-18 07:25:16.503800613 +0200
-+++ b/translations/Makefile	2013-09-18 07:25:29.495869405 +0200
-@@ -38,7 +38,7 @@
- all: template.pot $(MOFILES)
-
- template.pot: $(POTFILES) $(DEFINES)
--	xgettext -k_ -ktranslatable -d $(DOMAIN) --package-name=$(PACKAGENAME) --package-version=$(PACKAGEVERSION) --copyright-holder='YOUR NAME' -o $@ $(POTFILES)
-+	intltool-update --gettext-package=$(PACKAGENAME) -o $@ sv
-
- .po.mo:
- 	msgfmt $< -o $@
---- a/translations/POTFILES.in	2013-09-16 20:28:56.766106014 +0200
-+++ b/translations/POTFILES.in	2013-09-18 13:15:05.252689648 +0200
-@@ -0,0 +1,2 @@
-+client/gtk.c
-+client/gtk/sign.glade
diff --git a/pkgs/applications/networking/browsers/mozilla-plugins/google-talk-plugin/default.nix b/pkgs/applications/networking/browsers/mozilla-plugins/google-talk-plugin/default.nix
deleted file mode 100644
index 93f2ab2adfa3..000000000000
--- a/pkgs/applications/networking/browsers/mozilla-plugins/google-talk-plugin/default.nix
+++ /dev/null
@@ -1,117 +0,0 @@
-{ stdenv, fetchurl, libGL, xorg, cairo
-, libpng, gtk2, glib, gdk-pixbuf, fontconfig, freetype, curl
-, dbus-glib, alsaLib, libpulseaudio, systemd, pango
-}:
-
-with stdenv.lib;
-
-let
-
-  baseURL = "http://dl.google.com/linux/talkplugin/deb/pool/main/g/google-talkplugin";
-
-  rpathPlugin = makeLibraryPath
-    [ libGL
-      xorg.libXt
-      xorg.libX11
-      xorg.libXrender
-      cairo
-      libpng
-      gtk2
-      glib
-      fontconfig
-      freetype
-      curl
-    ];
-
-  rpathProgram = makeLibraryPath
-    [ gdk-pixbuf
-      glib
-      gtk2
-      xorg.libX11
-      xorg.libXcomposite
-      xorg.libXfixes
-      xorg.libXrender
-      xorg.libXrandr
-      xorg.libXext
-      stdenv.cc.cc
-      alsaLib
-      libpulseaudio
-      dbus-glib
-      systemd
-      curl
-      pango
-      cairo
-    ];
-
-in
-
-stdenv.mkDerivation rec {
-  pname = "google-talk-plugin";
-
-  # You can get the upstream version and SHA-256 hash from the following URLs:
-  # curl -s http://dl.google.com/linux/talkplugin/deb/dists/stable/main/binary-amd64/Packages | grep -E 'Version|SHA256'
-  # curl -s http://dl.google.com/linux/talkplugin/deb/dists/stable/main/binary-i386/Packages | grep -E 'Version|SHA256'
-  version = "5.41.3.0";
-
-  src =
-    if stdenv.hostPlatform.system == "x86_64-linux" then
-      fetchurl {
-        url = "${baseURL}/google-talkplugin_${version}-1_amd64.deb";
-        sha256 = "af7e23d2b6215afc547f96615b99f04e0561557cc58c0c9302364b5a3840d97d";
-      }
-    else if stdenv.hostPlatform.system == "i686-linux" then
-      fetchurl {
-        url = "${baseURL}/google-talkplugin_${version}-1_i386.deb";
-        sha256 = "4c46d2b7f2018640288cd7ac49adc47e309d0beadfd979eb03030e672016b4a7";
-      }
-    else throw "Google Talk does not support your platform.";
-
-  unpackPhase = ''
-    ar p "$src" data.tar.gz | tar xz
-  '';
-
-  installPhase =
-    ''
-      plugins=$out/lib/mozilla/plugins
-      mkdir -p $plugins
-      cp opt/google/talkplugin/*.so $plugins
-
-      for i in libnpgoogletalk.so libppgoogletalk.so libppo1d.so; do
-        patchelf --set-rpath "${makeLibraryPath [ stdenv.cc.cc xorg.libX11 ]}:${stdenv.cc.cc.lib}/lib64" $plugins/$i
-      done
-
-      for i in libgoogletalkremoting.so libnpo1d.so; do
-        patchelf --set-rpath "$out/libexec/google/talkplugin/lib:${rpathPlugin}:${stdenv.cc.cc.lib}/lib64" $plugins/$i
-      done
-
-      mkdir -p $out/libexec/google/talkplugin
-      cp -prd opt/google/talkplugin/{data,GoogleTalkPlugin,locale,remoting24x24.png,windowpicker.glade} $out/libexec/google/talkplugin/
-
-      patchelf \
-        --set-interpreter "$(cat $NIX_CC/nix-support/dynamic-linker)" \
-        --set-rpath "${rpathProgram}:${stdenv.cc.cc.lib}/lib64" \
-        $out/libexec/google/talkplugin/GoogleTalkPlugin
-
-      # Generate an LD_PRELOAD wrapper to redirect execvp() calls to
-      # /opt/../GoogleTalkPlugin.
-      preload=$out/libexec/google/talkplugin/libpreload.so
-      mkdir -p $(dirname $preload)
-      gcc -shared ${./preload.c} -o $preload -ldl -DOUT=\"$out\" -fPIC
-      echo $preload > $plugins/extra-ld-preload
-
-      # Prevent a dependency on gcc.
-      strip -S $preload
-      patchELF $preload
-    '';
-
-  dontStrip = true;
-  dontPatchELF = true;
-
-  passthru.mozillaPlugin = "/lib/mozilla/plugins";
-
-  meta = {
-    homepage = http://www.google.com/chat/video/;
-    license = stdenv.lib.licenses.unfree;
-    maintainers = [ stdenv.lib.maintainers.eelco ];
-  };
-}
diff --git a/pkgs/applications/networking/browsers/mozilla-plugins/google-talk-plugin/preload.c b/pkgs/applications/networking/browsers/mozilla-plugins/google-talk-plugin/preload.c
deleted file mode 100644
index 1e2c31d9527a..000000000000
--- a/pkgs/applications/networking/browsers/mozilla-plugins/google-talk-plugin/preload.c
+++ /dev/null
@@ -1,60 +0,0 @@
-/* Google Talk Plugin executes a helper program in /opt.  This
-   LD_PRELOAD library intercepts execvp() calls to redirect them to
-   the corresponding location in $out. */
-
-#define _GNU_SOURCE
-#include <stdio.h>
-#include <stdarg.h>
-#include <stdlib.h>
-#include <string.h>
-#include <dlfcn.h>
-#include <sys/types.h>
-#include <sys/stat.h>
-#include <fcntl.h>
-#include <limits.h>
-
-char origDir [] = "/opt/google/talkplugin";
-char realDir [] = OUT "/libexec/google/talkplugin";
-
-const char * rewrite(const char * path, char * buf)
-{
-    if (strncmp(path, origDir, sizeof(origDir) - 1) != 0) return path;
-    if (snprintf(buf, PATH_MAX, "%s%s", realDir, path + sizeof(origDir) - 1) >= PATH_MAX)
-        abort();
-    return buf;
-}
-
-int execvp(const char * path, char * const argv[])
-{
-    int (*_execvp) (const char *, char * const argv[]) = dlsym(RTLD_NEXT, "execvp");
-    char buf[PATH_MAX];
-    return _execvp(rewrite(path, buf), argv);
-}
-
-int open(const char *path, int flags, ...)
-{
-    char buf[PATH_MAX];
-    int (*_open) (const char *, int, mode_t) = dlsym(RTLD_NEXT, "open");
-    mode_t mode = 0;
-    if (flags & O_CREAT) {
-        va_list ap;
-        va_start(ap, flags);
-        mode = va_arg(ap, mode_t);
-        va_end(ap);
-    }
-    return _open(rewrite(path, buf), flags, mode);
-}
-
-int open64(const char *path, int flags, ...)
-{
-    char buf[PATH_MAX];
-    int (*_open64) (const char *, int, mode_t) = dlsym(RTLD_NEXT, "open64");
-    mode_t mode = 0;
-    if (flags & O_CREAT) {
-        va_list ap;
-        va_start(ap, flags);
-        mode = va_arg(ap, mode_t);
-        va_end(ap);
-    }
-    return _open64(rewrite(path, buf), flags, mode);
-}
diff --git a/pkgs/applications/networking/browsers/mozilla-plugins/mozplugger/default.nix b/pkgs/applications/networking/browsers/mozilla-plugins/mozplugger/default.nix
deleted file mode 100644
index fd956f62327e..000000000000
--- a/pkgs/applications/networking/browsers/mozilla-plugins/mozplugger/default.nix
+++ /dev/null
@@ -1,31 +0,0 @@
-{ stdenv, fetchurl, firefox, libX11, xorgproto }:
-
-stdenv.mkDerivation rec {
-  pname = "mozplugger";
-  version = "2.1.6";
-
-  src = fetchurl {
-    url = "http://mozplugger.mozdev.org/files/mozplugger-${version}.tar.gz";
-    sha256 = "1vszkq4kdbaxsrqr2xn9rq6ipza9fngdri79gvjqk3bvsdmg0k19";
-  };
-
-  buildInputs = [ firefox libX11 xorgproto ];
-
-  installPhase = ''
-    mkdir -p "$out/etc" "$out/bin" "$out/lib/mozilla/plugins" "$out/share/man/man7"
-    cp mozpluggerrc "$out/etc"
-    cp mozplugger-{helper,controller,linker,update} "$out/bin"
-    cp mozplugger.so "$out/lib/mozilla/plugins"
-    cp mozplugger.7 "$out/share/man/man7"
-
-    mkdir -p "$out/share/${pname}-${version}/plugin"
-    ln -s "$out/lib/mozilla/plugins/mozplugger.so" "$out/share/${pname}-${version}/plugin"
-  '';
-
-  meta = {
-    description = "Mozilla plugin for launching external program for handling in-page objects";
-    homepage = http://mozplugger.mozdev.org/;
-    license = stdenv.lib.licenses.gpl2Plus;
-    platforms = stdenv.lib.platforms.linux;
-  };
-}
diff --git a/pkgs/applications/networking/browsers/mozilla-plugins/mplayerplug-in/default.nix b/pkgs/applications/networking/browsers/mozilla-plugins/mplayerplug-in/default.nix
deleted file mode 100644
index a5bfda9f26c9..000000000000
--- a/pkgs/applications/networking/browsers/mozilla-plugins/mplayerplug-in/default.nix
+++ /dev/null
@@ -1,37 +0,0 @@
-{stdenv, fetchurl, pkgconfig, browser, libXpm, gettext}:
-
-stdenv.mkDerivation rec {
-  name = "mplayerplug-in-3.55";
-
-  src = fetchurl {
-    url = "mirror://sourceforge/mplayerplug-in/${name}.tar.gz";
-    sha256 = "0zkvqrzibrbljiccvz3rhbmgifxadlrfjylqpz48jnjx9kggynms";
-  };
-
-  postConfigure =
-    (if browser ? isFirefox3Like then ''
-       # Cause a rebuild of these file from the IDL file, needed for GNU IceCat 3
-       # and Mozilla Firefox 3.
-       # See, e.g., http://article.gmane.org/gmane.comp.mozilla.mplayerplug-in/2104 .
-       rm -f Source/nsIScriptableMplayerPlugin.h
-     ''
-     else "");
-
-  nativeBuildInputs = [ pkgconfig ];
-  buildInputs = [ browser (browser.gtk) libXpm gettext ];
-  
-  installPhase = ''
-    mkdir -p $out/lib/mozilla/plugins
-    cp -p mplayerplug-in*.so mplayerplug-in*.xpt $out/lib/mozilla/plugins
-  '';
-
-  passthru = {
-    mozillaPlugin = "/lib/mozilla/plugins";
-  };
-
-  meta = with stdenv.lib; {
-    description = "A browser plugin that uses mplayer to play digital media from websites";
-    homepage = http://mplayerplug-in.sourceforge.net/;
-    license = with licenses; [ gpl2Plus lgpl2Plus "MPLv1+" ];
-  };
-}
diff --git a/pkgs/applications/networking/browsers/mozilla-plugins/nspluginwrapper/default.nix b/pkgs/applications/networking/browsers/mozilla-plugins/nspluginwrapper/default.nix
deleted file mode 100644
index 10ae0eb1da60..000000000000
--- a/pkgs/applications/networking/browsers/mozilla-plugins/nspluginwrapper/default.nix
+++ /dev/null
@@ -1,40 +0,0 @@
-{stdenv, fetchurl, which, pkgconfig, file, glib, gtk2, gtk3, curl, libXt}:
-let
-  srcData = # Generated upstream information 
-  rec {
-    baseName="nspluginwrapper";
-    version="1.4.4";
-    name="${baseName}-${version}";
-    hash="1fxjz9ifhw0drm12havlsl4jpsq1nv930gqa005kgddv5pa99vgj";
-    url="http://nspluginwrapper.org/download/nspluginwrapper-1.4.4.tar.gz";
-  };
-in
-stdenv.mkDerivation {
-  inherit (srcData) name version;
-
-  src = fetchurl{
-    inherit (srcData) url;
-    sha256 = srcData.hash;
-  };
-
-  preConfigure = ''
-    sed -e 's@/usr/bin/@@g' -i configure
-    sed -e '/gthread[.]h/d' -i src/npw-player.c
-    export NIX_LDFLAGS="$NIX_LDFLAGS -lgthread-2.0"
-    export configureFlags="$configureFlags --target-cpu=$(uname -m)"
-  '';
-
-  nativeBuildInputs = [ pkgconfig ];
-  buildInputs = [which file glib gtk2 gtk3 curl libXt];
-
-  preferLocalBuild = true;
-
-  meta = {
-    description = ''A wrapper to run browser plugins out-of-process'';
-    homepage = http://nspluginwrapper.org/;
-    license = stdenv.lib.licenses.gpl2;
-    platforms = [ "x64_64-linux" "i686-linux" ];
-    maintainers = [ stdenv.lib.maintainers.raskin ];
-    inherit (srcData) version;
-  };
-}
diff --git a/pkgs/applications/networking/browsers/mozilla-plugins/nspluginwrapper/default.upstream b/pkgs/applications/networking/browsers/mozilla-plugins/nspluginwrapper/default.upstream
deleted file mode 100644
index 62831613a2e2..000000000000
--- a/pkgs/applications/networking/browsers/mozilla-plugins/nspluginwrapper/default.upstream
+++ /dev/null
@@ -1,4 +0,0 @@
-name nspluginwrapper
-target default.nix
-url http://nspluginwrapper.org/download/
-version_link /nspluginwrapper-[0-9]+
diff --git a/pkgs/applications/networking/browsers/next/default.nix b/pkgs/applications/networking/browsers/next/default.nix
index 22f0cf928ab6..e03f918a587c 100644
--- a/pkgs/applications/networking/browsers/next/default.nix
+++ b/pkgs/applications/networking/browsers/next/default.nix
@@ -15,13 +15,13 @@ in
 
 stdenv.mkDerivation rec {
   pname = "next";
-  version = "1.4.0";
+  version = "1.5.0";
 
   src = fetchFromGitHub {
     owner = "atlas-engineer";
     repo = "next";
     rev = version;
-    sha256 = "1gkmr746rqqg94698a051gv79fblc8n9dq0zg04llba44adhpmjl";
+    sha256 = "1gqkp185wcwaxr8py90hqk44nqjblrrdwvig19gizrbzr2gx2zhy";
   };
 
   nativeBuildInputs = [
@@ -87,7 +87,7 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "Infinitely extensible web-browser (with Lisp development files using WebKitGTK platform port)";
-    homepage = https://next.atlas.engineer;
+    homepage = "https://next.atlas.engineer";
     license = licenses.bsd3;
     maintainers = [ maintainers.lewo ];
     platforms = [ "x86_64-linux" ];
diff --git a/pkgs/applications/networking/browsers/next/next-gtk-webkit.nix b/pkgs/applications/networking/browsers/next/next-gtk-webkit.nix
index a71583ffbec5..8039c5492408 100644
--- a/pkgs/applications/networking/browsers/next/next-gtk-webkit.nix
+++ b/pkgs/applications/networking/browsers/next/next-gtk-webkit.nix
@@ -42,7 +42,7 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "Infinitely extensible web-browser (user interface only)";
-    homepage = https://next.atlas.engineer;
+    homepage = "https://next.atlas.engineer";
     license = licenses.bsd3;
     maintainers = [ maintainers.lewo ];
     platforms = [ "x86_64-linux" ];
diff --git a/pkgs/applications/networking/browsers/opera/default.nix b/pkgs/applications/networking/browsers/opera/default.nix
index f5eea57b483d..686ffee91488 100644
--- a/pkgs/applications/networking/browsers/opera/default.nix
+++ b/pkgs/applications/networking/browsers/opera/default.nix
@@ -47,11 +47,11 @@ let
 in stdenv.mkDerivation rec {
 
   pname = "opera";
-  version = "66.0.3515.72";
+  version = "67.0.3575.31";
 
   src = fetchurl {
     url = "${mirror}/${version}/linux/${pname}-stable_${version}_amd64.deb";
-    sha256 = "1mw4sfjf9ijbgghkbkg45b6kzbd0qa0mxb88ajrjnxf4g26brhra";
+    sha256 = "1ghygin7xf5lwd77s8f6bag339di4alwlkqwjzlq20wzwx4lns4w";
   };
 
   unpackCmd = "${dpkg}/bin/dpkg-deb -x $curSrc .";
diff --git a/pkgs/applications/networking/browsers/palemoon/default.nix b/pkgs/applications/networking/browsers/palemoon/default.nix
index 1065f3499726..b22a35bc54fb 100644
--- a/pkgs/applications/networking/browsers/palemoon/default.nix
+++ b/pkgs/applications/networking/browsers/palemoon/default.nix
@@ -1,25 +1,28 @@
-{ stdenv, fetchFromGitHub, makeDesktopItem
+{ stdenv, lib, fetchgit, makeDesktopItem
 , pkgconfig, autoconf213, alsaLib, bzip2, cairo
 , dbus, dbus-glib, ffmpeg, file, fontconfig, freetype
 , gnome2, gnum4, gtk2, hunspell, libevent, libjpeg
 , libnotify, libstartup_notification, makeWrapper
-, libGLU, libGL, perl, python, libpulseaudio
+, libGLU, libGL, perl, python2, libpulseaudio
 , unzip, xorg, wget, which, yasm, zip, zlib
+
+, withGTK3 ? false, gtk3
 }:
 
 let
 
-  libPath = stdenv.lib.makeLibraryPath [ ffmpeg ];
+  libPath = lib.makeLibraryPath [ ffmpeg ];
+  gtkVersion = if withGTK3 then "3" else "2";
 
 in stdenv.mkDerivation rec {
   pname = "palemoon";
-  version = "28.8.2.1";
+  version = "28.9.1";
 
-  src = fetchFromGitHub {
-    owner  = "MoonchildProductions";
-    repo   = "UXP";
-    rev    = "PM${version}_Release";
-    sha256 = "1m7dfgy5vjw1ndjsh0aksvsp0ii2kj7gxn0sp3h0xgwi0yq7lwyb";
+  src = fetchgit {
+    url = "https://github.com/MoonchildProductions/Pale-Moon.git";
+    rev = "${version}_Release";
+    sha256 = "1772by9r9l1l0wmj4hs89r3zyckcbrq1krb09bn3pxvjjywzvkfl";
+    fetchSubmodules = true;
   };
 
   desktopItem = makeDesktopItem {
@@ -29,7 +32,7 @@ in stdenv.mkDerivation rec {
     desktopName = "Pale Moon";
     genericName = "Web Browser";
     categories = "Application;Network;WebBrowser;";
-    mimeType = stdenv.lib.concatStringsSep ";" [
+    mimeType = lib.concatStringsSep ";" [
       "text/html"
       "text/xml"
       "application/xhtml+xml"
@@ -40,60 +43,75 @@ in stdenv.mkDerivation rec {
     ];
   };
 
+  nativeBuildInputs = [
+    file gnum4 makeWrapper perl pkgconfig python2 wget which
+  ];
+
   buildInputs = [
-    alsaLib bzip2 cairo dbus dbus-glib ffmpeg file fontconfig freetype
-    gnome2.GConf gnum4 gtk2 hunspell libevent libjpeg libnotify
-    libstartup_notification makeWrapper libGLU libGL perl
-    pkgconfig python libpulseaudio unzip wget which yasm zip zlib
-  ] ++ (with xorg; [
+    alsaLib bzip2 cairo dbus dbus-glib ffmpeg fontconfig freetype
+    gnome2.GConf gtk2 hunspell libevent libjpeg libnotify
+    libstartup_notification libGLU libGL
+    libpulseaudio unzip yasm zip zlib
+  ]
+  ++ (with xorg; [
     libX11 libXext libXft libXi libXrender libXScrnSaver
     libXt pixman xorgproto
-  ]);
+  ])
+  ++ lib.optional withGTK3 gtk3;
 
   enableParallelBuilding = true;
 
   configurePhase = ''
-    export MOZBUILD_STATE_PATH=$(pwd)/mozbuild
     export MOZCONFIG=$(pwd)/mozconfig
     export MOZ_NOSPAM=1
-    export builddir=$(pwd)/pmbuild
 
-    echo > $MOZCONFIG "
-    mk_add_options AUTOCLOBBER=1
-    mk_add_options MOZ_OBJDIR=$builddir
-    ac_add_options --enable-application=palemoon
+    # Keep this similar to the official .mozconfig file,
+    # only minor changes for portability are permitted with branding.
+    # https://developer.palemoon.org/build/linux/
+    echo > $MOZCONFIG '
+    # Clear this if not a 64bit build
+    _BUILD_64=${lib.optionalString stdenv.hostPlatform.is64bit "1"}
 
-    ac_add_options --enable-optimize='-O2'
-
-    # Please see https://www.palemoon.org/redist.shtml for restrictions when using the official branding.
-    ac_add_options --enable-official-branding
-    export MOZILLA_OFFICIAL=1
+    # Set GTK Version to 2 or 3
+    _GTK_VERSION=${gtkVersion}
 
-    ac_add_options --enable-default-toolkit=cairo-gtk2
+    # Standard build options for Pale Moon
+    ac_add_options --enable-application=palemoon
+    ac_add_options --enable-optimize="-O2 -w"
+    ac_add_options --enable-default-toolkit=cairo-gtk$_GTK_VERSION
     ac_add_options --enable-jemalloc
     ac_add_options --enable-strip
-    ac_add_options --with-pthreads
+    ac_add_options --enable-devtools
 
-    ac_add_options --disable-tests
     ac_add_options --disable-eme
-    ac_add_options --disable-parental-controls
-    ac_add_options --disable-accessibility
     ac_add_options --disable-webrtc
     ac_add_options --disable-gamepad
+    ac_add_options --disable-tests
+    ac_add_options --disable-debug
     ac_add_options --disable-necko-wifi
     ac_add_options --disable-updater
+    ac_add_options --with-pthreads
+
+    # Please see https://www.palemoon.org/redist.shtml for restrictions when using the official branding.
+    ac_add_options --enable-official-branding
+    export MOZILLA_OFFICIAL=1
+
+    ac_add_options --x-libraries=${lib.makeLibraryPath [ xorg.libX11 ]}
+
+    export MOZ_PKG_SPECIAL=gtk$_GTK_VERSION
 
-    ac_add_options --x-libraries=${xorg.libX11.out}/lib
+    #
+    # NixOS-specific adjustments
+    #
 
     ac_add_options --prefix=$out
-    mk_add_options MOZ_MAKE_FLAGS='-j$NIX_BUILD_CORES'
+
+    mk_add_options MOZ_MAKE_FLAGS="-j$NIX_BUILD_CORES"
     mk_add_options AUTOCONF=${autoconf213}/bin/autoconf
-    "
+    '
   '';
 
-  buildPhase = ''
-    $src/mach build
-  '';
+  buildPhase = "$src/mach build";
 
   installPhase = ''
     $src/mach install
@@ -104,7 +122,7 @@ in stdenv.mkDerivation rec {
     for n in 16 22 24 32 48 256; do
       size=$n"x"$n
       mkdir -p $out/share/icons/hicolor/$size/apps
-      cp $src/application/palemoon/branding/official/default$n.png \
+      cp $src/palemoon/branding/official/default$n.png \
          $out/share/icons/hicolor/$size/apps/palemoon.png
     done
 
@@ -112,7 +130,7 @@ in stdenv.mkDerivation rec {
       --prefix LD_LIBRARY_PATH : "${libPath}"
   '';
 
-  meta = with stdenv.lib; {
+  meta = with lib; {
     description = "An Open Source, Goanna-based web browser focusing on efficiency and customization";
     longDescription = ''
       Pale Moon is an Open Source, Goanna-based web browser focusing on
diff --git a/pkgs/applications/networking/browsers/qutebrowser/default.nix b/pkgs/applications/networking/browsers/qutebrowser/default.nix
index 12cf9b30fa61..d75be65c1963 100644
--- a/pkgs/applications/networking/browsers/qutebrowser/default.nix
+++ b/pkgs/applications/networking/browsers/qutebrowser/default.nix
@@ -21,12 +21,12 @@ let
 
 in mkDerivationWith python3Packages.buildPythonApplication rec {
   pname = "qutebrowser";
-  version = "1.10.1";
+  version = "1.11.0";
 
   # the release tarballs are different from the git checkout!
   src = fetchurl {
     url = "https://github.com/qutebrowser/qutebrowser/releases/download/v${version}/${pname}-${version}.tar.gz";
-    sha256 = "06bcnsfb4kz92bh8xjxwaghhy9x2mmcb76wk3fv868jb1ga75vd8";
+    sha256 = "0b0qlki9bp9mm41lrh6rc6qqvm4nsz8da63sby3a1f2xm9b9vvg2";
   };
 
   # Needs tox
@@ -105,7 +105,7 @@ in mkDerivationWith python3Packages.buildPythonApplication rec {
   '';
 
   meta = with stdenv.lib; {
-    homepage    = https://github.com/The-Compiler/qutebrowser;
+    homepage    = "https://github.com/The-Compiler/qutebrowser";
     description = "Keyboard-focused browser with a minimal GUI";
     license     = licenses.gpl3Plus;
     maintainers = with maintainers; [ jagajaga rnhmjoj ebzzry ];
diff --git a/pkgs/applications/networking/browsers/surf/default.nix b/pkgs/applications/networking/browsers/surf/default.nix
index 0437ab933bd7..03571469da1f 100644
--- a/pkgs/applications/networking/browsers/surf/default.nix
+++ b/pkgs/applications/networking/browsers/surf/default.nix
@@ -39,7 +39,7 @@ stdenv.mkDerivation rec {
       possible to embed it in another application. Furthermore, one can point
       surf to another URI by setting its XProperties.
     '';
-    homepage = https://surf.suckless.org;
+    homepage = "https://surf.suckless.org";
     license = licenses.mit;
     platforms = webkitgtk.meta.platforms;
     maintainers = with maintainers; [ joachifm ];
diff --git a/pkgs/applications/networking/browsers/tor-browser-bundle-bin/default.nix b/pkgs/applications/networking/browsers/tor-browser-bundle-bin/default.nix
index 4fafe19b3792..97a03ccbab5b 100644
--- a/pkgs/applications/networking/browsers/tor-browser-bundle-bin/default.nix
+++ b/pkgs/applications/networking/browsers/tor-browser-bundle-bin/default.nix
@@ -28,7 +28,7 @@
 , apulse
 
 # Media support (implies audio support)
-, mediaSupport ? false
+, mediaSupport ? true
 , ffmpeg
 
 , gmp
@@ -90,19 +90,19 @@ let
   fteLibPath = makeLibraryPath [ stdenv.cc.cc gmp ];
 
   # Upstream source
-  version = "9.0.5";
+  version = "9.0.9";
 
   lang = "en-US";
 
   srcs = {
     x86_64-linux = fetchurl {
       url = "https://dist.torproject.org/torbrowser/${version}/tor-browser-linux64-${version}_${lang}.tar.xz";
-      sha256 = "1d4c3mrvqd6v086mwn3rnv776y2j3y45agnd0k5njqnmr53ybn2s";
+      sha256 = "0ws4s0jn559j1ih60wqspxvr5wpqww29kzk0xzzbr56wfyahp4fg";
     };
 
     i686-linux = fetchurl {
       url = "https://dist.torproject.org/torbrowser/${version}/tor-browser-linux32-${version}_${lang}.tar.xz";
-      sha256 = "040nh79hjkg5afvzshzhp7588dbi1pcpjsyk8phfqaapds74ma8y";
+      sha256 = "0sv73jlv0qwlkxgqkmqg1flsa9lbkxa4yahny5wrfgsbw74xibkl";
     };
   };
 in
diff --git a/pkgs/applications/networking/browsers/ungoogled-chromium/browser.nix b/pkgs/applications/networking/browsers/ungoogled-chromium/browser.nix
new file mode 100644
index 000000000000..87248013a9af
--- /dev/null
+++ b/pkgs/applications/networking/browsers/ungoogled-chromium/browser.nix
@@ -0,0 +1,94 @@
+{ stdenv, mkChromiumDerivation, channel, enableWideVine }:
+
+with stdenv.lib;
+
+mkChromiumDerivation (base: rec {
+  name = "chromium-browser";
+  packageName = "chromium";
+  buildTargets = [ "mksnapshot" "chrome_sandbox" "chrome" ];
+
+  outputs = ["out" "sandbox"];
+
+  sandboxExecutableName = "__chromium-suid-sandbox";
+
+  installPhase = ''
+    mkdir -p "$libExecPath"
+    cp -v "$buildPath/"*.pak "$buildPath/"*.bin "$libExecPath/"
+    cp -v "$buildPath/icudtl.dat" "$libExecPath/"
+    cp -vLR "$buildPath/locales" "$buildPath/resources" "$libExecPath/"
+    cp -v "$buildPath/chrome" "$libExecPath/$packageName"
+
+    # Swiftshader
+    # See https://stackoverflow.com/a/4264351/263061 for the find invocation.
+    if [ -n "$(find "$buildPath/swiftshader/" -maxdepth 1 -name '*.so' -print -quit)" ]; then
+      echo "Swiftshader files found; installing"
+      mkdir -p "$libExecPath/swiftshader"
+      cp -v "$buildPath/swiftshader/"*.so "$libExecPath/swiftshader/"
+    else
+      echo "Swiftshader files not found"
+    fi
+
+    mkdir -p "$sandbox/bin"
+    cp -v "$buildPath/chrome_sandbox" "$sandbox/bin/${sandboxExecutableName}"
+
+    mkdir -vp "$out/share/man/man1"
+    cp -v "$buildPath/chrome.1" "$out/share/man/man1/$packageName.1"
+
+    for icon_file in chrome/app/theme/chromium/product_logo_*[0-9].png; do
+      num_and_suffix="''${icon_file##*logo_}"
+      icon_size="''${num_and_suffix%.*}"
+      expr "$icon_size" : "^[0-9][0-9]*$" || continue
+      logo_output_prefix="$out/share/icons/hicolor"
+      logo_output_path="$logo_output_prefix/''${icon_size}x''${icon_size}/apps"
+      mkdir -vp "$logo_output_path"
+      cp -v "$icon_file" "$logo_output_path/$packageName.png"
+    done
+
+    # Install Desktop Entry
+    install -D chrome/installer/linux/common/desktop.template \
+      $out/share/applications/chromium-browser.desktop
+
+    substituteInPlace $out/share/applications/chromium-browser.desktop \
+      --replace "@@MENUNAME@@" "Chromium" \
+      --replace "@@PACKAGE@@" "chromium" \
+      --replace "Exec=/usr/bin/@@USR_BIN_SYMLINK_NAME@@" "Exec=chromium"
+
+    # Append more mime types to the end
+    sed -i '/^MimeType=/ s,$,x-scheme-handler/webcal;x-scheme-handler/mailto;x-scheme-handler/about;x-scheme-handler/unknown,' \
+      $out/share/applications/chromium-browser.desktop
+
+    # See https://github.com/NixOS/nixpkgs/issues/12433
+    sed -i \
+      -e '/\[Desktop Entry\]/a\' \
+      -e 'StartupWMClass=chromium-browser' \
+      $out/share/applications/chromium-browser.desktop
+  '';
+
+  passthru = { inherit sandboxExecutableName; };
+
+  requiredSystemFeatures = [ "big-parallel" ];
+
+  meta = {
+    description = "An open source web browser from Google, with dependencies on Google web services removed";
+    longDescription = ''
+      Chromium is an open source web browser from Google that aims to build a
+      safer, faster, and more stable way for all Internet users to experience
+      the web. It has a minimalist user interface and provides the vast majority
+      of source code for Google Chrome (which has some additional features).
+    '';
+    homepage = https://github.com/Eloston/ungoogled-chromium;
+    maintainers = with maintainers; [ squalus ];
+    # Overview of the maintainer roles:
+    # nixos-unstable:
+    # - TODO: Need a new maintainer for x86_64 [0]
+    # - @thefloweringash: aarch64
+    # - @primeos: Provisional maintainer (x86_64)
+    # Stable channel:
+    # - TODO (need someone to test backports [0])
+    # [0]: https://github.com/NixOS/nixpkgs/issues/78450
+    license = if enableWideVine then licenses.unfree else licenses.bsd3;
+    platforms = platforms.linux;
+    hydraPlatforms = if channel == "stable" then ["aarch64-linux" "x86_64-linux"] else [];
+    timeout = 172800; # 48 hours
+  };
+})
diff --git a/pkgs/applications/networking/browsers/ungoogled-chromium/common.nix b/pkgs/applications/networking/browsers/ungoogled-chromium/common.nix
new file mode 100644
index 000000000000..25ee5462b298
--- /dev/null
+++ b/pkgs/applications/networking/browsers/ungoogled-chromium/common.nix
@@ -0,0 +1,366 @@
+{ stdenv, llvmPackages, gnChromium, ninja, which, nodejs, fetchpatch, gnutar
+
+# default dependencies
+, bzip2, flac, speex, libopus
+, libevent, expat, libjpeg, snappy
+, libpng, libcap
+, xdg_utils, yasm, minizip, libwebp
+, libusb1, pciutils, nss, re2, zlib
+
+, python2Packages, perl, pkgconfig
+, nspr, systemd, kerberos
+, utillinux, alsaLib
+, bison, gperf
+, glib, gtk3, dbus-glib
+, glibc
+, libXScrnSaver, libXcursor, libXtst, libGLU, libGL
+, protobuf, speechd, libXdamage, cups
+, ffmpeg, libxslt, libxml2, at-spi2-core
+, jre
+
+# optional dependencies
+, libgcrypt ? null # gnomeSupport || cupsSupport
+, libva ? null # useVaapi
+, libdrm ? null, wayland ? null, mesa_drivers ? null, libxkbcommon ? null # useOzone
+
+# package customization
+, useOzone ? false
+, useVaapi ? !(useOzone || stdenv.isAarch64) # Built if supported, but disabled in the wrapper
+# VA-API TODOs:
+# - Ozone: M81 fails to build due to "ozone_platform_gbm = false"
+#   - Possible solutions: Write a patch to fix the build (wrong gn dependencies)
+#     or build with minigbm
+# - AArch64: Causes serious regressions (https://github.com/NixOS/nixpkgs/pull/85253#issuecomment-614405879)
+, gnomeSupport ? false, gnome ? null
+, gnomeKeyringSupport ? false, libgnome-keyring3 ? null
+, proprietaryCodecs ? true
+, cupsSupport ? true
+, pulseSupport ? false, libpulseaudio ? null
+, ungoogled-chromium
+, ungoogled ? false
+
+, upstream-info
+}:
+
+buildFun:
+
+with stdenv.lib;
+
+# see http://www.linuxfromscratch.org/blfs/view/cvs/xsoft/chromium.html
+
+let
+  # The additional attributes for creating derivations based on the chromium
+  # source tree.
+  extraAttrs = buildFun base;
+
+  githubPatch = commit: sha256: fetchpatch {
+    url = "https://github.com/chromium/chromium/commit/${commit}.patch";
+    inherit sha256;
+  };
+
+  mkGnFlags =
+    let
+      # Serialize Nix types into GN types according to this document:
+      # https://chromium.googlesource.com/chromium/src/+/master/tools/gn/docs/language.md
+      mkGnString = value: "\"${escape ["\"" "$" "\\"] value}\"";
+      sanitize = value:
+        if value == true then "true"
+        else if value == false then "false"
+        else if isList value then "[${concatMapStringsSep ", " sanitize value}]"
+        else if isInt value then toString value
+        else if isString value then mkGnString value
+        else throw "Unsupported type for GN value `${value}'.";
+      toFlag = key: value: "${key}=${sanitize value}";
+    in attrs: concatStringsSep " " (attrValues (mapAttrs toFlag attrs));
+
+  gnSystemLibraries = [
+    "flac" "libwebp" "libxslt" "yasm" "opus" "snappy" "libpng"
+    # "zlib" # version 77 reports unresolved dependency on //third_party/zlib:zlib_config
+    # "libjpeg" # fails with multiple undefined references to chromium_jpeg_*
+    # "re2" # fails with linker errors
+    # "ffmpeg" # https://crbug.com/731766
+    # "harfbuzz-ng" # in versions over 63 harfbuzz and freetype are being built together
+                    # so we can't build with one from system and other from source
+  ];
+
+  opusWithCustomModes = libopus.override {
+    withCustomModes = true;
+  };
+
+  defaultDependencies = [
+    bzip2 flac speex opusWithCustomModes
+    libevent expat libjpeg snappy
+    libpng libcap
+    xdg_utils yasm minizip libwebp
+    libusb1 re2 zlib
+    ffmpeg libxslt libxml2
+    # harfbuzz # in versions over 63 harfbuzz and freetype are being built together
+               # so we can't build with one from system and other from source
+  ];
+
+  # build paths and release info
+  packageName = extraAttrs.packageName or extraAttrs.name;
+  buildType = "Release";
+  buildPath = "out/${buildType}";
+  libExecPath = "$out/libexec/${packageName}";
+
+  versionRange = min-version: upto-version:
+    let inherit (upstream-info) version;
+        result = versionAtLeast version min-version && versionOlder version upto-version;
+        stable-version = (import ./upstream-info.nix).stable.version;
+    in if versionAtLeast stable-version upto-version
+       then warn "chromium: stable version ${stable-version} is newer than a patchset bounded at ${upto-version}. You can safely delete it."
+            result
+       else result;
+
+  ungoogler =
+    let versionEntry = (import ./ungoogled-src.nix)."${upstream-info.version}";
+    in ungoogled-chromium {
+      inherit (versionEntry) rev sha256;
+    };
+  base = rec {
+    name = "${packageName}-unwrapped-${version}";
+    inherit (upstream-info) channel version;
+    inherit packageName buildType buildPath;
+
+    src = upstream-info.main;
+
+    nativeBuildInputs = [
+      ninja which python2Packages.python perl pkgconfig
+      python2Packages.ply python2Packages.jinja2 nodejs
+      gnutar
+    ] ++ optional (versionAtLeast version "83") python2Packages.setuptools;
+
+    buildInputs = defaultDependencies ++ [
+      nspr nss systemd
+      utillinux alsaLib
+      bison gperf kerberos
+      glib gtk3 dbus-glib
+      libXScrnSaver libXcursor libXtst libGLU libGL
+      pciutils protobuf speechd libXdamage at-spi2-core
+      jre
+    ] ++ optional useVaapi libva
+      ++ optional gnomeKeyringSupport libgnome-keyring3
+      ++ optionals gnomeSupport [ gnome.GConf libgcrypt ]
+      ++ optionals cupsSupport [ libgcrypt cups ]
+      ++ optional pulseSupport libpulseaudio
+      ++ optionals useOzone [ libdrm wayland mesa_drivers libxkbcommon ];
+
+    patches = [
+      ./patches/nix_plugin_paths_68.patch
+      ./patches/remove-webp-include-69.patch
+      ./patches/no-build-timestamps.patch
+      ./patches/widevine-79.patch
+      ./patches/dont-use-ANGLE-by-default.patch
+      # Unfortunately, chromium regularly breaks on major updates and
+      # then needs various patches backported in order to be compiled with GCC.
+      # Good sources for such patches and other hints:
+      # - https://gitweb.gentoo.org/repo/gentoo.git/plain/www-client/chromium/
+      # - https://git.archlinux.org/svntogit/packages.git/tree/trunk?h=packages/chromium
+      # - https://github.com/chromium/chromium/search?q=GCC&s=committer-date&type=Commits
+      #
+      # ++ optionals (channel == "dev") [ ( githubPatch "<patch>" "0000000000000000000000000000000000000000000000000000000000000000" ) ]
+      # ++ optional (versionRange "68" "72") ( githubPatch "<patch>" "0000000000000000000000000000000000000000000000000000000000000000" )
+    ] ++ optionals (useVaapi) ([ # Fixes for the VA-API build:
+      ./patches/enable-vdpau-support-for-nvidia.patch # https://aur.archlinux.org/cgit/aur.git/tree/vdpau-support.patch?h=chromium-vaapi
+      ./patches/enable-video-acceleration-on-linux.patch # Can be controlled at runtime (i.e. without rebuilding Chromium)
+    ] ++ optionals (versionRange "81" "82") [
+      (githubPatch "5b2ff215473e0526b5b24aeff4ad90d369b21c75" "0n00vh8wfpn2ay5fqsxcsx0zadnv7mihm72bcvnrfzh75nzbg902")
+      (githubPatch "98e343ab369e4262511b5fce547728e3e5eefba8" "00wwp653jk0k0yvix00vr7ymgck9dj7fxjwx4nc67ynn84dh6064")
+    ]);
+
+    postPatch = ''
+      # We want to be able to specify where the sandbox is via CHROME_DEVEL_SANDBOX
+      substituteInPlace sandbox/linux/suid/client/setuid_sandbox_host.cc \
+        --replace \
+          'return sandbox_binary;' \
+          'return base::FilePath(GetDevelSandboxPath());'
+
+      substituteInPlace services/audio/audio_sandbox_hook_linux.cc \
+        --replace \
+          '/usr/share/alsa/' \
+          '${alsaLib}/share/alsa/' \
+        --replace \
+          '/usr/lib/x86_64-linux-gnu/gconv/' \
+          '${glibc}/lib/gconv/' \
+        --replace \
+          '/usr/share/locale/' \
+          '${glibc}/share/locale/'
+
+      sed -i -e 's@"\(#!\)\?.*xdg-@"\1${xdg_utils}/bin/xdg-@' \
+        chrome/browser/shell_integration_linux.cc
+
+      sed -i -e '/lib_loader.*Load/s!"\(libudev\.so\)!"${systemd.lib}/lib/\1!' \
+        device/udev_linux/udev?_loader.cc
+
+      sed -i -e '/libpci_loader.*Load/s!"\(libpci\.so\)!"${pciutils}/lib/\1!' \
+        gpu/config/gpu_info_collector_linux.cc
+
+      sed -i -re 's/([^:])\<(isnan *\()/\1std::\2/g' \
+        chrome/browser/ui/webui/engagement/site_engagement_ui.cc
+
+      sed -i -e '/#include/ {
+        i #include <algorithm>
+        :l; n; bl
+      }' gpu/config/gpu_control_list.cc
+
+      # Allow to put extensions into the system-path.
+      sed -i -e 's,/usr,/run/current-system/sw,' chrome/common/chrome_paths.cc
+
+      patchShebangs .
+      # use our own nodejs
+      mkdir -p third_party/node/linux/node-linux-x64/bin
+      ln -s $(which node) third_party/node/linux/node-linux-x64/bin/node
+
+      # remove unused third-party
+      # in third_party/crashpad third_party/zlib contains just a header-adapter
+      for lib in ${toString gnSystemLibraries}; do
+        find -type f -path "*third_party/$lib/*"     \
+            \! -path "*third_party/crashpad/crashpad/third_party/zlib/*"  \
+            \! -path "*third_party/$lib/chromium/*"  \
+            \! -path "*third_party/$lib/google/*"    \
+            \! -path "*base/third_party/icu/*"       \
+            \! -path "*base/third_party/libevent/*"  \
+            \! -regex '.*\.\(gn\|gni\|isolate\|py\)' \
+            -delete
+      done
+    '' + optionalString stdenv.isAarch64 ''
+      substituteInPlace build/toolchain/linux/BUILD.gn \
+        --replace 'toolprefix = "aarch64-linux-gnu-"' 'toolprefix = ""'
+    '' + optionalString stdenv.cc.isClang ''
+      mkdir -p third_party/llvm-build/Release+Asserts/bin
+      ln -s ${stdenv.cc}/bin/clang              third_party/llvm-build/Release+Asserts/bin/clang
+      ln -s ${stdenv.cc}/bin/clang++            third_party/llvm-build/Release+Asserts/bin/clang++
+      ln -s ${llvmPackages.llvm}/bin/llvm-ar    third_party/llvm-build/Release+Asserts/bin/llvm-ar
+    '' + optionalString ungoogled ''
+      ${ungoogler}/utils/prune_binaries.py . ${ungoogler}/pruning.list || echo "some errors"
+      ${ungoogler}/utils/patches.py . ${ungoogler}/patches
+      ${ungoogler}/utils/domain_substitution.py apply -r ${ungoogler}/domain_regex.list -f ${ungoogler}/domain_substitution.list -c ./ungoogled-domsubcache.tar.gz .
+    '';
+
+    gnFlags = mkGnFlags ({
+      linux_use_bundled_binutils = false;
+      use_lld = false;
+      use_gold = true;
+      gold_path = "${stdenv.cc}/bin";
+      is_debug = false;
+
+      proprietary_codecs = false;
+      use_sysroot = false;
+      use_gnome_keyring = gnomeKeyringSupport;
+      use_gio = gnomeSupport;
+      # ninja: error: '../../native_client/toolchain/linux_x86/pnacl_newlib/bin/x86_64-nacl-objcopy',
+      # needed by 'nacl_irt_x86_64.nexe', missing and no known rule to make it
+      enable_nacl = false;
+      # Enabling the Widevine component here doesn't affect whether we can
+      # redistribute the chromium package; the Widevine component is either
+      # added later in the wrapped -wv build or downloaded from Google.
+      enable_widevine = true;
+      use_cups = cupsSupport;
+
+      treat_warnings_as_errors = false;
+      is_clang = stdenv.cc.isClang;
+      clang_use_chrome_plugins = false;
+      blink_symbol_level = 0;
+      fieldtrial_testing_like_official_build = true;
+
+      # Google API keys, see:
+      #   http://www.chromium.org/developers/how-tos/api-keys
+      # Note: These are for NixOS/nixpkgs use ONLY. For your own distribution,
+      # please get your own set of keys.
+      google_api_key = "AIzaSyDGi15Zwl11UNe6Y-5XW_upsfyw31qwZPI";
+      google_default_client_id = "404761575300.apps.googleusercontent.com";
+      google_default_client_secret = "9rIFQjfnkykEmqb6FfjJQD1D";
+    } // optionalAttrs proprietaryCodecs {
+      # enable support for the H.264 codec
+      proprietary_codecs = true;
+      enable_hangout_services_extension = true;
+      ffmpeg_branding = "Chrome";
+    } // optionalAttrs useVaapi {
+      use_vaapi = true;
+    } // optionalAttrs pulseSupport {
+      use_pulseaudio = true;
+      link_pulseaudio = true;
+    } // optionalAttrs useOzone {
+      use_ozone = true;
+      ozone_platform_gbm = false;
+      use_xkbcommon = true;
+      use_glib = true;
+      use_gtk = true;
+      use_system_libwayland = true;
+      use_system_minigbm = true;
+      use_system_libdrm = true;
+      system_wayland_scanner_path = "${wayland}/bin/wayland-scanner";
+    } // optionalAttrs ungoogled {
+      closure_compile = false;
+      enable_hangout_services_extension = false;
+      enable_mdns = false;
+      enable_nacl_nonsfi = false;
+      enable_one_click_signin = false;
+      enable_reading_list = false;
+      enable_remoting = false;
+      enable_reporting = false;
+      enable_service_discovery = false;
+      exclude_unwind_tables = true;
+      google_api_key = "";
+      google_default_client_id = "";
+      google_default_client_secret = "";
+      optimize_webui = false;
+      safe_browsing_mode = 0;
+      use_official_google_api_keys = false;
+      use_unofficial_version_number = false;
+    } // (extraAttrs.gnFlags or {}));
+
+    configurePhase = ''
+      runHook preConfigure
+
+      # This is to ensure expansion of $out.
+      libExecPath="${libExecPath}"
+      python build/linux/unbundle/replace_gn_files.py \
+        --system-libraries ${toString gnSystemLibraries}
+      ${gnChromium}/bin/gn gen --args=${escapeShellArg gnFlags} out/Release | tee gn-gen-outputs.txt
+
+      # Fail if `gn gen` contains a WARNING.
+      grep -o WARNING gn-gen-outputs.txt && echo "Found gn WARNING, exiting nix build" && exit 1
+
+      runHook postConfigure
+    '';
+
+    # Don't spam warnings about unknown warning options. This is useful because
+    # our Clang is always older than Chromium's and the build logs have a size
+    # of approx. 25 MB without this option (and this saves e.g. 66 %).
+    NIX_CFLAGS_COMPILE = "-Wno-unknown-warning-option";
+
+    buildPhase = let
+      # Build paralelism: on Hydra the build was frequently running into memory
+      # exhaustion, and even other users might be running into similar issues.
+      # -j is halved to avoid memory problems, and -l is slightly increased
+      # so that the build gets slight preference before others
+      # (it will often be on "critical path" and at risk of timing out)
+      buildCommand = target: ''
+        ninja -C "${buildPath}"  \
+          -j$(( ($NIX_BUILD_CORES+1) / 2 )) -l$(( $NIX_BUILD_CORES+1 )) \
+          "${target}"
+        (
+          source chrome/installer/linux/common/installer.include
+          PACKAGE=$packageName
+          MENUNAME="Chromium"
+          process_template chrome/app/resources/manpage.1.in "${buildPath}/chrome.1"
+        )
+      '';
+      targets = extraAttrs.buildTargets or [];
+      commands = map buildCommand targets;
+    in concatStringsSep "\n" commands;
+
+    postFixup = ''
+      # Make sure that libGLESv2 is found by dlopen (if using EGL).
+      chromiumBinary="$libExecPath/$packageName"
+      origRpath="$(patchelf --print-rpath "$chromiumBinary")"
+      patchelf --set-rpath "${libGL}/lib:$origRpath" "$chromiumBinary"
+    '';
+  };
+
+# Remove some extraAttrs we supplied to the base attributes already.
+in stdenv.mkDerivation (base // removeAttrs extraAttrs [
+  "name" "gnFlags" "buildTargets"
+])
diff --git a/pkgs/applications/networking/browsers/ungoogled-chromium/default.nix b/pkgs/applications/networking/browsers/ungoogled-chromium/default.nix
new file mode 100644
index 000000000000..9d6c7fada709
--- /dev/null
+++ b/pkgs/applications/networking/browsers/ungoogled-chromium/default.nix
@@ -0,0 +1,215 @@
+{ newScope, config, stdenv, llvmPackages_9, llvmPackages_10
+, makeWrapper, ed
+, glib, gtk3, gnome3, gsettings-desktop-schemas, gn, fetchgit
+, libva ? null
+, gcc, nspr, nss, patchelfUnstable, runCommand
+, lib
+
+# package customization
+# Note: enable* flags should not require full rebuilds (i.e. only affect the wrapper)
+, channel ? "stable"
+, gnomeSupport ? false, gnome ? null
+, gnomeKeyringSupport ? false
+, proprietaryCodecs ? true
+, enablePepperFlash ? false
+, enableWideVine ? false
+, useVaapi ? false # Deprecated, use enableVaapi instead!
+, enableVaapi ? false # Disabled by default due to unofficial support and issues on radeon
+, ungoogled ? true
+, useOzone ? false
+, cupsSupport ? true
+, pulseSupport ? config.pulseaudio or stdenv.isLinux
+, commandLineArgs ? ""
+}:
+
+let
+  llvmPackages = if channel != "stable"
+    then llvmPackages_10
+    else llvmPackages_9;
+  stdenv = llvmPackages.stdenv;
+
+  callPackage = newScope chromium;
+
+  chromium = {
+    inherit stdenv llvmPackages;
+
+    upstream-info = (callPackage ./update.nix {}).getChannel channel;
+
+    mkChromiumDerivation = callPackage ./common.nix ({
+      inherit gnome gnomeSupport gnomeKeyringSupport proprietaryCodecs cupsSupport pulseSupport useOzone;
+      inherit ungoogled;
+      gnChromium = gn;
+    } // lib.optionalAttrs (channel != "stable") {
+      # TODO: Remove after we can update gn for the stable channel (backward incompatible changes):
+      gnChromium = gn.overrideAttrs (oldAttrs: {
+        version = "2020-03-23";
+        src = fetchgit {
+          url = "https://gn.googlesource.com/gn";
+          rev = "5ed3c9cc67b090d5e311e4bd2aba072173e82db9";
+          sha256 = "00y2d35wvqmx9glaqhfb62wdgbfpwr77v0934nnvh9ks71vnsjqy";
+        };
+      });
+    });
+
+    browser = callPackage ./browser.nix { inherit channel enableWideVine; };
+
+    plugins = callPackage ./plugins.nix {
+      inherit enablePepperFlash;
+    };
+
+    ungoogled-chromium = callPackage ./ungoogled.nix {};
+  };
+
+  mkrpath = p: "${lib.makeSearchPathOutput "lib" "lib64" p}:${lib.makeLibraryPath p}";
+  widevineCdm = let upstream-info = chromium.upstream-info; in stdenv.mkDerivation {
+    name = "chrome-widevine-cdm";
+
+    # The .deb file for Google Chrome
+    src = upstream-info.binary;
+
+    nativeBuildInputs = [ patchelfUnstable ];
+
+    phases = [ "unpackPhase" "patchPhase" "installPhase" "checkPhase" ];
+
+    unpackCmd = let
+      widevineCdmPath =
+        if upstream-info.channel == "stable" then
+          "./opt/google/chrome/WidevineCdm"
+        else if upstream-info.channel == "beta" then
+          "./opt/google/chrome-beta/WidevineCdm"
+        else if upstream-info.channel == "dev" then
+          "./opt/google/chrome-unstable/WidevineCdm"
+        else
+          throw "Unknown chromium channel.";
+    in ''
+      # Extract just WidevineCdm from upstream's .deb file
+      ar p "$src" data.tar.xz | tar xJ "${widevineCdmPath}"
+
+      # Move things around so that we don't have to reference a particular
+      # chrome-* directory later.
+      mv "${widevineCdmPath}" ./
+
+      # unpackCmd wants a single output directory; let it take WidevineCdm/
+      rm -rf opt
+    '';
+
+    doCheck = true;
+    checkPhase = ''
+      ! find -iname '*.so' -exec ldd {} + | grep 'not found'
+    '';
+
+    PATCH_RPATH = mkrpath [ gcc.cc glib nspr nss ];
+
+    patchPhase = ''
+      patchelf --set-rpath "$PATCH_RPATH" _platform_specific/linux_x64/libwidevinecdm.so
+    '';
+
+    installPhase = ''
+      mkdir -p $out/WidevineCdm
+      cp -a * $out/WidevineCdm/
+    '';
+
+    meta = {
+      platforms = [ "x86_64-linux" ];
+      license = lib.licenses.unfree;
+    };
+  };
+
+  suffix = if channel != "stable" then "-" + channel else "";
+
+  sandboxExecutableName = chromium.browser.passthru.sandboxExecutableName;
+
+  version = chromium.browser.version;
+
+  # We want users to be able to enableWideVine without rebuilding all of
+  # chromium, so we have a separate derivation here that copies chromium
+  # and adds the unfree WidevineCdm.
+  chromiumWV = let browser = chromium.browser; in if enableWideVine then
+    runCommand (browser.name + "-wv") { version = browser.version; }
+      ''
+        mkdir -p $out
+        cp -a ${browser}/* $out/
+        chmod u+w $out/libexec/chromium
+        cp -a ${widevineCdm}/WidevineCdm $out/libexec/chromium/
+      ''
+    else browser;
+
+  optionalVaapiFlags = if useVaapi # TODO: Remove after 20.09:
+    then throw ''
+      Chromium's useVaapi was replaced by enableVaapi and you don't need to pass
+      "--ignore-gpu-blacklist" anymore (also no rebuilds are required anymore).
+    '' else lib.optionalString
+      (!enableVaapi)
+      "--add-flags --disable-accelerated-video-decode --add-flags --disable-accelerated-video-encode";
+in stdenv.mkDerivation {
+  name = "chromium${suffix}-${version}";
+  inherit version;
+
+  buildInputs = [
+    makeWrapper ed
+
+    # needed for GSETTINGS_SCHEMAS_PATH
+    gsettings-desktop-schemas glib gtk3
+
+    # needed for XDG_ICON_DIRS
+    gnome3.adwaita-icon-theme
+  ];
+
+  outputs = ["out" "sandbox"];
+
+  buildCommand = let
+    browserBinary = "${chromiumWV}/libexec/chromium/chromium";
+    getWrapperFlags = plugin: "$(< \"${plugin}/nix-support/wrapper-flags\")";
+    libPath = stdenv.lib.makeLibraryPath [ libva ];
+
+  in with stdenv.lib; ''
+    mkdir -p "$out/bin"
+
+    eval makeWrapper "${browserBinary}" "$out/bin/chromium" \
+      --add-flags ${escapeShellArg (escapeShellArg commandLineArgs)} \
+      ${optionalVaapiFlags} \
+      ${concatMapStringsSep " " getWrapperFlags chromium.plugins.enabled}
+
+    ed -v -s "$out/bin/chromium" << EOF
+    2i
+
+    if [ -x "/run/wrappers/bin/${sandboxExecutableName}" ]
+    then
+      export CHROME_DEVEL_SANDBOX="/run/wrappers/bin/${sandboxExecutableName}"
+    else
+      export CHROME_DEVEL_SANDBOX="$sandbox/bin/${sandboxExecutableName}"
+    fi
+
+  '' + lib.optionalString (libPath != "") ''
+    # To avoid loading .so files from cwd, LD_LIBRARY_PATH here must not
+    # contain an empty section before or after a colon.
+    export LD_LIBRARY_PATH="\$LD_LIBRARY_PATH\''${LD_LIBRARY_PATH:+:}${libPath}"
+  '' + ''
+
+    # libredirect causes chromium to deadlock on startup
+    export LD_PRELOAD="\$(echo -n "\$LD_PRELOAD" | tr ':' '\n' | grep -v /lib/libredirect\\\\.so$ | tr '\n' ':')"
+
+    export XDG_DATA_DIRS=$XDG_ICON_DIRS:$GSETTINGS_SCHEMAS_PATH\''${XDG_DATA_DIRS:+:}\$XDG_DATA_DIRS
+
+    .
+    w
+    EOF
+
+    ln -sv "${chromium.browser.sandbox}" "$sandbox"
+
+    ln -s "$out/bin/chromium" "$out/bin/chromium-browser"
+
+    mkdir -p "$out/share"
+    for f in '${chromium.browser}'/share/*; do # hello emacs */
+      ln -s -t "$out/share/" "$f"
+    done
+  '';
+
+  inherit (chromium.browser) packageName;
+  meta = chromium.browser.meta;
+  passthru = {
+    inherit (chromium) upstream-info browser;
+    mkDerivation = chromium.mkChromiumDerivation;
+    inherit sandboxExecutableName;
+  };
+}
diff --git a/pkgs/applications/networking/browsers/ungoogled-chromium/patches/dont-use-ANGLE-by-default.patch b/pkgs/applications/networking/browsers/ungoogled-chromium/patches/dont-use-ANGLE-by-default.patch
new file mode 100644
index 000000000000..9f14a304eb34
--- /dev/null
+++ b/pkgs/applications/networking/browsers/ungoogled-chromium/patches/dont-use-ANGLE-by-default.patch
@@ -0,0 +1,26 @@
+A field trial currently enables the passthrough command decoder, which causes
+gl_factory.cc to try kGLImplementationEGLANGLE first, which causes Chromium to fail
+to load libGLESv2.so on NixOS.  It somehow does not try kGLImplementationDesktopGL,
+and so there is no GL support at all.
+
+Revert to using the validating command decoder, which prevents gl_factory.cc
+from touching allowed_impls, allowing it to successfully use kGLImplementationDesktopGL.
+
+diff --git a/ui/gl/gl_utils.cc b/ui/gl/gl_utils.cc
+index 697cbed5fe2d..8419bdb21a2f 100644
+--- a/ui/gl/gl_utils.cc
++++ b/ui/gl/gl_utils.cc
+@@ -71,9 +71,10 @@ bool UsePassthroughCommandDecoder(const base::CommandLine* command_line) {
+   } else if (switch_value == kCmdDecoderValidatingName) {
+     return false;
+   } else {
+-    // Unrecognized or missing switch, use the default.
+-    return base::FeatureList::IsEnabled(
+-        features::kDefaultPassthroughCommandDecoder);
++    // Ignore the field trial that enables it; disable it until
++    // gl_factory.cc kGLImplementationEGLANGLE issues are sorted
++    // out on NixOS.
++    return false;
+   }
+ }
+ }
diff --git a/pkgs/applications/networking/browsers/ungoogled-chromium/patches/enable-vdpau-support-for-nvidia.patch b/pkgs/applications/networking/browsers/ungoogled-chromium/patches/enable-vdpau-support-for-nvidia.patch
new file mode 100644
index 000000000000..b5372d1a2556
--- /dev/null
+++ b/pkgs/applications/networking/browsers/ungoogled-chromium/patches/enable-vdpau-support-for-nvidia.patch
@@ -0,0 +1,74 @@
+--- a/media/gpu/vaapi/vaapi_video_decode_accelerator.cc
++++ b/media/gpu/vaapi/vaapi_video_decode_accelerator.cc
+@@ -641,6 +641,7 @@ void VaapiVideoDecodeAccelerator::AssignPictureBuffers(
+   // |vpp_vaapi_wrapper_| for VaapiPicture to DownloadFromSurface() the VA's
+   // internal decoded frame.
+   if (buffer_allocation_mode_ != BufferAllocationMode::kNone &&
++      buffer_allocation_mode_ != BufferAllocationMode::kWrapVdpau &&
+       !vpp_vaapi_wrapper_) {
+     vpp_vaapi_wrapper_ = VaapiWrapper::Create(
+         VaapiWrapper::kVideoProcess, VAProfileNone,
+@@ -665,7 +666,8 @@ void VaapiVideoDecodeAccelerator::AssignPictureBuffers(
+     PictureBuffer buffer = buffers[i];
+     buffer.set_size(requested_pic_size_);
+     std::unique_ptr<VaapiPicture> picture = vaapi_picture_factory_->Create(
+-        (buffer_allocation_mode_ == BufferAllocationMode::kNone)
++        ((buffer_allocation_mode_ == BufferAllocationMode::kNone) ||
++         (buffer_allocation_mode_ == BufferAllocationMode::kWrapVdpau))
+             ? vaapi_wrapper_
+             : vpp_vaapi_wrapper_,
+         make_context_current_cb_, bind_image_cb_, buffer);
+@@ -1093,6 +1095,12 @@ VaapiVideoDecodeAccelerator::GetSupportedProfiles() {
+
+ VaapiVideoDecodeAccelerator::BufferAllocationMode
+ VaapiVideoDecodeAccelerator::DecideBufferAllocationMode() {
++  // NVIDIA blobs use VDPAU
++  if (VaapiWrapper::GetImplementationType() == VAImplementation::kNVIDIAVDPAU) {
++    LOG(INFO) << "VA-API driver on VDPAU backend";
++    return BufferAllocationMode::kWrapVdpau;
++  }
++
+   // TODO(crbug.com/912295): Enable a better BufferAllocationMode for IMPORT
+   // |output_mode_| as well.
+   if (output_mode_ == VideoDecodeAccelerator::Config::OutputMode::IMPORT)
+@@ -1105,7 +1113,7 @@ VaapiVideoDecodeAccelerator::DecideBufferAllocationMode() {
+   // depends on the bitstream and sometimes it's not enough to cover the amount
+   // of frames needed by the client pipeline (see b/133733739).
+   // TODO(crbug.com/911754): Enable for VP9 Profile 2.
+-  if (IsGeminiLakeOrLater() &&
++  if (false && IsGeminiLakeOrLater() &&
+       (profile_ == VP9PROFILE_PROFILE0 || profile_ == VP8PROFILE_ANY)) {
+     // Add one to the reference frames for the one being currently egressed, and
+     // an extra allocation for both |client_| and |decoder_|, see
+--- a/media/gpu/vaapi/vaapi_video_decode_accelerator.h
++++ b/media/gpu/vaapi/vaapi_video_decode_accelerator.h
+@@ -204,6 +204,7 @@ class MEDIA_GPU_EXPORT VaapiVideoDecodeAccelerator
+     // Using |client_|s provided PictureBuffers and as many internally
+     // allocated.
+     kNormal,
++    kWrapVdpau,
+   };
+
+   // Decides the concrete buffer allocation mode, depending on the hardware
+--- a/media/gpu/vaapi/vaapi_wrapper.cc
++++ b/media/gpu/vaapi/vaapi_wrapper.cc
+@@ -131,6 +131,9 @@ media::VAImplementation VendorStringToImplementationType(
+   } else if (base::StartsWith(va_vendor_string, "Intel iHD driver",
+                               base::CompareCase::SENSITIVE)) {
+     return media::VAImplementation::kIntelIHD;
++  } else if (base::StartsWith(va_vendor_string, "Splitted-Desktop Systems VDPAU",
++                              base::CompareCase::SENSITIVE)) {
++    return media::VAImplementation::kNVIDIAVDPAU;
+   }
+   return media::VAImplementation::kOther;
+ }
+--- a/media/gpu/vaapi/vaapi_wrapper.h
++++ b/media/gpu/vaapi/vaapi_wrapper.h
+@@ -79,6 +79,7 @@ enum class VAImplementation {
+   kIntelIHD,
+   kOther,
+   kInvalid,
++  kNVIDIAVDPAU,
+ };
+
+ // This class handles VA-API calls and ensures proper locking of VA-API calls
diff --git a/pkgs/applications/networking/browsers/ungoogled-chromium/patches/enable-video-acceleration-on-linux.patch b/pkgs/applications/networking/browsers/ungoogled-chromium/patches/enable-video-acceleration-on-linux.patch
new file mode 100644
index 000000000000..bd278633f67e
--- /dev/null
+++ b/pkgs/applications/networking/browsers/ungoogled-chromium/patches/enable-video-acceleration-on-linux.patch
@@ -0,0 +1,48 @@
+From b2144fd28e09cd52e7a88a62a9d9b54cf9922f9f Mon Sep 17 00:00:00 2001
+From: Michael Weiss <dev.primeos@gmail.com>
+Date: Tue, 14 Apr 2020 14:16:10 +0200
+Subject: [PATCH] Enable accelerated video decode on Linux
+
+This will enable accelerated video decode on Linux by default (i.e.
+without "--ignore-gpu-blacklist"), but on NixOS we'll provide
+"--disable-accelerated-video-decode" and
+"--disable-accelerated-video-encode" by default to avoid regressions
+(e.g. VA-API doesn't work properly for some radeon drivers).
+
+Video acceleration can then be enabled via:
+chromium.override { enableVaapi = true; }
+without rebuilding Chromium.
+---
+ gpu/config/software_rendering_list.json | 16 ----------------
+ 1 file changed, 16 deletions(-)
+
+diff --git a/gpu/config/software_rendering_list.json b/gpu/config/software_rendering_list.json
+index 22712bdbf38f..a06dd19a50e4 100644
+--- a/gpu/config/software_rendering_list.json
++++ b/gpu/config/software_rendering_list.json
+@@ -336,22 +336,6 @@
+       ]
+     },
+     {
+-      "id": 48,
+-      "description": "Accelerated video decode is unavailable on Linux",
+-      "cr_bugs": [137247, 1032907],
+-      "os": {
+-        "type": "linux"
+-      },
+-      "exceptions": [
+-        {
+-          "machine_model_name": ["Chromecast"]
+-        }
+-      ],
+-      "features": [
+-        "accelerated_video_decode"
+-      ]
+-    },
+-    {
+       "id": 50,
+       "description": "Disable VMware software renderer on older Mesa",
+       "cr_bugs": [145531, 332596, 571899, 629434],
+-- 
+2.11.0
+
diff --git a/pkgs/applications/networking/browsers/ungoogled-chromium/patches/nix_plugin_paths_68.patch b/pkgs/applications/networking/browsers/ungoogled-chromium/patches/nix_plugin_paths_68.patch
new file mode 100644
index 000000000000..da6a4c92b460
--- /dev/null
+++ b/pkgs/applications/networking/browsers/ungoogled-chromium/patches/nix_plugin_paths_68.patch
@@ -0,0 +1,61 @@
+diff --git a/chrome/common/chrome_paths.cc b/chrome/common/chrome_paths.cc
+index f4e119d..d9775bd 100644
+--- a/chrome/common/chrome_paths.cc
++++ b/chrome/common/chrome_paths.cc
+@@ -68,21 +68,14 @@ static base::LazyInstance<base::FilePath>
+     g_invalid_specified_user_data_dir = LAZY_INSTANCE_INITIALIZER;
+ 
+ // Gets the path for internal plugins.
+-bool GetInternalPluginsDirectory(base::FilePath* result) {
+-#if defined(OS_MACOSX)
+-  // If called from Chrome, get internal plugins from a subdirectory of the
+-  // framework.
+-  if (base::mac::AmIBundled()) {
+-    *result = chrome::GetFrameworkBundlePath();
+-    DCHECK(!result->empty());
+-    *result = result->Append("Internet Plug-Ins");
+-    return true;
+-  }
+-  // In tests, just look in the module directory (below).
+-#endif
+-
+-  // The rest of the world expects plugins in the module directory.
+-  return base::PathService::Get(base::DIR_MODULE, result);
++bool GetInternalPluginsDirectory(base::FilePath* result,
++                                 const std::string& ident) {
++  std::string full_env = std::string("NIX_CHROMIUM_PLUGIN_PATH_") + ident;
++  const char* value = getenv(full_env.c_str());
++  if (value == NULL)
++      return base::PathService::Get(base::DIR_MODULE, result);
++  else
++      *result = base::FilePath(value);
+ }
+ 
+ // Gets the path for bundled implementations of components. Note that these
+@@ -272,7 +265,7 @@ bool PathProvider(int key, base::FilePath* result) {
+       create_dir = true;
+       break;
+     case chrome::DIR_INTERNAL_PLUGINS:
+-      if (!GetInternalPluginsDirectory(&cur))
++      if (!GetInternalPluginsDirectory(&cur, "ALL"))
+         return false;
+       break;
+     case chrome::DIR_COMPONENTS:
+@@ -280,7 +273,7 @@ bool PathProvider(int key, base::FilePath* result) {
+         return false;
+       break;
+     case chrome::DIR_PEPPER_FLASH_PLUGIN:
+-      if (!GetInternalPluginsDirectory(&cur))
++      if (!GetInternalPluginsDirectory(&cur, "PEPPERFLASH"))
+         return false;
+       cur = cur.Append(kPepperFlashBaseDirectory);
+       break;
+@@ -358,7 +351,7 @@ bool PathProvider(int key, base::FilePath* result) {
+         cur = cur.DirName();
+       }
+ #else
+-      if (!GetInternalPluginsDirectory(&cur))
++      if (!GetInternalPluginsDirectory(&cur, "PNACL"))
+         return false;
+ #endif
+       cur = cur.Append(FILE_PATH_LITERAL("pnacl"));
diff --git a/pkgs/applications/networking/browsers/ungoogled-chromium/patches/no-build-timestamps.patch b/pkgs/applications/networking/browsers/ungoogled-chromium/patches/no-build-timestamps.patch
new file mode 100644
index 000000000000..6b788f43d29c
--- /dev/null
+++ b/pkgs/applications/networking/browsers/ungoogled-chromium/patches/no-build-timestamps.patch
@@ -0,0 +1,17 @@
+--- chromium-70.0.3538.67/build/compute_build_timestamp.py.orig	2018-11-02 16:00:34.368933077 +0200
++++ chromium-70.0.3538.67/build/compute_build_timestamp.py	2018-11-08 04:06:21.658105129 +0200
+@@ -94,6 +94,14 @@
+       'build_type', help='The type of build', choices=('official', 'default'))
+   args = argument_parser.parse_args()
+ 
++  # I don't trust LASTCHANGE magic, and I definelly want something deterministic here
++  SOURCE_DATE_EPOCH = os.getenv("SOURCE_DATE_EPOCH", None)
++  if SOURCE_DATE_EPOCH is not None:
++    print(SOURCE_DATE_EPOCH)
++    return 0
++  else:
++    raise RuntimeError("SOURCE_DATE_EPOCH not set")
++
+   # The mtime of the revision in build/util/LASTCHANGE is stored in a file
+   # next to it. Read it, to get a deterministic time close to "now".
+   # That date is then modified as described at the top of the file so that
diff --git a/pkgs/applications/networking/browsers/ungoogled-chromium/patches/remove-webp-include-69.patch b/pkgs/applications/networking/browsers/ungoogled-chromium/patches/remove-webp-include-69.patch
new file mode 100644
index 000000000000..07572cf7ee94
--- /dev/null
+++ b/pkgs/applications/networking/browsers/ungoogled-chromium/patches/remove-webp-include-69.patch
@@ -0,0 +1,11 @@
+--- a/third_party/blink/renderer/platform/image-encoders/image_encoder.cc
++++ b/third_party/blink/renderer/platform/image-encoders/image_encoder.cc
+@@ -13,7 +13,7 @@
+
+ #include "jpeglib.h"  // for JPEG_MAX_DIMENSION
+
+-#include "third_party/libwebp/src/webp/encode.h"  // for WEBP_MAX_DIMENSION
++#define WEBP_MAX_DIMENSION 16383
+
+ namespace blink {
+
diff --git a/pkgs/applications/networking/browsers/ungoogled-chromium/patches/widevine-79.patch b/pkgs/applications/networking/browsers/ungoogled-chromium/patches/widevine-79.patch
new file mode 100644
index 000000000000..32f0ae2fb5e6
--- /dev/null
+++ b/pkgs/applications/networking/browsers/ungoogled-chromium/patches/widevine-79.patch
@@ -0,0 +1,13 @@
+diff --git a/third_party/widevine/cdm/BUILD.gn b/third_party/widevine/cdm/BUILD.gn
+index ed0e2f5208b..5b431a030d5 100644
+--- a/third_party/widevine/cdm/BUILD.gn
++++ b/third_party/widevine/cdm/BUILD.gn
+@@ -14,7 +14,7 @@ buildflag_header("buildflags") {
+ 
+   flags = [
+     "ENABLE_WIDEVINE=$enable_widevine",
+-    "BUNDLE_WIDEVINE_CDM=$bundle_widevine_cdm",
++    "BUNDLE_WIDEVINE_CDM=true",
+     "ENABLE_WIDEVINE_CDM_COMPONENT=$enable_widevine_cdm_component",
+   ]
+ }
diff --git a/pkgs/applications/networking/browsers/ungoogled-chromium/plugins.nix b/pkgs/applications/networking/browsers/ungoogled-chromium/plugins.nix
new file mode 100644
index 000000000000..1dd9baa628ab
--- /dev/null
+++ b/pkgs/applications/networking/browsers/ungoogled-chromium/plugins.nix
@@ -0,0 +1,93 @@
+{ stdenv, gcc
+, jshon
+, glib
+, nspr
+, nss
+, fetchzip
+, patchelfUnstable
+, enablePepperFlash ? false
+
+, upstream-info
+}:
+
+with stdenv.lib;
+
+let
+  mkrpath = p: "${makeSearchPathOutput "lib" "lib64" p}:${makeLibraryPath p}";
+
+  # Generate a shell fragment that emits flags appended to the
+  # final makeWrapper call for wrapping the browser's main binary.
+  #
+  # Note that this is shell-escaped so that only the variable specified
+  # by the "output" attribute is substituted.
+  mkPluginInfo = { output ? "out", allowedVars ? [ output ]
+                 , flags ? [], envVars ? {}
+                 }: let
+    shSearch = ["'"] ++ map (var: "@${var}@") allowedVars;
+    shReplace = ["'\\''"] ++ map (var: "'\"\${${var}}\"'") allowedVars;
+    # We need to triple-escape "val":
+    #  * First because makeWrapper doesn't do any quoting of its arguments by
+    #    itself.
+    #  * Second because it's passed to the makeWrapper call separated by IFS but
+    #    not by the _real_ arguments, for example the Widevine plugin flags
+    #    contain spaces, so they would end up as separate arguments.
+    #  * Third in order to be correctly quoted for the "echo" call below.
+    shEsc = val: "'${replaceStrings ["'"] ["'\\''"] val}'";
+    mkSh = val: "'${replaceStrings shSearch shReplace (shEsc val)}'";
+    mkFlag = flag: ["--add-flags" (shEsc flag)];
+    mkEnvVar = key: val: ["--set" (shEsc key) (shEsc val)];
+    envList = mapAttrsToList mkEnvVar envVars;
+    quoted = map mkSh (flatten ((map mkFlag flags) ++ envList));
+  in ''
+    mkdir -p "''$${output}/nix-support"
+    echo ${toString quoted} > "''$${output}/nix-support/wrapper-flags"
+  '';
+
+  flash = stdenv.mkDerivation rec {
+    pname = "flashplayer-ppapi";
+    version = "32.0.0.363";
+
+    src = fetchzip {
+      url = "https://fpdownload.adobe.com/pub/flashplayer/pdc/${version}/flash_player_ppapi_linux.x86_64.tar.gz";
+      sha256 = "0znk8an892mykgbz56hyv3gz65vc9mhb3vn96c6bsvicwl1fn460";
+      stripRoot = false;
+    };
+
+    patchPhase = ''
+      chmod +x libpepflashplayer.so
+      patchelf --set-rpath "${mkrpath [ gcc.cc ]}" libpepflashplayer.so
+    '';
+
+    doCheck = true;
+    checkPhase = ''
+      ! find -iname '*.so' -exec ldd {} + | grep 'not found'
+    '';
+
+    installPhase = ''
+      flashVersion="$(
+        "${jshon}/bin/jshon" -F manifest.json -e version -u
+      )"
+
+      install -vD libpepflashplayer.so "$out/lib/libpepflashplayer.so"
+
+      ${mkPluginInfo {
+        allowedVars = [ "out" "flashVersion" ];
+        flags = [
+          "--ppapi-flash-path=@out@/lib/libpepflashplayer.so"
+          "--ppapi-flash-version=@flashVersion@"
+        ];
+      }}
+    '';
+
+    dontStrip = true;
+
+    meta = {
+      license = stdenv.lib.licenses.unfree;
+      maintainers = with stdenv.lib.maintainers; [ taku0 ];
+      platforms = platforms.x86_64;
+    };
+  };
+
+in {
+  enabled = optional enablePepperFlash flash;
+}
diff --git a/pkgs/applications/networking/browsers/ungoogled-chromium/ungoogled-src.nix b/pkgs/applications/networking/browsers/ungoogled-chromium/ungoogled-src.nix
new file mode 100644
index 000000000000..f6f3c06e9376
--- /dev/null
+++ b/pkgs/applications/networking/browsers/ungoogled-chromium/ungoogled-src.nix
@@ -0,0 +1,6 @@
+{
+  "81.0.4044.122" = {
+    rev = "81.0.4044.122-2";
+    sha256 = "0bbr4a2gkgm3ykdgpj8x58sd3dwam6qkifhzfs2997681g7b2v2q";
+  };
+}
diff --git a/pkgs/applications/networking/browsers/ungoogled-chromium/ungoogled.nix b/pkgs/applications/networking/browsers/ungoogled-chromium/ungoogled.nix
new file mode 100644
index 000000000000..17418c90af49
--- /dev/null
+++ b/pkgs/applications/networking/browsers/ungoogled-chromium/ungoogled.nix
@@ -0,0 +1,42 @@
+{ stdenv
+, fetchFromGitHub
+, python3Packages
+, makeWrapper
+, patch
+}:
+{ rev
+, sha256
+}:
+
+stdenv.mkDerivation rec {
+  name = "ungoogled-chromium-${version}";
+
+  version = rev;
+
+  src = fetchFromGitHub {
+    owner = "Eloston";
+    repo = "ungoogled-chromium";
+    inherit rev sha256;
+  };
+
+  dontBuild = true;
+
+  buildInputs = [
+    python3Packages.python
+    patch
+  ];
+
+  nativeBuildInputs = [
+    makeWrapper
+  ];
+
+  patchPhase = ''
+    sed -i '/chromium-widevine/d' patches/series
+  '';
+
+  installPhase = ''
+    mkdir $out
+    cp -R * $out/
+    wrapProgram $out/utils/patches.py --add-flags "apply" --prefix PATH : "${patch}/bin"
+  '';
+}
diff --git a/pkgs/applications/networking/browsers/ungoogled-chromium/update.nix b/pkgs/applications/networking/browsers/ungoogled-chromium/update.nix
new file mode 100644
index 000000000000..6dff17c69ddb
--- /dev/null
+++ b/pkgs/applications/networking/browsers/ungoogled-chromium/update.nix
@@ -0,0 +1,271 @@
+let maybePkgs = import ../../../../../. {}; in
+
+{ stdenv     ? maybePkgs.stdenv
+, runCommand ? maybePkgs.runCommand
+, fetchurl   ? maybePkgs.fetchurl
+, writeText  ? maybePkgs.writeText
+, curl       ? maybePkgs.curl
+, cacert     ? maybePkgs.cacert
+, nix        ? maybePkgs.nix
+}:
+
+let
+  inherit (stdenv) lib;
+
+  sources = if builtins.pathExists ./upstream-info.nix
+            then import ./upstream-info.nix
+            else {};
+
+  bucketURL = "https://commondatastorage.googleapis.com/"
+            + "chromium-browser-official";
+
+  mkVerURL = version: "${bucketURL}/chromium-${version}.tar.xz";
+
+  debURL = "https://dl.google.com/linux/chrome/deb/pool/main/g";
+
+  getDebURL = channelName: version: arch: mirror: let
+    packageSuffix = if channelName == "dev" then "unstable" else channelName;
+    packageName = "google-chrome-${packageSuffix}";
+  in "${mirror}/${packageName}/${packageName}_${version}-1_${arch}.deb";
+
+  # Untrusted mirrors, don't try to update from them!
+  debMirrors = [
+    "http://95.31.35.30/chrome/pool/main/g"
+    "http://mirror.pcbeta.com/google/chrome/deb/pool/main/g"
+    "http://repo.fdzh.org/chrome/deb/pool/main/g"
+  ];
+
+in {
+  getChannel = channel: let
+    chanAttrs = builtins.getAttr channel sources;
+  in {
+    inherit channel;
+    inherit (chanAttrs) version;
+
+    main = fetchurl {
+      url = mkVerURL chanAttrs.version;
+      inherit (chanAttrs) sha256;
+    };
+
+    binary = fetchurl (let
+      mkUrls = arch: let
+        mkURLForMirror = getDebURL channel chanAttrs.version arch;
+      in map mkURLForMirror ([ debURL ] ++ debMirrors);
+    in if stdenv.is64bit && chanAttrs ? sha256bin64 then {
+      urls = mkUrls "amd64";
+      sha256 = chanAttrs.sha256bin64;
+    } else if !stdenv.is64bit && chanAttrs ? sha256bin32 then {
+      urls = mkUrls "i386";
+      sha256 = chanAttrs.sha256bin32;
+    } else throw "No Chrome plugins are available for your architecture.");
+  };
+
+  update = let
+    csv2nix = name: src: import (runCommand "${name}.nix" {
+      src = builtins.fetchurl src;
+    } ''
+      esc() { echo "\"$(echo "$1" | sed -e 's/"\\$/\\&/')\""; } # ohai emacs "
+      IFS=, read -r -a headings <<< "$(head -n1 "$src")"
+      echo "[" > "$out"
+      tail -n +2 "$src" | while IFS=, read -r -a line; do
+        echo "  {"
+        for idx in "''${!headings[@]}"; do
+          echo "    $(esc "''${headings[idx]}") = $(esc ''${line[$idx]});"
+        done
+        echo "  }"
+      done >> "$out"
+      echo "]" >> "$out"
+    '');
+
+    channels = lib.fold lib.recursiveUpdate {} (map (attrs: {
+      ${attrs.os}.${attrs.channel} = attrs // {
+        history = let
+          drvName = "omahaproxy-${attrs.os}.${attrs.channel}-info";
+          history = csv2nix drvName "http://omahaproxy.appspot.com/history";
+          cond = h: attrs.os == h.os && attrs.channel == h.channel
+                 && lib.versionOlder h.version attrs.current_version;
+          # Note that this is a *reverse* sort!
+          sorter = a: b: lib.versionOlder b.version a.version;
+          sorted = builtins.sort sorter (lib.filter cond history);
+        in map (lib.flip removeAttrs ["os" "channel"]) sorted;
+        version = attrs.current_version;
+      };
+    }) (csv2nix "omahaproxy-info" "http://omahaproxy.appspot.com/all?csv=1"));
+
+    /*
+      XXX: This is essentially the same as:
+
+        builtins.tryEval (builtins.fetchurl url)
+
+      ... except that tryEval on fetchurl isn't working and doesn't catch
+      errors for fetchurl, so we go for a different approach.
+
+      We only have fixed-output derivations that can have networking access, so
+      we abuse SHA1 and its weaknesses to forge a fixed-output derivation which
+      is not so fixed, because it emits different contents that have the same
+      SHA1 hash.
+
+      Using this method, we can distinguish whether the URL is available or
+      whether it's not based on the actual content.
+
+      So let's use tryEval as soon as it's working with fetchurl in Nix.
+    */
+    tryFetch = url: let
+      # SHA1 hash collisions from https://shattered.io/static/shattered.pdf:
+      collisions = runCommand "sha1-collisions" {
+        outputs = [ "out" "good" "bad" ];
+        base64 = ''
+          QlpoOTFBWSZTWbL5V5MABl///////9Pv///v////+/////HDdK739/677r+W3/75rUNr4
+          Aa/AAAAAAACgEVTRtQDQAaA0AAyGmjTQGmgAAANGgAaMIAYgGgAABo0AAAAAADQAIAGQ0
+          MgDIGmjQA0DRk0AaMQ0DQAGIANGgAAGRoNGQMRpo0GIGgBoGQAAIAGQ0MgDIGmjQA0DRk
+          0AaMQ0DQAGIANGgAAGRoNGQMRpo0GIGgBoGQAAIAGQ0MgDIGmjQA0DRk0AaMQ0DQAGIAN
+          GgAAGRoNGQMRpo0GIGgBoGQAAIAGQ0MgDIGmjQA0DRk0AaMQ0DQAGIANGgAAGRoNGQMRp
+          o0GIGgBoGQAABVTUExEZATTICnkxNR+p6E09JppoyamjGhkm0ammIyaekbUejU9JiGnqZ
+          qaaDxJ6m0JkZMQ2oaYmJ6gxqMyE2TUzJqfItligtJQJfYbl9Zy9QjQuB5mHQRdSSXCCTH
+          MgmSDYmdOoOmLTBJWiCpOhMQYpQlOYpJjn+wQUJSTCEpOMekaFaaNB6glCC0hKEJdHr6B
+          mUIHeph7YxS8WJYyGwgWnMTFJBDFSxSCCYljiEk7HZgJzJVDHJxMgY6tCEIIWgsKSlSZ0
+          S8GckoIIF+551Ro4RCw260VCEpWJSlpWx/PMrLyVoyhWMAneDilBcUIeZ1j6NCkus0qUC
+          Wnahhk5KT4GpWMh3vm2nJWjTL9Qg+84iExBJhNKpbV9tvEN265t3fu/TKkt4rXFTsV+Nc
+          upJXhOhOhJMQQktrqt4K8mSh9M2DAO2X7uXGVL9YQxUtzQmS7uBndL7M6R7vX869VxqPu
+          renSuHYNq1yTXOfNWLwgvKlRlFYqLCs6OChDp0HuTzCWscmGudLyqUuwVGG75nmyZhKpJ
+          yOE/pOZyHyrZxGM51DYIN+Jc8yVJgAykxKCEtW55MlfudLg3KG6TtozalunXrroSxUpVL
+          StWrWLFihMnVpkyZOrQnUrE6xq1CGtJlbAb5ShMbV1CZgqlKC0wCFCpMmUKSEkvFLaZC8
+          wHOCVAlvzaJQ/T+XLb5Dh5TNM67p6KZ4e4ZSGyVENx2O27LzrTIteAreTkMZpW95GS0CE
+          JYhMc4nToTJ0wQhKEyddaLb/rTqmgJSlkpnALxMhlNmuKEpkEkqhKUoEq3SoKUpIQcDgW
+          lC0rYahMmLuPQ0fHqZaF4v2W8IoJ2EhMhYmSw7qql27WJS+G4rUplToFi2rSv0NSrVvDU
+          pltQ8Lv6F8pXyxmFBSxiLSxglNC4uvXVKmAtusXy4YXGX1ixedEvXF1aX6t8adYnYCpC6
+          rW1ZzdZYlCCxKEv8vpbqdSsXl8v1jCQv0KEPxPTa/5rtWSF1dSgg4z4KjfIMNtgwWoWLE
+          sRhKxsSA9ji7V5LRPwtumeQ8V57UtFSPIUmtQdOQfseI2Ly1DMtk4Jl8n927w34zrWG6P
+          i4jzC82js/46Rt2IZoadWxOtMInS2xYmcu8mOw9PLYxQ4bdfFw3ZPf/g2pzSwZDhGrZAl
+          9lqky0W+yeanadC037xk496t0Dq3ctfmqmjgie8ln9k6Q0K1krb3dK9el4Xsu44LpGcen
+          r2eQZ1s1IhOhnE56WnXf0BLWn9Xz15fMkzi4kpVxiTKGEpffErEEMvEeMZhUl6yD1SdeJ
+          YbxzGNM3ak2TAaglLZlDCVnoM6wV5DRrycwF8Zh/fRsdmhkMfAO1duwknrsFwrzePWeMw
+          l107DWzymxdQwiSXx/lncnn75jL9mUzw2bUDqj20LTgtawxK2SlQg1CCZDQMgSpEqLjRM
+          sykM9zbSIUqil0zNk7Nu+b5J0DKZlhl9CtpGKgX5uyp0idoJ3we9bSrY7PupnUL5eWiDp
+          V5mmnNUhOnYi8xyClkLbNmAXyoWk7GaVrM2umkbpqHDzDymiKjetgzTocWNsJ2E0zPcfh
+          t46J4ipaXGCfF7fuO0a70c82bvqo3HceIcRlshgu73seO8BqlLIap2z5jTOY+T2ucCnBt
+          Atva3aHdchJg9AJ5YdKHz7LoA3VKmeqxAlFyEnQLBxB2PAhAZ8KvmuR6ELXws1Qr13Nd1
+          i4nsp189jqvaNzt+0nEnIaniuP1+/UOZdyfoZh57ku8sYHKdvfW/jYSUks+0rK+qtte+p
+          y8jWL9cOJ0fV8rrH/t+85/p1z2N67p/ZsZ3JmdyliL7lrNxZUlx0MVIl6PxXOUuGOeArW
+          3vuEvJ2beoh7SGyZKHKbR2bBWO1d49JDIcVM6lQtu9UO8ec8pOnXmkcponBPLNM2CwZ9k
+          NC/4ct6rQkPkQHMcV/8XckU4UJCy+VeTA==
+        '';
+      } ''
+        echo "$base64" | base64 -d | tar xj
+        mv good.pdf "$good"
+        mv bad.pdf "$bad"
+        touch "$out"
+      '';
+
+      cacheVal = let
+        urlHash = builtins.hashString "sha256" url;
+        timeSlice = builtins.currentTime / 600;
+      in "${urlHash}-${toString timeSlice}";
+
+    in {
+      success = import (runCommand "check-success" {
+        result = stdenv.mkDerivation {
+          name = "tryfetch-${cacheVal}";
+          inherit url;
+
+          outputHash = "d00bbe65d80f6d53d5c15da7c6b4f0a655c5a86a";
+          outputHashMode = "flat";
+          outputHashAlgo = "sha1";
+
+          nativeBuildInputs = [ curl ];
+          preferLocalBuild = true;
+
+          inherit (collisions) good bad;
+
+          buildCommand = ''
+            if SSL_CERT_FILE="${cacert}/etc/ssl/certs/ca-bundle.crt" \
+               curl -s -L -f -I "$url" > /dev/null; then
+              cp "$good" "$out"
+            else
+              cp "$bad" "$out"
+            fi
+          '';
+
+          impureEnvVars = lib.fetchers.proxyImpureEnvVars;
+        };
+        inherit (collisions) good;
+      } ''
+        if cmp -s "$result" "$good"; then
+          echo true > "$out"
+        else
+          echo false > "$out"
+        fi
+      '');
+      value = builtins.fetchurl url;
+    };
+
+    fetchLatest = channel: let
+      result = tryFetch (mkVerURL channel.version);
+    in if result.success then result.value else fetchLatest (channel // {
+      version = if channel.history != []
+                then (lib.head channel.history).version
+                else throw "Unfortunately there's no older version than " +
+                           "${channel.version} available for channel " +
+                           "${channel.channel} on ${channel.os}.";
+      history = lib.tail channel.history;
+    });
+
+    getHash = path: import (runCommand "gethash.nix" {
+      inherit path;
+      nativeBuildInputs = [ nix ];
+    } ''
+      sha256="$(nix-hash --flat --base32 --type sha256 "$path")"
+      echo "\"$sha256\"" > "$out"
+    '');
+
+    isLatest = channel: version: let
+      ourVersion = sources.${channel}.version or null;
+    in if ourVersion == null then false
+       else lib.versionOlder version sources.${channel}.version
+         || version == sources.${channel}.version;
+
+    # We only support GNU/Linux right now.
+    linuxChannels = let
+      genLatest = channelName: channel: let
+        newUpstream = {
+          inherit (channel) version;
+          sha256 = getHash (fetchLatest channel);
+        };
+        keepOld = let
+          oldChannel = sources.${channelName};
+        in {
+          inherit (oldChannel) version sha256;
+        } // lib.optionalAttrs (oldChannel ? sha256bin32) {
+          inherit (oldChannel) sha256bin32;
+        } // lib.optionalAttrs (oldChannel ? sha256bin64) {
+          inherit (oldChannel) sha256bin64;
+        };
+      in if isLatest channelName channel.version then keepOld else newUpstream;
+    in lib.mapAttrs genLatest channels.linux;
+
+    getLinuxFlash = channelName: channel: let
+      inherit (channel) version;
+      fetchArch = arch: tryFetch (getDebURL channelName version arch debURL);
+      packages = lib.genAttrs ["i386" "amd64"] fetchArch;
+      isNew = arch: attr: !(builtins.hasAttr attr channel)
+                       && packages.${arch}.success;
+    in channel // lib.optionalAttrs (isNew "i386" "sha256bin32") {
+      sha256bin32 = getHash (packages.i386.value);
+    } // lib.optionalAttrs (isNew "amd64" "sha256bin64") {
+      sha256bin64 = getHash (packages.amd64.value);
+    };
+
+    newChannels = lib.mapAttrs getLinuxFlash linuxChannels;
+
+    dumpAttrs = indent: attrs: let
+      mkVal = val: if lib.isAttrs val then dumpAttrs (indent + 1) val
+                   else "\"${lib.escape ["$" "\\" "\""] (toString val)}\"";
+      mkIndent = level: lib.concatStrings (builtins.genList (_: "  ") level);
+      mkAttr = key: val: "${mkIndent (indent + 1)}${key} = ${mkVal val};\n";
+      attrLines = lib.mapAttrsToList mkAttr attrs;
+    in "{\n" + (lib.concatStrings attrLines) + (mkIndent indent) + "}";
+  in writeText "chromium-new-upstream-info.nix" ''
+    # This file is autogenerated from update.sh in the same directory.
+    ${dumpAttrs 0 newChannels}
+  '';
+}
diff --git a/pkgs/applications/networking/browsers/ungoogled-chromium/update.sh b/pkgs/applications/networking/browsers/ungoogled-chromium/update.sh
new file mode 100755
index 000000000000..ea67a62c107a
--- /dev/null
+++ b/pkgs/applications/networking/browsers/ungoogled-chromium/update.sh
@@ -0,0 +1,4 @@
+#!/bin/sh -e
+cd "$(dirname "$0")"
+sp="$(nix-build --builders "" -Q --no-out-link update.nix -A update)"
+cat "$sp" > upstream-info.nix
diff --git a/pkgs/applications/networking/browsers/ungoogled-chromium/upstream-info.nix b/pkgs/applications/networking/browsers/ungoogled-chromium/upstream-info.nix
new file mode 100644
index 000000000000..77505b47d857
--- /dev/null
+++ b/pkgs/applications/networking/browsers/ungoogled-chromium/upstream-info.nix
@@ -0,0 +1,18 @@
+# This file is autogenerated from update.sh in the same directory.
+{
+  beta = {
+    sha256 = "1s16wl101yabq0l7w0q50lxkr2gn090pcaj6l5sj6g5xvi9lhgbf";
+    sha256bin64 = "0k6fsqlpiwp9vds83hb3cg9xf74hqgbfdm3ijyad2rmwc5rqk0ax";
+    version = "83.0.4103.14";
+  };
+  dev = {
+    sha256 = "0djppzwzpfyyfjb1mhy5wws2379m3wpzyk2x3kw5nd0mdz35hbny";
+    sha256bin64 = "1wg55qhfvd5zvigjl6496za81mh9b2c5da53zy07bk8wj91ly8pf";
+    version = "84.0.4115.5";
+  };
+  stable = {
+    sha256 = "0ahqh3vmzbpai4xwn7qybgw9phc8ssjdvfc7384mxqk9swqgv7qg";
+    sha256bin64 = "0gpgim244594m35qwf625blwdqgjbp4qr846wq75a9a9zqwqs05w";
+    version = "81.0.4044.122";
+  };
+}
diff --git a/pkgs/applications/networking/browsers/vimb/default.nix b/pkgs/applications/networking/browsers/vimb/default.nix
index 0a72099e653c..099d81c99f80 100644
--- a/pkgs/applications/networking/browsers/vimb/default.nix
+++ b/pkgs/applications/networking/browsers/vimb/default.nix
@@ -26,7 +26,7 @@ stdenv.mkDerivation rec {
       editor and also easily configurable during runtime. Vimb is mostly
       keyboard driven and does not detract you from your daily work.
     '';
-    homepage = https://fanglingsu.github.io/vimb/;
+    homepage = "https://fanglingsu.github.io/vimb/";
     license = stdenv.lib.licenses.gpl3;
     maintainers = [];
     platforms = with stdenv.lib.platforms; linux;
diff --git a/pkgs/applications/networking/browsers/vivaldi/default.nix b/pkgs/applications/networking/browsers/vivaldi/default.nix
index 70c93ee03e53..7a542a71d1e9 100644
--- a/pkgs/applications/networking/browsers/vivaldi/default.nix
+++ b/pkgs/applications/networking/browsers/vivaldi/default.nix
@@ -5,6 +5,7 @@
 , libuuid
 , gstreamer, gst-plugins-base, libxml2
 , glib, gtk3, pango, gdk-pixbuf, cairo, atk, at-spi2-atk, at-spi2-core, gnome2
+, libdrm, mesa
 , nss, nspr
 , patchelf, makeWrapper
 , isSnapshot ? false
@@ -17,11 +18,11 @@ let
   vivaldiName = if isSnapshot then "vivaldi-snapshot" else "vivaldi";
 in stdenv.mkDerivation rec {
   pname = "vivaldi";
-  version = "2.11.1811.44-1";
+  version = "2.11.1811.52-1";
 
   src = fetchurl {
     url = "https://downloads.vivaldi.com/${branch}/vivaldi-${branch}_${version}_amd64.deb";
-    sha256 = "1hzlcvbp056nzxdiig91rsm5f0s0cjqs0imlgn7822jadp9wwnwn";
+    sha256 = "0bq9ggk75xzka2nbrnc7vghq8s7jjy9nbfmyrf51kf0nni1zg1fp";
   };
 
   unpackPhase = ''
@@ -37,6 +38,7 @@ in stdenv.mkDerivation rec {
     atk at-spi2-atk at-spi2-core alsaLib dbus cups gtk3 gdk-pixbuf libexif ffmpeg systemd
     freetype fontconfig libXrender libuuid expat glib nss nspr
     gstreamer libxml2 gst-plugins-base pango cairo gnome2.GConf
+    libdrm mesa
   ] ++ stdenv.lib.optional proprietaryCodecs vivaldi-ffmpeg-codecs;
 
   libPath = stdenv.lib.makeLibraryPath buildInputs
diff --git a/pkgs/applications/networking/browsers/w3m/default.nix b/pkgs/applications/networking/browsers/w3m/default.nix
index 373fa43c72c3..a15d6844f56d 100644
--- a/pkgs/applications/networking/browsers/w3m/default.nix
+++ b/pkgs/applications/networking/browsers/w3m/default.nix
@@ -91,7 +91,7 @@ in stdenv.mkDerivation rec {
   LIBS = optionalString x11Support "-lX11";
 
   meta = {
-    homepage = http://w3m.sourceforge.net/;
+    homepage = "http://w3m.sourceforge.net/";
     description = "A text-mode web browser";
     maintainers = [ maintainers.cstrahan ];
     platforms = stdenv.lib.platforms.unix;
diff --git a/pkgs/applications/networking/browsers/webmacs/default.nix b/pkgs/applications/networking/browsers/webmacs/default.nix
index b86ba3c39f06..7dbb6a3c5388 100644
--- a/pkgs/applications/networking/browsers/webmacs/default.nix
+++ b/pkgs/applications/networking/browsers/webmacs/default.nix
@@ -65,8 +65,8 @@ mkDerivationWith python3Packages.buildPythonApplication rec {
 
       Based on QtWebEngine and Python 3. Fully customizable in Python.
     '';
-    homepage = https://webmacs.readthedocs.io/en/latest/;
-    changelog = https://github.com/parkouss/webmacs/blob/master/CHANGELOG.md;
+    homepage = "https://webmacs.readthedocs.io/en/latest/";
+    changelog = "https://github.com/parkouss/webmacs/blob/master/CHANGELOG.md";
     license = licenses.gpl3;
     maintainers = with maintainers; [ jacg ];
     platforms = platforms.all;
diff --git a/pkgs/applications/networking/c14/default.nix b/pkgs/applications/networking/c14/default.nix
index c000a37ff029..98d2f4aa81d6 100644
--- a/pkgs/applications/networking/c14/default.nix
+++ b/pkgs/applications/networking/c14/default.nix
@@ -17,7 +17,7 @@ buildGoPackage rec {
 
   meta = with stdenv.lib; {
     description = "C14 is designed for data archiving & long-term backups.";
-    homepage = https://www.online.net/en/storage/c14-cold-storage;
+    homepage = "https://www.online.net/en/storage/c14-cold-storage";
     license = licenses.mit;
     maintainers = with maintainers; [ apeyroux ];
   };
diff --git a/pkgs/applications/networking/calls/default.nix b/pkgs/applications/networking/calls/default.nix
index 71997ff8ffa7..18a9bc0f4225 100644
--- a/pkgs/applications/networking/calls/default.nix
+++ b/pkgs/applications/networking/calls/default.nix
@@ -22,14 +22,14 @@
 
 stdenv.mkDerivation rec {
   pname = "calls";
-  version = "0.1.2";
+  version = "0.1.4";
 
   src = fetchFromGitLab {
     domain = "source.puri.sm";
     owner = "Librem5";
     repo = "calls";
     rev = "v${version}";
-    sha256 = "105r631a0rva1k1fa50lravsfk5dd3f0k3gfc7lvpn2jkd99s1g6";
+    sha256 = "0715cap3w8gppxlfaynhiqvc2ss512xgykjcpqq8f5syz2776skh";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/applications/networking/cawbird/default.nix b/pkgs/applications/networking/cawbird/default.nix
index af8b7241659e..c9e6b6f6de09 100644
--- a/pkgs/applications/networking/cawbird/default.nix
+++ b/pkgs/applications/networking/cawbird/default.nix
@@ -20,14 +20,14 @@
 }:
 
 stdenv.mkDerivation rec {
-  version = "1.0.4";
+  version = "1.0.5";
   pname = "cawbird";
 
   src = fetchFromGitHub {
     owner = "IBBoard";
     repo = "cawbird";
     rev = "v${version}";
-    sha256 = "sha256:1gqi7bn08b9cjpb0mgs6bk1a2npdfhn56ckps95nck0jyqzfbnir";
+    sha256 = "sha256:0prrrkgmnm78sq2c6yvy86qb3lcl51d250q7gvmqili2ffnjmamf";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/applications/networking/charles/default.nix b/pkgs/applications/networking/charles/default.nix
index 4c1f7ea77492..11eb24ff7031 100644
--- a/pkgs/applications/networking/charles/default.nix
+++ b/pkgs/applications/networking/charles/default.nix
@@ -47,7 +47,7 @@ let
 
       meta = with stdenv.lib; {
         description = "Web Debugging Proxy";
-        homepage = https://www.charlesproxy.com/;
+        homepage = "https://www.charlesproxy.com/";
         maintainers = [ maintainers.kalbasit ];
         license = stdenv.lib.licenses.unfree;
         platforms = stdenv.lib.platforms.linux ++ stdenv.lib.platforms.darwin;
diff --git a/pkgs/applications/networking/cloudflared/default.nix b/pkgs/applications/networking/cloudflared/default.nix
index c5d6e45ac880..d441e539aaa6 100644
--- a/pkgs/applications/networking/cloudflared/default.nix
+++ b/pkgs/applications/networking/cloudflared/default.nix
@@ -2,13 +2,13 @@
 
 buildGoModule rec {
   pname = "cloudflared";
-  version = "2020.2.0";
+  version = "2020.2.1";
 
   src = fetchFromGitHub {
     owner  = "cloudflare";
     repo   = "cloudflared";
     rev    = version;
-    sha256 = "1fzndqkmfpx15fllxqxbh7n4m13ydlp50dvkdh8n384j09ndmx4r";
+    sha256 = "1wyvf4bilhiwabqgdwmnhifwc845m4g17pz7xmndzvqwmfd7riw5";
   };
 
   modSha256 = "1y5vh8g967rrm9b9hjlr70bs2rm09cpik673brgk3nzqxka10w7p";
diff --git a/pkgs/applications/networking/cluster/argo/default.nix b/pkgs/applications/networking/cluster/argo/default.nix
index 52da70bc8b86..891d153a09e1 100644
--- a/pkgs/applications/networking/cluster/argo/default.nix
+++ b/pkgs/applications/networking/cluster/argo/default.nix
@@ -19,13 +19,13 @@ let
 in
 buildGoModule rec {
   pname = "argo";
-  version = "2.6.0";
+  version = "2.6.1";
 
   src = fetchFromGitHub {
     owner = "argoproj";
     repo = "argo";
     rev = "v${version}";
-    sha256 = "0hlvsi706jwlf43mdwic6j7iriii4daxjr82qgi80ac4h4x0z3h2";
+    sha256 = "12wq79h4m8wlzf18r66965mbbjjb62kvnxdj50ra7nxa8jjxpsmf";
   };
 
   modSha256 = "1394bav1k1xv9n1rvji0j9a09mibk97xpha24640jkgmy9bnmg45";
@@ -41,7 +41,7 @@ buildGoModule rec {
 
   meta = with lib; {
     description = "Container native workflow engine for Kubernetes";
-    homepage = https://github.com/argoproj/argo;
+    homepage = "https://github.com/argoproj/argo";
     license = licenses.asl20;
     maintainers = with maintainers; [ groodt ];
     platforms = platforms.unix;
diff --git a/pkgs/applications/networking/cluster/atlantis/default.nix b/pkgs/applications/networking/cluster/atlantis/default.nix
index 67e91870f1a1..7d04595d3feb 100644
--- a/pkgs/applications/networking/cluster/atlantis/default.nix
+++ b/pkgs/applications/networking/cluster/atlantis/default.nix
@@ -2,21 +2,21 @@
 
 buildGoModule rec {
   pname = "atlantis";
-  version = "0.10.1";
+  version = "0.12.0";
 
   src = fetchFromGitHub {
     owner = "runatlantis";
     repo = "atlantis";
     rev = "v${version}";
-    sha256 = "08k2dgz6rph68647ah1rdp7hqa5h1ar4gdy7vdjy5kn7gz21gmri";
+    sha256 = "16zz4xwpqipdmszbz93xxw31hbh7s8pfa9dm64ybyni7wc4lvdy6";
   };
 
-  modSha256 = "1i4s3xcq2qc3zy00wk2l77935ilm6n5k1msilmdnj0061ia4860y";
+  modSha256 = "18f7cf61yn5jkji5a4v6xw6c7xl40nj32n5w34xmcmszzf64cwkn";
 
   subPackages = [ "." ];
 
   meta = with stdenv.lib; {
-    homepage = https://github.com/runatlantis/atlantis;
+    homepage = "https://github.com/runatlantis/atlantis";
     description = "Terraform Pull Request Automation";
     platforms = platforms.all;
     license = licenses.asl20;
diff --git a/pkgs/applications/networking/cluster/chronos/default.nix b/pkgs/applications/networking/cluster/chronos/default.nix
index 78be19cd81e5..e0cc780841bf 100644
--- a/pkgs/applications/networking/cluster/chronos/default.nix
+++ b/pkgs/applications/networking/cluster/chronos/default.nix
@@ -29,11 +29,11 @@ stdenv.mkDerivation rec {
   '';
 
   meta = with lib; {
-    homepage    = http://airbnb.github.io/chronos;
+    homepage    = "http://airbnb.github.io/chronos";
     license     = licenses.asl20;
     description = "Fault tolerant job scheduler for Mesos which handles dependencies and ISO8601 based schedules";
     maintainers = with maintainers; [ offline ];
     platforms   = platforms.unix;
-    broken = true; # doesn't build http://hydra.nixos.org/build/25768319
+    broken = true; # doesn't build https://hydra.nixos.org/build/25768319
   };
 }
diff --git a/pkgs/applications/networking/cluster/click/default.nix b/pkgs/applications/networking/cluster/click/default.nix
index ef90c0cde321..2c0e73fb30db 100644
--- a/pkgs/applications/networking/cluster/click/default.nix
+++ b/pkgs/applications/networking/cluster/click/default.nix
@@ -19,7 +19,7 @@ buildRustPackage rec {
 
   meta = with stdenv.lib; {
     description = ''The "Command Line Interactive Controller for Kubernetes"'';
-    homepage = https://github.com/databricks/click;
+    homepage = "https://github.com/databricks/click";
     license = [ licenses.asl20 ];
     maintainers = [ maintainers.mbode ];
     platforms = [ "x86_64-linux" "x86_64-darwin" ];
diff --git a/pkgs/applications/networking/cluster/cni/default.nix b/pkgs/applications/networking/cluster/cni/default.nix
index 88dbd177da04..49d3aaa298de 100644
--- a/pkgs/applications/networking/cluster/cni/default.nix
+++ b/pkgs/applications/networking/cluster/cni/default.nix
@@ -1,21 +1,22 @@
-{ stdenv, fetchFromGitHub, buildGoPackage }:
+{ lib, fetchFromGitHub, buildGoPackage }:
 
 buildGoPackage rec {
   pname = "cni";
-  version = "0.7.0";
+  version = "0.7.1";
 
   src = fetchFromGitHub {
     owner = "containernetworking";
     repo = pname;
     rev = "v${version}";
-    sha256 = "15ad323dw44k82bfx9r8w5q2kn7jix60p9v4ciyzx2p5pip36wp8";
+    sha256 = "02qn1br8164d99978acalisy1sx294g1axnii4yh1wji0fc735xz";
   };
 
   goPackagePath = "github.com/containernetworking/cni";
-  meta = with stdenv.lib; {
+
+  meta = with lib; {
     description = "Container Network Interface - networking for Linux containers";
     license = licenses.asl20;
-    homepage = https://github.com/containernetworking/cni;
+    homepage = "https://github.com/containernetworking/cni";
     maintainers = with maintainers; [ offline vdemeester ];
     platforms = [ "x86_64-linux" ];
   };
diff --git a/pkgs/applications/networking/cluster/cni/plugins-deps.nix b/pkgs/applications/networking/cluster/cni/plugins-deps.nix
deleted file mode 100644
index a6bbd333be43..000000000000
--- a/pkgs/applications/networking/cluster/cni/plugins-deps.nix
+++ /dev/null
@@ -1,210 +0,0 @@
-# file generated from go.mod using vgo2nix (https://github.com/adisbladis/vgo2nix)
-[
-  {
-    goPackagePath = "github.com/Microsoft/go-winio";
-    fetch = {
-      type = "git";
-      url = "https://github.com/Microsoft/go-winio";
-      rev = "v0.4.11";
-      sha256 = "14y1gryr3pb3zy09v2g8dh89m363rfd9sch0wgbabh531hfx72vn";
-    };
-  }
-  {
-    goPackagePath = "github.com/Microsoft/hcsshim";
-    fetch = {
-      type = "git";
-      url = "https://github.com/Microsoft/hcsshim";
-      rev = "v0.7.4";
-      sha256 = "0hky9p6xvkkx2jfkd4fy2d6iaikvlzalyw67gypyqyxygf2hsshg";
-    };
-  }
-  {
-    goPackagePath = "github.com/alexflint/go-filemutex";
-    fetch = {
-      type = "git";
-      url = "https://github.com/alexflint/go-filemutex";
-      rev = "72bdc8eae2ae";
-      sha256 = "082y6y9zv40q3kaqvsv6fyaw2fc42j0sn9z0dl9rbiz4szixj3c4";
-    };
-  }
-  {
-    goPackagePath = "github.com/buger/jsonparser";
-    fetch = {
-      type = "git";
-      url = "https://github.com/buger/jsonparser";
-      rev = "f4dd9f5a6b44";
-      sha256 = "12qa2n33s7yz88ywpr3k9kg3b4gm6rqgnv28iyikyxw8h5jascz5";
-    };
-  }
-  {
-    goPackagePath = "github.com/containernetworking/cni";
-    fetch = {
-      type = "git";
-      url = "https://github.com/containernetworking/cni";
-      rev = "v0.7.0";
-      sha256 = "15ad323dw44k82bfx9r8w5q2kn7jix60p9v4ciyzx2p5pip36wp8";
-    };
-  }
-  {
-    goPackagePath = "github.com/coreos/go-iptables";
-    fetch = {
-      type = "git";
-      url = "https://github.com/coreos/go-iptables";
-      rev = "v0.4.1";
-      sha256 = "0id1npqw3rd5rrkslf6i9yy6lpmd7l5qcglln38g85ylq7inysyi";
-    };
-  }
-  {
-    goPackagePath = "github.com/coreos/go-systemd";
-    fetch = {
-      type = "git";
-      url = "https://github.com/coreos/go-systemd";
-      rev = "39ca1b05acc7";
-      sha256 = "1kzqrrzqspa5qm7kwslxl3m16lqzns23c24rv474ajzwmj3ixmx1";
-    };
-  }
-  {
-    goPackagePath = "github.com/d2g/dhcp4";
-    fetch = {
-      type = "git";
-      url = "https://github.com/d2g/dhcp4";
-      rev = "f0e4d29ff023";
-      sha256 = "07gn9bjvnlfz2jv9wdq3gxxxm9lpwgrwk8z65072jdrz9rs9izpr";
-    };
-  }
-  {
-    goPackagePath = "github.com/d2g/dhcp4client";
-    fetch = {
-      type = "git";
-      url = "https://github.com/d2g/dhcp4client";
-      rev = "bed07e1bc5b8";
-      sha256 = "0kyjalv1kah7sk3i96abg71cgy5s9kzpff2zc7mwj69vicbj7mi3";
-    };
-  }
-  {
-    goPackagePath = "github.com/d2g/dhcp4server";
-    fetch = {
-      type = "git";
-      url = "https://github.com/d2g/dhcp4server";
-      rev = "477b11cea4dc";
-      sha256 = "010dpw6cxrsm6dm49w1q6qpz5xz3lbi5viz6wywxk49fxvnzmx9l";
-    };
-  }
-  {
-    goPackagePath = "github.com/godbus/dbus";
-    fetch = {
-      type = "git";
-      url = "https://github.com/godbus/dbus";
-      rev = "885f9cc04c9c";
-      sha256 = "0wjpaj4vr5lvpnwc5faf3qizd7zd2v9yq0fm0558wap1hiyqb8x8";
-    };
-  }
-  {
-    goPackagePath = "github.com/j-keck/arping";
-    fetch = {
-      type = "git";
-      url = "https://github.com/j-keck/arping";
-      rev = "2cf9dc699c56";
-      sha256 = "1bid8mpx3j4546ni0a6q5xyz7hb854g95qnxqmg5jzs9vrcird3c";
-    };
-  }
-  {
-    goPackagePath = "github.com/juju/errors";
-    fetch = {
-      type = "git";
-      url = "https://github.com/juju/errors";
-      rev = "22422dad46e1";
-      sha256 = "1766ys24y9qgngaqbx0g84lmh54b3369v8hk5fa1k8si2d34fxas";
-    };
-  }
-  {
-    goPackagePath = "github.com/mattn/go-shellwords";
-    fetch = {
-      type = "git";
-      url = "https://github.com/mattn/go-shellwords";
-      rev = "v1.0.3";
-      sha256 = "1pg7pl25wvpl2dbpyrv9p1r7prnqimxlf6136vn0dfm54j2x4mnr";
-    };
-  }
-  {
-    goPackagePath = "github.com/onsi/ginkgo";
-    fetch = {
-      type = "git";
-      url = "https://github.com/onsi/ginkgo";
-      rev = "7f8ab55aaf3b";
-      sha256 = "0nas6wqdym4jx42kw9wj80b58r69k9qhnvglz009lj34g5gba7rw";
-    };
-  }
-  {
-    goPackagePath = "github.com/onsi/gomega";
-    fetch = {
-      type = "git";
-      url = "https://github.com/onsi/gomega";
-      rev = "2152b45fa28a";
-      sha256 = "0amjlkawp84mmdqjgdamf93p1546cla6h4wwrx7hf5r862r2qcw2";
-    };
-  }
-  {
-    goPackagePath = "github.com/safchain/ethtool";
-    fetch = {
-      type = "git";
-      url = "https://github.com/safchain/ethtool";
-      rev = "42ed695e3de8";
-      sha256 = "0n5hkrzc1bh46nidcssx4539kvcmgj501v3kzh2pljpg27509daj";
-    };
-  }
-  {
-    goPackagePath = "github.com/sirupsen/logrus";
-    fetch = {
-      type = "git";
-      url = "https://github.com/sirupsen/logrus";
-      rev = "v1.0.6";
-      sha256 = "029irw2lsbqi944gdrbkwdw0m2794sqni4g21gsnmz142hbzds8c";
-    };
-  }
-  {
-    goPackagePath = "github.com/vishvananda/netlink";
-    fetch = {
-      type = "git";
-      url = "https://github.com/vishvananda/netlink";
-      rev = "023a6dafdcdf";
-      sha256 = "1i5q8r8rg7lxzvq2vhbf25lrkzdlgficfv0bxg9rf7cgg6z819sn";
-    };
-  }
-  {
-    goPackagePath = "github.com/vishvananda/netns";
-    fetch = {
-      type = "git";
-      url = "https://github.com/vishvananda/netns";
-      rev = "13995c7128cc";
-      sha256 = "1zk6w8158qi4niva5rijchbv9ixgmijsgqshh54wdaav4xrhjshn";
-    };
-  }
-  {
-    goPackagePath = "golang.org/x/crypto";
-    fetch = {
-      type = "git";
-      url = "https://go.googlesource.com/crypto";
-      rev = "7c1a557ab941";
-      sha256 = "1f1q9mby8m7ws3gbj90v0prhnf4g2sgf74azmw31kzwd6azlar3m";
-    };
-  }
-  {
-    goPackagePath = "golang.org/x/net";
-    fetch = {
-      type = "git";
-      url = "https://go.googlesource.com/net";
-      rev = "49bb7cea24b1";
-      sha256 = "111q4qm3hcjvzvyv9y5rz8ydnyg48rckcygxqy6gv63q618wz6gn";
-    };
-  }
-  {
-    goPackagePath = "golang.org/x/sys";
-    fetch = {
-      type = "git";
-      url = "https://go.googlesource.com/sys";
-      rev = "66b7b1311ac8";
-      sha256 = "00ny4r2bbj6rz939iy9g699acqydq7rfi6r6awn25w9i2dld9m13";
-    };
-  }
-]
diff --git a/pkgs/applications/networking/cluster/cni/plugins.nix b/pkgs/applications/networking/cluster/cni/plugins.nix
index 39c3b9f65072..d457ddd98bfe 100644
--- a/pkgs/applications/networking/cluster/cni/plugins.nix
+++ b/pkgs/applications/networking/cluster/cni/plugins.nix
@@ -1,24 +1,22 @@
-{ stdenv, lib, fetchFromGitHub, go, removeReferencesTo, buildGoPackage }:
+{ lib, fetchFromGitHub, buildGoPackage }:
+
 buildGoPackage rec {
   pname = "cni-plugins";
-  version = "0.8.4";
+  version = "0.8.5";
 
   src = fetchFromGitHub {
     owner = "containernetworking";
     repo = "plugins";
     rev = "v${version}";
-    sha256 = "02kz6y3klhbriybsskn4hmldwli28cycnp2klsm2x0y9c73iczdp";
+    sha256 = "17c8pvpn0dpda6ah7irr9hhd8sk7mnm32zv72nc5pxg1xvfpaipi";
   };
 
-  goDeps = ./plugins-deps.nix;
   goPackagePath = "github.com/containernetworking/plugins";
+
   subPackages = [
-    "plugins/meta/bandwidth"
-    "plugins/meta/firewall"
-    "plugins/meta/flannel"
-    "plugins/meta/portmap"
-    "plugins/meta/sbr"
-    "plugins/meta/tuning"
+    "plugins/ipam/dhcp"
+    "plugins/ipam/host-local"
+    "plugins/ipam/static"
     "plugins/main/bridge"
     "plugins/main/host-device"
     "plugins/main/ipvlan"
@@ -26,15 +24,19 @@ buildGoPackage rec {
     "plugins/main/macvlan"
     "plugins/main/ptp"
     "plugins/main/vlan"
-    "plugins/ipam/dhcp"
-    "plugins/ipam/host-local"
-    "plugins/ipam/static"
+    "plugins/meta/bandwidth"
+    "plugins/meta/firewall"
+    "plugins/meta/flannel"
+    "plugins/meta/portmap"
+    "plugins/meta/sbr"
+    "plugins/meta/tuning"
   ];
+
   meta = with lib; {
     description = "Some standard networking plugins, maintained by the CNI team";
-    homepage = https://github.com/containernetworking/plugins;
+    homepage = "https://github.com/containernetworking/plugins";
     license = licenses.asl20;
     platforms = platforms.linux;
-    maintainers = with maintainers; [ cstrahan saschagrunert ];
+    maintainers = with maintainers; [ cstrahan ] ++ teams.podman.members;
   };
 }
diff --git a/pkgs/applications/networking/cluster/docker-machine/default.nix b/pkgs/applications/networking/cluster/docker-machine/default.nix
index 115dc3835fc5..a801a1223744 100644
--- a/pkgs/applications/networking/cluster/docker-machine/default.nix
+++ b/pkgs/applications/networking/cluster/docker-machine/default.nix
@@ -1,5 +1,5 @@
 # This file was generated by go2nix.
-{ stdenv, buildGoPackage, fetchFromGitHub }:
+{ stdenv, buildGoPackage, fetchFromGitHub, installShellFiles }:
 
 buildGoPackage rec {
   pname = "machine";
@@ -14,17 +14,17 @@ buildGoPackage rec {
     sha256 = "0xxzxi5v7ji9j2k7kxhi0ah91lfa7b9rg3nywgx0lkv8dlgp8kmy";
   };
 
-  postInstall = ''
-    mkdir -p \
-      $bin/share/bash-completion/completions/ \
-      $bin/share/zsh/site-functions/
+  nativeBuildInputs = [ installShellFiles ];
 
-    cp go/src/github.com/docker/machine/contrib/completion/bash/* $bin/share/bash-completion/completions/
-    cp go/src/github.com/docker/machine/contrib/completion/zsh/* $bin/share/zsh/site-functions/
+  postInstall = ''
+    pushd go/src/${goPackagePath}/contrib/completion
+    installShellCompletion --bash bash/*
+    installShellCompletion --zsh zsh/*
+    popd
   '';
 
   meta = with stdenv.lib; {
-    homepage = https://docs.docker.com/machine/;
+    homepage = "https://docs.docker.com/machine/";
     description = "Docker Machine is a tool that lets you install Docker Engine on virtual hosts, and manage Docker Engine on the hosts.";
     license = licenses.asl20;
     maintainers = with maintainers; [ offline tailhook ];
diff --git a/pkgs/applications/networking/cluster/docker-machine/hyperkit.nix b/pkgs/applications/networking/cluster/docker-machine/hyperkit.nix
new file mode 100644
index 000000000000..ec5a79e9acee
--- /dev/null
+++ b/pkgs/applications/networking/cluster/docker-machine/hyperkit.nix
@@ -0,0 +1,23 @@
+{ lib, buildGoModule, minikube }:
+
+buildGoModule rec {
+  inherit (minikube) version src nativeBuildInputs buildInputs modSha256 commit;
+
+  pname = "docker-machine-hyperkit";
+
+  buildPhase = ''
+    make docker-machine-driver-hyperkit COMMIT=${commit}
+  '';
+
+  installPhase = ''
+    install out/docker-machine-driver-hyperkit -Dt $out/bin
+  '';
+
+  meta = with lib; {
+    homepage = "https://minikube.sigs.k8s.io/docs/drivers/hyperkit";
+    description = "HyperKit driver for docker-machine.";
+    license = licenses.asl20;
+    maintainers = with maintainers; [ atkinschang ];
+    platforms = platforms.darwin;
+  };
+}
diff --git a/pkgs/applications/networking/cluster/docker-machine/kvm.nix b/pkgs/applications/networking/cluster/docker-machine/kvm.nix
index de122dd2a5a2..9352ba69da88 100644
--- a/pkgs/applications/networking/cluster/docker-machine/kvm.nix
+++ b/pkgs/applications/networking/cluster/docker-machine/kvm.nix
@@ -19,7 +19,7 @@ buildGoPackage rec {
   buildInputs = [ libvirt ];
 
   meta = with stdenv.lib; {
-    homepage = https://github.com/dhiltgen/docker-machine-kvm;
+    homepage = "https://github.com/dhiltgen/docker-machine-kvm";
     description = "KVM driver for docker-machine.";
     license = licenses.asl20;
     maintainers = with maintainers; [ offline ];
diff --git a/pkgs/applications/networking/cluster/docker-machine/kvm2.nix b/pkgs/applications/networking/cluster/docker-machine/kvm2.nix
index eb2946cec771..6af1bf126b56 100644
--- a/pkgs/applications/networking/cluster/docker-machine/kvm2.nix
+++ b/pkgs/applications/networking/cluster/docker-machine/kvm2.nix
@@ -1,32 +1,27 @@
-{ stdenv, buildGoModule, libvirt, pkgconfig, minikube }:
+{ lib, buildGoModule, minikube }:
 
 buildGoModule rec {
-  pname = "docker-machine-kvm2";
-  version = minikube.version;
-
-  goPackagePath = "k8s.io/minikube";
-  subPackages = [ "cmd/drivers/kvm" ];
-
-  src = minikube.src;
+  inherit (minikube) version src nativeBuildInputs buildInputs modSha256 commit;
 
-  modSha256 = minikube.go-modules.outputHash;
+  pname = "docker-machine-kvm2";
 
-  nativeBuildInputs = [ pkgconfig ];
-  buildInputs = [ libvirt ];
+  postPatch = ''
+    sed -i '/GOARCH=$*/d' Makefile
+  '';
 
-  preBuild = ''
-    export buildFlagsArray=(-ldflags="-X k8s.io/minikube/pkg/drivers/kvm/version.VERSION=v${version}")
+  buildPhase = ''
+    make docker-machine-driver-kvm2 COMMIT=${commit}
   '';
 
-  postInstall = ''
-    mv $out/bin/kvm $out/bin/docker-machine-driver-kvm2
+  installPhase = ''
+    install out/docker-machine-driver-kvm2 -Dt $out/bin
   '';
 
-  meta = with stdenv.lib; {
-    homepage = https://github.com/kubernetes/minikube/blob/master/docs/drivers.md;
+  meta = with lib; {
+    homepage = "https://minikube.sigs.k8s.io/docs/drivers/kvm2";
     description = "KVM2 driver for docker-machine.";
     license = licenses.asl20;
-    maintainers = with maintainers; [ tadfisher ];
-    platforms = platforms.unix;
+    maintainers = with maintainers; [ tadfisher atkinschang ];
+    platforms = platforms.linux;
   };
 }
diff --git a/pkgs/applications/networking/cluster/docker-machine/xhyve.nix b/pkgs/applications/networking/cluster/docker-machine/xhyve.nix
index 1f1e59a56a4e..8c63a70b6d6e 100644
--- a/pkgs/applications/networking/cluster/docker-machine/xhyve.nix
+++ b/pkgs/applications/networking/cluster/docker-machine/xhyve.nix
@@ -30,7 +30,7 @@ buildGoPackage rec {
   buildInputs = [ Hypervisor vmnet ];
 
   meta = with stdenv.lib; {
-    homepage = https://github.com/machine-drivers/docker-machine-driver-xhyve;
+    homepage = "https://github.com/machine-drivers/docker-machine-driver-xhyve";
     description = "Xhyve driver for docker-machine.";
     license = licenses.bsd3;
     maintainers = with maintainers; [ periklis ];
diff --git a/pkgs/applications/networking/cluster/flink/default.nix b/pkgs/applications/networking/cluster/flink/default.nix
index f8c73c65991c..3d418f9a47fb 100644
--- a/pkgs/applications/networking/cluster/flink/default.nix
+++ b/pkgs/applications/networking/cluster/flink/default.nix
@@ -44,11 +44,11 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "A distributed stream processing framework";
-    homepage = https://flink.apache.org;
-    downloadPage = https://flink.apache.org/downloads.html;
+    homepage = "https://flink.apache.org";
+    downloadPage = "https://flink.apache.org/downloads.html";
     license = licenses.asl20;
     platforms = platforms.all;
     maintainers = with maintainers; [ mbode ];
-    repositories.git = git://git.apache.org/flink.git;
+    repositories.git = "git://git.apache.org/flink.git";
   };
 }
diff --git a/pkgs/applications/networking/cluster/fluxctl/default.nix b/pkgs/applications/networking/cluster/fluxctl/default.nix
index 16472b98fddc..10991d47cca9 100644
--- a/pkgs/applications/networking/cluster/fluxctl/default.nix
+++ b/pkgs/applications/networking/cluster/fluxctl/default.nix
@@ -2,19 +2,21 @@
 
 buildGoModule rec {
   pname = "fluxctl";
-  version = "1.17.1";
+  version = "1.19.0";
 
   src = fetchFromGitHub {
     owner = "weaveworks";
     repo = "flux";
     rev = version;
-    sha256 = "0kp4xk1b8vxajl3cl6any9gmf3412gsahm5fvkyaclnj20yvq807";
+    sha256 = "1w6ndp0nrpps6pkxnq38hikbnzwahi6j9gn8l0bxd0qkf7cjc5w0";
   };
 
-  modSha256 = "0fnlnavw4l3425c9nwjkd98xihrgxi9n5yc9yv15j5xzg47qnqav";
+  modSha256 = "0zwq7n1lggj27j5yxgfplbaccw5fhbm7vm0sja839r1jamrn3ips";
 
   subPackages = [ "cmd/fluxctl" ];
 
+  buildFlagsArray = [ "-ldflags=-s -w -X main.version=${version}" ];
+
   meta = with stdenv.lib; {
     description = "CLI client for Flux, the GitOps Kubernetes operator";
     homepage = "https://github.com/fluxcd/flux";
diff --git a/pkgs/applications/networking/cluster/habitat/default.nix b/pkgs/applications/networking/cluster/habitat/default.nix
index 31184bd68ff5..f2f3925fbe4d 100644
--- a/pkgs/applications/networking/cluster/habitat/default.nix
+++ b/pkgs/applications/networking/cluster/habitat/default.nix
@@ -1,27 +1,23 @@
-{ lib, fetchFromGitHub, rustPlatform, pkgconfig
-, libsodium, libarchive, openssl }:
+{ stdenv, fetchFromGitHub, rustPlatform, pkgconfig
+, libsodium, libarchive, openssl, zeromq }:
 
-with rustPlatform;
-
-buildRustPackage rec {
+rustPlatform.buildRustPackage rec {
   pname = "habitat";
-  version = "0.30.2";
+  # Newer versions required protobuf, which requires some finesse to get to
+  # compile with the vendored protobuf crate.
+  version = "0.90.6";
 
   src = fetchFromGitHub {
     owner = "habitat-sh";
     repo = "habitat";
     rev = version;
-    sha256 = "0pqrm85pd9hqn5fwqjbyyrrfh4k7q9mi9qy9hm8yigk5l8mw44y1";
+    sha256 = "0rwi0lkmhlq4i8fba3s9nd9ajhz2dqxzkgfp5i8y0rvbfmhmfd6b";
   };
 
-  # Delete this on next update; see #79975 for details
-  legacyCargoFetcher = true;
-
-  cargoSha256 = "1ahfm5agvabqqqgjsyjb95xxbc7mng1mdyclcakwp1m1qdkxx9p0";
-
-  buildInputs = [ libsodium libarchive openssl ];
+  cargoSha256 = "08sncz0jgsr2s821j3s4bk7d54xqwmnld7m57avavym1xqvsnbmy";
 
   nativeBuildInputs = [ pkgconfig ];
+  buildInputs = [ libsodium libarchive openssl zeromq ];
 
   cargoBuildFlags = ["--package hab"];
 
@@ -32,12 +28,11 @@ buildRustPackage rec {
     runHook postCheck
   '';
 
-  meta = with lib; {
+  meta = with stdenv.lib; {
     description = "An application automation framework";
-    homepage = https://www.habitat.sh;
+    homepage = "https://www.habitat.sh";
     license = licenses.asl20;
-    maintainers = [ maintainers.rushmorem ];
-    platforms = [ "x86_64-linux" "x86_64-darwin" ];
-    broken = true; # mark temporary as broken due git dependencies
+    maintainers = with maintainers; [ rushmorem ];
+    platforms = [ "x86_64-linux" ];
   };
 }
diff --git a/pkgs/applications/networking/cluster/helm/default.nix b/pkgs/applications/networking/cluster/helm/default.nix
index 12e20e9c13b4..deb6d75f12c5 100644
--- a/pkgs/applications/networking/cluster/helm/default.nix
+++ b/pkgs/applications/networking/cluster/helm/default.nix
@@ -2,15 +2,15 @@
 
 buildGoModule rec {
   pname = "helm";
-  version = "3.1.1";
+  version = "3.2.0";
 
   src = fetchFromGitHub {
     owner = "helm";
     repo = "helm";
     rev = "v${version}";
-    sha256 = "16hbwmgq14g28r9s0ipnpiqlppyh57yrcqcspmj05vrf9jsg5vwj";
+    sha256 = "1x05xnc3czk7vpn9qnfdavdjy5agv800nh7jyqczpiw125l9jfyd";
   };
-  modSha256 = "0618zzi4x37ahsrazsr82anghhfva8yaryzb3p5d737p3ixbiyv8";
+  modSha256 = "000knqwsajlqika4abp3fh721mn1vykcsnv3c1qw0mzffkmzwsqd";
 
   subPackages = [ "cmd/helm" ];
   buildFlagsArray = [ "-ldflags=-w -s -X helm.sh/helm/v3/internal/version.version=v${version}" ];
@@ -23,7 +23,7 @@ buildGoModule rec {
   '';
 
   meta = with stdenv.lib; {
-    homepage = https://github.com/kubernetes/helm;
+    homepage = "https://github.com/kubernetes/helm";
     description = "A package manager for kubernetes";
     license = licenses.asl20;
     maintainers = with maintainers; [ rlupton20 edude03 saschagrunert Frostman ];
diff --git a/pkgs/applications/networking/cluster/helmfile/default.nix b/pkgs/applications/networking/cluster/helmfile/default.nix
index 6decad2f9fbe..628ae10f11b7 100644
--- a/pkgs/applications/networking/cluster/helmfile/default.nix
+++ b/pkgs/applications/networking/cluster/helmfile/default.nix
@@ -1,6 +1,6 @@
 { lib, buildGoModule, fetchFromGitHub, makeWrapper, kubernetes-helm, ... }:
 
-let version = "0.85.0"; in
+let version = "0.114.0"; in
 
 buildGoModule {
   pname = "helmfile";
@@ -10,12 +10,12 @@ buildGoModule {
     owner = "roboll";
     repo = "helmfile";
     rev = "v${version}";
-    sha256 = "0k1019ddzhhl8kn70ibqf6srlfv92jkc26m78pic5c7ibqyq5fds";
+    sha256 = "0486wcfizi8xljr29mznc4p11ggz4rvk5n53qvb30f7ry4ncc8n5";
   };
 
   goPackagePath = "github.com/roboll/helmfile";
 
-  modSha256 = "1npjm3rs32c1rwx8xb9s03jhd156da6p66hpaqccm7b6zxsm32nv";
+  modSha256 = "0j7w12rrnsv2h5v0bqh6sjq9anm51zs0p3nzlhwsksw9c98r9avk";
 
   nativeBuildInputs = [ makeWrapper ];
 
@@ -31,7 +31,7 @@ buildGoModule {
 
   meta = {
     description = "Deploy Kubernetes Helm charts";
-    homepage = https://github.com/roboll/helmfile;
+    homepage = "https://github.com/roboll/helmfile";
     license = lib.licenses.mit;
     maintainers = with lib.maintainers; [ pneumaticat yurrriq ];
     platforms = lib.platforms.unix;
diff --git a/pkgs/applications/networking/cluster/heptio-ark/default.nix b/pkgs/applications/networking/cluster/heptio-ark/default.nix
index b9413577b104..aa86dcbeb241 100644
--- a/pkgs/applications/networking/cluster/heptio-ark/default.nix
+++ b/pkgs/applications/networking/cluster/heptio-ark/default.nix
@@ -13,11 +13,11 @@ buildGoPackage rec {
     sha256 = "18h9hvp95va0hyl268gnzciwy1dqmc57bpifbj885870rdfp0ffv";
   };
 
-  postInstall = "rm $bin/bin/issue-template-gen";
+  excludedPackages = [ "issue-template-gen" ];
 
   meta = with stdenv.lib; {
     description = "A utility for managing disaster recovery, specifically for your Kubernetes cluster resources and persistent volumes";
-    homepage = https://heptio.github.io/ark/;
+    homepage = "https://heptio.github.io/ark/";
     license = licenses.asl20;
     maintainers = [maintainers.mbode];
     platforms = platforms.unix;
diff --git a/pkgs/applications/networking/cluster/hetzner-kube/default.nix b/pkgs/applications/networking/cluster/hetzner-kube/default.nix
index 4de0c3fbd7b6..1d9940c8f318 100644
--- a/pkgs/applications/networking/cluster/hetzner-kube/default.nix
+++ b/pkgs/applications/networking/cluster/hetzner-kube/default.nix
@@ -2,16 +2,16 @@
 
 buildGoModule rec {
   pname = "hetzner-kube";
-  version = "0.4.1";
+  version = "0.5.1";
 
   src = fetchFromGitHub {
     owner = "xetys";
     repo = "hetzner-kube";
     rev = version;
-    sha256 = "11202i3340vaz8xh59gwj5x0djcgbzq9jfy2214lcpml71qc85f0";
+    sha256 = "1iqgpmljqx6rhmvsir2675waj78amcfiw08knwvlmavjgpxx2ysw";
   };
 
-  modSha256 = "1j04xyjkz7jcqrs5p5z94jqagrzcxjr9m3lyp8i91c0ymxf5m2g3";
+  modSha256 = "0jjrk93wdi13wrb5gchhqk7rgwm74kcizrbqsibgkgs2dszwfazh";
 
   buildFlagsArray = ''
     -ldflags=
@@ -20,7 +20,7 @@ buildGoModule rec {
 
   meta = {
     description = "A CLI tool for provisioning Kubernetes clusters on Hetzner Cloud";
-    homepage = https://github.com/xetys/hetzner-kube;
+    homepage = "https://github.com/xetys/hetzner-kube";
     license = lib.licenses.asl20;
     maintainers = with lib.maintainers; [ eliasp ];
     platforms = lib.platforms.unix;
diff --git a/pkgs/applications/networking/cluster/jx/default.nix b/pkgs/applications/networking/cluster/jx/default.nix
index 88aa8777ee5e..e2c0b663befa 100644
--- a/pkgs/applications/networking/cluster/jx/default.nix
+++ b/pkgs/applications/networking/cluster/jx/default.nix
@@ -28,7 +28,7 @@ buildGoModule rec {
 
   meta = with lib; {
     description = "JX is a command line tool for installing and using Jenkins X.";
-    homepage = https://jenkins-x.io;
+    homepage = "https://jenkins-x.io";
     longDescription = ''
       Jenkins X provides automated CI+CD for Kubernetes with Preview
       Environments on Pull Requests using Jenkins, Knative Build, Prow,
diff --git a/pkgs/applications/networking/cluster/k3s/default.nix b/pkgs/applications/networking/cluster/k3s/default.nix
new file mode 100644
index 000000000000..134684f0639a
--- /dev/null
+++ b/pkgs/applications/networking/cluster/k3s/default.nix
@@ -0,0 +1,235 @@
+{ stdenv, lib, makeWrapper, socat, iptables, iproute, bridge-utils
+, conntrack-tools, buildGoPackage, git, runc, libseccomp, pkgconfig
+, ethtool, utillinux, ipset, fetchFromGitHub, fetchurl, fetchzip
+, fetchgit
+}:
+
+with lib;
+
+# k3s is a kinda weird derivation. One of the main points of k3s is the
+# simplicity of it being one binary that can perform several tasks.
+# However, when you have a good package manager (like nix), that doesn't
+# actually make much of a difference; you don't really care if it's one binary
+# or 10 since with a good package manager, installing and running it is
+# identical.
+# Since upstream k3s packages itself as one large binary with several
+# "personalities" (in the form of subcommands like 'k3s agent' and 'k3s
+# kubectl'), it ends up being easiest to mostly mimic upstream packaging, with
+# some exceptions.
+# K3s also carries patches to some packages (such as containerd and cni
+# plugins), so we intentionally use the k3s versions of those binaries for k3s,
+# even if the upstream version of those binaries exist in nixpkgs already. In
+# the end, that means we have a thick k3s binary that behaves like the upstream
+# one for the most part.
+# However, k3s also bundles several pieces of unpatched software, from the
+# strongswan vpn software, to iptables, to socat, conntrack, busybox, etc.
+# Those pieces of software we entirely ignore upstream's handling of, and just
+# make sure they're in the path if desired.
+let
+  k3sVersion = "1.17.3+k3s1";     # k3s git tag
+  traefikChartVersion = "1.81.0"; # taken from ./scripts/version.sh at the above k3s tag
+  k3sRootVersion = "0.3.0";       # taken from .s/cripts/version.sh at the above k3s tag
+  # bundled into the k3s binary
+  traefikChart = fetchurl {
+    url = "https://kubernetes-charts.storage.googleapis.com/traefik-${traefikChartVersion}.tgz";
+    sha256 = "1aqpzgjlvqhil0g3angz94zd4xbl4iq0qmpjcy5aq1xv9qciwdi9";
+  };
+  # so, k3s is a complicated thing to package
+  # This derivation attempts to avoid including any random binaries from the
+  # internet. k3s-root is _mostly_ binaries built to be bundled in k3s (which
+  # we don't care about doing, we can add those as build or runtime
+  # dependencies using a real package manager).
+  # In addition to those binaries, it's also configuration though (right now
+  # mostly strongswan configuration), and k3s does use those files.
+  # As such, we download it in order to grab 'etc' and bundle it into the final
+  # k3s binary.
+  k3sRoot = fetchzip {
+    # Note: marked as apache 2.0 license
+    url = "https://github.com/rancher/k3s-root/releases/download/v${k3sRootVersion}/k3s-root-amd64.tar";
+    sha256 = "12xafn5jivl8lqdcs25b28xrc4mf7yf1xif5np169nvvxgvmpdxp";
+    stripRoot=false;
+  };
+  k3sPlugins = buildGoPackage rec {
+    name = "k3s-cni-plugins";
+    version = "0.7.6-k3s1"; # from ./scripts/version.sh 'VERSION_CNIPLUGINS'; update when k3s's repo is updated.
+
+    goPackagePath = "github.com/containernetworking/plugins";
+    subPackages = [ "." ];
+
+    src = fetchFromGitHub {
+      owner = "rancher";
+      repo = "plugins";
+      rev = "v${version}";
+      sha256 = "0ax72z1ziann352bp6khfds8vlf3bbkqckrkpx4l4jxgqks45izs";
+    };
+
+    meta = {
+      description = "CNI plugins, as patched by rancher for k3s";
+      license = licenses.asl20;
+      homepage = "https://k3s.io";
+      maintainers = [ maintainers.euank ];
+      platforms = platforms.linux;
+    };
+  };
+  # Grab this separately from a build because it's used by both stages of the
+  # k3s build.
+  k3sRepo = fetchgit {
+    url = "https://github.com/rancher/k3s";
+    rev = "v${k3sVersion}";
+    leaveDotGit = true; # ./scripts/version.sh depends on git
+    sha256 = "0qahyc0mf9glxj49va6d20mcncqg4svfic2iz8b1lqid5c4g68mm";
+  };
+  # Stage 1 of the k3s build:
+  # Let's talk about how k3s is structured.
+  # One of the ideas of k3s is that there's the single "k3s" binary which can
+  # do everything you need, from running a k3s server, to being a worker node,
+  # to running kubectl.
+  # The way that actually works is that k3s is a single go binary that contains
+  # a bunch of bindata that it unpacks at runtime into directories (either the
+  # user's home directory or /var/lib/rancher if run as root).
+  # This bindata includes both binaries and configuration.
+  # In order to let nixpkgs do all its autostripping/patching/etc, we split this into two derivations.
+  # First, we build all the binaries that get packed into the thick k3s binary
+  # (and output them from one derivation so they'll all be suitably patched up).
+  # Then, we bundle those binaries into our thick k3s binary and use that as
+  # the final single output.
+  # This approach was chosen because it ensures the bundled binaries all are
+  # correctly built to run with nix (we can lean on the existing buildGoPackage
+  # stuff), and we can again lean on that tooling for the final k3s binary too.
+  # Other alternatives would be to manually run the
+  # strip/patchelf/remove-references step ourselves in the installPhase of the
+  # derivation when we've built all the binaries, but haven't bundled them in
+  # with generated bindata yet.
+  k3sBuildStage1 = buildGoPackage rec {
+    name = "k3s-build-1";
+    version = "${k3sVersion}";
+
+    goPackagePath = "github.com/rancher/k3s";
+
+    src = k3sRepo;
+
+    patches = [ ./patches/00-k3s.patch ];
+
+    nativeBuildInputs = [ git pkgconfig ];
+    buildInputs = [ libseccomp ];
+
+    buildPhase = ''
+      pushd go/src/${goPackagePath}
+
+      patchShebangs ./scripts/build ./scripts/version.sh
+      mkdir -p bin
+      ./scripts/build
+
+      popd
+    '';
+
+    installPhase = ''
+      pushd go/src/${goPackagePath}
+
+      mkdir -p "$out/bin"
+      install -m 0755 -t "$out/bin" ./bin/*
+
+      popd
+    '';
+
+    meta = {
+      description = "The various binaries that get packaged into the final k3s binary.";
+      license = licenses.asl20;
+      homepage = "https://k3s.io";
+      maintainers = [ maintainers.euank ];
+      platforms = platforms.linux;
+    };
+  };
+  k3sBuild = buildGoPackage rec {
+    name = "k3s-build";
+    version = "${k3sVersion}";
+
+    goPackagePath = "github.com/rancher/k3s";
+
+    src = k3sRepo;
+
+    patches = [ ./patches/00-k3s.patch ];
+
+    nativeBuildInputs = [ git pkgconfig ];
+    buildInputs = [ k3sBuildStage1 k3sPlugins runc ];
+
+    # In order to build the thick k3s binary (which is what
+    # ./scripts/package-cli does), we need to get all the binaries that script
+    # expects in place.
+    buildPhase = ''
+      pushd go/src/${goPackagePath}
+
+      patchShebangs ./scripts/build ./scripts/version.sh ./scripts/package-cli
+
+      mkdir -p bin
+
+      install -m 0755 -t ./bin ${k3sBuildStage1}/bin/*
+      install -m 0755 -T "${k3sPlugins}/bin/plugins" ./bin/cni
+      # Note: use the already-nixpkgs-bundled k3s rather than the one bundled
+      # in k3s because the k3s one is completely unmodified from upstream
+      # (unlike containerd, cni, etc)
+      install -m 0755 -T "${runc}/bin/runc" ./bin/runc
+      cp -R "${k3sRoot}/etc" ./etc
+      mkdir -p "build/static/charts"
+      cp "${traefikChart}" "build/static/charts/traefik-${traefikChartVersion}.tgz"
+
+      ./scripts/package-cli
+
+      popd
+    '';
+
+    installPhase = ''
+      pushd go/src/${goPackagePath}
+
+      mkdir -p "$out/bin"
+      install -m 0755 -t "$out/bin" ./dist/artifacts/k3s
+
+      popd
+    '';
+
+    meta = {
+      description = "The k3s go binary which is used by the final wrapped output below.";
+      license = licenses.asl20;
+      homepage = "https://k3s.io";
+      maintainers = [ maintainers.euank ];
+      platforms = platforms.linux;
+    };
+  };
+in
+stdenv.mkDerivation rec {
+  name = "k3s";
+
+  # Important utilities used by  the kubelet, see
+  # https://github.com/kubernetes/kubernetes/issues/26093#issuecomment-237202494
+  # Note the list in that issue is stale and some aren't relevant for k3s.
+  k3sRuntimeDeps = [ 
+    socat iptables iproute bridge-utils ethtool utillinux ipset conntrack-tools
+  ];
+
+  buildInputs = [ 
+    k3sBuild makeWrapper
+  ] ++ k3sRuntimeDeps;
+
+  unpackPhase = "true";
+
+  # And, one final derivation (you thought the last one was it, right?)
+  # We got the binary we wanted above, but it doesn't have all the runtime
+  # dependencies k8s wants, including mount utilities for kubelet, networking
+  # tools for cni/kubelet stuff, etc
+  # Use a wrapper script to reference all the binaries that k3s tries to
+  # execute, but that we didn't bundle with it.
+  installPhase = ''
+    mkdir -p "$out/bin"
+    makeWrapper ${k3sBuild}/bin/k3s "$out/bin/k3s" \
+      --prefix PATH : ${lib.makeBinPath k3sRuntimeDeps} \
+      --prefix PATH : "$out/bin"
+  '';
+
+    meta = {
+      description = "A lightweight Kubernetes distribution.";
+      license = licenses.asl20;
+      homepage = "https://k3s.io";
+      maintainers = [ maintainers.euank ];
+      platforms = platforms.linux;
+    };
+}
diff --git a/pkgs/applications/networking/cluster/k3s/patches/00-k3s.patch b/pkgs/applications/networking/cluster/k3s/patches/00-k3s.patch
new file mode 100644
index 000000000000..afe2c356aa4d
--- /dev/null
+++ b/pkgs/applications/networking/cluster/k3s/patches/00-k3s.patch
@@ -0,0 +1,74 @@
+diff --git a/main.go b/main.go
+index 62908bb7bb..0527222887 100644
+--- a/main.go
++++ b/main.go
+@@ -1,5 +1,5 @@
+ //go:generate go run pkg/codegen/cleanup/main.go
+-//go:generate /bin/rm -rf pkg/generated
++//go:generate rm -rf pkg/generated
+ //go:generate go run pkg/codegen/main.go
+ //go:generate go fmt pkg/deploy/zz_generated_bindata.go
+ //go:generate go fmt pkg/static/zz_generated_bindata.go
+diff --git a/scripts/build b/scripts/build
+index 72d3c07ece..3e5455b262 100755
+--- a/scripts/build
++++ b/scripts/build
+@@ -10,7 +10,8 @@ PKG_CONTAINERD="github.com/containerd/containerd"
+ PKG_RANCHER_CONTAINERD="github.com/rancher/containerd"
+ PKG_CRICTL="github.com/kubernetes-sigs/cri-tools"
+ 
+-buildDate=$(date -u '+%Y-%m-%dT%H:%M:%SZ')
++# Deterministic build date
++buildDate="$(date -d "$(git log -1 --format=%ai)" -u "+%Y-%m-%dT%H:%M:%SZ")"
+ 
+ VENDOR_PREFIX="${PKG}/vendor/"
+ VERSIONFLAGS="
+@@ -82,17 +83,7 @@ cleanup() {
+ }
+ 
+ INSTALLBIN=$(pwd)/bin
+-if [ ! -x ${INSTALLBIN}/cni ]; then
+-(
+-    echo Building cni
+-    TMPDIR=$(mktemp -d)
+-    trap cleanup EXIT
+-    WORKDIR=$TMPDIR/src/github.com/containernetworking/plugins
+-    git clone -b $VERSION_CNIPLUGINS https://github.com/rancher/plugins.git $WORKDIR
+-    cd $WORKDIR
+-    GOPATH=$TMPDIR CGO_ENABLED=0 go build -tags "$TAGS" -ldflags "$LDFLAGS $STATIC" -o $INSTALLBIN/cni
+-)
+-fi
++# skip building cni, use our separately built one
+ # echo Building agent
+ # CGO_ENABLED=1 go build -tags "$TAGS" -ldflags "$VERSIONFLAGS $LDFLAGS $STATIC" -o bin/k3s-agent ./cmd/agent/main.go
+ echo Building server
+@@ -108,9 +99,8 @@ ln -s containerd ./bin/ctr
+ #CGO_ENABLED=1 go build -tags "$TAGS" -ldflags "$VERSIONFLAGS $LDFLAGS $STATIC_SQLITE" -o bin/ctr ./cmd/ctr/main.go
+ # echo Building containerd
+ # CGO_ENABLED=0 go build -tags "$TAGS" -ldflags "$VERSIONFLAGS $LDFLAGS $STATIC" -o bin/containerd ./cmd/containerd/
+-echo Building runc
+-make EXTRA_LDFLAGS="-w -s" BUILDTAGS="apparmor seccomp" -C ./vendor/github.com/opencontainers/runc static
+-cp -f ./vendor/github.com/opencontainers/runc/runc ./bin/runc
++
++# skip building runc; use our packaged one
+ 
+ echo Building containerd-shim
+ make -C ./vendor/github.com/containerd/containerd bin/containerd-shim
+diff --git a/scripts/package-cli b/scripts/package-cli
+index 4c66ce32df..6d1e0c03cb 100755
+--- a/scripts/package-cli
++++ b/scripts/package-cli
+@@ -55,10 +55,10 @@ LDFLAGS="
+     -X github.com/rancher/k3s/pkg/version.GitCommit=${COMMIT:0:8}
+     -w -s
+ "
+-STATIC="-extldflags '-static'"
+ if [ "$DQLITE" = "true" ]; then
+     DQLITE_TAGS="dqlite"
+ fi
+-CGO_ENABLED=0 go build -tags "$DQLITE_TAGS" -ldflags "$LDFLAGS $STATIC" -o ${CMD_NAME} ./cmd/k3s/main.go
++go build -tags "$DQLITE_TAGS" -ldflags "$LDFLAGS" -o ${CMD_NAME} ./cmd/k3s/main.go
+ 
+-./scripts/build-upload ${CMD_NAME} ${COMMIT}
++# for nixos, don't upload it
++# ./scripts/build-upload ${CMD_NAME} ${COMMIT}
diff --git a/pkgs/applications/networking/cluster/k9s/default.nix b/pkgs/applications/networking/cluster/k9s/default.nix
index 40acd423925f..a51d1afb3674 100644
--- a/pkgs/applications/networking/cluster/k9s/default.nix
+++ b/pkgs/applications/networking/cluster/k9s/default.nix
@@ -2,29 +2,27 @@
 
 buildGoModule rec {
   pname = "k9s";
-  version = "0.13.8";
-  # rev is the release commit, mainly for version command output
-  rev = "8fedc42304ce33df314664eb0c4ac73be59065af";
+  version = "0.19.4";
 
   src = fetchFromGitHub {
     owner  = "derailed";
     repo   = "k9s";
     rev    = "v${version}";
-    sha256 = "0xkxvgqzzhz5bhbqwgyw9w238kadqccr1fbvrxjcjr32xlbs56z2";
+    sha256 = "1ya3lrw31pxd1rxzf88l5hzilaxwrng1a3ibawgn57my333hrmf6";
   };
 
   buildFlagsArray = ''
     -ldflags=
       -s -w
       -X github.com/derailed/k9s/cmd.version=${version}
-      -X github.com/derailed/k9s/cmd.commit=${rev}
+      -X github.com/derailed/k9s/cmd.commit=${src.rev}
   '';
 
-  modSha256 = "04k1wfhyignxy84pvq09fxvvk7pxdswbrzxvxc50dz8n8y7wcnjf";
+  modSha256 = "11jxyzajlk6b5j19sg1kjr7qdzpxkwjwrvyhx9mwy6jb5sgqbzv8";
 
   meta = with stdenv.lib; {
     description = "Kubernetes CLI To Manage Your Clusters In Style.";
-    homepage = https://github.com/derailed/k9s;
+    homepage = "https://github.com/derailed/k9s";
     license = licenses.asl20;
     maintainers = with maintainers; [ Gonzih ];
   };
diff --git a/pkgs/applications/networking/cluster/kanif/default.nix b/pkgs/applications/networking/cluster/kanif/default.nix
index 52abc3189903..ebf98840ee2b 100644
--- a/pkgs/applications/networking/cluster/kanif/default.nix
+++ b/pkgs/applications/networking/cluster/kanif/default.nix
@@ -25,7 +25,7 @@ stdenv.mkDerivation rec {
       directories to several nodes ('kaput' command), and to gather several
       remote files or directories locally ('kaget' command). It relies on TakTuk
       for efficiency and scalability.'';
-    homepage = http://taktuk.gforge.inria.fr/kanif;
+    homepage = "http://taktuk.gforge.inria.fr/kanif";
     license = stdenv.lib.licenses.gpl2;
     maintainers = [ stdenv.lib.maintainers.bzizou ];
     platforms = stdenv.lib.platforms.linux;
diff --git a/pkgs/applications/networking/cluster/kompose/default.nix b/pkgs/applications/networking/cluster/kompose/default.nix
index 09a69f4b80e2..c01e1c8c0041 100644
--- a/pkgs/applications/networking/cluster/kompose/default.nix
+++ b/pkgs/applications/networking/cluster/kompose/default.nix
@@ -15,9 +15,10 @@ buildGoPackage rec {
 
   nativeBuildInputs = [ installShellFiles ];
   postInstall = ''
-    $bin/bin/kompose completion bash > kompose.bash
-    $bin/bin/kompose completion zsh > kompose.zsh
-    installShellCompletion kompose.{bash,zsh}
+    for shell in bash zsh; do
+      $out/bin/kompose completion $shell > kompose.$shell
+      installShellCompletion kompose.$shell
+    done
   '';
 
   meta = with lib; {
diff --git a/pkgs/applications/networking/cluster/kontemplate/default.nix b/pkgs/applications/networking/cluster/kontemplate/default.nix
index 359b289dbbcd..87ae71f6a48d 100644
--- a/pkgs/applications/networking/cluster/kontemplate/default.nix
+++ b/pkgs/applications/networking/cluster/kontemplate/default.nix
@@ -20,7 +20,7 @@ buildGoPackage rec {
     license          = licenses.gpl3;
     maintainers      = with maintainers; [ mbode tazjin ];
     platforms        = platforms.unix;
-    repositories.git = git://github.com/tazjin/kontemplate.git;
+    repositories.git = "git://github.com/tazjin/kontemplate.git";
 
     longDescription = ''
       Kontemplate is a simple CLI tool that can take sets of
diff --git a/pkgs/applications/networking/cluster/kops/default.nix b/pkgs/applications/networking/cluster/kops/default.nix
index 595cfae2e697..027809c61e5b 100644
--- a/pkgs/applications/networking/cluster/kops/default.nix
+++ b/pkgs/applications/networking/cluster/kops/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, lib, buildGoPackage, fetchFromGitHub, go-bindata }:
+{ stdenv, lib, buildGoPackage, fetchFromGitHub, go-bindata, installShellFiles }:
 
 let
   goPackagePath = "k8s.io/kops";
@@ -18,8 +18,8 @@ let
           inherit sha256;
         };
 
-        buildInputs = [go-bindata];
-        subPackages = ["cmd/kops"];
+        nativeBuildInputs = [ go-bindata installShellFiles ];
+        subPackages = [ "cmd/kops" ];
 
         buildFlagsArray = ''
           -ldflags=
@@ -33,17 +33,17 @@ let
         '';
 
         postInstall = ''
-          mkdir -p $bin/share/bash-completion/completions
-          mkdir -p $bin/share/zsh/site-functions
-          $bin/bin/kops completion bash > $bin/share/bash-completion/completions/kops
-          $bin/bin/kops completion zsh > $bin/share/zsh/site-functions/_kops
+          for shell in bash zsh; do
+            $out/bin/kops completion $shell > kops.$shell
+            installShellCompletion kops.$shell
+          done
         '';
 
         meta = with stdenv.lib; {
           description = "Easiest way to get a production Kubernetes up and running";
-          homepage = https://github.com/kubernetes/kops;
+          homepage = "https://github.com/kubernetes/kops";
           license = licenses.asl20;
-          maintainers = with maintainers; [offline zimbatm kampka];
+          maintainers = with maintainers; [ offline zimbatm kampka ];
           platforms = platforms.unix;
         };
       } // attrs';
@@ -51,23 +51,13 @@ in rec {
 
   mkKops = generic;
 
-  kops_1_12 = mkKops {
-    version = "1.12.3";
-    sha256 = "0rpbaz54l5v1z7ab5kpxcb4jyakkl5ysgz1sxajqmw2d6dvf7xly";
-  };
-
-  kops_1_13 = mkKops {
-    version = "1.13.2";
-    sha256 = "0lkkg34vn020r62ga8vg5d3a8jwvq00xlv3p1s01nkz33f6salng";
-  };
-  
-  kops_1_14 = mkKops {
-    version = "1.14.1";
-    sha256 = "0ikd8qwrjh8s1sc95g18sm0q6p33swz2m1rjd8zw34mb2w9jv76n";
+  kops_1_15 = mkKops {
+    version = "1.15.3";
+    sha256 = "0pzgrsl61nw8pm3s032lj020fw13x3fpzlj7lknsnd581f0gg4df";
   };
 
-  kops_1_15 = mkKops {
-    version = "1.15.2";
-    sha256 = "1sjfd7pfi81ccq1dkgkh9xx6y94bqzlp727pvyf7l01x3d14z2b3";
+  kops_1_16 = mkKops {
+    version = "1.16.2";
+    sha256 = "1vhkjhx1n3f6ggw5cy1avs3sbqb2da6khck9zqd4s7almjbpc2h2";
   };
 }
diff --git a/pkgs/applications/networking/cluster/kube3d/default.nix b/pkgs/applications/networking/cluster/kube3d/default.nix
index 7058c009f2dd..2eea6adb28d1 100644
--- a/pkgs/applications/networking/cluster/kube3d/default.nix
+++ b/pkgs/applications/networking/cluster/kube3d/default.nix
@@ -2,8 +2,8 @@
 
 buildGoModule rec {
   pname = "kube3d";
-  version = "1.3.1";
-  k3sVersion = "0.9.1";
+  version = "1.6.0";
+  k3sVersion = "1.17.3-k3s1";
 
   goPackagePath = "github.com/rancher/k3d";
 
@@ -11,7 +11,7 @@ buildGoModule rec {
     owner  = "rancher";
     repo   = "k3d";
     rev    = "v${version}";
-    sha256 = "0bdpjnzyxd6mdc1qv0ml89qds6305kn3wmyci2kv6g2y7r7wxvm2";
+    sha256 = "0qjwqqynvgzainq66fpzczgynwk3hv7wzgfy5271fc6mj2k0zz5x";
   };
 
   buildFlagsArray = ''
@@ -21,13 +21,13 @@ buildGoModule rec {
       -X github.com/rancher/k3d/version.K3sVersion=v${k3sVersion}
   '';
 
-  modSha256 = "1qadf3gc2626l4jpad4lzi649nh8if9m6fgs2cf46r1nish16h95";
+  modSha256 = "0c8bfl0hz5cfhi6jzhhylz051jiix6s7s20fn23w7wri4xaqrjn8";
 
   meta = with stdenv.lib; {
     homepage = "https://github.com/rancher/k3d";
     description = "A helper to run k3s (Lightweight Kubernetes. 5 less than k8s) in a docker container";
     license = licenses.mit;
     platforms = platforms.linux;
-    maintainers = with maintainers; [ kuznero jlesquembre ];
+    maintainers = with maintainers; [ kuznero jlesquembre ngerstle ];
   };
 }
diff --git a/pkgs/applications/networking/cluster/kubecfg/default.nix b/pkgs/applications/networking/cluster/kubecfg/default.nix
index 69d013e3f034..bf4ec9492157 100644
--- a/pkgs/applications/networking/cluster/kubecfg/default.nix
+++ b/pkgs/applications/networking/cluster/kubecfg/default.nix
@@ -17,7 +17,7 @@ buildGoPackage {
 
   meta = {
     description = "A tool for managing Kubernetes resources as code";
-    homepage = https://github.com/bitnami/kubecfg;
+    homepage = "https://github.com/bitnami/kubecfg";
     license = lib.licenses.asl20;
     maintainers = with lib.maintainers; [ benley ];
     platforms = lib.platforms.unix;
diff --git a/pkgs/applications/networking/cluster/kubernetes/default.nix b/pkgs/applications/networking/cluster/kubernetes/default.nix
index a5e2b3743260..3a91efd064cc 100644
--- a/pkgs/applications/networking/cluster/kubernetes/default.nix
+++ b/pkgs/applications/networking/cluster/kubernetes/default.nix
@@ -15,16 +15,16 @@ with lib;
 
 stdenv.mkDerivation rec {
   pname = "kubernetes";
-  version = "1.16.5";
+  version = "1.18.1";
 
   src = fetchFromGitHub {
     owner = "kubernetes";
     repo = "kubernetes";
     rev = "v${version}";
-    sha256 = "12ks79sjgbd0c97pipid4j3l5fwiimaxa25rvmf2vccdrw4ngx4m";
+    sha256 = "1z109h0jqqfxvgyhmxsiggf6fb9kdrwvmv9wdi1n58n4yk65hvl6";
   };
 
-  buildInputs = [ removeReferencesTo makeWrapper which go rsync go-bindata ];
+  nativeBuildInputs = [ removeReferencesTo makeWrapper which go rsync go-bindata ];
 
   outputs = ["out" "man" "pause"];
 
@@ -72,7 +72,7 @@ stdenv.mkDerivation rec {
   meta = {
     description = "Production-Grade Container Scheduling and Management";
     license = licenses.asl20;
-    homepage = https://kubernetes.io;
+    homepage = "https://kubernetes.io";
     maintainers = with maintainers; [johanot offline saschagrunert];
     platforms = platforms.unix;
   };
diff --git a/pkgs/applications/networking/cluster/kubernix/default.nix b/pkgs/applications/networking/cluster/kubernix/default.nix
new file mode 100644
index 000000000000..2251b12e499a
--- /dev/null
+++ b/pkgs/applications/networking/cluster/kubernix/default.nix
@@ -0,0 +1,24 @@
+{ stdenv, fetchFromGitHub, rustPlatform }:
+
+rustPlatform.buildRustPackage rec {
+  pname = "kubernix";
+  version = "0.2.0";
+
+  src = fetchFromGitHub {
+    owner = "saschagrunert";
+    repo = pname;
+    rev = "v${version}";
+    sha256 = "04dzfdzjwcwwaw9min322g30q0saxpq5kqzld4f22fmk820ki6gp";
+  };
+
+  cargoSha256 = "17agwqx7nhzi124yq1s6zpqb227drrhp9c11r3jbicc08dz88bwg";
+  doCheck = false;
+
+  meta = with stdenv.lib; {
+    description = "Single dependency Kubernetes clusters for local testing, experimenting and development";
+    homepage = "https://github.com/saschagrunert/kubernix";
+    license = with licenses; [ mit ];
+    maintainers = with maintainers; [ saschagrunert ];
+    platforms = platforms.linux;
+  };
+}
diff --git a/pkgs/applications/networking/cluster/kubeseal/default.nix b/pkgs/applications/networking/cluster/kubeseal/default.nix
index ef5f03253979..ef87b67a3600 100644
--- a/pkgs/applications/networking/cluster/kubeseal/default.nix
+++ b/pkgs/applications/networking/cluster/kubeseal/default.nix
@@ -2,16 +2,16 @@
 
 buildGoModule rec {
   pname = "kubeseal";
-  version = "0.9.8";
+  version = "0.12.0";
 
   src = fetchFromGitHub {
     owner = "bitnami-labs";
     repo = "sealed-secrets";
     rev = "v${version}";
-    sha256 = "1d3m13pl30w8d7pxjdhspxprk2jm8cm25rc5s867z4a37c5igv7y";
+    sha256 = "0z51iwdc4m0y8wyyx3mcvbzxlrgws7n5wkcd0g7nr73irnsld4lh";
   };
 
-  modSha256 = "04dmjyz3vi2l0dfpyy42lkp2fv1vlfkvblrxh1dvb37phrkd5lbd";
+  modSha256 = "029h0zr3fpzlsv9hf1d1x5j7aalxkcsyszsxjz8fqrhjafqc7zvq";
 
   subPackages = [ "cmd/kubeseal" ];
 
diff --git a/pkgs/applications/networking/cluster/kubetail/default.nix b/pkgs/applications/networking/cluster/kubetail/default.nix
index 779edad8de34..114c5f5af152 100644
--- a/pkgs/applications/networking/cluster/kubetail/default.nix
+++ b/pkgs/applications/networking/cluster/kubetail/default.nix
@@ -25,7 +25,7 @@ stdenv.mkDerivation rec {
       multiple pods into one stream. This is the same as running "kubectl logs
       -f " but for multiple pods.
     '';
-    homepage = https://github.com/johanhaleby/kubetail;
+    homepage = "https://github.com/johanhaleby/kubetail";
     license = licenses.asl20;
     maintainers = with maintainers; [ kalbasit ];
     platforms = platforms.all;
diff --git a/pkgs/applications/networking/cluster/kubeval/default.nix b/pkgs/applications/networking/cluster/kubeval/default.nix
index 84e9b8899431..3d3674dbe0fc 100644
--- a/pkgs/applications/networking/cluster/kubeval/default.nix
+++ b/pkgs/applications/networking/cluster/kubeval/default.nix
@@ -1,48 +1,23 @@
 { stdenv, lib, fetchFromGitHub, buildGoModule, makeWrapper }:
 
-let
-
-  # Cache schema as a package so network calls are not
-  # necessary at runtime, allowing use in package builds
-  schema = stdenv.mkDerivation {
-    name = "kubeval-schema";
-    src = fetchFromGitHub {
-      owner = "instrumenta";
-      repo = "kubernetes-json-schema";
-      rev = "6a498a60dc68c5f6a1cc248f94b5cd1e7241d699";
-      sha256 = "1y9m2ma3n4h7sf2lg788vjw6pkfyi0fa7gzc870faqv326n6x2jr";
-    };
-
-    installPhase = ''
-      mkdir -p $out/kubernetes-json-schema/master
-      cp -R . $out/kubernetes-json-schema/master
-    '';
-   };
-
-in
-
 buildGoModule rec {
   pname = "kubeval";
-  version = "0.14.0";
+  version = "0.15.0";
 
   src = fetchFromGitHub {
     owner = "instrumenta";
     repo = "kubeval";
     rev = "${version}";
-    sha256 = "0kpwk7bv36m3i8vavm1pqc8l611c6l9qbagcc64v6r85qig4w5xv";
+    sha256 = "05li0qv4q7fy2lr50r6c1r8dhx00jb1g01qmgc72a9zqp378yiq0";
   };
 
-  buildInputs = [ makeWrapper ];
-
   modSha256 = "0y9x44y3bchi8xg0a6jmp2rmi8dybkl6qlywb6nj1viab1s8dd4y";
 
-  postFixup = "wrapProgram $out/bin/kubeval --set KUBEVAL_SCHEMA_LOCATION file:///${schema}/kubernetes-json-schema/master";
-
   meta = with lib; {
     description = "Validate your Kubernetes configuration files";
-    homepage = https://github.com/instrumenta/kubeval;
+    homepage = "https://github.com/instrumenta/kubeval";
     license = licenses.asl20;
-    maintainers = with maintainers; [ nicknovitski ];
+    maintainers = with maintainers; [ johanot nicknovitski ];
     platforms = platforms.all;
   };
 }
diff --git a/pkgs/applications/networking/cluster/kubeval/schema.nix b/pkgs/applications/networking/cluster/kubeval/schema.nix
new file mode 100644
index 000000000000..370fe9a1cd82
--- /dev/null
+++ b/pkgs/applications/networking/cluster/kubeval/schema.nix
@@ -0,0 +1,15 @@
+{ fetchFromGitHub }:
+# To cache schema as a package so network calls are not
+# necessary at runtime, allowing use in package builds you can use the following:
+
+#   KUBEVAL_SCHEMA_LOCATION="file:///${kubeval-schema}";
+(fetchFromGitHub {
+  name = "kubeval-schema";
+  owner = "instrumenta";
+  repo = "kubernetes-json-schema";
+  rev = "6a498a60dc68c5f6a1cc248f94b5cd1e7241d699";
+  sha256 = "1y9m2ma3n4h7sf2lg788vjw6pkfyi0fa7gzc870faqv326n6x2jr";
+}) // {
+  # the schema is huge (> 7GB), we don't get any benefit from building int on hydra
+  meta.hydraPlatforms = [];
+}
diff --git a/pkgs/applications/networking/cluster/linkerd/default.nix b/pkgs/applications/networking/cluster/linkerd/default.nix
index 8c0265d14914..3d66a7c62f20 100644
--- a/pkgs/applications/networking/cluster/linkerd/default.nix
+++ b/pkgs/applications/networking/cluster/linkerd/default.nix
@@ -17,7 +17,7 @@ buildGoModule {
 
   meta = with stdenv.lib; {
     description = "A service mesh for Kubernetes and beyond.";
-    homepage = https://linkerd.io/;
+    homepage = "https://linkerd.io/";
     license = licenses.asl20;
     maintainers = with maintainers; [ Gonzih ];
   };
diff --git a/pkgs/applications/networking/cluster/luigi/default.nix b/pkgs/applications/networking/cluster/luigi/default.nix
index af20be1b0da6..ced4c45d059d 100644
--- a/pkgs/applications/networking/cluster/luigi/default.nix
+++ b/pkgs/applications/networking/cluster/luigi/default.nix
@@ -2,11 +2,11 @@
 
 python3Packages.buildPythonApplication rec {
   pname = "luigi";
-  version = "2.8.12";
+  version = "2.8.13";
 
   src = python3Packages.fetchPypi {
     inherit pname version;
-    sha256 = "1p83mxqs7w5v27a58ps7wji5mlyfz66cpkbyrndix0pv9hdyzpxn";
+    sha256 = "0x14549iwj7r1knc0hmic9ny9hp960yjjqi4mxl78jb69gd3bhmf";
   };
 
   propagatedBuildInputs = with python3Packages; [ dateutil tornado_4 python-daemon boto3 ];
@@ -18,7 +18,7 @@ python3Packages.buildPythonApplication rec {
   makeWrapperArgs = ["--prefix PYTHONPATH . :"];
 
   meta = with lib; {
-    homepage = https://github.com/spotify/luigi;
+    homepage = "https://github.com/spotify/luigi";
     description = "Python package that helps you build complex pipelines of batch jobs";
     longDescription = ''
       Luigi handles dependency resolution, workflow management, visualization,
diff --git a/pkgs/applications/networking/cluster/marathon/default.nix b/pkgs/applications/networking/cluster/marathon/default.nix
index 72bd82be6c16..df571f4cf869 100644
--- a/pkgs/applications/networking/cluster/marathon/default.nix
+++ b/pkgs/applications/networking/cluster/marathon/default.nix
@@ -21,10 +21,10 @@ stdenv.mkDerivation rec {
     '';
 
   meta = with stdenv.lib; {
-    homepage = https://mesosphere.github.io/marathon;
+    homepage = "https://mesosphere.github.io/marathon";
     description = "Cluster-wide init and control system for services in cgroups or Docker containers";
     license = licenses.asl20;
-    maintainers = with maintainers; [ kamilchm kevincox pradeepchhetri ];
+    maintainers = with maintainers; [ kamilchm pradeepchhetri ];
     platforms = platforms.linux;
   };
 }
diff --git a/pkgs/applications/networking/cluster/mesos/default.nix b/pkgs/applications/networking/cluster/mesos/default.nix
index 1ad30335b94d..ac1feee5d72b 100644
--- a/pkgs/applications/networking/cluster/mesos/default.nix
+++ b/pkgs/applications/networking/cluster/mesos/default.nix
@@ -256,7 +256,8 @@ in stdenv.mkDerivation rec {
     homepage    = "http://mesos.apache.org";
     license     = licenses.asl20;
     description = "A cluster manager that provides efficient resource isolation and sharing across distributed applications, or frameworks";
-    maintainers = with maintainers; [ cstrahan kevincox offline ];
+    maintainers = with maintainers; [ cstrahan offline ];
     platforms   = platforms.unix;
+    broken = true; # Broken since 2019-10-22 (https://hydra.nixos.org/build/115475123)
   };
 }
diff --git a/pkgs/applications/networking/cluster/minikube/default.nix b/pkgs/applications/networking/cluster/minikube/default.nix
index 5637e486ef11..9c5727ec7358 100644
--- a/pkgs/applications/networking/cluster/minikube/default.nix
+++ b/pkgs/applications/networking/cluster/minikube/default.nix
@@ -1,68 +1,56 @@
-{ stdenv, buildGoModule, fetchFromGitHub, go-bindata, libvirt, qemu
-, gpgme, makeWrapper, vmnet
-, docker-machine-kvm, docker-machine-kvm2
-, extraDrivers ? []
+{ stdenv
+, buildGoModule
+, fetchFromGitHub
+, go-bindata
+, installShellFiles
+, pkg-config
+, which
+, libvirt
+, vmnet
 }:
 
-let
-  drivers = stdenv.lib.filter (d: d != null) (extraDrivers
-            ++ stdenv.lib.optionals stdenv.isLinux [ docker-machine-kvm docker-machine-kvm2 ]);
+buildGoModule rec {
+  pname = "minikube";
+  version = "1.9.2";
 
-  binPath = drivers
-            ++ stdenv.lib.optionals stdenv.isLinux ([ libvirt qemu ]);
+  # for -ldflags
+  commit = "1b78a7b8a99ad6a3c62b8d22f57120d614d17935";
 
-in buildGoModule rec {
-  pname   = "minikube";
-  version = "1.2.0";
-
-  kubernetesVersion = "1.15.0";
-
-  goPackagePath = "k8s.io/minikube";
+  modSha256 = "1pxs6myszgma3rzz0nhfjbnylv6m0xzlinvmlg0c4ijvkkzxg3v5";
 
   src = fetchFromGitHub {
-    owner  = "kubernetes";
-    repo   = "minikube";
-    rev    = "v${version}";
-    sha256 = "0l9znrp49877cp1bkwx84c8lv282ga5a946rjbxi8gznkf3kwaw7";
+    owner = "kubernetes";
+    repo = "minikube";
+    rev = "v${version}";
+    sha256 = "025v45427d885qkjjg7ig8fgrvjalnf1lajsj0cnbwbih2m69svg";
   };
 
-  modSha256 = "1cp63n0x2lgbqvvymx9byx48r42qw6w224x5x4iiarc2nryfdhn0";
+  nativeBuildInputs = [ go-bindata installShellFiles pkg-config which ];
 
-  buildInputs = [ go-bindata makeWrapper gpgme ] ++ stdenv.lib.optional stdenv.hostPlatform.isDarwin vmnet;
-  subPackages = [ "cmd/minikube" ] ++ stdenv.lib.optional stdenv.hostPlatform.isDarwin "cmd/drivers/hyperkit";
+  buildInputs = if stdenv.isDarwin then [ vmnet ] else if stdenv.isLinux then [ libvirt ] else null;
 
-  preBuild = ''
-    go-bindata -nomemcopy -o pkg/minikube/assets/assets.go -pkg assets deploy/addons/...
+  buildPhase = ''
+    make COMMIT=${commit}
+  '';
 
-    VERSION_MAJOR=$(grep "^VERSION_MAJOR" Makefile | sed "s/^.*\s//")
-    VERSION_MINOR=$(grep "^VERSION_MINOR" Makefile | sed "s/^.*\s//")
-    ISO_VERSION=v$VERSION_MAJOR.$VERSION_MINOR.0
-    ISO_BUCKET=$(grep "^ISO_BUCKET" Makefile | sed "s/^.*\s//")
-    KUBERNETES_VERSION=${kubernetesVersion}
+  installPhase = ''
+    install out/minikube -Dt $out/bin
 
-    export buildFlagsArray="-ldflags=\
-      -X k8s.io/minikube/pkg/version.version=v${version} \
-      -X k8s.io/minikube/pkg/version.isoVersion=$ISO_VERSION \
-      -X k8s.io/minikube/pkg/version.isoPath=$ISO_BUCKET \
-      -X k8s.io/minikube/vendor/k8s.io/client-go/pkg/version.gitVersion=$KUBERNETES_VERSION \
-      -X k8s.io/minikube/vendor/k8s.io/kubernetes/pkg/version.gitVersion=$KUBERNETES_VERSION"
-  '';
+    export HOME=$PWD
+    export MINIKUBE_WANTUPDATENOTIFICATION=false
+    export MINIKUBE_WANTKUBECTLDOWNLOADMSG=false
 
-  postInstall = ''
-    wrapProgram $out/bin/${pname} --prefix PATH : $out/bin:${stdenv.lib.makeBinPath binPath}
-    mkdir -p $out/share/bash-completion/completions/
-    MINIKUBE_WANTUPDATENOTIFICATION=false MINIKUBE_WANTKUBECTLDOWNLOADMSG=false HOME=$PWD $out/bin/minikube completion bash > $out/share/bash-completion/completions/minikube
-    mkdir -p $out/share/zsh/site-functions/
-    MINIKUBE_WANTUPDATENOTIFICATION=false MINIKUBE_WANTKUBECTLDOWNLOADMSG=false HOME=$PWD $out/bin/minikube completion zsh > $out/share/zsh/site-functions/_minikube
-  ''+ stdenv.lib.optionalString stdenv.hostPlatform.isDarwin ''
-    mv $out/bin/hyperkit $out/bin/docker-machine-driver-hyperkit
+    for shell in bash zsh; do
+      $out/bin/minikube completion $shell > minikube.$shell
+      installShellCompletion minikube.$shell
+    done
   '';
 
   meta = with stdenv.lib; {
-    homepage    = https://github.com/kubernetes/minikube;
+    homepage = "https://minikube.sigs.k8s.io";
     description = "A tool that makes it easy to run Kubernetes locally";
-    license     = licenses.asl20;
-    maintainers = with maintainers; [ ebzzry copumpkin vdemeester ];
-    platforms   = with platforms; unix;
+    license = licenses.asl20;
+    maintainers = with maintainers; [ ebzzry copumpkin vdemeester atkinschang ];
+    platforms = platforms.unix;
   };
 }
diff --git a/pkgs/applications/networking/cluster/minishift/default.nix b/pkgs/applications/networking/cluster/minishift/default.nix
index 43e960d9403e..0c932396e9e2 100644
--- a/pkgs/applications/networking/cluster/minishift/default.nix
+++ b/pkgs/applications/networking/cluster/minishift/default.nix
@@ -48,7 +48,7 @@ in buildGoPackage rec {
   '';
 
   postInstall = ''
-    wrapProgram "$bin/bin/minishift" \
+    wrapProgram "$out/bin/minishift" \
       --prefix PATH ':' '${lib.makeBinPath [ docker-machine-kvm openshift ]}'
   '';
 
@@ -59,7 +59,7 @@ in buildGoPackage rec {
       a single-node OpenShift cluster inside a VM. You can try out OpenShift
       or develop with it, day-to-day, on your local host.
     '';
-    homepage = https://github.com/minishift/minishift;
+    homepage = "https://github.com/minishift/minishift";
     maintainers = with maintainers; [ fpletz vdemeester ];
     platforms = platforms.linux;
     license = licenses.asl20;
diff --git a/pkgs/applications/networking/cluster/node-problem-detector/default.nix b/pkgs/applications/networking/cluster/node-problem-detector/default.nix
new file mode 100644
index 000000000000..a7a98de6d39b
--- /dev/null
+++ b/pkgs/applications/networking/cluster/node-problem-detector/default.nix
@@ -0,0 +1,50 @@
+{ stdenv, buildGoModule, fetchFromGitHub, systemd }:
+
+buildGoModule rec {
+  pname = "node-problem-detector";
+  version = "0.8.1";
+
+  src = fetchFromGitHub {
+    owner = "kubernetes";
+    repo = pname;
+    rev = "v${version}";
+    sha256 = "02avknglmkr9k933a64hkw0rjfxvyh4sc3x70p41b8q2g6vzv2gs";
+  };
+
+  # Project upstream recommends building through vendoring
+  overrideModAttrs = (_: {
+    buildCommand = ''
+      echo "Skipping go.mod, using vendoring instead." && touch $out
+    '';
+  });
+
+  modSha256 = "0ip26j2h11n1kgkz36rl4akv694yz65hr72q4kv4b3lxcbi65b3p";
+
+  # Optionally, a log counter binary can be created to parse journald logs.
+  # The binary is dynamically linked against systemd libraries, making it a
+  # Linux-only feature. See 'ENABLE_JOURNALD' upstream:
+  # https://github.com/kubernetes/node-problem-detector/blob/master/Makefile
+  subPackages = [ "cmd/nodeproblemdetector" ] ++
+    stdenv.lib.optionals stdenv.isLinux [ "cmd/logcounter" ];
+
+  preBuild = ''
+    export CGO_ENABLED=${if stdenv.isLinux then "1" else "0"}
+  '';
+
+  buildInputs = stdenv.lib.optionals stdenv.isLinux [ systemd ];
+
+  buildFlags = "-mod vendor" +
+    stdenv.lib.optionalString stdenv.isLinux " -tags journald";
+
+  buildFlagsArray = [
+    "-ldflags="
+    "-X k8s.io/${pname}/pkg/version.version=v${version}"
+  ];
+
+  meta = with stdenv.lib; {
+    description = "Various problem detectors running on the Kubernetes nodes";
+    homepage = "https://github.com/kubernetes/node-problem-detector";
+    license = licenses.asl20;
+    maintainers = with maintainers; [ lbpdt ];
+  };
+}
diff --git a/pkgs/applications/networking/cluster/nomad/default.nix b/pkgs/applications/networking/cluster/nomad/default.nix
index 6afbbf215a3f..da668b9589af 100644
--- a/pkgs/applications/networking/cluster/nomad/default.nix
+++ b/pkgs/applications/networking/cluster/nomad/default.nix
@@ -2,7 +2,7 @@
 
 buildGoPackage rec {
   pname = "nomad";
-  version = "0.10.2";
+  version = "0.11.1";
   rev = "v${version}";
 
   goPackagePath = "github.com/hashicorp/nomad";
@@ -12,7 +12,7 @@ buildGoPackage rec {
     owner = "hashicorp";
     repo = pname;
     inherit rev;
-    sha256 = "1kv67rkqnxiz2dkmc1v1df6qx9j5j4h7cis00v2i15sl824g22jw";
+    sha256 = "1pcn1bk7sqhhsrm3izqljwyrwdz6bdlplrajvjzka39l3k6f9hgc";
   };
 
   # ui:
@@ -32,7 +32,7 @@ buildGoPackage rec {
  '';
 
   meta = with stdenv.lib; {
-    homepage = https://www.nomadproject.io/;
+    homepage = "https://www.nomadproject.io/";
     description = "A Distributed, Highly Available, Datacenter-Aware Scheduler";
     platforms = platforms.unix;
     license = licenses.mpl20;
diff --git a/pkgs/applications/networking/cluster/openshift/default.nix b/pkgs/applications/networking/cluster/openshift/default.nix
index 3b96ef4ea45e..b547434d8da1 100644
--- a/pkgs/applications/networking/cluster/openshift/default.nix
+++ b/pkgs/applications/networking/cluster/openshift/default.nix
@@ -1,5 +1,5 @@
 { stdenv, lib, fetchFromGitHub, buildGoPackage, which, go-bindata, rsync, utillinux
-, coreutils, kerberos, clang
+, coreutils, kerberos, ncurses, clang, installShellFiles
 , components ? [
   "cmd/oc"
   "cmd/openshift"
@@ -9,12 +9,12 @@
 with lib;
 
 let
-  version = "3.11.0";
+  version = "4.1.0";
   ver = stdenv.lib.elemAt (stdenv.lib.splitVersion version);
   versionMajor = ver 0;
   versionMinor = ver 1;
   versionPatch = ver 2;
-  gitCommit = "0cbc58b";
+  gitCommit = "b4261e0";
   # version is in vendor/k8s.io/kubernetes/pkg/version/base.go
   k8sversion = "v1.11.1";
   k8sgitcommit = "b1b2997";
@@ -28,27 +28,17 @@ in buildGoPackage rec {
     owner = "openshift";
     repo = "origin";
     rev = "v${version}";
-    sha256 = "06q4v2a1mm6c659ab0rzkqz6b66vx4avqfg0s9xckwhq420lzgka";
+    sha256 = "16bc6ljm418kxz92gz8ldm82491mvlqamrvigyr6ff72rf7ml7ba";
   };
 
   goPackagePath = "github.com/openshift/origin";
 
-  buildInputs = [ which rsync go-bindata kerberos clang ];
+  buildInputs = [ kerberos ncurses ];
+
+  nativeBuildInputs = [ which rsync go-bindata clang installShellFiles ];
 
   patchPhase = ''
     patchShebangs ./hack
-
-    substituteInPlace pkg/oc/clusterup/docker/host/host.go  \
-      --replace 'nsenter --mount=/rootfs/proc/1/ns/mnt findmnt' \
-      'nsenter --mount=/rootfs/proc/1/ns/mnt ${utillinux}/bin/findmnt'
-
-    substituteInPlace pkg/oc/clusterup/docker/host/host.go  \
-      --replace 'nsenter --mount=/rootfs/proc/1/ns/mnt mount' \
-      'nsenter --mount=/rootfs/proc/1/ns/mnt ${utillinux}/bin/mount'
-
-    substituteInPlace pkg/oc/clusterup/docker/host/host.go  \
-      --replace 'nsenter --mount=/rootfs/proc/1/ns/mnt mkdir' \
-      'nsenter --mount=/rootfs/proc/1/ns/mnt ${coreutils}/bin/mkdir'
   '';
 
   buildPhase = ''
@@ -56,6 +46,7 @@ in buildGoPackage rec {
     # Openshift build require this variables to be set
     # unless there is a .git folder which is not the case with fetchFromGitHub
     echo "OS_GIT_VERSION=v${version}" >> os-version-defs
+    echo "OS_GIT_TREE_STATE=clean" >> os-version-defs
     echo "OS_GIT_MAJOR=${versionMajor}" >> os-version-defs
     echo "OS_GIT_MINOR=${versionMinor}" >> os-version-defs
     echo "OS_GIT_PATCH=${versionPatch}" >> os-version-defs
@@ -70,16 +61,16 @@ in buildGoPackage rec {
   '';
 
   installPhase = ''
-    mkdir -p $bin/bin
-    cp -a "_output/local/bin/$(go env GOOS)/$(go env GOARCH)/"* "$bin/bin/"
-    install -D -t "$bin/etc/bash_completion.d" contrib/completions/bash/*
-    install -D -t "$bin/share/zsh/site-functions" contrib/completions/zsh/*
+    mkdir -p $out/bin
+    cp -a "_output/local/bin/$(go env GOOS)/$(go env GOARCH)/"* "$out/bin/"
+    installShellCompletion --bash contrib/completions/bash/*
+    installShellCompletion --zsh contrib/completions/zsh/*
   '';
 
   meta = with stdenv.lib; {
     description = "Build, deploy, and manage your applications with Docker and Kubernetes";
     license = licenses.asl20;
-    homepage = http://www.openshift.org;
+    homepage = "http://www.openshift.org";
     maintainers = with maintainers; [offline bachp moretea];
     platforms = platforms.unix;
   };
diff --git a/pkgs/applications/networking/cluster/pachyderm/default.nix b/pkgs/applications/networking/cluster/pachyderm/default.nix
index de0bb015852c..65a4a1938430 100644
--- a/pkgs/applications/networking/cluster/pachyderm/default.nix
+++ b/pkgs/applications/networking/cluster/pachyderm/default.nix
@@ -17,7 +17,7 @@ buildGoPackage rec {
 
   meta = with lib; {
     description = "Containerized Data Analytics";
-    homepage = https://github.com/pachyderm/pachyderm;
+    homepage = "https://github.com/pachyderm/pachyderm";
     license = licenses.asl20;
     maintainers = with maintainers; [offline];
   };
diff --git a/pkgs/applications/networking/cluster/pig/default.nix b/pkgs/applications/networking/cluster/pig/default.nix
index 26c39f8cbe21..afcd736e629c 100644
--- a/pkgs/applications/networking/cluster/pig/default.nix
+++ b/pkgs/applications/networking/cluster/pig/default.nix
@@ -27,7 +27,7 @@ stdenv.mkDerivation rec {
   '';
 
   meta = with stdenv.lib; {
-    homepage = https://pig.apache.org/;
+    homepage = "https://pig.apache.org/";
     description = "High-level language for Apache Hadoop";
     license = licenses.asl20;
 
diff --git a/pkgs/applications/networking/cluster/prow/13918-fix-go-sum.patch b/pkgs/applications/networking/cluster/prow/13918-fix-go-sum.patch
deleted file mode 100644
index ae407727b9d4..000000000000
--- a/pkgs/applications/networking/cluster/prow/13918-fix-go-sum.patch
+++ /dev/null
@@ -1,22 +0,0 @@
-From b0ab95b9664916618ebf5fe637b1bc4de4ba9a6e Mon Sep 17 00:00:00 2001
-From: "Wael M. Nasreddine" <wael.nasreddine@gmail.com>
-Date: Wed, 14 Aug 2019 23:07:51 -0700
-Subject: [PATCH] fix the hash of gomodules.xyz/jsonpatch/v2
-
----
- go.sum | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/go.sum b/go.sum
-index 6bb130b4d9b..b3f48a85d4a 100644
---- a/go.sum
-+++ b/go.sum
-@@ -452,7 +452,7 @@ golang.org/x/tools v0.0.0-20190312170243-e65039ee4138 h1:H3uGjxCR/6Ds0Mjgyp7LMK8
- golang.org/x/tools v0.0.0-20190312170243-e65039ee4138/go.mod h1:LCzVGOaR6xXOjkQ3onu1FJEFr0SW1gC7cKk1uF8kGRs=
- golang.org/x/tools v0.0.0-20190404132500-923d25813098 h1:MtqjsZmyGRgMmLUgxnmMJ6RYdvd2ib8ipiayHhqSxs4=
- golang.org/x/tools v0.0.0-20190404132500-923d25813098/go.mod h1:LCzVGOaR6xXOjkQ3onu1FJEFr0SW1gC7cKk1uF8kGRs=
--gomodules.xyz/jsonpatch/v2 v2.0.0 h1:lHNQverf0+Gm1TbSbVIDWVXOhZ2FpZopxRqpr2uIjs4=
-+gomodules.xyz/jsonpatch/v2 v2.0.0 h1:OyHbl+7IOECpPKfVK42oFr6N7+Y2dR+Jsb/IiDV3hOo=
- gomodules.xyz/jsonpatch/v2 v2.0.0/go.mod h1:IhYNNY4jnS53ZnfE4PAmpKtDpTCj1JFXc+3mwe7XcUU=
- google.golang.org/api v0.0.0-20180910000450-7ca32eb868bf/go.mod h1:4mhQ8q/RsB7i+udVvVy5NUi08OU8ZlA0gRVgrF7VFY0=
- google.golang.org/api v0.0.0-20181021000519-a2651947f503/go.mod h1:4mhQ8q/RsB7i+udVvVy5NUi08OU8ZlA0gRVgrF7VFY0=
diff --git a/pkgs/applications/networking/cluster/prow/default.nix b/pkgs/applications/networking/cluster/prow/default.nix
index 1c802802c096..0b2f798d35b4 100644
--- a/pkgs/applications/networking/cluster/prow/default.nix
+++ b/pkgs/applications/networking/cluster/prow/default.nix
@@ -2,56 +2,51 @@
 
 buildGoModule rec {
   pname = "prow-unstable";
-  version = "2019-08-14";
-  rev = "35a7744f5737bbc1c4e1256a9c9c5ad135c650e4";
+  version = "2020-04-01";
+  rev = "32e3b5ce7695fb622381421653db436cb57b47c5";
 
   src = fetchFromGitHub {
     inherit rev;
 
     owner = "kubernetes";
     repo = "test-infra";
-    sha256 = "07kdlzrj59xyaa73vlx4s50fpg0brrkb0h0cyjgx81a0hsc7s03k";
+    sha256 = "0mc3ynmbf3kidibdy8k3v3xjlvmxl8w7zm1z2m0skmhd0y4bpmk4";
   };
 
-  patches = [
-    # https://github.com/kubernetes/test-infra/pull/13918
-    ./13918-fix-go-sum.patch
-  ];
-
-  modSha256 = "06q1zvhm78k64aj475k1xl38h7nk83mysd0bja0wknja048ymgsq";
+  modSha256 = "1xajdg10a27icc7g1y3ym4pkgg64rp4afybbjlhbg3k3whir9xa1";
 
   subPackages = [
-    "./prow/cmd/admission"
-    "./prow/cmd/artifact-uploader"
-    "./prow/cmd/branchprotector"
-    "./prow/cmd/build"
-    "./prow/cmd/checkconfig"
-    "./prow/cmd/clonerefs"
-    "./prow/cmd/config-bootstrapper"
-    "./prow/cmd/crier"
-    "./prow/cmd/deck"
-    "./prow/cmd/entrypoint"
-    "./prow/cmd/gcsupload"
-    "./prow/cmd/gerrit"
-    "./prow/cmd/hook"
-    "./prow/cmd/horologium"
-    "./prow/cmd/initupload"
-    "./prow/cmd/jenkins-operator"
-    "./prow/cmd/mkbuild-cluster"
-    "./prow/cmd/mkpj"
-    "./prow/cmd/mkpod"
-    "./prow/cmd/peribolos"
-    "./prow/cmd/phaino"
-    "./prow/cmd/phony"
-    "./prow/cmd/pipeline"
-    "./prow/cmd/plank"
-    "./prow/cmd/sidecar"
-    "./prow/cmd/sinker"
-    "./prow/cmd/status-reconciler"
-    "./prow/cmd/sub"
-    "./prow/cmd/tackle"
-    "./prow/cmd/tide"
-    "./prow/cmd/tot"
+    "prow/cmd/admission"
+    "prow/cmd/branchprotector"
+    "prow/cmd/checkconfig"
+    "prow/cmd/clonerefs"
+    "prow/cmd/cm2kc"
+    "prow/cmd/config-bootstrapper"
+    "prow/cmd/crier"
+    "prow/cmd/deck"
+    "prow/cmd/entrypoint"
+    "prow/cmd/exporter"
+    "prow/cmd/gcsupload"
+    "prow/cmd/gerrit"
+    "prow/cmd/hook"
+    "prow/cmd/horologium"
+    "prow/cmd/initupload"
+    "prow/cmd/jenkins-operator"
+    "prow/cmd/mkbuild-cluster"
+    "prow/cmd/mkpj"
+    "prow/cmd/mkpod"
+    "prow/cmd/peribolos"
+    "prow/cmd/phaino"
+    "prow/cmd/phony"
+    "prow/cmd/pipeline"
+    "prow/cmd/plank"
+    "prow/cmd/sidecar"
+    "prow/cmd/sinker"
+    "prow/cmd/status-reconciler"
+    "prow/cmd/sub"
+    "prow/cmd/tackle"
+    "prow/cmd/tide"
+    "prow/cmd/tot"
   ];
 
   meta = with lib; {
diff --git a/pkgs/applications/networking/cluster/qbec/default.nix b/pkgs/applications/networking/cluster/qbec/default.nix
index 9e578b9b333a..53b421ec5521 100644
--- a/pkgs/applications/networking/cluster/qbec/default.nix
+++ b/pkgs/applications/networking/cluster/qbec/default.nix
@@ -2,20 +2,20 @@
 
 buildGoModule rec {
   pname = "qbec";
-  version = "0.7.5";
+  version = "0.11.0";
 
   src = fetchFromGitHub {
     owner = "splunk";
     repo = "qbec";
     rev = "v${version}";
-    sha256 = "1q3rbxih4fn0zv8dni5dxb3pq840spplfy08x941najqfgflv9gb";
+    sha256 = "0krdfaha19wzi10rh0wfhki5nknbd5mndaxhrq7y9m840xy43d6d";
   };
 
-  modSha256 = "0s1brqvzm1ghhqb46aqfj0lpnaq76rav0hwwb82ccw8h7052y4jn";
+  modSha256 = "1wb15vrkb4ryvrjp68ygmadnf78s354106ya210pnmsbb53rbhaz";
 
   meta = with lib; {
     description = "Configure kubernetes objects on multiple clusters using jsonnet https://qbec.io";
-    homepage = https://github.com/splunk/qbec;
+    homepage = "https://github.com/splunk/qbec";
     license = licenses.asl20;
     maintainers = with maintainers; [ groodt ];
   };
diff --git a/pkgs/applications/networking/cluster/spacegun/node-composition.nix b/pkgs/applications/networking/cluster/spacegun/node-composition.nix
index 6a5283528fca..47cdb6942cec 100644
--- a/pkgs/applications/networking/cluster/spacegun/node-composition.nix
+++ b/pkgs/applications/networking/cluster/spacegun/node-composition.nix
@@ -1,4 +1,4 @@
-# This file has been generated by node2nix 1.7.0. Do not edit!
+# This file has been generated by node2nix 1.8.0. Do not edit!
 
 {pkgs ? import <nixpkgs> {
     inherit system;
diff --git a/pkgs/applications/networking/cluster/spacegun/node-packages.nix b/pkgs/applications/networking/cluster/spacegun/node-packages.nix
index a69352a9c21c..ece04f6621bb 100644
--- a/pkgs/applications/networking/cluster/spacegun/node-packages.nix
+++ b/pkgs/applications/networking/cluster/spacegun/node-packages.nix
@@ -1,142 +1,142 @@
-# This file has been generated by node2nix 1.7.0. Do not edit!
+# This file has been generated by node2nix 1.8.0. Do not edit!
 
 {nodeEnv, fetchurl, fetchgit, globalBuildInputs ? []}:
 
 let
   sources = {
-    "@babel/code-frame-7.5.5" = {
+    "@babel/code-frame-7.8.3" = {
       name = "_at_babel_slash_code-frame";
       packageName = "@babel/code-frame";
-      version = "7.5.5";
+      version = "7.8.3";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.5.5.tgz";
-        sha512 = "27d4lZoomVyo51VegxI20xZPuSHusqbQag/ztrBC7wegWoQ1nLREPVSKSW8byhTlzTKyNE4ifaTA6lCp7JjpFw==";
+        url = "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.8.3.tgz";
+        sha512 = "a9gxpmdXtZEInkCSHUJDLHZVBgb1QS0jhss4cPP93EW7s+uC5bikET2twEF3KV+7rDblJcmNvTR7VJejqd2C2g==";
       };
     };
-    "@babel/core-7.6.2" = {
+    "@babel/core-7.8.7" = {
       name = "_at_babel_slash_core";
       packageName = "@babel/core";
-      version = "7.6.2";
+      version = "7.8.7";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@babel/core/-/core-7.6.2.tgz";
-        sha512 = "l8zto/fuoZIbncm+01p8zPSDZu/VuuJhAfA7d/AbzM09WR7iVhavvfNDYCNpo1VvLk6E6xgAoP9P+/EMJHuRkQ==";
+        url = "https://registry.npmjs.org/@babel/core/-/core-7.8.7.tgz";
+        sha512 = "rBlqF3Yko9cynC5CCFy6+K/w2N+Sq/ff2BPy+Krp7rHlABIr5epbA7OxVeKoMHB39LZOp1UY5SuLjy6uWi35yA==";
       };
     };
-    "@babel/generator-7.6.2" = {
+    "@babel/generator-7.8.8" = {
       name = "_at_babel_slash_generator";
       packageName = "@babel/generator";
-      version = "7.6.2";
+      version = "7.8.8";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@babel/generator/-/generator-7.6.2.tgz";
-        sha512 = "j8iHaIW4gGPnViaIHI7e9t/Hl8qLjERI6DcV9kEpAIDJsAOrcnXqRS7t+QbhL76pwbtqP+QCQLL0z1CyVmtjjQ==";
+        url = "https://registry.npmjs.org/@babel/generator/-/generator-7.8.8.tgz";
+        sha512 = "HKyUVu69cZoclptr8t8U5b6sx6zoWjh8jiUhnuj3MpZuKT2dJ8zPTuiy31luq32swhI0SpwItCIlU8XW7BZeJg==";
       };
     };
-    "@babel/helper-function-name-7.1.0" = {
+    "@babel/helper-function-name-7.8.3" = {
       name = "_at_babel_slash_helper-function-name";
       packageName = "@babel/helper-function-name";
-      version = "7.1.0";
+      version = "7.8.3";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.1.0.tgz";
-        sha512 = "A95XEoCpb3TO+KZzJ4S/5uW5fNe26DjBGqf1o9ucyLyCmi1dXq/B3c8iaWTfBk3VvetUxl16e8tIrd5teOCfGw==";
+        url = "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.8.3.tgz";
+        sha512 = "BCxgX1BC2hD/oBlIFUgOCQDOPV8nSINxCwM3o93xP4P9Fq6aV5sgv2cOOITDMtCfQ+3PvHp3l689XZvAM9QyOA==";
       };
     };
-    "@babel/helper-get-function-arity-7.0.0" = {
+    "@babel/helper-get-function-arity-7.8.3" = {
       name = "_at_babel_slash_helper-get-function-arity";
       packageName = "@babel/helper-get-function-arity";
-      version = "7.0.0";
+      version = "7.8.3";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@babel/helper-get-function-arity/-/helper-get-function-arity-7.0.0.tgz";
-        sha512 = "r2DbJeg4svYvt3HOS74U4eWKsUAMRH01Z1ds1zx8KNTPtpTL5JAsdFv8BNyOpVqdFhHkkRDIg5B4AsxmkjAlmQ==";
+        url = "https://registry.npmjs.org/@babel/helper-get-function-arity/-/helper-get-function-arity-7.8.3.tgz";
+        sha512 = "FVDR+Gd9iLjUMY1fzE2SR0IuaJToR4RkCDARVfsBBPSP53GEqSFjD8gNyxg246VUyc/ALRxFaAK8rVG7UT7xRA==";
       };
     };
-    "@babel/helper-plugin-utils-7.0.0" = {
+    "@babel/helper-plugin-utils-7.8.3" = {
       name = "_at_babel_slash_helper-plugin-utils";
       packageName = "@babel/helper-plugin-utils";
-      version = "7.0.0";
+      version = "7.8.3";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.0.0.tgz";
-        sha512 = "CYAOUCARwExnEixLdB6sDm2dIJ/YgEAKDM1MOeMeZu9Ld/bDgVo8aiWrXwcY7OBh+1Ea2uUcVRcxKk0GJvW7QA==";
+        url = "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.8.3.tgz";
+        sha512 = "j+fq49Xds2smCUNYmEHF9kGNkhbet6yVIBp4e6oeQpH1RUs/Ir06xUKzDjDkGcaaokPiTNs2JBWHjaE4csUkZQ==";
       };
     };
-    "@babel/helper-split-export-declaration-7.4.4" = {
+    "@babel/helper-split-export-declaration-7.8.3" = {
       name = "_at_babel_slash_helper-split-export-declaration";
       packageName = "@babel/helper-split-export-declaration";
-      version = "7.4.4";
+      version = "7.8.3";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.4.4.tgz";
-        sha512 = "Ro/XkzLf3JFITkW6b+hNxzZ1n5OQ80NvIUdmHspih1XAhtN3vPTuUFT4eQnela+2MaZ5ulH+iyP513KJrxbN7Q==";
+        url = "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.8.3.tgz";
+        sha512 = "3x3yOeyBhW851hroze7ElzdkeRXQYQbFIb7gLK1WQYsw2GWDay5gAJNw1sWJ0VFP6z5J1whqeXH/WCdCjZv6dA==";
       };
     };
-    "@babel/helpers-7.6.2" = {
+    "@babel/helpers-7.8.4" = {
       name = "_at_babel_slash_helpers";
       packageName = "@babel/helpers";
-      version = "7.6.2";
+      version = "7.8.4";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@babel/helpers/-/helpers-7.6.2.tgz";
-        sha512 = "3/bAUL8zZxYs1cdX2ilEE0WobqbCmKWr/889lf2SS0PpDcpEIY8pb1CCyz0pEcX3pEb+MCbks1jIokz2xLtGTA==";
+        url = "https://registry.npmjs.org/@babel/helpers/-/helpers-7.8.4.tgz";
+        sha512 = "VPbe7wcQ4chu4TDQjimHv/5tj73qz88o12EPkO2ValS2QiQS/1F2SsjyIGNnAD0vF/nZS6Cf9i+vW6HIlnaR8w==";
       };
     };
-    "@babel/highlight-7.5.0" = {
+    "@babel/highlight-7.8.3" = {
       name = "_at_babel_slash_highlight";
       packageName = "@babel/highlight";
-      version = "7.5.0";
+      version = "7.8.3";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@babel/highlight/-/highlight-7.5.0.tgz";
-        sha512 = "7dV4eu9gBxoM0dAnj/BCFDW9LFU0zvTrkq0ugM7pnHEgguOEeOz1so2ZghEdzviYzQEED0r4EAgpsBChKy1TRQ==";
+        url = "https://registry.npmjs.org/@babel/highlight/-/highlight-7.8.3.tgz";
+        sha512 = "PX4y5xQUvy0fnEVHrYOarRPXVWafSjTW9T0Hab8gVIawpl2Sj0ORyrygANq+KjcNlSSTw0YCLSNA8OyZ1I4yEg==";
       };
     };
-    "@babel/parser-7.6.2" = {
+    "@babel/parser-7.8.8" = {
       name = "_at_babel_slash_parser";
       packageName = "@babel/parser";
-      version = "7.6.2";
+      version = "7.8.8";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@babel/parser/-/parser-7.6.2.tgz";
-        sha512 = "mdFqWrSPCmikBoaBYMuBulzTIKuXVPtEISFbRRVNwMWpCms/hmE2kRq0bblUHaNRKrjRlmVbx1sDHmjmRgD2Xg==";
+        url = "https://registry.npmjs.org/@babel/parser/-/parser-7.8.8.tgz";
+        sha512 = "mO5GWzBPsPf6865iIbzNE0AvkKF3NE+2S3eRUpE+FE07BOAkXh6G+GW/Pj01hhXjve1WScbaIO4UlY1JKeqCcA==";
       };
     };
-    "@babel/plugin-syntax-object-rest-spread-7.2.0" = {
+    "@babel/plugin-syntax-object-rest-spread-7.8.3" = {
       name = "_at_babel_slash_plugin-syntax-object-rest-spread";
       packageName = "@babel/plugin-syntax-object-rest-spread";
-      version = "7.2.0";
+      version = "7.8.3";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@babel/plugin-syntax-object-rest-spread/-/plugin-syntax-object-rest-spread-7.2.0.tgz";
-        sha512 = "t0JKGgqk2We+9may3t0xDdmneaXmyxq0xieYcKHxIsrJO64n1OiMWNUtc5gQK1PA0NpdCRrtZp4z+IUaKugrSA==";
+        url = "https://registry.npmjs.org/@babel/plugin-syntax-object-rest-spread/-/plugin-syntax-object-rest-spread-7.8.3.tgz";
+        sha512 = "XoqMijGZb9y3y2XskN+P1wUGiVwWZ5JmoDRwx5+3GmEplNyVM2s2Dg8ILFQm8rWM48orGy5YpI5Bl8U1y7ydlA==";
       };
     };
-    "@babel/template-7.6.0" = {
+    "@babel/template-7.8.6" = {
       name = "_at_babel_slash_template";
       packageName = "@babel/template";
-      version = "7.6.0";
+      version = "7.8.6";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@babel/template/-/template-7.6.0.tgz";
-        sha512 = "5AEH2EXD8euCk446b7edmgFdub/qfH1SN6Nii3+fyXP807QRx9Q73A2N5hNwRRslC2H9sNzaFhsPubkS4L8oNQ==";
+        url = "https://registry.npmjs.org/@babel/template/-/template-7.8.6.tgz";
+        sha512 = "zbMsPMy/v0PWFZEhQJ66bqjhH+z0JgMoBWuikXybgG3Gkd/3t5oQ1Rw2WQhnSrsOmsKXnZOx15tkC4qON/+JPg==";
       };
     };
-    "@babel/traverse-7.6.2" = {
+    "@babel/traverse-7.8.6" = {
       name = "_at_babel_slash_traverse";
       packageName = "@babel/traverse";
-      version = "7.6.2";
+      version = "7.8.6";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@babel/traverse/-/traverse-7.6.2.tgz";
-        sha512 = "8fRE76xNwNttVEF2TwxJDGBLWthUkHWSldmfuBzVRmEDWOtu4XdINTgN7TDWzuLg4bbeIMLvfMFD9we5YcWkRQ==";
+        url = "https://registry.npmjs.org/@babel/traverse/-/traverse-7.8.6.tgz";
+        sha512 = "2B8l0db/DPi8iinITKuo7cbPznLCEk0kCxDoB9/N6gGNg/gxOXiR/IcymAFPiBwk5w6TtQ27w4wpElgp9btR9A==";
       };
     };
-    "@babel/types-7.6.1" = {
+    "@babel/types-7.8.7" = {
       name = "_at_babel_slash_types";
       packageName = "@babel/types";
-      version = "7.6.1";
+      version = "7.8.7";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@babel/types/-/types-7.6.1.tgz";
-        sha512 = "X7gdiuaCmA0uRjCmRtYJNAVCc/q+5xSgsfKJHqMN4iNLILX39677fJE1O40arPMh0TTtS9ItH67yre6c7k6t0g==";
+        url = "https://registry.npmjs.org/@babel/types/-/types-7.8.7.tgz";
+        sha512 = "k2TreEHxFA4CjGkL+GYjRyx35W0Mr7DP5+9q6WMkyKXB+904bYmG40syjMFV0oLlhhFCwWl0vA0DyzTDkwAiJw==";
       };
     };
-    "@cnakazawa/watch-1.0.3" = {
+    "@cnakazawa/watch-1.0.4" = {
       name = "_at_cnakazawa_slash_watch";
       packageName = "@cnakazawa/watch";
-      version = "1.0.3";
+      version = "1.0.4";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@cnakazawa/watch/-/watch-1.0.3.tgz";
-        sha512 = "r5160ogAvGyHsal38Kux7YYtodEKOj89RGb28ht1jh3SJb08VwRwAKKJL0bGb04Zd/3r9FL3BFIc3bBidYffCA==";
+        url = "https://registry.npmjs.org/@cnakazawa/watch/-/watch-1.0.4.tgz";
+        sha512 = "v9kIhKwjeZThiWrLmj0y17CWoyddASLj9O2yvbZkbvw/N3rWOYy9zkV66ursAoVr0mV15bL8g0c4QZUE6cdDoQ==";
       };
     };
     "@jest/console-24.9.0" = {
@@ -274,22 +274,22 @@ let
         sha512 = "dBtBbrc+qTHy1WdfHYjBwRln4+LWqASWakLHsWHR2NWHIFkv4W3O070IGoGLEBrJBvct3r0L1BUPuvURi7kYUQ==";
       };
     };
-    "@types/babel__core-7.1.3" = {
+    "@types/babel__core-7.1.6" = {
       name = "_at_types_slash_babel__core";
       packageName = "@types/babel__core";
-      version = "7.1.3";
+      version = "7.1.6";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@types/babel__core/-/babel__core-7.1.3.tgz";
-        sha512 = "8fBo0UR2CcwWxeX7WIIgJ7lXjasFxoYgRnFHUj+hRvKkpiBJbxhdAPTCY6/ZKM0uxANFVzt4yObSLuTiTnazDA==";
+        url = "https://registry.npmjs.org/@types/babel__core/-/babel__core-7.1.6.tgz";
+        sha512 = "tTnhWszAqvXnhW7m5jQU9PomXSiKXk2sFxpahXvI20SZKu9ylPi8WtIxueZ6ehDWikPT0jeFujMj3X4ZHuf3Tg==";
       };
     };
-    "@types/babel__generator-7.6.0" = {
+    "@types/babel__generator-7.6.1" = {
       name = "_at_types_slash_babel__generator";
       packageName = "@types/babel__generator";
-      version = "7.6.0";
+      version = "7.6.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@types/babel__generator/-/babel__generator-7.6.0.tgz";
-        sha512 = "c1mZUu4up5cp9KROs/QAw0gTeHrw/x7m52LcnvMxxOZ03DmLwPV0MlGmlgzV3cnSdjhJOZsj7E7FHeioai+egw==";
+        url = "https://registry.npmjs.org/@types/babel__generator/-/babel__generator-7.6.1.tgz";
+        sha512 = "bBKm+2VPJcMRVwNhxKu8W+5/zT7pwNEqeokFOmbvVSqGzFneNxYcEBro9Ac7/N9tlsaPYnZLK8J1LWKkMsLAew==";
       };
     };
     "@types/babel__template-7.0.2" = {
@@ -301,13 +301,13 @@ let
         sha512 = "/K6zCpeW7Imzgab2bLkLEbz0+1JlFSrUMdw7KoIIu+IUdu51GWaBZpd3y1VXGVXzynvGa4DaIaxNZHiON3GXUg==";
       };
     };
-    "@types/babel__traverse-7.0.7" = {
+    "@types/babel__traverse-7.0.9" = {
       name = "_at_types_slash_babel__traverse";
       packageName = "@types/babel__traverse";
-      version = "7.0.7";
+      version = "7.0.9";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@types/babel__traverse/-/babel__traverse-7.0.7.tgz";
-        sha512 = "CeBpmX1J8kWLcDEnI3Cl2Eo6RfbGvzUctA+CjZUhOKDFbLfcr7fc4usEqLNWetrlJd7RhAkyYe2czXop4fICpw==";
+        url = "https://registry.npmjs.org/@types/babel__traverse/-/babel__traverse-7.0.9.tgz";
+        sha512 = "jEFQ8L1tuvPjOI8lnpaf73oCJe+aoxL6ygqSy6c8LcW98zaC+4mzWuQIRCEvKeCOu+lbqdXcg4Uqmm1S8AP1tw==";
       };
     };
     "@types/babylon-6.16.5" = {
@@ -319,13 +319,13 @@ let
         sha512 = "xH2e58elpj1X4ynnKp9qSnWlsRTIs6n3tgLGNfwAGHwePw0mulHQllV34n0T25uYSu1k0hRKkWXF890B1yS47w==";
       };
     };
-    "@types/body-parser-1.17.1" = {
+    "@types/body-parser-1.19.0" = {
       name = "_at_types_slash_body-parser";
       packageName = "@types/body-parser";
-      version = "1.17.1";
+      version = "1.19.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@types/body-parser/-/body-parser-1.17.1.tgz";
-        sha512 = "RoX2EZjMiFMjZh9lmYrwgoP9RTpAjSHiJxdp4oidAQVO02T7HER3xj9UKue5534ULWeqVEkujhWcyvUce+d68w==";
+        url = "https://registry.npmjs.org/@types/body-parser/-/body-parser-1.19.0.tgz";
+        sha512 = "W98JrE0j2K78swW4ukqMleo8R7h/pFETjM2DQ90MF6XK2i4LO4W3gQ71Lt4w3bfm2EvVSyWHplECvB5sK22yFQ==";
       };
     };
     "@types/caseless-0.12.2" = {
@@ -346,13 +346,13 @@ let
         sha512 = "4eOPXyn5DmP64MCMF8ePDvdlvlzt2a+F8ZaVjqmh2yFCpGjc1kI3kGnCFYX9SCsGTjQcWIyVZ86IHCEyjy/MNg==";
       };
     };
-    "@types/connect-3.4.32" = {
+    "@types/connect-3.4.33" = {
       name = "_at_types_slash_connect";
       packageName = "@types/connect";
-      version = "3.4.32";
+      version = "3.4.33";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@types/connect/-/connect-3.4.32.tgz";
-        sha512 = "4r8qa0quOvh7lGD0pre62CAb1oni1OO6ecJLGCezTmhQ8Fz50Arx9RUszryR8KlgK6avuSXvviL6yWyViQABOg==";
+        url = "https://registry.npmjs.org/@types/connect/-/connect-3.4.33.tgz";
+        sha512 = "2+FrkXY4zllzTNfJth7jOqEHC+enpLeGslEhpnTAkg21GkRrWV4SsAtqchtT4YS9/nODBU2/ZfsBY2X4J/dX7A==";
       };
     };
     "@types/cookies-0.7.4" = {
@@ -364,13 +364,13 @@ let
         sha512 = "oTGtMzZZAVuEjTwCjIh8T8FrC8n/uwy+PG0yTvQcdZ7etoel7C7/3MSd7qrukENTgQtotG7gvBlBojuVs7X5rw==";
       };
     };
-    "@types/cron-1.7.1" = {
+    "@types/cron-1.7.2" = {
       name = "_at_types_slash_cron";
       packageName = "@types/cron";
-      version = "1.7.1";
+      version = "1.7.2";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@types/cron/-/cron-1.7.1.tgz";
-        sha512 = "48brwgU18DqA0mQX1As5OcJEo1yNjaXMM6Mk4r8K1dOzLJRQ37FE/kCivKx7ClKEHfhX2FdcxKzJ1B744a+V3A==";
+        url = "https://registry.npmjs.org/@types/cron/-/cron-1.7.2.tgz";
+        sha512 = "AEpNLRcsVSc5AdseJKNHpz0d4e8+ow+abTaC0fKDbAU86rF1evoFF0oC2fV9FdqtfVXkG2LKshpLTJCFOpyvTg==";
       };
     };
     "@types/events-3.0.0" = {
@@ -382,22 +382,22 @@ let
         sha512 = "EaObqwIvayI5a8dCzhFrjKzVwKLxjoG9T6Ppd5CEo07LRKfQ8Yokw54r5+Wq7FaBQ+yXRvQAYPrHwya1/UFt9g==";
       };
     };
-    "@types/express-4.17.1" = {
+    "@types/express-4.17.3" = {
       name = "_at_types_slash_express";
       packageName = "@types/express";
-      version = "4.17.1";
+      version = "4.17.3";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@types/express/-/express-4.17.1.tgz";
-        sha512 = "VfH/XCP0QbQk5B5puLqTLEeFgR8lfCJHZJKkInZ9mkYd+u8byX0kztXEQxEk4wZXJs8HI+7km2ALXjn4YKcX9w==";
+        url = "https://registry.npmjs.org/@types/express/-/express-4.17.3.tgz";
+        sha512 = "I8cGRJj3pyOLs/HndoP+25vOqhqWkAZsWMEmq1qXy/b/M3ppufecUwaK2/TVDVxcV61/iSdhykUjQQ2DLSrTdg==";
       };
     };
-    "@types/express-serve-static-core-4.16.9" = {
+    "@types/express-serve-static-core-4.17.2" = {
       name = "_at_types_slash_express-serve-static-core";
       packageName = "@types/express-serve-static-core";
-      version = "4.16.9";
+      version = "4.17.2";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@types/express-serve-static-core/-/express-serve-static-core-4.16.9.tgz";
-        sha512 = "GqpaVWR0DM8FnRUJYKlWgyARoBUAVfRIeVDZQKOttLFp5SmhhF9YFIYeTPwMd/AXfxlP7xVO2dj1fGu0Q+krKQ==";
+        url = "https://registry.npmjs.org/@types/express-serve-static-core/-/express-serve-static-core-4.17.2.tgz";
+        sha512 = "El9yMpctM6tORDAiBwZVLMcxoTMcqqRO9dVyYcn7ycLWbvR8klrDn8CAOwRfZujZtWD7yS/mshTdz43jMOejbg==";
       };
     };
     "@types/formidable-1.0.31" = {
@@ -436,13 +436,13 @@ let
         sha512 = "hRJD2ahnnpLgsj6KWMYSrmXkM3rm2Dl1qkx6IOFD5FnuNPXJIG5L0dhgKXCYTRMGzU4n0wImQ/xfmRc4POUFlg==";
       };
     };
-    "@types/istanbul-lib-report-1.1.1" = {
+    "@types/istanbul-lib-report-3.0.0" = {
       name = "_at_types_slash_istanbul-lib-report";
       packageName = "@types/istanbul-lib-report";
-      version = "1.1.1";
+      version = "3.0.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@types/istanbul-lib-report/-/istanbul-lib-report-1.1.1.tgz";
-        sha512 = "3BUTyMzbZa2DtDI2BkERNC6jJw2Mr2Y0oGI7mRxYNBPxppbtEK1F66u3bKwU2g+wxwWI7PAoRpJnOY1grJqzHg==";
+        url = "https://registry.npmjs.org/@types/istanbul-lib-report/-/istanbul-lib-report-3.0.0.tgz";
+        sha512 = "plGgXAPfVKFoYfa9NpYDAkseG+g6Jr294RqeqcqDixSbU34MZVJRi/P+7Y8GDpzkEwLaGZZOpKIEmeVZNtKsrg==";
       };
     };
     "@types/istanbul-reports-1.1.1" = {
@@ -454,67 +454,58 @@ let
         sha512 = "UpYjBi8xefVChsCoBpKShdxTllC9pwISirfoZsUa2AAdQg/Jd2KQGtSbw+ya7GPo7x/wAPlH6JBhKhAsXUEZNA==";
       };
     };
-    "@types/jest-24.0.18" = {
+    "@types/jest-24.9.1" = {
       name = "_at_types_slash_jest";
       packageName = "@types/jest";
-      version = "24.0.18";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/@types/jest/-/jest-24.0.18.tgz";
-        sha512 = "jcDDXdjTcrQzdN06+TSVsPPqxvsZA/5QkYfIZlq1JMw7FdP5AZylbOc+6B/cuDurctRe+MziUMtQ3xQdrbjqyQ==";
-      };
-    };
-    "@types/jest-diff-20.0.1" = {
-      name = "_at_types_slash_jest-diff";
-      packageName = "@types/jest-diff";
-      version = "20.0.1";
+      version = "24.9.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@types/jest-diff/-/jest-diff-20.0.1.tgz";
-        sha512 = "yALhelO3i0hqZwhjtcr6dYyaLoCHbAMshwtj6cGxTvHZAKXHsYGdff6E8EPw3xLKY0ELUTQ69Q1rQiJENnccMA==";
+        url = "https://registry.npmjs.org/@types/jest/-/jest-24.9.1.tgz";
+        sha512 = "Fb38HkXSVA4L8fGKEZ6le5bB8r6MRWlOCZbVuWZcmOMSCd2wCYOwN1ibj8daIoV9naq7aaOZjrLCoCMptKU/4Q==";
       };
     };
-    "@types/js-yaml-3.12.1" = {
+    "@types/js-yaml-3.12.2" = {
       name = "_at_types_slash_js-yaml";
       packageName = "@types/js-yaml";
-      version = "3.12.1";
+      version = "3.12.2";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@types/js-yaml/-/js-yaml-3.12.1.tgz";
-        sha512 = "SGGAhXLHDx+PK4YLNcNGa6goPf9XRWQNAUUbffkwVGGXIxmDKWyGGL4inzq2sPmExu431Ekb9aEMn9BkPqEYFA==";
+        url = "https://registry.npmjs.org/@types/js-yaml/-/js-yaml-3.12.2.tgz";
+        sha512 = "0CFu/g4mDSNkodVwWijdlr8jH7RoplRWNgovjFLEZeT+QEbbZXjBmCe3HwaWheAlCbHwomTwzZoSedeOycABug==";
       };
     };
-    "@types/keygrip-1.0.1" = {
+    "@types/keygrip-1.0.2" = {
       name = "_at_types_slash_keygrip";
       packageName = "@types/keygrip";
-      version = "1.0.1";
+      version = "1.0.2";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@types/keygrip/-/keygrip-1.0.1.tgz";
-        sha1 = "ff540462d2fb4d0a88441ceaf27d287b01c3d878";
+        url = "https://registry.npmjs.org/@types/keygrip/-/keygrip-1.0.2.tgz";
+        sha512 = "GJhpTepz2udxGexqos8wgaBx4I/zWIDPh/KOGEwAqtuGDkOUJu5eFvwmdBX4AmB8Odsr+9pHCQqiAqDL/yKMKw==";
       };
     };
-    "@types/koa-2.0.50" = {
+    "@types/koa-2.11.2" = {
       name = "_at_types_slash_koa";
       packageName = "@types/koa";
-      version = "2.0.50";
+      version = "2.11.2";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@types/koa/-/koa-2.0.50.tgz";
-        sha512 = "TcgOD2lh0EISSadAk1DOBYw7kNoY9XdeB3vEMOKiDDaTMYm+V54nyPsU7Ulb/htb5OBIR79RgTeCWntCcophLw==";
+        url = "https://registry.npmjs.org/@types/koa/-/koa-2.11.2.tgz";
+        sha512 = "2UPelagNNW6bnc1I5kIzluCaheXRA9S+NyOdXEFFj9Az7jc15ek5V03kb8OTbb3tdZ5i2BIJObe86PhHvpMolg==";
       };
     };
-    "@types/koa-compose-3.2.4" = {
+    "@types/koa-compose-3.2.5" = {
       name = "_at_types_slash_koa-compose";
       packageName = "@types/koa-compose";
-      version = "3.2.4";
+      version = "3.2.5";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@types/koa-compose/-/koa-compose-3.2.4.tgz";
-        sha512 = "ioou0rxkuWL+yBQYsHUQAzRTfVxAg8Y2VfMftU+Y3RA03/MzuFL0x/M2sXXj3PkfnENbHsjeHR1aMdezLYpTeA==";
+        url = "https://registry.npmjs.org/@types/koa-compose/-/koa-compose-3.2.5.tgz";
+        sha512 = "B8nG/OoE1ORZqCkBVsup/AKcvjdgoHnfi4pZMn5UwAPCbhk/96xyv284eBYW8JlQbQ7zDmnpFr68I/40mFoIBQ==";
       };
     };
-    "@types/koa-router-7.0.42" = {
+    "@types/koa-router-7.4.0" = {
       name = "_at_types_slash_koa-router";
       packageName = "@types/koa-router";
-      version = "7.0.42";
+      version = "7.4.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@types/koa-router/-/koa-router-7.0.42.tgz";
-        sha512 = "mggrNY7Ywwjt7QjaMAlbb1ixE+v7AFskOeyKdmZT/NvPVEAo48gYUxIcF8ILlMc3eg1bo6SxNoUcbxhTv7edrA==";
+        url = "https://registry.npmjs.org/@types/koa-router/-/koa-router-7.4.0.tgz";
+        sha512 = "CkNyhGOCJ6rpBEG0rlSQhwHsHNwMzGLE49tV3jE5f0TvMzy/SmoCAIlHWdOLs8Mro+BqtKFH6e/lDaibWkydag==";
       };
     };
     "@types/koa-send-4.1.2" = {
@@ -535,22 +526,22 @@ let
         sha512 = "SSpct5fEcAeRkBHa3RiwCIRfDHcD1cZRhwRF///ZfvRt8KhoqRrhK6wpDlYPk/vWHVFE9hPGqh68bhzsHkir4w==";
       };
     };
-    "@types/koa-views-2.0.3" = {
+    "@types/koa-views-2.0.4" = {
       name = "_at_types_slash_koa-views";
       packageName = "@types/koa-views";
-      version = "2.0.3";
+      version = "2.0.4";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@types/koa-views/-/koa-views-2.0.3.tgz";
-        sha512 = "XLn//7qUUz2U9ZKXyHPwVIcQbZcW3phYTFXHGa1eW5BN88bi8n2fegvwJ+TokL2jRmRqBWwMB5p7Aab9iq1sZw==";
+        url = "https://registry.npmjs.org/@types/koa-views/-/koa-views-2.0.4.tgz";
+        sha512 = "aGFBVLiPC7FkXTqHLhnmjKhx3COV+GeJHO9OkLX/p/iAQTgDB5bbnsddx3XgrS6aACWyxR3BpQJVDdSqCNY1lw==";
       };
     };
-    "@types/lodash-4.14.141" = {
+    "@types/lodash-4.14.149" = {
       name = "_at_types_slash_lodash";
       packageName = "@types/lodash";
-      version = "4.14.141";
+      version = "4.14.149";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@types/lodash/-/lodash-4.14.141.tgz";
-        sha512 = "v5NYIi9qEbFEUpCyikmnOYe4YlP8BMUdTcNCAquAKzu+FA7rZ1onj9x80mbnDdOW/K5bFf3Tv5kJplP33+gAbQ==";
+        url = "https://registry.npmjs.org/@types/lodash/-/lodash-4.14.149.tgz";
+        sha512 = "ijGqzZt/b7BfzcK9vTrS6MFljQRPn5BFWOx8oE0GYxribu6uV+aA9zZuXI1zc/etK9E8nrgdoF2+LgUw7+9tJQ==";
       };
     };
     "@types/lodash.clonedeep-4.5.6" = {
@@ -589,22 +580,22 @@ let
         sha512 = "U5icWpv7YnZYGsN4/cmh3WD2onMY0aJIiTE6+51TwJCttdHvtCYmkBNOobHlXwrJRL0nkH9jH4kD+1FAdMN4Tg==";
       };
     };
-    "@types/node-10.14.20" = {
+    "@types/node-10.17.17" = {
       name = "_at_types_slash_node";
       packageName = "@types/node";
-      version = "10.14.20";
+      version = "10.17.17";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@types/node/-/node-10.14.20.tgz";
-        sha512 = "An+MXSV8CGXz/BO9C1KKsoJ/8WDrvlNUaRMsm2h+IHZuSyQkM8U5bJJkb8ItLKA73VePG/nUK+t+EuW2IWuhsQ==";
+        url = "https://registry.npmjs.org/@types/node/-/node-10.17.17.tgz";
+        sha512 = "gpNnRnZP3VWzzj5k3qrpRC6Rk3H/uclhAVo1aIvwzK5p5cOrs9yEyQ8H/HBsBY0u5rrWxXEiVPQ0dEB6pkjE8Q==";
       };
     };
-    "@types/node-12.7.11" = {
+    "@types/node-12.12.30" = {
       name = "_at_types_slash_node";
       packageName = "@types/node";
-      version = "12.7.11";
+      version = "12.12.30";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@types/node/-/node-12.7.11.tgz";
-        sha512 = "Otxmr2rrZLKRYIybtdG/sgeO+tHY20GxeDjcGmUnmmlCWyEnv2a2x1ZXBo3BTec4OiTXMQCiazB8NMBf0iRlFw==";
+        url = "https://registry.npmjs.org/@types/node/-/node-12.12.30.tgz";
+        sha512 = "sz9MF/zk6qVr3pAnM0BSQvYIBK44tS75QC5N+VbWSE4DjCV/pJ+UzCW/F+vVnl7TkOPcuwQureKNtSSwjBTaMg==";
       };
     };
     "@types/ora-3.2.0" = {
@@ -625,13 +616,13 @@ let
         sha512 = "ewFXqrQHlFsgc09MK5jP5iR7vumV/BYayNC6PgJO2LPe8vrnNFyjQjSppfEngITi0qvfKtzFvgKymGheFM9UOA==";
       };
     };
-    "@types/request-2.48.3" = {
+    "@types/request-2.48.4" = {
       name = "_at_types_slash_request";
       packageName = "@types/request";
-      version = "2.48.3";
+      version = "2.48.4";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@types/request/-/request-2.48.3.tgz";
-        sha512 = "3Wo2jNYwqgXcIz/rrq18AdOZUQB8cQ34CXZo+LUwPJNpvRAL86+Kc2wwI8mqpz9Cr1V+enIox5v+WZhy/p3h8w==";
+        url = "https://registry.npmjs.org/@types/request/-/request-2.48.4.tgz";
+        sha512 = "W1t1MTKYR8PxICH+A4HgEIPuAC3sbljoEVfyZbeFJJDbr30guDspJri2XOaM2E+Un7ZjrihaDi7cf6fPa2tbgw==";
       };
     };
     "@types/serve-static-1.13.3" = {
@@ -652,22 +643,22 @@ let
         sha512 = "l42BggppR6zLmpfU6fq9HEa2oGPEI8yrSPL3GITjfRInppYFahObbIQOQK3UGxEnyQpltZLaPe75046NOZQikw==";
       };
     };
-    "@types/tough-cookie-2.3.5" = {
+    "@types/tough-cookie-2.3.6" = {
       name = "_at_types_slash_tough-cookie";
       packageName = "@types/tough-cookie";
-      version = "2.3.5";
+      version = "2.3.6";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@types/tough-cookie/-/tough-cookie-2.3.5.tgz";
-        sha512 = "SCcK7mvGi3+ZNz833RRjFIxrn4gI1PPR3NtuIS+6vMkvmsGjosqTJwRt5bAEFLRz+wtJMWv8+uOnZf2hi2QXTg==";
+        url = "https://registry.npmjs.org/@types/tough-cookie/-/tough-cookie-2.3.6.tgz";
+        sha512 = "wHNBMnkoEBiRAd3s8KTKwIuO9biFtTf0LehITzBhSco+HQI0xkXZbLOD55SW3Aqw3oUkHstkm5SPv58yaAdFPQ==";
       };
     };
-    "@types/underscore-1.9.3" = {
+    "@types/underscore-1.9.4" = {
       name = "_at_types_slash_underscore";
       packageName = "@types/underscore";
-      version = "1.9.3";
+      version = "1.9.4";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@types/underscore/-/underscore-1.9.3.tgz";
-        sha512 = "SwbHKB2DPIDlvYqtK5O+0LFtZAyrUSw4c0q+HWwmH1Ve3KMQ0/5PlV3RX97+3dP7yMrnNQ8/bCWWvQpPl03Mug==";
+        url = "https://registry.npmjs.org/@types/underscore/-/underscore-1.9.4.tgz";
+        sha512 = "CjHWEMECc2/UxOZh0kpiz3lEyX2Px3rQS9HzD20lxMvx571ivOBQKeLnqEjxUY0BMgp6WJWo/pQLRBwMW5v4WQ==";
       };
     };
     "@types/websocket-0.0.40" = {
@@ -679,31 +670,31 @@ let
         sha512 = "ldteZwWIgl9cOy7FyvYn+39Ah4+PfpVE72eYKw75iy2L0zTbhbcwvzeJ5IOu6DQP93bjfXq0NGHY6FYtmYoqFQ==";
       };
     };
-    "@types/ws-6.0.3" = {
+    "@types/ws-6.0.4" = {
       name = "_at_types_slash_ws";
       packageName = "@types/ws";
-      version = "6.0.3";
+      version = "6.0.4";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@types/ws/-/ws-6.0.3.tgz";
-        sha512 = "yBTM0P05Tx9iXGq00BbJPo37ox68R5vaGTXivs6RGh/BQ6QP5zqZDGWdAO6JbRE/iR1l80xeGAwCQS2nMV9S/w==";
+        url = "https://registry.npmjs.org/@types/ws/-/ws-6.0.4.tgz";
+        sha512 = "PpPrX7SZW9re6+Ha8ojZG4Se8AZXgf0GK6zmfqEuCsY49LFDNXO3SByp44X3dFEqtB73lkCDAdUazhAjVPiNwg==";
       };
     };
-    "@types/yargs-13.0.3" = {
+    "@types/yargs-13.0.8" = {
       name = "_at_types_slash_yargs";
       packageName = "@types/yargs";
-      version = "13.0.3";
+      version = "13.0.8";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@types/yargs/-/yargs-13.0.3.tgz";
-        sha512 = "K8/LfZq2duW33XW/tFwEAfnZlqIfVsoyRB3kfXdPXYhl0nfM8mmh7GS0jg7WrX2Dgq/0Ha/pR1PaR+BvmWwjiQ==";
+        url = "https://registry.npmjs.org/@types/yargs/-/yargs-13.0.8.tgz";
+        sha512 = "XAvHLwG7UQ+8M4caKIH0ZozIOYay5fQkAgyIXegXT9jPtdIGdhga+sUEdAr1CiG46aB+c64xQEYyEzlwWVTNzA==";
       };
     };
-    "@types/yargs-parser-13.1.0" = {
+    "@types/yargs-parser-15.0.0" = {
       name = "_at_types_slash_yargs-parser";
       packageName = "@types/yargs-parser";
-      version = "13.1.0";
+      version = "15.0.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@types/yargs-parser/-/yargs-parser-13.1.0.tgz";
-        sha512 = "gCubfBUZ6KxzoibJ+SCUc/57Ms1jz5NjHe4+dI2krNmU5zCPAphyLJYyTOg06ueIyfj+SaCUqmzun7ImlxDcKg==";
+        url = "https://registry.npmjs.org/@types/yargs-parser/-/yargs-parser-15.0.0.tgz";
+        sha512 = "FA/BWv8t8ZWJ+gEOnLLd8ygxH/2UFbAvgEonyfN6yWGLKc7zVjbpl2Y4CTjid9h2RfgPP6SEt6uHwEOply00yw==";
       };
     };
     "@webassemblyjs/ast-1.8.5" = {
@@ -886,13 +877,13 @@ let
         sha512 = "NuHqBY1PB/D8xU6s/thBgOAiAP7HOYDQ32+BFZILJ8ivkUkAHQnWfn6WhL79Owj1qmUnoN/YPhktdIoucipkAQ==";
       };
     };
-    "abab-2.0.2" = {
+    "abab-2.0.3" = {
       name = "abab";
       packageName = "abab";
-      version = "2.0.2";
+      version = "2.0.3";
       src = fetchurl {
-        url = "https://registry.npmjs.org/abab/-/abab-2.0.2.tgz";
-        sha512 = "2scffjvioEmNz0OyDSLGWDfKCVwaKc6l9Pm9kOIREU13ClXZvHpg/nRL5xyjSSSLhOnXqft2HpsAzNEEA8cFFg==";
+        url = "https://registry.npmjs.org/abab/-/abab-2.0.3.tgz";
+        sha512 = "tsFzPpcttalNjFBCFMqsKYQcWxxen1pgJR56by//QwvJc4/OUS3kPOOttx2tSIfjsylB0pYu7f5D3K1RCxUnUg==";
       };
     };
     "abbrev-1.1.1" = {
@@ -931,22 +922,31 @@ let
         sha1 = "105495ae5361d697bd195c825192e1ad7f253787";
       };
     };
-    "acorn-5.7.3" = {
+    "acorn-5.7.4" = {
       name = "acorn";
       packageName = "acorn";
-      version = "5.7.3";
+      version = "5.7.4";
       src = fetchurl {
-        url = "https://registry.npmjs.org/acorn/-/acorn-5.7.3.tgz";
-        sha512 = "T/zvzYRfbVojPWahDsE5evJdHb3oJoQfFbsrKM7w5Zcs++Tr257tia3BmMP8XYVjp1S9RZXQMh7gao96BlqZOw==";
+        url = "https://registry.npmjs.org/acorn/-/acorn-5.7.4.tgz";
+        sha512 = "1D++VG7BhrtvQpNbBzovKNc1FLGGEE/oGe7b9xJm/RFHMBeUaUGpluV9RLjZa47YFdPcDAenEYuq9pQPcMdLJg==";
       };
     };
-    "acorn-6.3.0" = {
+    "acorn-6.4.1" = {
       name = "acorn";
       packageName = "acorn";
-      version = "6.3.0";
+      version = "6.4.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/acorn/-/acorn-6.4.1.tgz";
+        sha512 = "ZVA9k326Nwrj3Cj9jlh3wGFutC2ZornPNARZwsNYqQYgN0EsV2d53w5RN/co65Ohn4sUAUtb1rSUAOD6XN9idA==";
+      };
+    };
+    "acorn-7.1.1" = {
+      name = "acorn";
+      packageName = "acorn";
+      version = "7.1.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/acorn/-/acorn-6.3.0.tgz";
-        sha512 = "/czfa8BwS88b9gWQVhc8eknunSA2DoJpJyTQkhheIf5E48u1N0R4q/YxxsAeqRrmK9TQ/uYfgLDfZo91UlANIA==";
+        url = "https://registry.npmjs.org/acorn/-/acorn-7.1.1.tgz";
+        sha512 = "add7dgA5ppRPxCFJoAGfMDi7PIBXq1RtGo7BhbLaxwrXPOmw8gq48Y9ozT01hUKy9byMjlR20EJhu5zlkErEkg==";
       };
     };
     "acorn-globals-3.1.0" = {
@@ -976,6 +976,15 @@ let
         sha512 = "7evsyfH1cLOCdAzZAd43Cic04yKydNx0cF+7tiA19p1XnLLPU4dpCQOqpjqwokFe//vS0QqfqqjCS2JkiIs0cA==";
       };
     };
+    "acorn-walk-7.1.1" = {
+      name = "acorn-walk";
+      packageName = "acorn-walk";
+      version = "7.1.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/acorn-walk/-/acorn-walk-7.1.1.tgz";
+        sha512 = "wdlPY2tm/9XBr7QkKlq0WQVgiuGTX6YWPyRyBviSoScBuLfTVQhvwg6wJ369GJ/1nPfTLMfnrFIfjqVg6d+jQQ==";
+      };
+    };
     "aggregate-error-1.0.0" = {
       name = "aggregate-error";
       packageName = "aggregate-error";
@@ -985,13 +994,13 @@ let
         sha1 = "888344dad0220a72e3af50906117f48771925fac";
       };
     };
-    "ajv-6.10.2" = {
+    "ajv-6.12.0" = {
       name = "ajv";
       packageName = "ajv";
-      version = "6.10.2";
+      version = "6.12.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/ajv/-/ajv-6.10.2.tgz";
-        sha512 = "TXtUUEYHuaTEbLZWIKUr5pmBuhDLy+8KYtPYdcV8qC+pOZL+NKqYwvWSRrVXHn+ZmRRAu8vJTAznH7Oag6RVRw==";
+        url = "https://registry.npmjs.org/ajv/-/ajv-6.12.0.tgz";
+        sha512 = "D6gFiFA0RRLyUbvijN74DWAjXSFxWKaWP7mldxkVhyhAV3+SWA9HEJPHQ2c9soIeTFJqcSdFDGFgdqs1iUU2Hw==";
       };
     };
     "ajv-errors-1.0.1" = {
@@ -1282,13 +1291,13 @@ let
         sha512 = "+Ryf6g3BKoRc7jfp7ad8tM4TtMiaWvbF/1/sQcZPkkS7ag3D5nMBCe2UfOTONtAkaG0tO0ij3C5Lwmf1EiyjHg==";
       };
     };
-    "async-1.5.2" = {
+    "async-2.6.3" = {
       name = "async";
       packageName = "async";
-      version = "1.5.2";
+      version = "2.6.3";
       src = fetchurl {
-        url = "https://registry.npmjs.org/async/-/async-1.5.2.tgz";
-        sha1 = "ec6a61ae56480c0c3cb241c95618e20892f9672a";
+        url = "https://registry.npmjs.org/async/-/async-2.6.3.tgz";
+        sha512 = "zflvls11DCy+dQWzTW2dzuilv8Z5X/pjfmZOWba6TNIVDm+2UDaJmXSOXlasHKfNBs8oo3M0aT50fDEWfKZjXg==";
       };
     };
     "async-each-1.0.3" = {
@@ -1345,22 +1354,22 @@ let
         sha1 = "b46e890934a9591f2d2f6f86d7e6a9f1b3fe76a8";
       };
     };
-    "aws4-1.8.0" = {
+    "aws4-1.9.1" = {
       name = "aws4";
       packageName = "aws4";
-      version = "1.8.0";
+      version = "1.9.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/aws4/-/aws4-1.8.0.tgz";
-        sha512 = "ReZxvNHIOv88FlT7rxcXIIC0fPt4KZqZbOlivyWtXLt8ESx84zd3kMC6iK5jVeS2qt+g7ftS7ye4fi06X5rtRQ==";
+        url = "https://registry.npmjs.org/aws4/-/aws4-1.9.1.tgz";
+        sha512 = "wMHVg2EOHaMRxbzgFJ9gtjOOCrI80OHLG14rxi28XwOW8ux6IiEbRCGGGqCtdAIg4FQCbW20k9RsT4y3gJlFug==";
       };
     };
-    "axios-0.19.0" = {
+    "axios-0.19.2" = {
       name = "axios";
       packageName = "axios";
-      version = "0.19.0";
+      version = "0.19.2";
       src = fetchurl {
-        url = "https://registry.npmjs.org/axios/-/axios-0.19.0.tgz";
-        sha512 = "1uvKqKQta3KBxIz14F2v06AEHZ/dIoeKfbTRkK1E5oqjDnuEerLmYTgJB5AiQZHJcljpg1TuRzdjDR06qNk0DQ==";
+        url = "https://registry.npmjs.org/axios/-/axios-0.19.2.tgz";
+        sha512 = "fjgm5MvRHLhx+osE2xoekY70AhARk3a6hkN+3Io1jc00jtquGvxYlKlsFUhmUET0V5te6CcZI7lcv2Ym61mjHA==";
       };
     };
     "babel-6.23.0" = {
@@ -1966,13 +1975,22 @@ let
         sha512 = "Un7MIEDdUC5gNpcGDV97op1Ywk748MpHcFTHoYs6qnj1Z3j7I53VG3nwZhKzoBZmbdRNnb6WRdFlwl7tSDuZGw==";
       };
     };
-    "bluebird-3.7.0" = {
+    "bindings-1.5.0" = {
+      name = "bindings";
+      packageName = "bindings";
+      version = "1.5.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/bindings/-/bindings-1.5.0.tgz";
+        sha512 = "p2q/t/mhvuOj/UeLlV6566GD/guowlr0hHxClI0W9m7MWYkL1F0hLo+0Aexs9HSPCtR1SXQ0TD3MMKrXZajbiQ==";
+      };
+    };
+    "bluebird-3.7.2" = {
       name = "bluebird";
       packageName = "bluebird";
-      version = "3.7.0";
+      version = "3.7.2";
       src = fetchurl {
-        url = "https://registry.npmjs.org/bluebird/-/bluebird-3.7.0.tgz";
-        sha512 = "aBQ1FxIa7kSWCcmKHlcHFlT2jt6J/l4FzC7KcPELkOJOsPOb/bccdhmIrKDfXhwFrmc7vDoDrrepFvGqjyXGJg==";
+        url = "https://registry.npmjs.org/bluebird/-/bluebird-3.7.2.tgz";
+        sha512 = "XpNj6GDQzdfW+r2Wnn7xiSAd7TM3jzkxGXBGTtWKuSXv1xUV+azxAm8jdWZN06QTQk+2N2XB9jRDkvbmQmcRtg==";
       };
     };
     "bn.js-4.11.8" = {
@@ -2029,13 +2047,13 @@ let
         sha1 = "12c25efe40a45e3c323eb8675a0a0ce57b22371f";
       };
     };
-    "browser-process-hrtime-0.1.3" = {
+    "browser-process-hrtime-1.0.0" = {
       name = "browser-process-hrtime";
       packageName = "browser-process-hrtime";
-      version = "0.1.3";
+      version = "1.0.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/browser-process-hrtime/-/browser-process-hrtime-0.1.3.tgz";
-        sha512 = "bRFnI4NnjO6cnyLmOV/7PVoDEMJChlcfN0z4s1YMBY989/SvlfMI1lgCnkFUs53e9gQF+w7qu7XdllSTiSl8Aw==";
+        url = "https://registry.npmjs.org/browser-process-hrtime/-/browser-process-hrtime-1.0.0.tgz";
+        sha512 = "9o5UecI3GhkpM6DrXr69PblIuWxPKk9Y0jHBRhdocZ2y7YECBFCsHm79Pr3OyR2AvjhDkabFJaDJMYRazHgsow==";
       };
     };
     "browser-resolve-1.11.3" = {
@@ -2119,22 +2137,22 @@ let
         sha512 = "pd8DCoxmbgc7hyPKOvxtqNcjYoOsABPQdcCUjGp3d42VR2CX1ORhk2A87oqqu5R1kk+76nsxZupkmyd+MVtCog==";
       };
     };
-    "bser-2.1.0" = {
+    "bser-2.1.1" = {
       name = "bser";
       packageName = "bser";
-      version = "2.1.0";
+      version = "2.1.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/bser/-/bser-2.1.0.tgz";
-        sha512 = "8zsjWrQkkBoLK6uxASk1nJ2SKv97ltiGDo6A3wA0/yRPz+CwmEyDo0hUrhIuukG2JHpAl3bvFIixw2/3Hi0DOg==";
+        url = "https://registry.npmjs.org/bser/-/bser-2.1.1.tgz";
+        sha512 = "gQxTNE/GAfIIrmHLUE3oJyp5FO6HRBfhjnw4/wMmA63ZGDJnWBmgY/lyQBpnDUkGmAhbSe39tx2d/iTOAfglwQ==";
       };
     };
-    "buffer-4.9.1" = {
+    "buffer-4.9.2" = {
       name = "buffer";
       packageName = "buffer";
-      version = "4.9.1";
+      version = "4.9.2";
       src = fetchurl {
-        url = "https://registry.npmjs.org/buffer/-/buffer-4.9.1.tgz";
-        sha1 = "6d1bb601b07a4efced97094132093027c95bc298";
+        url = "https://registry.npmjs.org/buffer/-/buffer-4.9.2.tgz";
+        sha512 = "xq+q3SRMOxGivLhBNaUdC64hDTQwejJ+H0T/NB1XMtTVEwNTrfFF3gAxiyW0Bu/xWEGhjVKgUcMhCrUy2+uCWg==";
       };
     };
     "buffer-from-1.1.1" = {
@@ -2281,13 +2299,13 @@ let
         sha512 = "L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==";
       };
     };
-    "caniuse-lite-1.0.30000999" = {
+    "caniuse-lite-1.0.30001035" = {
       name = "caniuse-lite";
       packageName = "caniuse-lite";
-      version = "1.0.30000999";
+      version = "1.0.30001035";
       src = fetchurl {
-        url = "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30000999.tgz";
-        sha512 = "1CUyKyecPeksKwXZvYw0tEoaMCo/RwBlXmEtN5vVnabvO0KPd9RQLcaAuR9/1F+KDMv6esmOFWlsXuzDk+8rxg==";
+        url = "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001035.tgz";
+        sha512 = "C1ZxgkuA4/bUEdMbU5WrGY4+UhMFFiXrgNAfxiMIqWgFTWfv/xsZCS2xEHT2LMq7xAZfuAnu6mcqyDl0ZR6wLQ==";
       };
     };
     "capture-exit-2.0.0" = {
@@ -2362,13 +2380,13 @@ let
         sha512 = "ZmZUazfOzf0Nve7duiCKD23PFSCs4JPoYyccjUFF3aQkQadqBhfzhjkwBH2mNOG9cTBwhamM37EIsIkZw3nRgg==";
       };
     };
-    "chownr-1.1.3" = {
+    "chownr-1.1.4" = {
       name = "chownr";
       packageName = "chownr";
-      version = "1.1.3";
+      version = "1.1.4";
       src = fetchurl {
-        url = "https://registry.npmjs.org/chownr/-/chownr-1.1.3.tgz";
-        sha512 = "i70fVHhmV3DtTl6nqvZOnIjbY0Pe4kAUjwHj8z0zAdgBtYrJyYwLKCCuRBQ5ppkyL0AkN7HKRnETdmdp1zqNXw==";
+        url = "https://registry.npmjs.org/chownr/-/chownr-1.1.4.tgz";
+        sha512 = "jJ0bqzaylmJtVnNgzTeSOs8DPavpbYgEr/b0YL8/2GO3xJEhInFmhKMUnEJQjZumK7KXGFhUy89PrsJWlakBVg==";
       };
     };
     "chrome-trace-event-1.0.2" = {
@@ -2407,13 +2425,13 @@ let
         sha512 = "qOhPa/Fj7s6TY8H8esGu5QNpMMQxz79h+urzrNYN6mn+9BnxlDGf5QZ+XeCDsxSjPqsSR56XOZOJmpeurnLMeg==";
       };
     };
-    "clean-css-4.2.1" = {
+    "clean-css-4.2.3" = {
       name = "clean-css";
       packageName = "clean-css";
-      version = "4.2.1";
+      version = "4.2.3";
       src = fetchurl {
-        url = "https://registry.npmjs.org/clean-css/-/clean-css-4.2.1.tgz";
-        sha512 = "4ZxI6dy4lrY6FHzfiy1aEOXgu4LIsW2MhwG0VBKdcoGoH/XLFgaHSdLTGr4O8Be6A8r3MOphEiI8Gc1n0ecf3g==";
+        url = "https://registry.npmjs.org/clean-css/-/clean-css-4.2.3.tgz";
+        sha512 = "VcMWDN54ZN/DS+g58HYL5/n4Zrqe8vHJpGA8KdgUXFU4fuP/aHNw8eld9SyEIyabIMJX/0RaY/fplOo5hYLSFA==";
       };
     };
     "clean-stack-1.3.0" = {
@@ -2560,13 +2578,13 @@ let
         sha512 = "hL/eG8lrll1Qy1ezvkant+trihbGnaKaeEjj6Scyr3DN+RC7iQ5Rz84IeLERfAWDGo0HBSNAakczwgCilDXnWg==";
       };
     };
-    "commander-2.20.1" = {
+    "commander-2.20.3" = {
       name = "commander";
       packageName = "commander";
-      version = "2.20.1";
+      version = "2.20.3";
       src = fetchurl {
-        url = "https://registry.npmjs.org/commander/-/commander-2.20.1.tgz";
-        sha512 = "cCuLsMhJeWQ/ZpsFTbE765kvVfoeSddc4nU3up4fV+fDBcfUXnbITJ+JzhkdjzOqhURjZgujxaioam4RM9yGUg==";
+        url = "https://registry.npmjs.org/commander/-/commander-2.20.3.tgz";
+        sha512 = "GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==";
       };
     };
     "commondir-1.0.1" = {
@@ -2587,13 +2605,13 @@ let
         sha512 = "Rd3se6QB+sO1TwqZjscQrurpEPIfO0/yYnSin6Q/rD3mOutHvUrCAhJub3r90uNb+SESBuE0QYoB90YdfatsRg==";
       };
     };
-    "compressible-2.0.17" = {
+    "compressible-2.0.18" = {
       name = "compressible";
       packageName = "compressible";
-      version = "2.0.17";
+      version = "2.0.18";
       src = fetchurl {
-        url = "https://registry.npmjs.org/compressible/-/compressible-2.0.17.tgz";
-        sha512 = "BGHeLCK1GV7j1bSmQQAi26X+GgWcTjLr/0tzSvMCl3LH1w1IJ4PFSPoV5316b30cneTziC+B1a+3OjoSUcQYmw==";
+        url = "https://registry.npmjs.org/compressible/-/compressible-2.0.18.tgz";
+        sha512 = "AF3r7P5dWxL8MxyITRMlORQNaOA2IkAFaTr4k7BUumjPtRpGDTZpl0Pb1XCO6JeDCBdp126Cgs9sMxqSjgYyRg==";
       };
     };
     "compression-1.7.4" = {
@@ -2650,13 +2668,13 @@ let
         sha512 = "e54B99q/OUoH64zYYRf3HBP5z24G38h5D3qXu23JGRoigpX5Ss4r9ZnDk3g0Z8uQC2x2lPaJ+UlWBc1ZWBWdLg==";
       };
     };
-    "console-browserify-1.1.0" = {
+    "console-browserify-1.2.0" = {
       name = "console-browserify";
       packageName = "console-browserify";
-      version = "1.1.0";
+      version = "1.2.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/console-browserify/-/console-browserify-1.1.0.tgz";
-        sha1 = "f0241c45730a9fc6323b206dbf38edc741d0bb10";
+        url = "https://registry.npmjs.org/console-browserify/-/console-browserify-1.2.0.tgz";
+        sha512 = "ZMkYO/LkF17QvCPqM0gxw8yUzigAOZOSWSHg91FH6orS7vcEj5dVZTidN2fQ14yBSdg97RqhSNwLUXInd52OTA==";
       };
     };
     "consolidate-0.15.1" = {
@@ -2704,13 +2722,13 @@ let
         sha512 = "hIP3EEPs8tB9AT1L+NUqtwOAps4mk2Zob89MWXMHjHWg9milF/j4osnnQLXBCBFBk/tvIG/tUc9mOUJiPBhPXA==";
       };
     };
-    "convert-source-map-1.6.0" = {
+    "convert-source-map-1.7.0" = {
       name = "convert-source-map";
       packageName = "convert-source-map";
-      version = "1.6.0";
+      version = "1.7.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.6.0.tgz";
-        sha512 = "eFu7XigvxdZ1ETfbgPBohgyQ/Z++C0eEhTor0qRwBw9unw+L0/6V8wkSuGgzdThkiS5lSpdptOQPD8Ak40a+7A==";
+        url = "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.7.0.tgz";
+        sha512 = "4FJkXzKXEDB1snCFZlLP4gpC3JILicCpGbzG9f9G7tGqGCzETQ2hWPrcinA9oU4wtf2biUaEH5065UnMeR33oA==";
       };
     };
     "cookie-0.4.0" = {
@@ -2731,13 +2749,13 @@ let
         sha1 = "e303a882b342cc3ee8ca513a79999734dab3ae2c";
       };
     };
-    "cookies-0.7.3" = {
+    "cookies-0.8.0" = {
       name = "cookies";
       packageName = "cookies";
-      version = "0.7.3";
+      version = "0.8.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/cookies/-/cookies-0.7.3.tgz";
-        sha512 = "+gixgxYSgQLTaTIilDHAdlNPZDENDQernEMiIcZpYYP14zgHsCt4Ce1FEjFtcp6GefhozebB6orvhAAWx/IS0A==";
+        url = "https://registry.npmjs.org/cookies/-/cookies-0.8.0.tgz";
+        sha512 = "8aPsApQfebXnuI+537McwYsDtjVxGm8gTIzQI3FDW6t5t/DAhERxtnbEPN/8RX+uZthoz4eCOgloXaE5cYyNow==";
       };
     };
     "copy-concurrently-1.0.5" = {
@@ -2767,13 +2785,13 @@ let
         sha512 = "Y+SQCF+0NoWQryez2zXn5J5knmr9z/9qSQt7fbL78u83rxmigOy8X5+BFn8CFSuX+nKT8gpYwJX68ekqtQt6ZA==";
       };
     };
-    "core-js-2.6.9" = {
+    "core-js-2.6.11" = {
       name = "core-js";
       packageName = "core-js";
-      version = "2.6.9";
+      version = "2.6.11";
       src = fetchurl {
-        url = "https://registry.npmjs.org/core-js/-/core-js-2.6.9.tgz";
-        sha512 = "HOpZf6eXmnl7la+cUdMnLvUxKNqLUzJvgIziQ0DiF3JwSImNphIqdGqzj6hIKyX04MmV0poclQ7+wjWvxQyR2A==";
+        url = "https://registry.npmjs.org/core-js/-/core-js-2.6.11.tgz";
+        sha512 = "5wjnpaT/3dV+XB4borEsnAYQchn00XSgTAWKDkEqv+K8KevjbzmofK6hfJ9TZIlpj2N0xQpazy7PiRQiWHqzWg==";
       };
     };
     "core-util-is-1.0.2" = {
@@ -2812,13 +2830,13 @@ let
         sha512 = "MJG9liiZ+ogc4TzUwuvbER1JRdgvUFSB5+VR/g5h82fGaIRWMWddtKBHi7/sVhfjQZ6SehlyhvQYrcYkaUIpLg==";
       };
     };
-    "cron-1.7.2" = {
+    "cron-1.8.2" = {
       name = "cron";
       packageName = "cron";
-      version = "1.7.2";
+      version = "1.8.2";
       src = fetchurl {
-        url = "https://registry.npmjs.org/cron/-/cron-1.7.2.tgz";
-        sha512 = "+SaJ2OfeRvfQqwXQ2kgr0Y5pzBR/lijf5OpnnaruwWnmI799JfWr2jN2ItOV9s3A/+TFOt6mxvKzQq5F0Jp6VQ==";
+        url = "https://registry.npmjs.org/cron/-/cron-1.8.2.tgz";
+        sha512 = "Gk2c4y6xKEO8FSAUTklqtfSr7oTq0CiPQeLBG5Fl0qoXpZyMcj1SG59YL+hqq04bu6/IuEA7lMkYDAplQNKkyg==";
       };
     };
     "cross-spawn-6.0.5" = {
@@ -2893,15 +2911,6 @@ let
         sha512 = "YTWYI9se1P55u58gL5GkQHW4P6VJBJ5iBT+B5a7i2Tjadhv52paJG0qHX4A0OR6/t52odI64KP2YvFpkDOi3eQ==";
       };
     };
-    "date-now-0.1.4" = {
-      name = "date-now";
-      packageName = "date-now";
-      version = "0.1.4";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/date-now/-/date-now-0.1.4.tgz";
-        sha1 = "eaf439fd4d4848ad74e5cc7dbef200672b9e345b";
-      };
-    };
     "debug-2.6.9" = {
       name = "debug";
       packageName = "debug";
@@ -3073,13 +3082,22 @@ let
         sha1 = "9bcd52e14c097763e749b274c4346ed2e560b5a9";
       };
     };
-    "des.js-1.0.0" = {
+    "depd-2.0.0" = {
+      name = "depd";
+      packageName = "depd";
+      version = "2.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/depd/-/depd-2.0.0.tgz";
+        sha512 = "g7nH6P6dyDioJogAAGprGpCtVImJhpPk/roCzdb3fIh61/s/nPsfR6onyMwkCAR/OlC3yBC0lESvUoQEAssIrw==";
+      };
+    };
+    "des.js-1.0.1" = {
       name = "des.js";
       packageName = "des.js";
-      version = "1.0.0";
+      version = "1.0.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/des.js/-/des.js-1.0.0.tgz";
-        sha1 = "c074d2e2aa6a8a9a07dbd61f9a15c2cd83ec8ecc";
+        url = "https://registry.npmjs.org/des.js/-/des.js-1.0.1.tgz";
+        sha512 = "Q0I4pfFrv2VPd34/vfLrFOoRmlYj3OV50i7fskps1jZWK1kApMWWT9G6RRUeYedLcBDIhnSDaUvJMb3AhUlaEA==";
       };
     };
     "destroy-1.0.4" = {
@@ -3262,31 +3280,31 @@ let
         sha1 = "590c61156b0ae2f4f0255732a158b266bc56b21d";
       };
     };
-    "ejs-2.7.1" = {
+    "ejs-2.7.4" = {
       name = "ejs";
       packageName = "ejs";
-      version = "2.7.1";
+      version = "2.7.4";
       src = fetchurl {
-        url = "https://registry.npmjs.org/ejs/-/ejs-2.7.1.tgz";
-        sha512 = "kS/gEPzZs3Y1rRsbGX4UOSjtP/CeJP0CxSNZHYxGfVM/VgLcv0ZqM7C45YyTj2DI2g7+P9Dd24C+IMIg6D0nYQ==";
+        url = "https://registry.npmjs.org/ejs/-/ejs-2.7.4.tgz";
+        sha512 = "7vmuyh5+kuUyJKePhQfRQBhXV5Ce+RnaeeQArKu1EAMpL3WbgMt5WG6uQZpEVvYSSsxMXRKOewtDk9RaTKXRlA==";
       };
     };
-    "electron-to-chromium-1.3.275" = {
+    "electron-to-chromium-1.3.376" = {
       name = "electron-to-chromium";
       packageName = "electron-to-chromium";
-      version = "1.3.275";
+      version = "1.3.376";
       src = fetchurl {
-        url = "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.3.275.tgz";
-        sha512 = "/YWtW/VapMnuYA1lNOaa1F4GhR1LBf+CUTp60lzDPEEh0XOzyOAyULyYZVF9vziZ3qSbTqCwmKwsyRXp66STbw==";
+        url = "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.3.376.tgz";
+        sha512 = "cv/PYVz5szeMz192ngilmezyPNFkUjuynuL2vNdiqIrio440nfTDdc0JJU0TS2KHLSVCs9gBbt4CFqM+HcBnjw==";
       };
     };
-    "elliptic-6.5.1" = {
+    "elliptic-6.5.2" = {
       name = "elliptic";
       packageName = "elliptic";
-      version = "6.5.1";
+      version = "6.5.2";
       src = fetchurl {
-        url = "https://registry.npmjs.org/elliptic/-/elliptic-6.5.1.tgz";
-        sha512 = "xvJINNLbTeWQjrl6X+7eQCrIy/YPv5XCpKW6kB5mKvtnGILoLDcySuwomfdzt0BMdLNVnuRNTuzKNHj0bva1Cg==";
+        url = "https://registry.npmjs.org/elliptic/-/elliptic-6.5.2.tgz";
+        sha512 = "f4x70okzZbIQl/NSRLkI/+tteV/9WqL98zx+SQ69KbXxmVrmjwsNUPn/gYJJ0sHvEak24cZgHIPegRePAtA/xw==";
       };
     };
     "emoji-regex-7.0.3" = {
@@ -3307,6 +3325,15 @@ let
         sha1 = "4daa4d9db00f9819880c79fa457ae5b09a1fd389";
       };
     };
+    "emojis-list-3.0.0" = {
+      name = "emojis-list";
+      packageName = "emojis-list";
+      version = "3.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/emojis-list/-/emojis-list-3.0.0.tgz";
+        sha512 = "/kyM18EfinwXZbno9FyUGeFh87KC8HRQBQGildHZbEuRyWFOmv1U10o9BBp8XVZDVNNuQKyIGIu5ZYAAXJ0V2Q==";
+      };
+    };
     "encodeurl-1.0.2" = {
       name = "encodeurl";
       packageName = "encodeurl";
@@ -3334,6 +3361,15 @@ let
         sha512 = "F/7vkyTtyc/llOIn8oWclcB25KdRaiPBpZYDgJHgh/UHtpgT2p2eldQgtQnLtUvfMKPKxbRaQM/hHkvLHt1Vng==";
       };
     };
+    "enhanced-resolve-4.1.1" = {
+      name = "enhanced-resolve";
+      packageName = "enhanced-resolve";
+      version = "4.1.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-4.1.1.tgz";
+        sha512 = "98p2zE+rL7/g/DzMHMTF4zZlCgeVdJ7yr6xzEpJRYwFYrGi9ANdn5DnJURg6RpBkyk60XYDnWIv51VfIhfNGuA==";
+      };
+    };
     "errno-0.1.7" = {
       name = "errno";
       packageName = "errno";
@@ -3361,31 +3397,31 @@ let
         sha1 = "e2b3d91b54aed672f309d950d154850fa11d4f37";
       };
     };
-    "es-abstract-1.15.0" = {
+    "es-abstract-1.17.4" = {
       name = "es-abstract";
       packageName = "es-abstract";
-      version = "1.15.0";
+      version = "1.17.4";
       src = fetchurl {
-        url = "https://registry.npmjs.org/es-abstract/-/es-abstract-1.15.0.tgz";
-        sha512 = "bhkEqWJ2t2lMeaJDuk7okMkJWI/yqgH/EoGwpcvv0XW9RWQsRspI4wt6xuyuvMvvQE3gg/D9HXppgk21w78GyQ==";
+        url = "https://registry.npmjs.org/es-abstract/-/es-abstract-1.17.4.tgz";
+        sha512 = "Ae3um/gb8F0mui/jPL+QiqmglkUsaQf7FwBEHYIFkztkneosu9imhqHpBzQ3h1vit8t5iQ74t6PEVvphBZiuiQ==";
       };
     };
-    "es-to-primitive-1.2.0" = {
+    "es-to-primitive-1.2.1" = {
       name = "es-to-primitive";
       packageName = "es-to-primitive";
-      version = "1.2.0";
+      version = "1.2.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/es-to-primitive/-/es-to-primitive-1.2.0.tgz";
-        sha512 = "qZryBOJjV//LaxLTV6UC//WewneB3LcXOL9NP++ozKVXsIIIpm/2c13UDiD9Jp2eThsecw9m3jPqDwTyobcdbg==";
+        url = "https://registry.npmjs.org/es-to-primitive/-/es-to-primitive-1.2.1.tgz";
+        sha512 = "QCOllgZJtaUo9miYBcLChTUaHNjJF3PYs1VidD7AwiEj1kYxKeQTctLAezAOH5ZKRH0g2IgPn6KwB4IT8iRpvA==";
       };
     };
-    "es5-ext-0.10.51" = {
+    "es5-ext-0.10.53" = {
       name = "es5-ext";
       packageName = "es5-ext";
-      version = "0.10.51";
+      version = "0.10.53";
       src = fetchurl {
-        url = "https://registry.npmjs.org/es5-ext/-/es5-ext-0.10.51.tgz";
-        sha512 = "oRpWzM2WcLHVKpnrcyB7OW8j/s67Ba04JCm0WnNv3RiABSvs7mrQlutB8DBv793gKcp0XENR8Il8WxGTlZ73gQ==";
+        url = "https://registry.npmjs.org/es5-ext/-/es5-ext-0.10.53.tgz";
+        sha512 = "Xs2Stw6NiNHWypzRTY1MtaG/uJlwCk8kH81920ma8mvN8Xq1gsfhZvpkImLQArw8AHnv8MT2I45J3c0R8slE+Q==";
       };
     };
     "es6-iterator-2.0.3" = {
@@ -3406,13 +3442,13 @@ let
         sha512 = "HJDGx5daxeIvxdBxvG2cb9g4tEvwIk3i8+nhX0yGrYmZUzbkdg8QbDevheDB8gd0//uPj4c1EQua8Q+MViT0/w==";
       };
     };
-    "es6-symbol-3.1.2" = {
+    "es6-symbol-3.1.3" = {
       name = "es6-symbol";
       packageName = "es6-symbol";
-      version = "3.1.2";
+      version = "3.1.3";
       src = fetchurl {
-        url = "https://registry.npmjs.org/es6-symbol/-/es6-symbol-3.1.2.tgz";
-        sha512 = "/ZypxQsArlv+KHpGvng52/Iz8by3EQPxhmbuz8yFG89N/caTFBSbcXONDw0aMjy827gQg26XAjP4uXFvnfINmQ==";
+        url = "https://registry.npmjs.org/es6-symbol/-/es6-symbol-3.1.3.tgz";
+        sha512 = "NJ6Yn3FuDinBaBRWl/q5X/s4koRHBrgKAu+yGI6JCBeiu3qrcbJhwT2GeR/EXVfylRk8dpQVJoLEFhK+Mu31NA==";
       };
     };
     "escape-html-1.0.3" = {
@@ -3433,13 +3469,13 @@ let
         sha1 = "1b61c0562190a8dff6ae3bb2cf0200ca130b86d4";
       };
     };
-    "escodegen-1.12.0" = {
+    "escodegen-1.14.1" = {
       name = "escodegen";
       packageName = "escodegen";
-      version = "1.12.0";
+      version = "1.14.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/escodegen/-/escodegen-1.12.0.tgz";
-        sha512 = "TuA+EhsanGcme5T3R0L80u4t8CpbXQjegRmf7+FPTJrtCTErXFeelblRgHQa1FofEzqYYJmJ/OqjTwREp9qgmg==";
+        url = "https://registry.npmjs.org/escodegen/-/escodegen-1.14.1.tgz";
+        sha512 = "Bmt7NcRySdIfNPfU2ZoXDrrXsG9ZjvDxcAlMfDUgRBjLOWTuIACXPBFJH7Z+cLb40JeQco5toikyc9t9P8E9SQ==";
       };
     };
     "eslint-scope-4.0.3" = {
@@ -3451,15 +3487,6 @@ let
         sha512 = "p7VutNr1O/QrxysMo3E45FjYDTeXBy0iTltPFNSqKAIfjDSXC+4dj+qfyuD8bfAXrW/y6lW3O76VaYNPKfpKrg==";
       };
     };
-    "esprima-3.1.3" = {
-      name = "esprima";
-      packageName = "esprima";
-      version = "3.1.3";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/esprima/-/esprima-3.1.3.tgz";
-        sha1 = "fdca51cee6133895e3c88d535ce49dbff62a4633";
-      };
-    };
     "esprima-4.0.1" = {
       name = "esprima";
       packageName = "esprima";
@@ -3514,13 +3541,13 @@ let
         sha512 = "qerSRB0p+UDEssxTtm6EDKcE7W4OaoisfIMl4CngyEhjpYglocpNg6UEqCvemdGhosAsg4sO2dXJOdyBifPGCg==";
       };
     };
-    "events-3.0.0" = {
+    "events-3.1.0" = {
       name = "events";
       packageName = "events";
-      version = "3.0.0";
+      version = "3.1.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/events/-/events-3.0.0.tgz";
-        sha512 = "Dc381HFWJzEOhQ+d8pkNon++bk9h6cdAoAj4iE6Q4y6xgTzySWXlKn05/TVNpjnfRqi/X0EpJEJohPjNI3zpVA==";
+        url = "https://registry.npmjs.org/events/-/events-3.1.0.tgz";
+        sha512 = "Rv+u8MLHNOdMjTAFeT3nCjHn2aGlx435FP/sDHNaRhDEMwyI/aB22Kj2qIN8R0cw3z28psEQLYwxVKLsKrMgWg==";
       };
     };
     "eventsource-1.0.7" = {
@@ -3541,13 +3568,13 @@ let
         sha512 = "/f2Go4TognH/KvCISP7OUsHn85hT9nUkxxA9BEWxFn+Oj9o8ZNLm/40hdlgSLyuOimsrTKLUMEorQexp/aPQeA==";
       };
     };
-    "exec-sh-0.3.2" = {
+    "exec-sh-0.3.4" = {
       name = "exec-sh";
       packageName = "exec-sh";
-      version = "0.3.2";
+      version = "0.3.4";
       src = fetchurl {
-        url = "https://registry.npmjs.org/exec-sh/-/exec-sh-0.3.2.tgz";
-        sha512 = "9sLAvzhI5nc8TpuQUh4ahMdCrWT00wPWz7j47/emR5+2qEfoZP5zzUXvx+vdx+H6ohhnsYC31iX04QLYJK8zTg==";
+        url = "https://registry.npmjs.org/exec-sh/-/exec-sh-0.3.4.tgz";
+        sha512 = "sEFIkc61v75sWeOe72qyrqg2Qg0OuLESziUDk/O/z2qgS15y2gWVFrI6f2Qn/qw/0/NCfCEsmNA4zOjkwEZT1A==";
       };
     };
     "execa-1.0.0" = {
@@ -3604,6 +3631,15 @@ let
         sha512 = "mHJ9O79RqluphRrcw2X/GTh3k9tVv8YcoyY4Kkh4WDMUYKRZUq0h1o0w2rrrxBqM7VoeUVqgb27xlEMXTnYt4g==";
       };
     };
+    "ext-1.4.0" = {
+      name = "ext";
+      packageName = "ext";
+      version = "1.4.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/ext/-/ext-1.4.0.tgz";
+        sha512 = "Key5NIsUxdqKg3vIsdw9dSuXpPCQ297y6wBjL30edxwPgt2E44WcWBZey/ZvUc6sERLTxKdyCu4gZFmUbk1Q7A==";
+      };
+    };
     "extend-3.0.2" = {
       name = "extend";
       packageName = "extend";
@@ -3649,22 +3685,22 @@ let
         sha1 = "96918440e3041a7a414f8c52e3c574eb3c3e1e05";
       };
     };
-    "fast-deep-equal-2.0.1" = {
+    "fast-deep-equal-3.1.1" = {
       name = "fast-deep-equal";
       packageName = "fast-deep-equal";
-      version = "2.0.1";
+      version = "3.1.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-2.0.1.tgz";
-        sha1 = "7b05218ddf9667bf7f370bf7fdb2cb15fdd0aa49";
+        url = "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.1.tgz";
+        sha512 = "8UEa58QDLauDNfpbrX55Q9jrGHThw2ZMdOky5Gl1CDtVeJDPVrG4Jxx1N8jw2gkWaff5UUuX1KJd+9zGe2B+ZA==";
       };
     };
-    "fast-json-stable-stringify-2.0.0" = {
+    "fast-json-stable-stringify-2.1.0" = {
       name = "fast-json-stable-stringify";
       packageName = "fast-json-stable-stringify";
-      version = "2.0.0";
+      version = "2.1.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.0.0.tgz";
-        sha1 = "d5142c0caee6b1189f87d3a76111064f86c8bbf2";
+        url = "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz";
+        sha512 = "lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==";
       };
     };
     "fast-levenshtein-2.0.6" = {
@@ -3694,13 +3730,13 @@ let
         sha512 = "D2y4bovYpzziGgbHYtGCMjlJM36vAl/y+xUyn1C+FVx8szd1E+86KwVw6XvYSzOP8iMpm1X0I4xJD+QtUb36OA==";
       };
     };
-    "fb-watchman-2.0.0" = {
+    "fb-watchman-2.0.1" = {
       name = "fb-watchman";
       packageName = "fb-watchman";
-      version = "2.0.0";
+      version = "2.0.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/fb-watchman/-/fb-watchman-2.0.0.tgz";
-        sha1 = "54e9abf7dfa2f26cd9b1636c588c1afc05de5d58";
+        url = "https://registry.npmjs.org/fb-watchman/-/fb-watchman-2.0.1.tgz";
+        sha512 = "DkPJKQeY6kKwmuMretBhr7G6Vodr7bFwDYTXIkfG1gjvNpaxBTQV3PbXg6bR1c1UP4jPOX0jHUbbHANL9vRjVg==";
       };
     };
     "figgy-pudding-3.5.1" = {
@@ -3712,6 +3748,15 @@ let
         sha512 = "vNKxJHTEKNThjfrdJwHc7brvM6eVevuO5nTj6ez8ZQ1qbXTvGthucRF7S4vf2cr71QVnT70V34v0S1DyQsti0w==";
       };
     };
+    "file-uri-to-path-1.0.0" = {
+      name = "file-uri-to-path";
+      packageName = "file-uri-to-path";
+      version = "1.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/file-uri-to-path/-/file-uri-to-path-1.0.0.tgz";
+        sha512 = "0Zt+s3L7Vf1biwWZ29aARiVYLx7iMGnEUl9x33fbB/j3jR81u/O2LbqK+Bm1CDSNDKVtJ/YjwY7TUd5SkeLQLw==";
+      };
+    };
     "filesize-3.6.1" = {
       name = "filesize";
       packageName = "filesize";
@@ -3847,13 +3892,13 @@ let
         sha512 = "m21N3WOmEEURgk6B9GLOE4RuWOFf28Lhh9qGYeNlGq4VDXUlJy2th2slBNU8Gp8EzloYZOibZJ7t5ecIrFSjVA==";
       };
     };
-    "formidable-1.2.1" = {
+    "formidable-1.2.2" = {
       name = "formidable";
       packageName = "formidable";
-      version = "1.2.1";
+      version = "1.2.2";
       src = fetchurl {
-        url = "https://registry.npmjs.org/formidable/-/formidable-1.2.1.tgz";
-        sha512 = "Fs9VRguL0gqGHkXS5GQiMCr1VhZBxz0JnJs4JmMp/2jL18Fmbzvv7vOFRU+U8TBkHEE/CX1qDXzJplVULgsLeg==";
+        url = "https://registry.npmjs.org/formidable/-/formidable-1.2.2.tgz";
+        sha512 = "V8gLm+41I/8kguQ4/o1D3RIHRmhYFG4pnNyonvua+40rqcEmT4+V71yaZ3B457xbbgCsCfjSPi65u/W6vK1U5Q==";
       };
     };
     "forwarded-0.1.2" = {
@@ -3910,13 +3955,13 @@ let
         sha1 = "1504ad2523158caa40db4a2787cb01411994ea4f";
       };
     };
-    "fsevents-1.2.9" = {
+    "fsevents-1.2.11" = {
       name = "fsevents";
       packageName = "fsevents";
-      version = "1.2.9";
+      version = "1.2.11";
       src = fetchurl {
-        url = "https://registry.npmjs.org/fsevents/-/fsevents-1.2.9.tgz";
-        sha512 = "oeyj2H3EjjonWcFjD5NvZNE9Rqe4UW+nQBU2HNeKw0koVLEFIhtyETyAakeAM3de7Z/SW5kcA+fZUait9EApnw==";
+        url = "https://registry.npmjs.org/fsevents/-/fsevents-1.2.11.tgz";
+        sha512 = "+ux3lx6peh0BpvY0JebGyZoiR4D+oYzdPZMKJwkZ+sFkNJzpL7tXc/wehS49gUAxg3tmMHPHZkA8JU2rhhgDHw==";
       };
     };
     "function-bind-1.1.1" = {
@@ -3928,6 +3973,15 @@ let
         sha512 = "yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==";
       };
     };
+    "gensync-1.0.0-beta.1" = {
+      name = "gensync";
+      packageName = "gensync";
+      version = "1.0.0-beta.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/gensync/-/gensync-1.0.0-beta.1.tgz";
+        sha512 = "r8EC6NO1sngH/zdD9fiRDLdcgnbayXah+mLgManTaIZJqEC1MZstmnox8KpnI2/fxQwrp5OpCOYWLp4rBl4Jcg==";
+      };
+    };
     "get-caller-file-1.0.3" = {
       name = "get-caller-file";
       packageName = "get-caller-file";
@@ -3991,13 +4045,13 @@ let
         sha1 = "5eff8e3e684d569ae4cb2b1282604e8ba62149fa";
       };
     };
-    "glob-7.1.4" = {
+    "glob-7.1.6" = {
       name = "glob";
       packageName = "glob";
-      version = "7.1.4";
+      version = "7.1.6";
       src = fetchurl {
-        url = "https://registry.npmjs.org/glob/-/glob-7.1.4.tgz";
-        sha512 = "hkLPepehmnKk41pUGm3sYxoFs/umurYfYJCerbXEyFIWcAzvpipAgVkBqqT9RBKMGjnq6kMuyYwha6csxbiM1A==";
+        url = "https://registry.npmjs.org/glob/-/glob-7.1.6.tgz";
+        sha512 = "LwaxwyZ72Lk7vZINtNNrywX0ZuLyStrdDtabefZKAY5ZGJhVtgdznluResxNmPitE0SAO+O26sWTHeKSI2wMBA==";
       };
     };
     "glob-parent-3.1.0" = {
@@ -4090,13 +4144,13 @@ let
         sha512 = "qjUJ5U/hawxosMryILofZCkm3C84PLJS/0grRIpjAwu+Lkxxj5cxeCU25BG0/3mDSpXKTyZr8oh8wIgLaH0QCw==";
       };
     };
-    "graceful-fs-4.2.2" = {
+    "graceful-fs-4.2.3" = {
       name = "graceful-fs";
       packageName = "graceful-fs";
-      version = "4.2.2";
+      version = "4.2.3";
       src = fetchurl {
-        url = "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.2.tgz";
-        sha512 = "IItsdsea19BoLC7ELy13q1iJFNmd7ofZH5+X/pJr90/nRoPEX0DJo1dHDbgtYWOhJhcCgMDTOw84RZ72q6lB+Q==";
+        url = "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.3.tgz";
+        sha512 = "a30VEBm4PEdx1dRB7MFK7BejejvCvBronbLjht+sHuGYj8PHs7M/5Z+rt5lw551vZ7yfTCj4Vuyy3mSJytDWRQ==";
       };
     };
     "growly-1.3.0" = {
@@ -4126,15 +4180,6 @@ let
         sha512 = "d4sze1JNC454Wdo2fkuyzCr6aHcbL6PGGuFAz0Li/NcOm1tCHGnWDRmJP85dh9IhQErTc2svWFEX5xHIOo//kQ==";
       };
     };
-    "handlebars-4.4.2" = {
-      name = "handlebars";
-      packageName = "handlebars";
-      version = "4.4.2";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/handlebars/-/handlebars-4.4.2.tgz";
-        sha512 = "cIv17+GhL8pHHnRJzGu2wwcthL5sb8uDKBHvZ2Dtu5s1YNt0ljbzKbamnc+gr69y7bzwQiBdr5+hOpRd5pnOdg==";
-      };
-    };
     "har-schema-2.0.0" = {
       name = "har-schema";
       packageName = "har-schema";
@@ -4189,13 +4234,13 @@ let
         sha512 = "3ToOva++HaW+eCpgqZrCfN51IPB+7bJNVT6CUATzueB5Heb8o6Nam0V3HG5dlDvZU1Gn5QLcbahiKw/XVk5JJw==";
       };
     };
-    "has-symbols-1.0.0" = {
+    "has-symbols-1.0.1" = {
       name = "has-symbols";
       packageName = "has-symbols";
-      version = "1.0.0";
+      version = "1.0.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.0.tgz";
-        sha1 = "ba1a8f1af2a0fc39650f5c850367704122063b44";
+        url = "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.1.tgz";
+        sha512 = "PLcsoqu++dmEIZB+6totNFKq/7Do+Z0u4oT0zKOJNl3lYK6vGwwu2hjHs+68OEZbTjiUE9bgOABXbP/GvrS0Kg==";
       };
     };
     "has-to-string-tag-x-1.4.1" = {
@@ -4297,13 +4342,13 @@ let
         sha512 = "HRcs+2mr52W0K+x8RzcLzuPPmVIKMSv97RGHy0Ea9y/mpcaK+xTrjICA04KAHi4GRzxliNqNJEFYWHghy3rSfQ==";
       };
     };
-    "hosted-git-info-2.8.4" = {
+    "hosted-git-info-2.8.8" = {
       name = "hosted-git-info";
       packageName = "hosted-git-info";
-      version = "2.8.4";
+      version = "2.8.8";
       src = fetchurl {
-        url = "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-2.8.4.tgz";
-        sha512 = "pzXIvANXEFrc5oFFXRMkbLPQ2rXRoDERwDLyrcUxGhaZhgP54BBSl9Oheh7Vv0T090cszWBxPjkQQ5Sq1PbBRQ==";
+        url = "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-2.8.8.tgz";
+        sha512 = "f/wzC2QaWBs7t9IYqB4T3sR1xviIViXJRJTWBlx2Gf3g0Xi5vI7Yy4koXQ1c9OYDGHN9sBy1DQ2AB8fqZBWhUg==";
       };
     };
     "hpack.js-2.1.6" = {
@@ -4333,6 +4378,15 @@ let
         sha1 = "0df29351f0721163515dfb9e5543e5f6eed5162f";
       };
     };
+    "html-escaper-2.0.0" = {
+      name = "html-escaper";
+      packageName = "html-escaper";
+      version = "2.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/html-escaper/-/html-escaper-2.0.0.tgz";
+        sha512 = "a4u9BeERWGu/S8JiWEAQcdrg9v4QArtP9keViQjGMdff20fBdd8waotXaNmODqBe6uZ3Nafi7K/ho4gCQHV3Ig==";
+      };
+    };
     "http-assert-1.4.1" = {
       name = "http-assert";
       packageName = "http-assert";
@@ -4621,13 +4675,13 @@ let
         sha1 = "fa78bf5d2e6913c911ce9f819ee5146bb6d844e9";
       };
     };
-    "ipaddr.js-1.9.0" = {
+    "ipaddr.js-1.9.1" = {
       name = "ipaddr.js";
       packageName = "ipaddr.js";
-      version = "1.9.0";
+      version = "1.9.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/ipaddr.js/-/ipaddr.js-1.9.0.tgz";
-        sha512 = "M4Sjn6N/+O6/IXSJseKqHoFc+5FdGJ22sXqnjTpdZweHK64MzEPAyQZyEU3R/KRv2GLoa7nNtg/C2Ev6m7z+eA==";
+        url = "https://registry.npmjs.org/ipaddr.js/-/ipaddr.js-1.9.1.tgz";
+        sha512 = "0KI/607xoxSToH7GjN1FfSbLoU0+btTicjsQSWQlh/hZykN8KpmMf7uYwPW3R+akZ6R/w18ZlXSHBYXiYUPO3g==";
       };
     };
     "is-absolute-url-3.0.3" = {
@@ -4684,22 +4738,13 @@ let
         sha512 = "NcdALwpXkTm5Zvvbk7owOUSvVvBKDgKP5/ewfXEznmQFfs4ZRmanOeKBTjRVjka3QFoN6XJ+9F3USqfHqTaU5w==";
       };
     };
-    "is-buffer-2.0.4" = {
-      name = "is-buffer";
-      packageName = "is-buffer";
-      version = "2.0.4";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/is-buffer/-/is-buffer-2.0.4.tgz";
-        sha512 = "Kq1rokWXOPXWuaMAqZiJW4XxsmD9zGx9q4aePabbn3qCRGedtH7Cm+zV8WETitMfu1wdh+Rvd6w5egwSngUX2A==";
-      };
-    };
-    "is-callable-1.1.4" = {
+    "is-callable-1.1.5" = {
       name = "is-callable";
       packageName = "is-callable";
-      version = "1.1.4";
+      version = "1.1.5";
       src = fetchurl {
-        url = "https://registry.npmjs.org/is-callable/-/is-callable-1.1.4.tgz";
-        sha512 = "r5p9sxJjYnArLjObpjA4xu5EKI3CuKHkJXMhT7kwbpUyIFD1n5PMAsoPvWnvtZiNz7LjkYDRZhd7FlI0eMijEA==";
+        url = "https://registry.npmjs.org/is-callable/-/is-callable-1.1.5.tgz";
+        sha512 = "ESKv5sMCJB2jnHTWZ3O5itG+O128Hsus4K4Qh1h2/cgn2vbgnLSVqfV46AeJA9D5EeeLa9w81KUXMtn34zhX+Q==";
       };
     };
     "is-ci-2.0.0" = {
@@ -4729,13 +4774,13 @@ let
         sha512 = "jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==";
       };
     };
-    "is-date-object-1.0.1" = {
+    "is-date-object-1.0.2" = {
       name = "is-date-object";
       packageName = "is-date-object";
-      version = "1.0.1";
+      version = "1.0.2";
       src = fetchurl {
-        url = "https://registry.npmjs.org/is-date-object/-/is-date-object-1.0.1.tgz";
-        sha1 = "9aa20eb6aeebbff77fbd33e74ca01b33581d3a16";
+        url = "https://registry.npmjs.org/is-date-object/-/is-date-object-1.0.2.tgz";
+        sha512 = "USlDT524woQ08aoZFzh3/Z6ch9Y/EWXEHQ/AaRN0SkKq4t2Jw2R2339tSXmwuVoY7LLlBCbOIlx2myP/L5zk0g==";
       };
     };
     "is-descriptor-0.1.6" = {
@@ -4792,13 +4837,13 @@ let
         sha1 = "a88c02535791f02ed37c76a1b9ea9773c833f8c2";
       };
     };
-    "is-finite-1.0.2" = {
+    "is-finite-1.1.0" = {
       name = "is-finite";
       packageName = "is-finite";
-      version = "1.0.2";
+      version = "1.1.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/is-finite/-/is-finite-1.0.2.tgz";
-        sha1 = "cc6677695602be550ef11e8b4aa6305342b6d0aa";
+        url = "https://registry.npmjs.org/is-finite/-/is-finite-1.1.0.tgz";
+        sha512 = "cdyMtqX/BOqqNBBiKlIVkytNHm49MtMlYyn1zxzvJKWmFMlGzm+ry5BBfYyeY9YmNKbRSo/o7OX9w9ale0wg3w==";
       };
     };
     "is-fullwidth-code-point-1.0.0" = {
@@ -4927,13 +4972,13 @@ let
         sha1 = "79a2a9ece7f096e80f36d2b2f3bc16c1ff4bf3fa";
       };
     };
-    "is-regex-1.0.4" = {
+    "is-regex-1.0.5" = {
       name = "is-regex";
       packageName = "is-regex";
-      version = "1.0.4";
+      version = "1.0.5";
       src = fetchurl {
-        url = "https://registry.npmjs.org/is-regex/-/is-regex-1.0.4.tgz";
-        sha1 = "5517489b547091b0930e095654ced25ee97e9491";
+        url = "https://registry.npmjs.org/is-regex/-/is-regex-1.0.5.tgz";
+        sha512 = "vlKW17SNq44owv5AQR3Cq0bQPEb8+kF3UKZ2fiZNOWtztYE5i0CzCZxFDwO58qAOWtxdBRVO/V5Qin1wjCqFYQ==";
       };
     };
     "is-retry-allowed-1.2.0" = {
@@ -4954,13 +4999,13 @@ let
         sha1 = "12d4a3dd4e68e0b79ceb8dbc84173ae80d91ca44";
       };
     };
-    "is-symbol-1.0.2" = {
+    "is-symbol-1.0.3" = {
       name = "is-symbol";
       packageName = "is-symbol";
-      version = "1.0.2";
+      version = "1.0.3";
       src = fetchurl {
-        url = "https://registry.npmjs.org/is-symbol/-/is-symbol-1.0.2.tgz";
-        sha512 = "HS8bZ9ox60yCJLH9snBpIwv9pYUAkcuLhSA1oero1UB5y9aiQpRA8y2ex945AOtCZL1lJDeIk3G5LthswI46Lw==";
+        url = "https://registry.npmjs.org/is-symbol/-/is-symbol-1.0.3.tgz";
+        sha512 = "OwijhaRSgqvhm/0ZdAcXNZt9lYdKFpcRDT5ULUuYXPoT794UNOdU+gpT6Rzo7b4V2HUl/op6GqY894AZwv9faQ==";
       };
     };
     "is-typedarray-1.0.0" = {
@@ -5098,13 +5143,13 @@ let
         sha512 = "R47KzMtDJH6X4/YW9XTx+jrLnZnscW4VpNN+1PViSYTejLVPWv7oov+Duf8YQSPyVRUvueQqz1TcsC6mooZTXw==";
       };
     };
-    "istanbul-reports-2.2.6" = {
+    "istanbul-reports-2.2.7" = {
       name = "istanbul-reports";
       packageName = "istanbul-reports";
-      version = "2.2.6";
+      version = "2.2.7";
       src = fetchurl {
-        url = "https://registry.npmjs.org/istanbul-reports/-/istanbul-reports-2.2.6.tgz";
-        sha512 = "SKi4rnMyLBKe0Jy2uUdx28h8oG7ph2PPuQPvIAh31d+Ci+lSiEu4C+h3oBPuJ9+mPKhOyW0M8gY4U5NM1WLeXA==";
+        url = "https://registry.npmjs.org/istanbul-reports/-/istanbul-reports-2.2.7.tgz";
+        sha512 = "uu1F/L1o5Y6LzPVSVZXNOoD/KXpJue9aeLRd0sM9uMXfZvzomB0WxVamWb5ue8kA2vVWEmW7EG+A5n3f1kqHKg==";
       };
     };
     "isurl-1.0.0" = {
@@ -5368,13 +5413,13 @@ let
         sha512 = "51PE4haMSXcHohnSMdM42anbvZANYTqMrr52tVKPqqsPJMzoP6FYYDVqahX/HrAoKEKz3uUPzSvKs9A3qR4iVw==";
       };
     };
-    "js-beautify-1.10.2" = {
+    "js-beautify-1.10.3" = {
       name = "js-beautify";
       packageName = "js-beautify";
-      version = "1.10.2";
+      version = "1.10.3";
       src = fetchurl {
-        url = "https://registry.npmjs.org/js-beautify/-/js-beautify-1.10.2.tgz";
-        sha512 = "ZtBYyNUYJIsBWERnQP0rPN9KjkrDfJcMjuVGcvXOUJrD1zmOGwhRwQ4msG+HJ+Ni/FA7+sRQEMYVzdTQDvnzvQ==";
+        url = "https://registry.npmjs.org/js-beautify/-/js-beautify-1.10.3.tgz";
+        sha512 = "wfk/IAWobz1TfApSdivH5PJ0miIHgDoYb1ugSqHcODPmaYu46rYe5FVuIEkhjg8IQiv6rDNPyhsqbsohI/C2vQ==";
       };
     };
     "js-stringify-1.0.2" = {
@@ -5566,13 +5611,13 @@ let
         sha1 = "ed8bf0921e2f3f1ed4d5c1a44f68709ed24722c3";
       };
     };
-    "keygrip-1.0.3" = {
+    "keygrip-1.1.0" = {
       name = "keygrip";
       packageName = "keygrip";
-      version = "1.0.3";
+      version = "1.1.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/keygrip/-/keygrip-1.0.3.tgz";
-        sha512 = "/PpesirAIfaklxUzp4Yb7xBper9MwP6hNRA6BGGUFCgbJ+BM5CKBtsoxinNXkLHAr+GXS1/lSlF2rP7cv5Fl+g==";
+        url = "https://registry.npmjs.org/keygrip/-/keygrip-1.1.0.tgz";
+        sha512 = "iYSchDJ+liQ8iwbSI2QqsQOvqv58eJCEanyJPJi+Khyu8smkcKSFUCbPwzFcL7YVtZ6eONjqRX/38caJ7QjRAQ==";
       };
     };
     "keyv-3.0.0" = {
@@ -5620,13 +5665,13 @@ let
         sha512 = "NGEErnH6F2vUuXDh+OlbcKW7/wOcfdRHaZ7VWtqCztfHri/++YKmP51OdWeGPuqCOba6kk2OTe5d02VmTB80Pw==";
       };
     };
-    "kind-of-6.0.2" = {
+    "kind-of-6.0.3" = {
       name = "kind-of";
       packageName = "kind-of";
-      version = "6.0.2";
+      version = "6.0.3";
       src = fetchurl {
-        url = "https://registry.npmjs.org/kind-of/-/kind-of-6.0.2.tgz";
-        sha512 = "s5kLOcnH0XqDO+FvuaLX8DDjZ18CGFk7VygH40QoKPUQhW4e2rvM0rwUq0t8IQDOwYSeLK01U90OjzBTme2QqA==";
+        url = "https://registry.npmjs.org/kind-of/-/kind-of-6.0.3.tgz";
+        sha512 = "dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw==";
       };
     };
     "kleur-3.0.3" = {
@@ -5638,13 +5683,13 @@ let
         sha512 = "eTIzlVOSUR+JxdDFepEYcBMtZ9Qqdef+rnzWdRZuMbOywu5tO2w2N7rqjoANZ5k9vywhL6Br1VRjUIgTQx4E8w==";
       };
     };
-    "koa-2.8.2" = {
+    "koa-2.11.0" = {
       name = "koa";
       packageName = "koa";
-      version = "2.8.2";
+      version = "2.11.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/koa/-/koa-2.8.2.tgz";
-        sha512 = "q1uZOgpl3wjr5FS/tjbABJ8lA5+NeKa9eq7QyBP5xxgOBwJN4iBrMEgO3LroE51lrIw3BsO0WZZ0Yi6giSiMDw==";
+        url = "https://registry.npmjs.org/koa/-/koa-2.11.0.tgz";
+        sha512 = "EpR9dElBTDlaDgyhDMiLkXrPwp6ZqgAIBvhhmxQ9XN4TFgW+gEz6tkcsNI6BnUbUftrKDjVFj4lW2/J2aNBMMA==";
       };
     };
     "koa-body-4.1.1" = {
@@ -5683,15 +5728,6 @@ let
         sha1 = "da40875df49de0539098d1700b50820cebcd21d0";
       };
     };
-    "koa-is-json-1.0.0" = {
-      name = "koa-is-json";
-      packageName = "koa-is-json";
-      version = "1.0.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/koa-is-json/-/koa-is-json-1.0.0.tgz";
-        sha1 = "273c07edcdcb8df6a2c1ab7d59ee76491451ec14";
-      };
-    };
     "koa-router-7.4.0" = {
       name = "koa-router";
       packageName = "koa-router";
@@ -5800,6 +5836,15 @@ let
         sha512 = "fkpz8ejdnEMG3s37wGL07iSBDg99O9D5yflE9RGNH3hRdx9SOwYfnGYdZOUIZitN8E+E2vkq3MUMYMvPYl5ZZA==";
       };
     };
+    "loader-utils-1.4.0" = {
+      name = "loader-utils";
+      packageName = "loader-utils";
+      version = "1.4.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/loader-utils/-/loader-utils-1.4.0.tgz";
+        sha512 = "qH0WSMBtn/oHuwjy/NucEgbx5dbxxnxup9s4PVXJUDHZBQY+s0NWA9rJf53RBnQZxfch7euUui7hpoAPvALZdA==";
+      };
+    };
     "locate-path-2.0.0" = {
       name = "locate-path";
       packageName = "locate-path";
@@ -5872,13 +5917,13 @@ let
         sha512 = "VeIAFslyIerEJLXHziedo2basKbMKtTw3vfn5IzG0XTjhAVEJyNHnL2p7vc+wBDSdQuUpNw3M2u6xb9QsAY5Eg==";
       };
     };
-    "loglevel-1.6.4" = {
+    "loglevel-1.6.7" = {
       name = "loglevel";
       packageName = "loglevel";
-      version = "1.6.4";
+      version = "1.6.7";
       src = fetchurl {
-        url = "https://registry.npmjs.org/loglevel/-/loglevel-1.6.4.tgz";
-        sha512 = "p0b6mOGKcGa+7nnmKbpzR6qloPbrgLcnio++E+14Vo/XffOGwZtRpUhr8dTH/x2oCMmEoIU0Zwm3ZauhvYD17g==";
+        url = "https://registry.npmjs.org/loglevel/-/loglevel-1.6.7.tgz";
+        sha512 = "cY2eLFrQSAfVPhCgH1s7JI73tMbg9YC3v3+ZHVW67sBS7UxWzNEk/ZBbSfLykBWHp33dqqtOv82gjhKEi81T/A==";
       };
     };
     "loglevelnext-1.0.5" = {
@@ -5971,13 +6016,13 @@ let
         sha512 = "LS9X+dc8KLxXCb8dni79fLIIUA5VyZoyjSMCwTluaXA0o27cCK0bhXkpgw+sTXVpPy/lSO57ilRixqk0vDmtRA==";
       };
     };
-    "make-error-1.3.5" = {
+    "make-error-1.3.6" = {
       name = "make-error";
       packageName = "make-error";
-      version = "1.3.5";
+      version = "1.3.6";
       src = fetchurl {
-        url = "https://registry.npmjs.org/make-error/-/make-error-1.3.5.tgz";
-        sha512 = "c3sIjNUow0+8swNwVpqoH4YCShKNFkMaw6oH1mNS2haDZQqkeZFlHS3dhoeEbKKmJB4vXpJucU6oH75aDYeE9g==";
+        url = "https://registry.npmjs.org/make-error/-/make-error-1.3.6.tgz";
+        sha512 = "s8UhlNe7vPKomQhC1qFelMokr/Sc3AgNbso3n74mVPA5LTZwkB9NlXf4XPamLxJE8h0gh73rM94xvwRT2CVInw==";
       };
     };
     "makeerror-1.0.11" = {
@@ -6061,6 +6106,15 @@ let
         sha1 = "3a9a20b8462523e447cfbc7e8bb80ed667bfc552";
       };
     };
+    "memory-fs-0.5.0" = {
+      name = "memory-fs";
+      packageName = "memory-fs";
+      version = "0.5.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/memory-fs/-/memory-fs-0.5.0.tgz";
+        sha512 = "jA0rdU5KoQMC0e6ppoNRtpp6vjFq6+NY7r8hywnC7V+1Xj/MtHwGIbB1QaK/dunyjWteJzmkpd7ooeWg10T7GA==";
+      };
+    };
     "merge-descriptors-1.0.1" = {
       name = "merge-descriptors";
       packageName = "merge-descriptors";
@@ -6124,22 +6178,22 @@ let
         sha512 = "LRxmNwziLPT828z+4YkNzloCFC2YM4wrB99k+AV5ZbEyfGNWfG8SO1FUXLmLDBSo89NrJZ4DIWeLjy1CHGhMGA==";
       };
     };
-    "mime-db-1.40.0" = {
+    "mime-db-1.43.0" = {
       name = "mime-db";
       packageName = "mime-db";
-      version = "1.40.0";
+      version = "1.43.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/mime-db/-/mime-db-1.40.0.tgz";
-        sha512 = "jYdeOMPy9vnxEqFRRo6ZvTZ8d9oPb+k18PKoYNYUe2stVEBPPwsln/qWzdbmaIvnhZ9v2P+CuecK+fpUfsV2mA==";
+        url = "https://registry.npmjs.org/mime-db/-/mime-db-1.43.0.tgz";
+        sha512 = "+5dsGEEovYbT8UY9yD7eE4XTc4UwJ1jBYlgaQQF38ENsKR3wj/8q8RFZrF9WIZpB2V1ArTVFUva8sAul1NzRzQ==";
       };
     };
-    "mime-types-2.1.24" = {
+    "mime-types-2.1.26" = {
       name = "mime-types";
       packageName = "mime-types";
-      version = "2.1.24";
+      version = "2.1.26";
       src = fetchurl {
-        url = "https://registry.npmjs.org/mime-types/-/mime-types-2.1.24.tgz";
-        sha512 = "WaFHS3MCl5fapm3oLxU4eYDw77IQM2ACcxQ9RIxfaC3ooc6PFuBMGZZsYpvoXS5D5QTWPieo1jjLdAm3TBP3cQ==";
+        url = "https://registry.npmjs.org/mime-types/-/mime-types-2.1.26.tgz";
+        sha512 = "01paPWYgLrkqAyrlDorC1uDwl2p3qZT7yl806vW7DvDoxwXi46jsjFbg+WdwotBIk6/MbEhO/dh5aZ5sNj/dWQ==";
       };
     };
     "mimic-fn-1.2.0" = {
@@ -6205,13 +6259,13 @@ let
         sha1 = "857fcabfc3397d2625b8228262e86aa7a011b05d";
       };
     };
-    "minimist-1.2.0" = {
+    "minimist-1.2.5" = {
       name = "minimist";
       packageName = "minimist";
-      version = "1.2.0";
+      version = "1.2.5";
       src = fetchurl {
-        url = "https://registry.npmjs.org/minimist/-/minimist-1.2.0.tgz";
-        sha1 = "a35008b20f41383eec1fb914f4cd5df79a264284";
+        url = "https://registry.npmjs.org/minimist/-/minimist-1.2.5.tgz";
+        sha512 = "FM9nNUYrRBAELZQT3xeZQ7fmMOBg6nWNmJKTcgsJeaLstP/UODVpGsr5OhXhhXg6f+qtJ8uiZ+PUxkDWcgIXLw==";
       };
     };
     "mississippi-2.0.0" = {
@@ -6259,13 +6313,13 @@ let
         sha512 = "bV7f+6l2QigeBBZSM/6yTNq4P2fNpSWj/0e7jQcy87A8e7o2nAfP/34/2ky5Vw4B9S446EtIhodAzkFCcR4dQg==";
       };
     };
-    "moment-timezone-0.5.26" = {
+    "moment-timezone-0.5.28" = {
       name = "moment-timezone";
       packageName = "moment-timezone";
-      version = "0.5.26";
+      version = "0.5.28";
       src = fetchurl {
-        url = "https://registry.npmjs.org/moment-timezone/-/moment-timezone-0.5.26.tgz";
-        sha512 = "sFP4cgEKTCymBBKgoxZjYzlSovC20Y6J7y3nanDc5RoBIXKlZhoYwBoZGe3flwU6A372AcRwScH8KiwV6zjy1g==";
+        url = "https://registry.npmjs.org/moment-timezone/-/moment-timezone-0.5.28.tgz";
+        sha512 = "TDJkZvAyKIVWg5EtVqRzU97w0Rb0YVbfpqyjgu6GwXCAohVRqwZjf4fOzDE6p1Ch98Sro/8hQQi65WDXW5STPw==";
       };
     };
     "move-concurrently-1.0.1" = {
@@ -6457,13 +6511,13 @@ let
         sha512 = "M4UBGcs4jeOK9CjTsYwkvH6/MzuUmGCyTW+kCY7uO+1ZVr0+FHGdPdIf5CCLqAaxnRrWidyoQlNkMIIVwbKB8Q==";
       };
     };
-    "nopt-4.0.1" = {
+    "nopt-4.0.3" = {
       name = "nopt";
       packageName = "nopt";
-      version = "4.0.1";
+      version = "4.0.3";
       src = fetchurl {
-        url = "https://registry.npmjs.org/nopt/-/nopt-4.0.1.tgz";
-        sha1 = "d0d4685afd5415193c8c7505602d0d17cd64474d";
+        url = "https://registry.npmjs.org/nopt/-/nopt-4.0.3.tgz";
+        sha512 = "CvaGwVMztSMJLOeXPrez7fyfObdZqNUK1cPAEzLHrTybIua9pMdmmPR5YwtfNftIOMv3DPUhFaxsZMNTQO20Kg==";
       };
     };
     "normalize-package-data-2.5.0" = {
@@ -6520,13 +6574,13 @@ let
         sha1 = "097b602b53422a522c1afb8790318336941a011d";
       };
     };
-    "nwsapi-2.1.4" = {
+    "nwsapi-2.2.0" = {
       name = "nwsapi";
       packageName = "nwsapi";
-      version = "2.1.4";
+      version = "2.2.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/nwsapi/-/nwsapi-2.1.4.tgz";
-        sha512 = "iGfd9Y6SFdTNldEy2L0GUhcarIutFmk+MPWIn9dmj8NMIup03G08uUF2KGbbmv/Ux4RT0VZJoP/sVbWA6d/VIw==";
+        url = "https://registry.npmjs.org/nwsapi/-/nwsapi-2.2.0.tgz";
+        sha512 = "h2AatdwYH+JHiZpv7pt/gSX1XoRGb7L/qSIeuqA6GwYoF9w1vP1cw42TO0aI2pNyshRK5893hNSl+1//vHK7hQ==";
       };
     };
     "oauth-sign-0.9.0" = {
@@ -6565,13 +6619,13 @@ let
         sha512 = "OSuu/pU4ENM9kmREg0BdNrUDIl1heYa4mBZacJc+vVWz4GtAwu7jO8s4AIt2aGRUTqxykpWzI3Oqnsm13tTMDA==";
       };
     };
-    "object-inspect-1.6.0" = {
+    "object-inspect-1.7.0" = {
       name = "object-inspect";
       packageName = "object-inspect";
-      version = "1.6.0";
+      version = "1.7.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/object-inspect/-/object-inspect-1.6.0.tgz";
-        sha512 = "GJzfBZ6DgDAmnuaM3104jR4s1Myxr3Y3zfIyN4z3UdqN69oSRacNK8UhnobDdC+7J2AHCjGwxQubNJfE70SXXQ==";
+        url = "https://registry.npmjs.org/object-inspect/-/object-inspect-1.7.0.tgz";
+        sha512 = "a7pEHdh1xKIAgTySUGgLMx/xwDZskN1Ud6egYYN3EdRW4ZMPNEDUTF+hwy2LUC+Bl+SyLXANnwz/jyh/qutKUw==";
       };
     };
     "object-keys-1.1.1" = {
@@ -6601,13 +6655,13 @@ let
         sha512 = "exHJeq6kBKj58mqGyTQ9DFvrZC/eR6OwxzoM9YRoGBqrXYonaFyGiFMuc9VZrXf7DarreEwMpurG3dd+CNyW5w==";
       };
     };
-    "object.getownpropertydescriptors-2.0.3" = {
+    "object.getownpropertydescriptors-2.1.0" = {
       name = "object.getownpropertydescriptors";
       packageName = "object.getownpropertydescriptors";
-      version = "2.0.3";
+      version = "2.1.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/object.getownpropertydescriptors/-/object.getownpropertydescriptors-2.0.3.tgz";
-        sha1 = "8758c846f5b407adab0f236e0986f14b051caa16";
+        url = "https://registry.npmjs.org/object.getownpropertydescriptors/-/object.getownpropertydescriptors-2.1.0.tgz";
+        sha512 = "Z53Oah9A3TdLoblT7VKJaTDdXdT+lQO+cNpKVnya5JDe9uLvzu1YyY1yFDFrcxrlRgWrEFH0jJtD/IbuwjcEVg==";
       };
     };
     "object.pick-1.3.0" = {
@@ -6709,22 +6763,13 @@ let
         sha512 = "PqHpggC9bLV0VeWcdKhkpxY+3JTzetLSqTCWL/z/tFIbI6G8JCjondXklT1JinczLz2Xib62sSp0T/gKT4KksA==";
       };
     };
-    "optimist-0.6.1" = {
-      name = "optimist";
-      packageName = "optimist";
-      version = "0.6.1";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/optimist/-/optimist-0.6.1.tgz";
-        sha1 = "da3ea74686fa21a19a111c326e90eb15a0196686";
-      };
-    };
-    "optionator-0.8.2" = {
+    "optionator-0.8.3" = {
       name = "optionator";
       packageName = "optionator";
-      version = "0.8.2";
+      version = "0.8.3";
       src = fetchurl {
-        url = "https://registry.npmjs.org/optionator/-/optionator-0.8.2.tgz";
-        sha1 = "364c5e409d3f4d6301d6c0b4c05bba50180aeb64";
+        url = "https://registry.npmjs.org/optionator/-/optionator-0.8.3.tgz";
+        sha512 = "+IW9pACdk3XWmmTXG8m3upGUJst5XRGzxMRjXzAuJ1XnIFNvfhjjIuYkDvysnPQ7qzqVzLt78BCruntqRhWQbA==";
       };
     };
     "ora-3.4.0" = {
@@ -6862,13 +6907,13 @@ let
         sha512 = "vvcXsLAJ9Dr5rQOPk7toZQZJApBl2K4J6dANSsEuh6QI41JYcsS/qhTGa9ErIUUgK3WNQoJYvylxvjqmiqEA9Q==";
       };
     };
-    "p-limit-2.2.1" = {
+    "p-limit-2.2.2" = {
       name = "p-limit";
       packageName = "p-limit";
-      version = "2.2.1";
+      version = "2.2.2";
       src = fetchurl {
-        url = "https://registry.npmjs.org/p-limit/-/p-limit-2.2.1.tgz";
-        sha512 = "85Tk+90UCVWvbDavCLKPOLC9vvY8OwEX/RtKF+/1OADJMVlFfEHOiMTPVyxg7mk/dKa+ipdHm0OUkTvCpMTuwg==";
+        url = "https://registry.npmjs.org/p-limit/-/p-limit-2.2.2.tgz";
+        sha512 = "WGR+xHecKTr7EbUEhyLSh5Dube9JtdiG78ufaeLxTgpudf/20KqyMioIUZJAezlTIi6evxuoUs9YXc11cU+yzQ==";
       };
     };
     "p-locate-2.0.0" = {
@@ -6952,13 +6997,13 @@ let
         sha512 = "R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==";
       };
     };
-    "pako-1.0.10" = {
+    "pako-1.0.11" = {
       name = "pako";
       packageName = "pako";
-      version = "1.0.10";
+      version = "1.0.11";
       src = fetchurl {
-        url = "https://registry.npmjs.org/pako/-/pako-1.0.10.tgz";
-        sha512 = "0DTvPVU3ed8+HNXOu5Bs+o//Mbdj9VNQMUOe9oKCwh8l0GNwpTDMKCWbRjgtD291AWnkAgkqA/LOnQS8AmS1tw==";
+        url = "https://registry.npmjs.org/pako/-/pako-1.0.11.tgz";
+        sha512 = "4hLB8Py4zZce5s4yd9XzopqwVv/yGNhV1Bl8NTmCq1763HeK2+EwVTv+leGeL13Dnh2wfbqowVPXCIO0z4taYw==";
       };
     };
     "parallel-transform-1.2.0" = {
@@ -7096,13 +7141,13 @@ let
         sha1 = "df604178005f522f15eb4490e7247a1bfaa67f8c";
       };
     };
-    "path-to-regexp-1.7.0" = {
+    "path-to-regexp-1.8.0" = {
       name = "path-to-regexp";
       packageName = "path-to-regexp";
-      version = "1.7.0";
+      version = "1.8.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-1.7.0.tgz";
-        sha1 = "59fde0f435badacba103a84e9d3bc64e96b9937d";
+        url = "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-1.8.0.tgz";
+        sha512 = "n43JRhlUKUAlibEJhPeir1ncUID16QnEjNpwzNdO3Lm4ywrBpBZ5oLD0I6br9evr1Y9JTqwRtAh7JLoOzAQdVA==";
       };
     };
     "path-type-3.0.0" = {
@@ -7213,13 +7258,13 @@ let
         sha512 = "2qHaIQr2VLRFoxe2nASzsV6ef4yOOH+Fi9FBOVH6cqeSgUnoyySPZkxzLuzd+RYOQTRpROA0ztTMqxROKSb/nA==";
       };
     };
-    "portfinder-1.0.24" = {
+    "portfinder-1.0.25" = {
       name = "portfinder";
       packageName = "portfinder";
-      version = "1.0.24";
+      version = "1.0.25";
       src = fetchurl {
-        url = "https://registry.npmjs.org/portfinder/-/portfinder-1.0.24.tgz";
-        sha512 = "ekRl7zD2qxYndYflwiryJwMioBI7LI7rVXg3EnLK3sjkouT5eOuhS3gS255XxBksa30VG8UPZYZCdgfGOfkSUg==";
+        url = "https://registry.npmjs.org/portfinder/-/portfinder-1.0.25.tgz";
+        sha512 = "6ElJnHBbxVA1XSLgBp7G1FiCkQdlqGzuF7DswL5tcea+E8UpuvPU7beVAjjRwCioTS9ZluNbu+ZyRvgTsmqEBg==";
       };
     };
     "posix-character-classes-0.1.1" = {
@@ -7249,13 +7294,13 @@ let
         sha1 = "e92434bfa5ea8c19f41cdfd401d741a3c819d897";
       };
     };
-    "prettier-1.18.2" = {
+    "prettier-1.19.1" = {
       name = "prettier";
       packageName = "prettier";
-      version = "1.18.2";
+      version = "1.19.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/prettier/-/prettier-1.18.2.tgz";
-        sha512 = "OeHeMc0JhFE9idD4ZdtNibzY0+TPHSpSSb9h8FqtP+YnoZZ1sl8Vc9b1sasjfymH3SonAF4QcA2+mzHPhMvIiw==";
+        url = "https://registry.npmjs.org/prettier/-/prettier-1.19.1.tgz";
+        sha512 = "s7PoyDv/II1ObgQunCbB9PdLmUcBZcnWOcxDh7O0N/UwDEsHyqkW+Qh28jW+mVuCdx7gLB0BotYI1Y6uI9iyew==";
       };
     };
     "pretty-2.0.0" = {
@@ -7321,13 +7366,13 @@ let
         sha1 = "98472870bf228132fcbdd868129bad12c3c029e3";
       };
     };
-    "prompts-2.2.1" = {
+    "prompts-2.3.1" = {
       name = "prompts";
       packageName = "prompts";
-      version = "2.2.1";
+      version = "2.3.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/prompts/-/prompts-2.2.1.tgz";
-        sha512 = "VObPvJiWPhpZI6C5m60XOzTfnYg/xc/an+r9VYymj9WJW3B/DIH+REzjpAACPf8brwPeP+7vz3bIim3S+AaMjw==";
+        url = "https://registry.npmjs.org/prompts/-/prompts-2.3.1.tgz";
+        sha512 = "qIP2lQyCwYbdzcqHIUi2HAxiWixhoM9OdLCWf8txXsapC/X9YdsCoeyRIXE/GP+Q0J37Q7+XN/MFqbUa7IzXNA==";
       };
     };
     "proto-list-1.2.4" = {
@@ -7339,13 +7384,13 @@ let
         sha1 = "212d5bfe1318306a420f6402b8e26ff39647a849";
       };
     };
-    "proxy-addr-2.0.5" = {
+    "proxy-addr-2.0.6" = {
       name = "proxy-addr";
       packageName = "proxy-addr";
-      version = "2.0.5";
+      version = "2.0.6";
       src = fetchurl {
-        url = "https://registry.npmjs.org/proxy-addr/-/proxy-addr-2.0.5.tgz";
-        sha512 = "t/7RxHXPH6cJtP0pRG6smSr9QJidhB+3kXu0KgXnbGYMgzEnUxRQ4/LDdfOwZEMyIh3/xHb8PX3t+lfL9z+YVQ==";
+        url = "https://registry.npmjs.org/proxy-addr/-/proxy-addr-2.0.6.tgz";
+        sha512 = "dh/frvCBVmSsDYzw6n926jv974gddhkFPfiN8hPOi30Wax25QZyZEGveluCgliBnqmuM+UJmBErbAUFIoDbjOw==";
       };
     };
     "prr-1.0.1" = {
@@ -7366,13 +7411,13 @@ let
         sha1 = "f052a28da70e618917ef0a8ac34c1ae5a68286b3";
       };
     };
-    "psl-1.4.0" = {
+    "psl-1.7.0" = {
       name = "psl";
       packageName = "psl";
-      version = "1.4.0";
+      version = "1.7.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/psl/-/psl-1.4.0.tgz";
-        sha512 = "HZzqCGPecFLyoRj5HLfuDSKYTJkAfB5thKBIkRHtGjWwY7p1dAyveIbXIq4tO0KYfDF2tHqPUgY9SDnGm00uFw==";
+        url = "https://registry.npmjs.org/psl/-/psl-1.7.0.tgz";
+        sha512 = "5NsSEDv8zY70ScRnOTn7bK7eanl2MvFrOrS/R6x+dBt5g1ghnj9Zv90kO8GwT8gxcu2ANyFprnFYB85IogIJOQ==";
       };
     };
     "public-encrypt-4.0.3" = {
@@ -7645,13 +7690,13 @@ let
         sha512 = "9WmIKF6mkvA0SLmA2Knm9+qj89e+j1zqgyn8aXGd7+nAduPoqgI9lO57SAZNn/Byzo5P7JhXTyg9PzaJbH73bA==";
       };
     };
-    "react-is-16.10.2" = {
+    "react-is-16.13.0" = {
       name = "react-is";
       packageName = "react-is";
-      version = "16.10.2";
+      version = "16.13.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/react-is/-/react-is-16.10.2.tgz";
-        sha512 = "INBT1QEgtcCCgvccr5/86CfD71fw9EPmDxgiJX4I2Ddr6ZsV6iFXsuby+qWJPtmNuMY0zByTsG4468P7nHuNWA==";
+        url = "https://registry.npmjs.org/react-is/-/react-is-16.13.0.tgz";
+        sha512 = "GFMtL0vHkiBv9HluwNZTggSn/sCyEt9n02aM0dSAjGGyqyNlAyftYm4phPxdvCigG15JreC5biwxCgTAJZ7yAA==";
       };
     };
     "read-pkg-3.0.0" = {
@@ -7672,22 +7717,22 @@ let
         sha512 = "6etQSH7nJGsK0RbG/2TeDzZFa8shjQ1um+SwQQ5cwKy0dhSXdOncEhb1CPpvQG4h7FyOV6EB6YlV0yJvZQNAkA==";
       };
     };
-    "readable-stream-2.3.6" = {
+    "readable-stream-2.3.7" = {
       name = "readable-stream";
       packageName = "readable-stream";
-      version = "2.3.6";
+      version = "2.3.7";
       src = fetchurl {
-        url = "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.6.tgz";
-        sha512 = "tQtKA9WIAhBF3+VLAseyMqZeBjW0AHJoxOtYqSUZNJxauErmLbVm2FW1y+J/YA9dUrAC39ITejlZWhVIwawkKw==";
+        url = "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz";
+        sha512 = "Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==";
       };
     };
-    "readable-stream-3.4.0" = {
+    "readable-stream-3.6.0" = {
       name = "readable-stream";
       packageName = "readable-stream";
-      version = "3.4.0";
+      version = "3.6.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/readable-stream/-/readable-stream-3.4.0.tgz";
-        sha512 = "jItXPLmrSR8jmTRmRWJXCnGJsfy85mB3Wd/uINMXA65yrnFo0cPClFIUWzo2najVNSl+mx7/4W8ttlLWJe99pQ==";
+        url = "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.0.tgz";
+        sha512 = "BViHy7LKeTz4oNnkcLJ+lVSL6vpiFeX6/d3oSH8zCW7UxP2onchk+vTGB143xuFjHS3deTgkKoXXymXqymiIdA==";
       };
     };
     "readdirp-2.2.1" = {
@@ -7816,31 +7861,31 @@ let
         sha1 = "5214c53a926d3552707527fbab415dbc08d06dda";
       };
     };
-    "request-2.88.0" = {
+    "request-2.88.2" = {
       name = "request";
       packageName = "request";
-      version = "2.88.0";
+      version = "2.88.2";
       src = fetchurl {
-        url = "https://registry.npmjs.org/request/-/request-2.88.0.tgz";
-        sha512 = "NAqBSrijGLZdM0WZNsInLJpkJokL72XYjUpnB0iwsRgxh7dB6COrHnTBNwN0E+lHDAJzu7kLAkDeY08z2/A0hg==";
+        url = "https://registry.npmjs.org/request/-/request-2.88.2.tgz";
+        sha512 = "MsvtOrfG9ZcrOwAW+Qi+F6HbD0CWXEh9ou77uOb7FM2WPhwT7smM833PzanhJLsgXjN89Ir6V2PczXNnMpwKhw==";
       };
     };
-    "request-promise-core-1.1.2" = {
+    "request-promise-core-1.1.3" = {
       name = "request-promise-core";
       packageName = "request-promise-core";
-      version = "1.1.2";
+      version = "1.1.3";
       src = fetchurl {
-        url = "https://registry.npmjs.org/request-promise-core/-/request-promise-core-1.1.2.tgz";
-        sha512 = "UHYyq1MO8GsefGEt7EprS8UrXsm1TxEvFUX1IMTuSLU2Rh7fTIdFtl8xD7JiEYiWU2dl+NYAjCTksTehQUxPag==";
+        url = "https://registry.npmjs.org/request-promise-core/-/request-promise-core-1.1.3.tgz";
+        sha512 = "QIs2+ArIGQVp5ZYbWD5ZLCY29D5CfWizP8eWnm8FoGD1TX61veauETVQbrV60662V0oFBkrDOuaBI8XgtuyYAQ==";
       };
     };
-    "request-promise-native-1.0.7" = {
+    "request-promise-native-1.0.8" = {
       name = "request-promise-native";
       packageName = "request-promise-native";
-      version = "1.0.7";
+      version = "1.0.8";
       src = fetchurl {
-        url = "https://registry.npmjs.org/request-promise-native/-/request-promise-native-1.0.7.tgz";
-        sha512 = "rIMnbBdgNViL37nZ1b3L/VfPOpSi0TqVDQPAvO6U14lMzOLrt5nilxCQqtDKhZeDiW0/hkCXGoQjhgJd/tCh6w==";
+        url = "https://registry.npmjs.org/request-promise-native/-/request-promise-native-1.0.8.tgz";
+        sha512 = "dapwLGqkHtwL5AEbfenuzjTYg35Jd6KPytsC2/TLkVMz8rm+tNt72MGUWT1RP/aYawMpN6HqbNGBQaRcBtjQMQ==";
       };
     };
     "require-directory-2.1.1" = {
@@ -7888,13 +7933,13 @@ let
         sha1 = "203114d82ad2c5ed9e8e0411b3932875e889e97b";
       };
     };
-    "resolve-1.12.0" = {
+    "resolve-1.15.1" = {
       name = "resolve";
       packageName = "resolve";
-      version = "1.12.0";
+      version = "1.15.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/resolve/-/resolve-1.12.0.tgz";
-        sha512 = "B/dOmuoAik5bKcD6s6nXDCjzUKnaDvdkRyAk6rsmsKLipWj4797iothd7jmmUhWTfinVMU+wc56rYKsit2Qy4w==";
+        url = "https://registry.npmjs.org/resolve/-/resolve-1.15.1.tgz";
+        sha512 = "84oo6ZTtoTUpjgNEr5SJyzQhzL72gaRodsSfyxC/AXRvwu0Yse9H8eF9IpGo7b8YetZhlI6v7ZQ6bKBFV/6S7w==";
       };
     };
     "resolve-cwd-2.0.0" = {
@@ -8023,13 +8068,13 @@ let
         sha1 = "e848396f057d223f24386924618e25694161ec47";
       };
     };
-    "rxjs-6.5.3" = {
+    "rxjs-6.5.4" = {
       name = "rxjs";
       packageName = "rxjs";
-      version = "6.5.3";
+      version = "6.5.4";
       src = fetchurl {
-        url = "https://registry.npmjs.org/rxjs/-/rxjs-6.5.3.tgz";
-        sha512 = "wuYsAYYFdWTAnAaPoKGNhfpWwKZbJW+HgAJ+mImp+Epl7BG8oNWBCTyRM8gba9k4lk8BgWdoYm21Mo/RYhhbgA==";
+        url = "https://registry.npmjs.org/rxjs/-/rxjs-6.5.4.tgz";
+        sha512 = "naMQXcgEo3csAEGvw/NydRA0fuS2nDZJiw1YUWFKU7aPPAPGZEsD4Iimit96qwCieH6y614MCLYwdkrWx7z/7Q==";
       };
     };
     "safe-buffer-5.1.2" = {
@@ -8149,6 +8194,15 @@ let
         sha512 = "0Vb/54WJ6k5v8sSWN09S0ora+Hnr+cX40r9F170nT+mSkaxltoE/7R3OrIdBSUv1OoiobH1QoWQbCnAO+e8J1A==";
       };
     };
+    "serialize-javascript-2.1.2" = {
+      name = "serialize-javascript";
+      packageName = "serialize-javascript";
+      version = "2.1.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/serialize-javascript/-/serialize-javascript-2.1.2.tgz";
+        sha512 = "rs9OggEUF0V4jUSecXazOYsLfu7OGK2qIn3c7IPBiffz32XniEp/TX9Xmc9LQfK2nQ2QKHvZ2oygKUGU0lG4jQ==";
+      };
+    };
     "serve-index-1.9.1" = {
       name = "serve-index";
       packageName = "serve-index";
@@ -8284,13 +8338,13 @@ let
         sha512 = "+gXuzJFpGtK9zCa7rPMMNs8AF2weWMsB0Vlyym5VkFX2VGQ3VBzKhnxPN//PWrGuPFGQ/u0F1yL6rZoPhj/KPQ==";
       };
     };
-    "sisteransi-1.0.3" = {
+    "sisteransi-1.0.4" = {
       name = "sisteransi";
       packageName = "sisteransi";
-      version = "1.0.3";
+      version = "1.0.4";
       src = fetchurl {
-        url = "https://registry.npmjs.org/sisteransi/-/sisteransi-1.0.3.tgz";
-        sha512 = "SbEG75TzH8G7eVXFSN5f9EExILKfly7SUvVY5DhhYLvfhKqhDFY0OzevWa/zwak0RLRfWS5AvfMWpd9gJvr5Yg==";
+        url = "https://registry.npmjs.org/sisteransi/-/sisteransi-1.0.4.tgz";
+        sha512 = "/ekMoM4NJ59ivGSfKapeG+FWtrmWvA1p6FBZwXrqojw90vJu8lBmrTxCMuBCydKtkaUe2zt4PlxeTKpjwMbyig==";
       };
     };
     "slash-1.0.0" = {
@@ -8392,13 +8446,13 @@ let
         sha512 = "UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==";
       };
     };
-    "source-map-resolve-0.5.2" = {
+    "source-map-resolve-0.5.3" = {
       name = "source-map-resolve";
       packageName = "source-map-resolve";
-      version = "0.5.2";
+      version = "0.5.3";
       src = fetchurl {
-        url = "https://registry.npmjs.org/source-map-resolve/-/source-map-resolve-0.5.2.tgz";
-        sha512 = "MjqsvNwyz1s0k81Goz/9vRBe9SZdB09Bdw+/zYyO+3CuPk6fouTaxscHkgtE8jKvf01kVfl8riHzERQ/kefaSA==";
+        url = "https://registry.npmjs.org/source-map-resolve/-/source-map-resolve-0.5.3.tgz";
+        sha512 = "Htz+RnsXWk5+P2slx5Jh3Q66vhQj1Cllm0zvnaY98+NFx+Dv2CF/f5O/t8x+KaNdrdIAsruNzoh/KpialbqAnw==";
       };
     };
     "source-map-support-0.4.18" = {
@@ -8410,13 +8464,13 @@ let
         sha512 = "try0/JqxPLF9nOjvSta7tVondkP5dwgyLDjVoyMDlmjugT2lRZ1OfsrYTkCd2hkDnJTKRbO/Rl3orm8vlsUzbA==";
       };
     };
-    "source-map-support-0.5.13" = {
+    "source-map-support-0.5.16" = {
       name = "source-map-support";
       packageName = "source-map-support";
-      version = "0.5.13";
+      version = "0.5.16";
       src = fetchurl {
-        url = "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.13.tgz";
-        sha512 = "SHSKFHadjVA5oR4PPqhtAVdcBWwRYVd6g6cAXnIbRiIwc2EhPrTuKUBdSLvlEKyIP3GCf89fltvcZiP9MMFA1w==";
+        url = "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.16.tgz";
+        sha512 = "efyLRJDr68D9hBBNIPWFjhpFzURh+KJykQwvMyW5UiZzYwoF6l4YMMDIJJEyFWxWCqfyxLzz6tSfUFR+kXXsVQ==";
       };
     };
     "source-map-url-0.4.0" = {
@@ -8590,13 +8644,13 @@ let
         sha512 = "+TSkfINHDo4J+ZobQLWiMouQYB+UVYFttRA94FpEzzJ7ZdqcL4uUUQ7WkdkI4DSozGmgBUE/a47L+38PenXhUw==";
       };
     };
-    "stream-shift-1.0.0" = {
+    "stream-shift-1.0.1" = {
       name = "stream-shift";
       packageName = "stream-shift";
-      version = "1.0.0";
+      version = "1.0.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/stream-shift/-/stream-shift-1.0.0.tgz";
-        sha1 = "d5c752825e5367e786f78e18e445ea223a155952";
+        url = "https://registry.npmjs.org/stream-shift/-/stream-shift-1.0.1.tgz";
+        sha512 = "AiisoFqQ0vbGcZgQPY1cdP2I76glaVA/RauYR4G4thNFgkTqr90yXTo4LYX60Jl+sIlPNHHdGSwo01AvbKUSVQ==";
       };
     };
     "strict-uri-encode-1.1.0" = {
@@ -8644,22 +8698,22 @@ let
         sha512 = "vafcv6KjVZKSgz06oM/H6GDBrAtz8vdhQakGjFIvNrHA6y3HCF1CInLy+QLq8dTJPQ1b+KDUqDFctkdRW44e1w==";
       };
     };
-    "string.prototype.trimleft-2.1.0" = {
+    "string.prototype.trimleft-2.1.1" = {
       name = "string.prototype.trimleft";
       packageName = "string.prototype.trimleft";
-      version = "2.1.0";
+      version = "2.1.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/string.prototype.trimleft/-/string.prototype.trimleft-2.1.0.tgz";
-        sha512 = "FJ6b7EgdKxxbDxc79cOlok6Afd++TTs5szo+zJTUyow3ycrRfJVE2pq3vcN53XexvKZu/DJMDfeI/qMiZTrjTw==";
+        url = "https://registry.npmjs.org/string.prototype.trimleft/-/string.prototype.trimleft-2.1.1.tgz";
+        sha512 = "iu2AGd3PuP5Rp7x2kEZCrB2Nf41ehzh+goo8TV7z8/XDBbsvc6HQIlUl9RjkZ4oyrW1XM5UwlGl1oVEaDjg6Ag==";
       };
     };
-    "string.prototype.trimright-2.1.0" = {
+    "string.prototype.trimright-2.1.1" = {
       name = "string.prototype.trimright";
       packageName = "string.prototype.trimright";
-      version = "2.1.0";
+      version = "2.1.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/string.prototype.trimright/-/string.prototype.trimright-2.1.0.tgz";
-        sha512 = "fXZTSV55dNBwv16uw+hh5jkghxSnc5oHq+5K/gXgizHwAvMetdAJlHqqoFC1FSDVPYWLkAKl2cxpUT41sV7nSg==";
+        url = "https://registry.npmjs.org/string.prototype.trimright/-/string.prototype.trimright-2.1.1.tgz";
+        sha512 = "qFvWL3/+QIgZXVmJBfpHmxLB7xsUXz6HsUmP8+5dRaC3Q7oKUv9Vo6aMCRZC1smrtyECFsIT30PqBJ1gTjAs+g==";
       };
     };
     "string_decoder-1.1.1" = {
@@ -8761,22 +8815,22 @@ let
         sha512 = "4WK/bYZmj8xLr+HUCODHGF1ZFzsYffasLUgEiMBY4fgtltdO6B4WJtlSbPaDTLpYTcGVwM2qLnFTICEcNxs3kA==";
       };
     };
-    "terser-4.3.8" = {
+    "terser-4.6.6" = {
       name = "terser";
       packageName = "terser";
-      version = "4.3.8";
+      version = "4.6.6";
       src = fetchurl {
-        url = "https://registry.npmjs.org/terser/-/terser-4.3.8.tgz";
-        sha512 = "otmIRlRVmLChAWsnSFNO0Bfk6YySuBp6G9qrHiJwlLDd4mxe2ta4sjI7TzIR+W1nBMjilzrMcPOz9pSusgx3hQ==";
+        url = "https://registry.npmjs.org/terser/-/terser-4.6.6.tgz";
+        sha512 = "4lYPyeNmstjIIESr/ysHg2vUPRGf2tzF9z2yYwnowXVuVzLEamPN1Gfrz7f8I9uEPuHcbFlW4PLIAsJoxXyJ1g==";
       };
     };
-    "terser-webpack-plugin-1.4.1" = {
+    "terser-webpack-plugin-1.4.3" = {
       name = "terser-webpack-plugin";
       packageName = "terser-webpack-plugin";
-      version = "1.4.1";
+      version = "1.4.3";
       src = fetchurl {
-        url = "https://registry.npmjs.org/terser-webpack-plugin/-/terser-webpack-plugin-1.4.1.tgz";
-        sha512 = "ZXmmfiwtCLfz8WKZyYUuuHf3dMYEjg8NrjHMb0JqHVHVOSkzp3cW2/XG1fP3tRhqEqSzMwzzRQGtAPbs4Cncxg==";
+        url = "https://registry.npmjs.org/terser-webpack-plugin/-/terser-webpack-plugin-1.4.3.tgz";
+        sha512 = "QMxecFz/gHQwteWwSo5nTc6UaICqN1bMedC5sMtUc7y3Ha3Q8y6ZO0iCR8pq4RJC8Hjf0FEPEHZqcMB/+DFCrA==";
       };
     };
     "test-exclude-5.2.3" = {
@@ -8824,13 +8878,13 @@ let
         sha512 = "/mrRod8xqpA+IHSLyGCQ2s8SPHiCDEeQJSep1jqLYeEUClOFG2Qsh+4FU6G9VeqpZnGW/Su8LQGc4YKni5rYSQ==";
       };
     };
-    "thunky-1.0.3" = {
+    "thunky-1.1.0" = {
       name = "thunky";
       packageName = "thunky";
-      version = "1.0.3";
+      version = "1.1.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/thunky/-/thunky-1.0.3.tgz";
-        sha512 = "YwT8pjmNcAXBZqrubu22P4FYsh2D4dxRmnWBOL8Jk8bUcRUtc5326kx32tuTmFDAZtLOGEVNl8POAR8j896Iow==";
+        url = "https://registry.npmjs.org/thunky/-/thunky-1.1.0.tgz";
+        sha512 = "eHY7nBftgThBqOyHGVN+l8gF0BucP09fMo0oO/Lb0w1OF80dJv+lDVpXG60WMQvkcxAkNybKsrEIE3ZtKGmPrA==";
       };
     };
     "timed-out-4.0.1" = {
@@ -8932,13 +8986,13 @@ let
         sha1 = "ceeefc717a76c4316f126d0b9dbaa55d7e7df01a";
       };
     };
-    "tough-cookie-2.4.3" = {
+    "tough-cookie-2.5.0" = {
       name = "tough-cookie";
       packageName = "tough-cookie";
-      version = "2.4.3";
+      version = "2.5.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/tough-cookie/-/tough-cookie-2.4.3.tgz";
-        sha512 = "Q5srk/4vDM54WJsJio3XNn6K2sCG+CQ8G5Wz6bZhRZoAe/+TxjWB/GlFAnYEbkYVlON9FMk/fE3h2RLpPXo4lQ==";
+        url = "https://registry.npmjs.org/tough-cookie/-/tough-cookie-2.5.0.tgz";
+        sha512 = "nlLsUzgm1kfLXSXfRZMc1KLAugd4hqJHDTvc2hDIwS3mZAfMEuMbc03SujMF+GEcpaX/qboeycw6iO8JwVv2+g==";
       };
     };
     "tr46-1.0.1" = {
@@ -8968,22 +9022,31 @@ let
         sha512 = "c3zayb8/kWWpycWYg87P71E1S1ZL6b6IJxfb5fvsUgsf0S2MVGaDhDXXjDMpdCpfWXqptc+4mXwmiy1ypXqRAA==";
       };
     };
-    "ts-jest-24.1.0" = {
+    "ts-jest-24.3.0" = {
       name = "ts-jest";
       packageName = "ts-jest";
-      version = "24.1.0";
+      version = "24.3.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/ts-jest/-/ts-jest-24.1.0.tgz";
-        sha512 = "HEGfrIEAZKfu1pkaxB9au17b1d9b56YZSqz5eCVE8mX68+5reOvlM93xGOzzCREIov9mdH7JBG+s0UyNAqr0tQ==";
+        url = "https://registry.npmjs.org/ts-jest/-/ts-jest-24.3.0.tgz";
+        sha512 = "Hb94C/+QRIgjVZlJyiWwouYUF+siNJHJHknyspaOcZ+OQAIdFG/UrdQVXw/0B8Z3No34xkUXZJpOTy9alOWdVQ==";
       };
     };
-    "tslib-1.10.0" = {
+    "tslib-1.11.1" = {
       name = "tslib";
       packageName = "tslib";
-      version = "1.10.0";
+      version = "1.11.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/tslib/-/tslib-1.11.1.tgz";
+        sha512 = "aZW88SY8kQbU7gpV19lN24LtXh/yD4ZZg6qieAJDDg+YBsJcSmLGK9QpnUjAKVG/xefmvJGd1WUmfpT/g6AJGA==";
+      };
+    };
+    "tsscmp-1.0.6" = {
+      name = "tsscmp";
+      packageName = "tsscmp";
+      version = "1.0.6";
       src = fetchurl {
-        url = "https://registry.npmjs.org/tslib/-/tslib-1.10.0.tgz";
-        sha512 = "qOebF53frne81cf0S9B41ByenJ3/IuH8yJKngAX35CmiZySA0khhkovshKK+jGCaMnVomla7gVlIcc3EvKPbTQ==";
+        url = "https://registry.npmjs.org/tsscmp/-/tsscmp-1.0.6.tgz";
+        sha512 = "LxhtAkPDTkVCMQjt2h6eBVY28KCjikZqZfMcC15YBeNjkgUpdCfBu5HoiOTDu86v6smE8yOjyEktJ8hlbANHQA==";
       };
     };
     "tty-browserify-0.0.0" = {
@@ -9022,6 +9085,15 @@ let
         sha512 = "+5nt5AAniqsCnu2cEQQdpzCAh33kVx8n0VoFidKpB1dVVLAN/F+bgVOqOJqOnEnrhp222clB5p3vUlD+1QAnfg==";
       };
     };
+    "type-2.0.0" = {
+      name = "type";
+      packageName = "type";
+      version = "2.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/type/-/type-2.0.0.tgz";
+        sha512 = "KBt58xCHry4Cejnc2ISQAF7QY+ORngsWfxezO68+12hKV6lQY8P/psIkcbjeHWn7MqcgciWJyCCevFMJdIXpow==";
+      };
+    };
     "type-check-0.3.2" = {
       name = "type-check";
       packageName = "type-check";
@@ -9058,13 +9130,13 @@ let
         sha512 = "zdu8XMNEDepKKR+XYOXAVPtWui0ly0NtohUscw+UmaHiAWT8hrV1rr//H6V+0DvJ3OQ19S979M0laLfX8rm82Q==";
       };
     };
-    "typescript-3.6.3" = {
+    "typescript-3.8.3" = {
       name = "typescript";
       packageName = "typescript";
-      version = "3.6.3";
+      version = "3.8.3";
       src = fetchurl {
-        url = "https://registry.npmjs.org/typescript/-/typescript-3.6.3.tgz";
-        sha512 = "N7bceJL1CtRQ2RiG0AQME13ksR7DiuQh/QehubYcghzv20tnh+MQnQIuJddTmsbqYj+dztchykemz0zFzlvdQw==";
+        url = "https://registry.npmjs.org/typescript/-/typescript-3.8.3.tgz";
+        sha512 = "MYlEfn5VrLNsgudQTVJeNaQFUAI7DkhnOjdpAp4T+ku1TfQClewlbSuTVHiA+8skNBgaf02TL/kLOvig4y3G8w==";
       };
     };
     "typical-4.0.0" = {
@@ -9085,15 +9157,6 @@ let
         sha1 = "29c5733148057bb4e1f75df35b7a9cb72e6a59dd";
       };
     };
-    "uglify-js-3.6.0" = {
-      name = "uglify-js";
-      packageName = "uglify-js";
-      version = "3.6.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/uglify-js/-/uglify-js-3.6.0.tgz";
-        sha512 = "W+jrUHJr3DXKhrsS7NUVxn3zqMOFn0hL/Ei6v0anCIMoKC93TjcflTagwIHLW7SfMFfiQuktQyFVCFHGUE0+yg==";
-      };
-    };
     "uglify-to-browserify-1.0.2" = {
       name = "uglify-to-browserify";
       packageName = "uglify-to-browserify";
@@ -9103,13 +9166,13 @@ let
         sha1 = "6e0924d6bda6b5afe349e39a6d632850a0f882b7";
       };
     };
-    "underscore-1.9.1" = {
+    "underscore-1.9.2" = {
       name = "underscore";
       packageName = "underscore";
-      version = "1.9.1";
+      version = "1.9.2";
       src = fetchurl {
-        url = "https://registry.npmjs.org/underscore/-/underscore-1.9.1.tgz";
-        sha512 = "5/4etnCkd9c8gwgowi5/om/mYO5ajCaOgdzj/oW+0eQV9WxKBDZw5+ycmKmeaTXjInS/W0BzpGLo2xR2aBwZdg==";
+        url = "https://registry.npmjs.org/underscore/-/underscore-1.9.2.tgz";
+        sha512 = "D39qtimx0c1fI3ya1Lnhk3E9nONswSKhnffBI0gME9C99fYOkNi04xs8K6pePLhvl1frbDemkaBQ5ikWllR2HQ==";
       };
     };
     "union-value-1.0.1" = {
@@ -9175,13 +9238,13 @@ let
         sha512 = "KY9Frmirql91X2Qgjry0Wd4Y+YTdrdZheS8TFwvkbLWf/G5KNJDCh6pKL5OZctEW4+0Baa5idK2ZQuELRwPznQ==";
       };
     };
-    "urijs-1.19.1" = {
+    "urijs-1.19.2" = {
       name = "urijs";
       packageName = "urijs";
-      version = "1.19.1";
+      version = "1.19.2";
       src = fetchurl {
-        url = "https://registry.npmjs.org/urijs/-/urijs-1.19.1.tgz";
-        sha512 = "xVrGVi94ueCJNrBSTjWqjvtgvl3cyOTThp2zaMaFNGp3F542TR6sM3f2o8RqZl+AwteClSVmoCyt0ka4RjQOQg==";
+        url = "https://registry.npmjs.org/urijs/-/urijs-1.19.2.tgz";
+        sha512 = "s/UIq9ap4JPZ7H1EB5ULo/aOUbWqfDi7FKzMC2Nz+0Si8GiT1rIEaprt8hy3Vy2Ex2aJPpOQv4P4DuOZ+K1c6w==";
       };
     };
     "urix-0.1.0" = {
@@ -9265,13 +9328,13 @@ let
         sha1 = "450d4dc9fa70de732762fbd2d4a28981419a0ccf";
       };
     };
-    "util.promisify-1.0.0" = {
+    "util.promisify-1.0.1" = {
       name = "util.promisify";
       packageName = "util.promisify";
-      version = "1.0.0";
+      version = "1.0.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/util.promisify/-/util.promisify-1.0.0.tgz";
-        sha512 = "i+6qA2MPhvoKLuxnJNpXAGhg7HphQOSUq2LKMZD0m15EiskXUkMvKdF4Uui0WYeCUGea+o2cw/ZuwehtfsrNkA==";
+        url = "https://registry.npmjs.org/util.promisify/-/util.promisify-1.0.1.tgz";
+        sha512 = "g9JpC/3He3bm38zsLupWryXHoEcS22YHthuPQSJdMy6KNrzIRzWqcsHzD/WUnqe45whVou4VIsPew37DoXWNrA==";
       };
     };
     "utils-merge-1.0.1" = {
@@ -9283,13 +9346,13 @@ let
         sha1 = "9f95710f50a267947b2ccc124741c1028427e713";
       };
     };
-    "uuid-3.3.3" = {
+    "uuid-3.4.0" = {
       name = "uuid";
       packageName = "uuid";
-      version = "3.3.3";
+      version = "3.4.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/uuid/-/uuid-3.3.3.tgz";
-        sha512 = "pW0No1RGHgzlpHJO1nsVrHKpOEIxkGg1xB+v0ZmdNH5OAeAwzAVrCnI2/6Mtx+Uys6iaylxa+D3g4j63IKKjSQ==";
+        url = "https://registry.npmjs.org/uuid/-/uuid-3.4.0.tgz";
+        sha512 = "HjSDRw6gZE5JMggctHBcjVak08+KEVhSIiDzFnT9S9aegmp85S/bReBVTb4QTFaRNptJ9kuYaNhnbNEOkbKb/A==";
       };
     };
     "v8-compile-cache-2.0.3" = {
@@ -9328,13 +9391,13 @@ let
         sha1 = "3a105ca17053af55d6e270c1f8288682e18da400";
       };
     };
-    "vm-browserify-1.1.0" = {
+    "vm-browserify-1.1.2" = {
       name = "vm-browserify";
       packageName = "vm-browserify";
-      version = "1.1.0";
+      version = "1.1.2";
       src = fetchurl {
-        url = "https://registry.npmjs.org/vm-browserify/-/vm-browserify-1.1.0.tgz";
-        sha512 = "iq+S7vZJE60yejDYM0ek6zg308+UZsdtPExWP9VZoCFCz1zkJoXFnAX7aZfd/ZwrkidzdUZL0C/ryW+JwAiIGw==";
+        url = "https://registry.npmjs.org/vm-browserify/-/vm-browserify-1.1.2.tgz";
+        sha512 = "2ham8XPWTONajOR0ohOKOHXkm3+gaBmGut3SRuu75xLd/RRaY6vqgh8NBYYk7+RW3u5AtzPQZG8F10LHkl0lAQ==";
       };
     };
     "void-elements-2.0.1" = {
@@ -9346,13 +9409,13 @@ let
         sha1 = "c066afb582bb1cb4128d60ea92392e94d5e9dbec";
       };
     };
-    "w3c-hr-time-1.0.1" = {
+    "w3c-hr-time-1.0.2" = {
       name = "w3c-hr-time";
       packageName = "w3c-hr-time";
-      version = "1.0.1";
+      version = "1.0.2";
       src = fetchurl {
-        url = "https://registry.npmjs.org/w3c-hr-time/-/w3c-hr-time-1.0.1.tgz";
-        sha1 = "82ac2bff63d950ea9e3189a58a65625fedf19045";
+        url = "https://registry.npmjs.org/w3c-hr-time/-/w3c-hr-time-1.0.2.tgz";
+        sha512 = "z8P5DvDNjKDoFIHK7q8r8lackT6l+jo/Ye3HOle7l9nICP9lf1Ci25fy9vHd0JOWewkIFzXIEig3TdKT7JQ5fQ==";
       };
     };
     "walker-1.0.7" = {
@@ -9400,31 +9463,31 @@ let
         sha512 = "YQ+BmxuTgd6UXZW3+ICGfyqRyHXVlD5GtQr5+qjiNW7bF0cqrzX500HVXPBOvgXb5YnzDd+h0zqyv61KUD7+Sg==";
       };
     };
-    "webpack-4.41.0" = {
+    "webpack-4.42.0" = {
       name = "webpack";
       packageName = "webpack";
-      version = "4.41.0";
+      version = "4.42.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/webpack/-/webpack-4.41.0.tgz";
-        sha512 = "yNV98U4r7wX1VJAj5kyMsu36T8RPPQntcb5fJLOsMz/pt/WrKC0Vp1bAlqPLkA1LegSwQwf6P+kAbyhRKVQ72g==";
+        url = "https://registry.npmjs.org/webpack/-/webpack-4.42.0.tgz";
+        sha512 = "EzJRHvwQyBiYrYqhyjW9AqM90dE4+s1/XtCfn7uWg6cS72zH+2VPFAlsnW0+W0cDi0XRjNKUMoJtpSi50+Ph6w==";
       };
     };
-    "webpack-bundle-analyzer-3.5.2" = {
+    "webpack-bundle-analyzer-3.6.1" = {
       name = "webpack-bundle-analyzer";
       packageName = "webpack-bundle-analyzer";
-      version = "3.5.2";
+      version = "3.6.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/webpack-bundle-analyzer/-/webpack-bundle-analyzer-3.5.2.tgz";
-        sha512 = "g9spCNe25QYUVqHRDkwG414GTok2m7pTTP0wr6l0J50Z3YLS04+BGodTqqoVBL7QfU/U/9p/oiI5XFOyfZ7S/A==";
+        url = "https://registry.npmjs.org/webpack-bundle-analyzer/-/webpack-bundle-analyzer-3.6.1.tgz";
+        sha512 = "Nfd8HDwfSx1xBwC+P8QMGvHAOITxNBSvu/J/mCJvOwv+G4VWkU7zir9SSenTtyCi0LnVtmsc7G5SZo1uV+bxRw==";
       };
     };
-    "webpack-cli-3.3.9" = {
+    "webpack-cli-3.3.11" = {
       name = "webpack-cli";
       packageName = "webpack-cli";
-      version = "3.3.9";
+      version = "3.3.11";
       src = fetchurl {
-        url = "https://registry.npmjs.org/webpack-cli/-/webpack-cli-3.3.9.tgz";
-        sha512 = "xwnSxWl8nZtBl/AFJCOn9pG7s5CYUYdZxmmukv+fAHLcBIHM36dImfpQg3WfShZXeArkWlf6QRw24Klcsv8a5A==";
+        url = "https://registry.npmjs.org/webpack-cli/-/webpack-cli-3.3.11.tgz";
+        sha512 = "dXlfuml7xvAFwYUPsrtQAA9e4DOe58gnzSxhgrO/ZM/gyXTBowrsYeubyN4mqGhYdpXMFNyQ6emjJS9M7OBd4g==";
       };
     };
     "webpack-dev-middleware-3.7.2" = {
@@ -9436,13 +9499,13 @@ let
         sha512 = "1xC42LxbYoqLNAhV6YzTYacicgMZQTqRd27Sim9wn5hJrX3I5nxYy1SxSd4+gjUFsz1dQFj+yEe6zEVmSkeJjw==";
       };
     };
-    "webpack-dev-server-3.8.2" = {
+    "webpack-dev-server-3.10.3" = {
       name = "webpack-dev-server";
       packageName = "webpack-dev-server";
-      version = "3.8.2";
+      version = "3.10.3";
       src = fetchurl {
-        url = "https://registry.npmjs.org/webpack-dev-server/-/webpack-dev-server-3.8.2.tgz";
-        sha512 = "0xxogS7n5jHDQWy0WST0q6Ykp7UGj4YvWh+HVN71JoE7BwPxMZrwgraBvmdEMbDVMBzF0u+mEzn8TQzBm5NYJQ==";
+        url = "https://registry.npmjs.org/webpack-dev-server/-/webpack-dev-server-3.10.3.tgz";
+        sha512 = "e4nWev8YzEVNdOMcNzNeCN947sWJNd43E5XvsJzbAL08kGc2frm1tQ32hTJslRS+H65LCb/AaUCYU7fjHCpDeQ==";
       };
     };
     "webpack-log-1.2.0" = {
@@ -9472,13 +9535,13 @@ let
         sha512 = "lgTS3Xhv1lCOKo7SA5TjKXMjpSM4sBjNV5+q2bqesbSPs5FjGmU6jjtBSkX9b4qW87vDIsCIlUPOEhbZrMdjeQ==";
       };
     };
-    "websocket-1.0.30" = {
+    "websocket-1.0.31" = {
       name = "websocket";
       packageName = "websocket";
-      version = "1.0.30";
+      version = "1.0.31";
       src = fetchurl {
-        url = "https://registry.npmjs.org/websocket/-/websocket-1.0.30.tgz";
-        sha512 = "aO6klgaTdSMkhfl5VVJzD5fm+Srhh5jLYbS15+OiI1sN6h/RU/XW6WN9J1uVIpUKNmsTvT3Hs35XAFjn9NMfOw==";
+        url = "https://registry.npmjs.org/websocket/-/websocket-1.0.31.tgz";
+        sha512 = "VAouplvGKPiKFDTeCCO65vYHsyay8DqoBSlzIO3fayrfOgU94lQN5a1uWVnFrMLceTJw/+fQXR5PGbUVRaHshQ==";
       };
     };
     "websocket-driver-0.7.3" = {
@@ -9526,13 +9589,13 @@ let
         sha512 = "rhRZRqx/TLJQWUpQ6bmrt2UV4f0HCQ463yQuONJqC6fO2VoEb1pTYddbe59SkYq87aoM5A3bdhMZiUiVws+fzQ==";
       };
     };
-    "whatwg-url-7.0.0" = {
+    "whatwg-url-7.1.0" = {
       name = "whatwg-url";
       packageName = "whatwg-url";
-      version = "7.0.0";
+      version = "7.1.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/whatwg-url/-/whatwg-url-7.0.0.tgz";
-        sha512 = "37GeVSIJ3kn1JgKyjiYNmSLP1yzbpb29jdmwBSgkD9h40/hyrR/OifpVUndji3tmwGgD8qpw7iQu3RSbCrBpsQ==";
+        url = "https://registry.npmjs.org/whatwg-url/-/whatwg-url-7.1.0.tgz";
+        sha512 = "WUu7Rg1DroM7oQvGWfOiAK21n74Gg+T4elXEQYkOhtyLeWiJFoOGLXPKI/9gzIie9CtwVLm8wtw6YJdKyxSjeg==";
       };
     };
     "which-1.3.1" = {
@@ -9571,6 +9634,15 @@ let
         sha1 = "fa4daa92daf32c4ea94ed453c81f04686b575dfe";
       };
     };
+    "word-wrap-1.2.3" = {
+      name = "word-wrap";
+      packageName = "word-wrap";
+      version = "1.2.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/word-wrap/-/word-wrap-1.2.3.tgz";
+        sha512 = "Hz/mrNwitNRh/HUAtM/VT/5VH+ygD6DV7mYKZAtHOrbs8U7lvPS6xf7EJKMF0uW1KJCl0H701g3ZGus+muE5vQ==";
+      };
+    };
     "wordwrap-0.0.2" = {
       name = "wordwrap";
       packageName = "wordwrap";
@@ -9580,15 +9652,6 @@ let
         sha1 = "b79669bb42ecb409f83d583cad52ca17eaa1643f";
       };
     };
-    "wordwrap-1.0.0" = {
-      name = "wordwrap";
-      packageName = "wordwrap";
-      version = "1.0.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/wordwrap/-/wordwrap-1.0.0.tgz";
-        sha1 = "27584810891456a4171c8d0226441ade90cbcaeb";
-      };
-    };
     "worker-farm-1.7.0" = {
       name = "worker-farm";
       packageName = "worker-farm";
@@ -9724,13 +9787,13 @@ let
         sha512 = "HG/DWAJa1PAnHT9JAhNa8AbAv3FPaiLzioSjCcmuXXhP8MlpHO5vwls4g4j6n30Z74GVQj8Xa62dWVx1QCGklg==";
       };
     };
-    "yargs-13.3.0" = {
+    "yargs-13.3.2" = {
       name = "yargs";
       packageName = "yargs";
-      version = "13.3.0";
+      version = "13.3.2";
       src = fetchurl {
-        url = "https://registry.npmjs.org/yargs/-/yargs-13.3.0.tgz";
-        sha512 = "2eehun/8ALW8TLoIl7MVaRUrg+yCnenu8B4kBlRxj3GJGDKU1Og7sMXPNm1BYyM1DOJmTZ4YeN/Nwxv+8XJsUA==";
+        url = "https://registry.npmjs.org/yargs/-/yargs-13.3.2.tgz";
+        sha512 = "AX3Zw5iPruN5ie6xGRIDgqkT+ZhnRlZMLMHAs8tg7nRruy2Nb+i5o9bwghAogtM08q1dpr2LVoS8KSTMYpWXUw==";
       };
     };
     "yargs-3.10.0" = {
@@ -9760,13 +9823,13 @@ let
         sha512 = "C6kB/WJDiaxONLJQnF8ccx9SEeoTTLek8RVbaOIsrAUS8VrBEXfmeSnCZxygc+XC2sNMBIwOOnfcxiynjHsVSQ==";
       };
     };
-    "yargs-parser-13.1.1" = {
+    "yargs-parser-13.1.2" = {
       name = "yargs-parser";
       packageName = "yargs-parser";
-      version = "13.1.1";
+      version = "13.1.2";
       src = fetchurl {
-        url = "https://registry.npmjs.org/yargs-parser/-/yargs-parser-13.1.1.tgz";
-        sha512 = "oVAVsHz6uFrg3XQheFII8ESO2ssAf9luWuAd6Wexsu4F3OtIW0o8IribPXYrD4WC24LWtPrJlGy87y5udK+dxQ==";
+        url = "https://registry.npmjs.org/yargs-parser/-/yargs-parser-13.1.2.tgz";
+        sha512 = "3lbsNRf/j+A4QuSZfDRA7HRSfWrzO0YjqTJd5kjAq37Zep1CEgaYmrH9Q3GwPiB9cHyd1Y1UwggGhJGoxipbzg==";
       };
     };
     "ylru-1.2.1" = {
@@ -9791,50 +9854,50 @@ in
       sha256 = "589bfc9e3e26af38989144e8551547cbeb5ffc9a0b668a7a4cb211a2ebf7a931";
     };
     dependencies = [
-      sources."@babel/code-frame-7.5.5"
-      (sources."@babel/core-7.6.2" // {
+      sources."@babel/code-frame-7.8.3"
+      (sources."@babel/core-7.8.7" // {
         dependencies = [
           sources."debug-4.1.1"
           sources."json5-2.1.1"
-          sources."minimist-1.2.0"
+          sources."minimist-1.2.5"
           sources."ms-2.1.2"
           sources."source-map-0.5.7"
         ];
       })
-      (sources."@babel/generator-7.6.2" // {
+      (sources."@babel/generator-7.8.8" // {
         dependencies = [
           sources."jsesc-2.5.2"
           sources."source-map-0.5.7"
         ];
       })
-      sources."@babel/helper-function-name-7.1.0"
-      sources."@babel/helper-get-function-arity-7.0.0"
-      sources."@babel/helper-plugin-utils-7.0.0"
-      sources."@babel/helper-split-export-declaration-7.4.4"
-      sources."@babel/helpers-7.6.2"
-      (sources."@babel/highlight-7.5.0" // {
+      sources."@babel/helper-function-name-7.8.3"
+      sources."@babel/helper-get-function-arity-7.8.3"
+      sources."@babel/helper-plugin-utils-7.8.3"
+      sources."@babel/helper-split-export-declaration-7.8.3"
+      sources."@babel/helpers-7.8.4"
+      (sources."@babel/highlight-7.8.3" // {
         dependencies = [
           sources."js-tokens-4.0.0"
         ];
       })
-      sources."@babel/parser-7.6.2"
-      sources."@babel/plugin-syntax-object-rest-spread-7.2.0"
-      sources."@babel/template-7.6.0"
-      (sources."@babel/traverse-7.6.2" // {
+      sources."@babel/parser-7.8.8"
+      sources."@babel/plugin-syntax-object-rest-spread-7.8.3"
+      sources."@babel/template-7.8.6"
+      (sources."@babel/traverse-7.8.6" // {
         dependencies = [
           sources."debug-4.1.1"
           sources."globals-11.12.0"
           sources."ms-2.1.2"
         ];
       })
-      (sources."@babel/types-7.6.1" // {
+      (sources."@babel/types-7.8.7" // {
         dependencies = [
           sources."to-fast-properties-2.0.0"
         ];
       })
-      (sources."@cnakazawa/watch-1.0.3" // {
+      (sources."@cnakazawa/watch-1.0.4" // {
         dependencies = [
-          sources."minimist-1.2.0"
+          sources."minimist-1.2.5"
         ];
       })
       (sources."@jest/console-24.9.0" // {
@@ -9865,64 +9928,63 @@ in
       sources."@jest/types-24.9.0"
       (sources."@kubernetes/client-node-0.10.3" // {
         dependencies = [
-          sources."@types/node-10.14.20"
+          sources."@types/node-10.17.17"
         ];
       })
       sources."@sindresorhus/is-0.7.0"
       sources."@types/accepts-1.3.5"
       sources."@types/axios-0.14.0"
       sources."@types/babel-types-7.0.7"
-      sources."@types/babel__core-7.1.3"
-      sources."@types/babel__generator-7.6.0"
+      sources."@types/babel__core-7.1.6"
+      sources."@types/babel__generator-7.6.1"
       sources."@types/babel__template-7.0.2"
-      sources."@types/babel__traverse-7.0.7"
+      sources."@types/babel__traverse-7.0.9"
       sources."@types/babylon-6.16.5"
-      sources."@types/body-parser-1.17.1"
+      sources."@types/body-parser-1.19.0"
       sources."@types/caseless-0.12.2"
       sources."@types/command-line-args-5.0.0"
-      sources."@types/connect-3.4.32"
+      sources."@types/connect-3.4.33"
       sources."@types/cookies-0.7.4"
-      sources."@types/cron-1.7.1"
+      sources."@types/cron-1.7.2"
       sources."@types/events-3.0.0"
-      sources."@types/express-4.17.1"
-      sources."@types/express-serve-static-core-4.16.9"
+      sources."@types/express-4.17.3"
+      sources."@types/express-serve-static-core-4.17.2"
       sources."@types/formidable-1.0.31"
       sources."@types/glob-7.1.1"
       sources."@types/http-assert-1.5.1"
       sources."@types/istanbul-lib-coverage-2.0.1"
-      sources."@types/istanbul-lib-report-1.1.1"
+      sources."@types/istanbul-lib-report-3.0.0"
       sources."@types/istanbul-reports-1.1.1"
-      sources."@types/jest-24.0.18"
-      sources."@types/jest-diff-20.0.1"
-      sources."@types/js-yaml-3.12.1"
-      sources."@types/keygrip-1.0.1"
-      sources."@types/koa-2.0.50"
-      sources."@types/koa-compose-3.2.4"
-      sources."@types/koa-router-7.0.42"
+      sources."@types/jest-24.9.1"
+      sources."@types/js-yaml-3.12.2"
+      sources."@types/keygrip-1.0.2"
+      sources."@types/koa-2.11.2"
+      sources."@types/koa-compose-3.2.5"
+      sources."@types/koa-router-7.4.0"
       sources."@types/koa-send-4.1.2"
       sources."@types/koa-static-4.0.1"
-      sources."@types/koa-views-2.0.3"
-      sources."@types/lodash-4.14.141"
+      sources."@types/koa-views-2.0.4"
+      sources."@types/lodash-4.14.149"
       sources."@types/lodash.clonedeep-4.5.6"
       sources."@types/mime-2.0.1"
       sources."@types/minimatch-3.0.3"
       sources."@types/mkdirp-0.5.2"
-      sources."@types/node-12.7.11"
+      sources."@types/node-12.12.30"
       sources."@types/ora-3.2.0"
       sources."@types/range-parser-1.2.3"
-      (sources."@types/request-2.48.3" // {
+      (sources."@types/request-2.48.4" // {
         dependencies = [
           sources."form-data-2.5.1"
         ];
       })
       sources."@types/serve-static-1.13.3"
       sources."@types/stack-utils-1.0.1"
-      sources."@types/tough-cookie-2.3.5"
-      sources."@types/underscore-1.9.3"
+      sources."@types/tough-cookie-2.3.6"
+      sources."@types/underscore-1.9.4"
       sources."@types/websocket-0.0.40"
-      sources."@types/ws-6.0.3"
-      sources."@types/yargs-13.0.3"
-      sources."@types/yargs-parser-13.1.0"
+      sources."@types/ws-6.0.4"
+      sources."@types/yargs-13.0.8"
+      sources."@types/yargs-parser-15.0.0"
       sources."@webassemblyjs/ast-1.8.5"
       sources."@webassemblyjs/floating-point-hex-parser-1.8.5"
       sources."@webassemblyjs/helper-api-error-1.8.5"
@@ -9943,7 +10005,7 @@ in
       sources."@webassemblyjs/wast-printer-1.8.5"
       sources."@xtuc/ieee754-1.2.0"
       sources."@xtuc/long-4.2.2"
-      sources."abab-2.0.2"
+      sources."abab-2.0.3"
       sources."abbrev-1.1.1"
       sources."accepts-1.3.7"
       sources."acorn-3.3.0"
@@ -9954,7 +10016,7 @@ in
       })
       sources."acorn-walk-6.2.0"
       sources."aggregate-error-1.0.0"
-      sources."ajv-6.10.2"
+      sources."ajv-6.12.0"
       sources."ajv-errors-1.0.1"
       sources."ajv-keywords-3.4.1"
       sources."align-text-0.1.4"
@@ -9988,15 +10050,15 @@ in
       sources."assert-plus-1.0.0"
       sources."assign-symbols-1.0.0"
       sources."astral-regex-1.0.0"
-      sources."async-1.5.2"
+      sources."async-2.6.3"
       sources."async-each-1.0.3"
       sources."async-limiter-1.0.1"
       sources."asynckit-0.4.0"
       sources."atob-2.1.2"
       sources."awesome-typescript-loader-5.2.1"
       sources."aws-sign2-0.7.0"
-      sources."aws4-1.8.0"
-      sources."axios-0.19.0"
+      sources."aws4-1.9.1"
+      sources."axios-0.19.2"
       sources."babel-6.23.0"
       (sources."babel-code-frame-6.26.0" // {
         dependencies = [
@@ -10099,7 +10161,8 @@ in
       sources."bfj-6.1.2"
       sources."big.js-5.2.2"
       sources."binary-extensions-1.13.1"
-      sources."bluebird-3.7.0"
+      sources."bindings-1.5.0"
+      sources."bluebird-3.7.2"
       sources."bn.js-4.11.8"
       (sources."body-parser-1.19.0" // {
         dependencies = [
@@ -10118,7 +10181,7 @@ in
       sources."brace-expansion-1.1.11"
       sources."braces-2.3.2"
       sources."brorand-1.1.0"
-      sources."browser-process-hrtime-0.1.3"
+      sources."browser-process-hrtime-1.0.0"
       (sources."browser-resolve-1.11.3" // {
         dependencies = [
           sources."resolve-1.1.7"
@@ -10132,8 +10195,8 @@ in
       sources."browserify-zlib-0.2.0"
       sources."browserslist-3.2.8"
       sources."bs-logger-0.2.6"
-      sources."bser-2.1.0"
-      sources."buffer-4.9.1"
+      sources."bser-2.1.1"
+      sources."buffer-4.9.2"
       sources."buffer-from-1.1.1"
       sources."buffer-indexof-1.1.1"
       sources."buffer-xor-1.0.3"
@@ -10156,7 +10219,7 @@ in
       })
       sources."callsites-3.1.0"
       sources."camelcase-1.2.1"
-      sources."caniuse-lite-1.0.30000999"
+      sources."caniuse-lite-1.0.30001035"
       sources."capture-exit-2.0.0"
       sources."caseless-0.12.0"
       sources."center-align-0.1.3"
@@ -10168,7 +10231,7 @@ in
           sources."normalize-path-3.0.0"
         ];
       })
-      sources."chownr-1.1.3"
+      sources."chownr-1.1.4"
       sources."chrome-trace-event-1.0.2"
       sources."ci-info-2.0.0"
       sources."cipher-base-1.0.4"
@@ -10180,7 +10243,6 @@ in
               sources."kind-of-3.2.2"
             ];
           })
-          sources."is-buffer-1.1.6"
           (sources."is-data-descriptor-0.1.4" // {
             dependencies = [
               sources."kind-of-3.2.2"
@@ -10190,7 +10252,7 @@ in
           sources."kind-of-5.1.0"
         ];
       })
-      sources."clean-css-4.2.1"
+      sources."clean-css-4.2.3"
       sources."clean-stack-1.3.0"
       sources."cli-cursor-2.1.0"
       sources."cli-spinners-2.2.0"
@@ -10205,10 +10267,10 @@ in
       sources."color-name-1.1.3"
       sources."combined-stream-1.0.8"
       sources."command-line-args-5.1.1"
-      sources."commander-2.20.1"
+      sources."commander-2.20.3"
       sources."commondir-1.0.1"
       sources."component-emitter-1.3.0"
-      sources."compressible-2.0.17"
+      sources."compressible-2.0.18"
       (sources."compression-1.7.4" // {
         dependencies = [
           sources."bytes-3.0.0"
@@ -10221,7 +10283,7 @@ in
       sources."condense-newlines-0.2.1"
       sources."config-chain-1.1.12"
       sources."connect-history-api-fallback-1.6.0"
-      sources."console-browserify-1.1.0"
+      sources."console-browserify-1.2.0"
       sources."consolidate-0.15.1"
       sources."constantinople-3.1.2"
       sources."constants-browserify-1.0.0"
@@ -10231,14 +10293,18 @@ in
         ];
       })
       sources."content-type-1.0.4"
-      (sources."convert-source-map-1.6.0" // {
+      (sources."convert-source-map-1.7.0" // {
         dependencies = [
           sources."safe-buffer-5.1.2"
         ];
       })
       sources."cookie-0.4.0"
       sources."cookie-signature-1.0.6"
-      sources."cookies-0.7.3"
+      (sources."cookies-0.8.0" // {
+        dependencies = [
+          sources."depd-2.0.0"
+        ];
+      })
       sources."copy-concurrently-1.0.5"
       sources."copy-descriptor-0.1.1"
       (sources."copy-webpack-plugin-4.6.0" // {
@@ -10247,12 +10313,12 @@ in
           sources."p-try-1.0.0"
         ];
       })
-      sources."core-js-2.6.9"
+      sources."core-js-2.6.11"
       sources."core-util-is-1.0.2"
       sources."create-ecdh-4.0.3"
       sources."create-hash-1.2.0"
       sources."create-hmac-1.1.7"
-      sources."cron-1.7.2"
+      sources."cron-1.8.2"
       sources."cross-spawn-6.0.5"
       sources."crypto-browserify-3.12.0"
       sources."cssom-0.3.8"
@@ -10262,10 +10328,9 @@ in
       sources."dashdash-1.14.1"
       (sources."data-urls-1.1.0" // {
         dependencies = [
-          sources."whatwg-url-7.0.0"
+          sources."whatwg-url-7.1.0"
         ];
       })
-      sources."date-now-0.1.4"
       sources."debug-3.1.0"
       sources."decamelize-1.2.0"
       sources."decode-uri-component-0.2.0"
@@ -10289,7 +10354,7 @@ in
       sources."delayed-stream-1.0.0"
       sources."delegates-1.0.0"
       sources."depd-1.1.2"
-      sources."des.js-1.0.0"
+      sources."des.js-1.0.1"
       sources."destroy-1.0.4"
       sources."detect-file-1.0.0"
       sources."detect-indent-4.0.0"
@@ -10315,37 +10380,37 @@ in
         ];
       })
       sources."ee-first-1.1.1"
-      sources."ejs-2.7.1"
-      sources."electron-to-chromium-1.3.275"
-      sources."elliptic-6.5.1"
+      sources."ejs-2.7.4"
+      sources."electron-to-chromium-1.3.376"
+      sources."elliptic-6.5.2"
       sources."emoji-regex-7.0.3"
-      sources."emojis-list-2.1.0"
+      sources."emojis-list-3.0.0"
       sources."encodeurl-1.0.2"
       sources."end-of-stream-1.4.4"
-      sources."enhanced-resolve-4.1.0"
+      sources."enhanced-resolve-4.1.1"
       sources."errno-0.1.7"
       sources."error-ex-1.3.2"
       sources."error-inject-1.0.0"
-      sources."es-abstract-1.15.0"
-      sources."es-to-primitive-1.2.0"
-      sources."es5-ext-0.10.51"
+      sources."es-abstract-1.17.4"
+      sources."es-to-primitive-1.2.1"
+      sources."es5-ext-0.10.53"
       sources."es6-iterator-2.0.3"
       sources."es6-promise-4.2.8"
-      sources."es6-symbol-3.1.2"
+      sources."es6-symbol-3.1.3"
       sources."escape-html-1.0.3"
       sources."escape-string-regexp-1.0.5"
-      sources."escodegen-1.12.0"
+      sources."escodegen-1.14.1"
       sources."eslint-scope-4.0.3"
-      sources."esprima-3.1.3"
+      sources."esprima-4.0.1"
       sources."esrecurse-4.2.1"
       sources."estraverse-4.3.0"
       sources."esutils-2.0.3"
       sources."etag-1.8.1"
       sources."eventemitter3-4.0.0"
-      sources."events-3.0.0"
+      sources."events-3.1.0"
       sources."eventsource-1.0.7"
       sources."evp_bytestokey-1.0.3"
-      sources."exec-sh-0.3.2"
+      sources."exec-sh-0.3.4"
       sources."execa-1.0.0"
       sources."exit-0.1.2"
       (sources."expand-brackets-2.1.4" // {
@@ -10357,7 +10422,6 @@ in
               sources."kind-of-3.2.2"
             ];
           })
-          sources."is-buffer-1.1.6"
           (sources."is-data-descriptor-0.1.4" // {
             dependencies = [
               sources."kind-of-3.2.2"
@@ -10377,6 +10441,11 @@ in
           sources."safe-buffer-5.1.2"
         ];
       })
+      (sources."ext-1.4.0" // {
+        dependencies = [
+          sources."type-2.0.0"
+        ];
+      })
       sources."extend-3.0.2"
       sources."extend-shallow-2.0.1"
       (sources."extglob-2.0.4" // {
@@ -10385,12 +10454,13 @@ in
         ];
       })
       sources."extsprintf-1.3.0"
-      sources."fast-deep-equal-2.0.1"
-      sources."fast-json-stable-stringify-2.0.0"
+      sources."fast-deep-equal-3.1.1"
+      sources."fast-json-stable-stringify-2.1.0"
       sources."fast-levenshtein-2.0.6"
       sources."faye-websocket-0.10.0"
-      sources."fb-watchman-2.0.0"
+      sources."fb-watchman-2.0.1"
       sources."figgy-pudding-3.5.1"
+      sources."file-uri-to-path-1.0.0"
       sources."filesize-3.6.1"
       sources."fill-range-4.0.0"
       (sources."finalhandler-1.1.2" // {
@@ -10407,15 +10477,16 @@ in
       sources."for-in-1.0.2"
       sources."forever-agent-0.6.1"
       sources."form-data-2.3.3"
-      sources."formidable-1.2.1"
+      sources."formidable-1.2.2"
       sources."forwarded-0.1.2"
       sources."fragment-cache-0.2.1"
       sources."fresh-0.5.2"
       sources."from2-2.3.0"
       sources."fs-write-stream-atomic-1.0.10"
       sources."fs.realpath-1.0.0"
-      sources."fsevents-1.2.9"
+      sources."fsevents-1.2.11"
       sources."function-bind-1.1.1"
+      sources."gensync-1.0.0-beta.1"
       sources."get-caller-file-2.0.5"
       (sources."get-paths-0.0.7" // {
         dependencies = [
@@ -10425,7 +10496,7 @@ in
       sources."get-stream-4.1.0"
       sources."get-value-2.0.6"
       sources."getpass-0.1.7"
-      sources."glob-7.1.4"
+      sources."glob-7.1.6"
       (sources."glob-parent-3.1.0" // {
         dependencies = [
           sources."is-glob-3.1.0"
@@ -10434,7 +10505,7 @@ in
       (sources."global-modules-2.0.0" // {
         dependencies = [
           sources."global-prefix-3.0.0"
-          sources."kind-of-6.0.2"
+          sources."kind-of-6.0.3"
         ];
       })
       sources."global-prefix-1.0.2"
@@ -10445,7 +10516,7 @@ in
           sources."get-stream-3.0.0"
         ];
       })
-      sources."graceful-fs-4.2.2"
+      sources."graceful-fs-4.2.3"
       sources."growly-1.3.0"
       (sources."gzip-size-5.1.1" // {
         dependencies = [
@@ -10453,11 +10524,6 @@ in
         ];
       })
       sources."handle-thing-2.0.0"
-      (sources."handlebars-4.4.2" // {
-        dependencies = [
-          sources."uglify-js-3.6.0"
-        ];
-      })
       sources."har-schema-2.0.0"
       sources."har-validator-5.1.3"
       sources."has-1.0.3"
@@ -10468,12 +10534,11 @@ in
       })
       sources."has-flag-3.0.0"
       sources."has-symbol-support-x-1.4.2"
-      sources."has-symbols-1.0.0"
+      sources."has-symbols-1.0.1"
       sources."has-to-string-tag-x-1.4.1"
       sources."has-value-1.0.0"
       (sources."has-values-1.0.0" // {
         dependencies = [
-          sources."is-buffer-1.1.6"
           sources."kind-of-4.0.0"
         ];
       })
@@ -10483,10 +10548,11 @@ in
       sources."home-or-tmp-2.0.0"
       sources."homedir-polyfill-1.0.3"
       sources."hoopy-0.1.4"
-      sources."hosted-git-info-2.8.4"
+      sources."hosted-git-info-2.8.8"
       sources."hpack.js-2.1.6"
       sources."html-encoding-sniffer-1.0.2"
       sources."html-entities-1.2.1"
+      sources."html-escaper-2.0.0"
       sources."http-assert-1.4.1"
       sources."http-cache-semantics-3.8.1"
       sources."http-deceiver-1.2.7"
@@ -10519,27 +10585,27 @@ in
       sources."invert-kv-2.0.0"
       sources."ip-1.1.5"
       sources."ip-regex-2.1.0"
-      sources."ipaddr.js-1.9.0"
+      sources."ipaddr.js-1.9.1"
       sources."is-absolute-url-3.0.3"
       (sources."is-accessor-descriptor-1.0.0" // {
         dependencies = [
-          sources."kind-of-6.0.2"
+          sources."kind-of-6.0.3"
         ];
       })
       sources."is-arrayish-0.2.1"
       sources."is-binary-path-1.0.1"
-      sources."is-buffer-2.0.4"
-      sources."is-callable-1.1.4"
+      sources."is-buffer-1.1.6"
+      sources."is-callable-1.1.5"
       sources."is-ci-2.0.0"
       (sources."is-data-descriptor-1.0.0" // {
         dependencies = [
-          sources."kind-of-6.0.2"
+          sources."kind-of-6.0.3"
         ];
       })
-      sources."is-date-object-1.0.1"
+      sources."is-date-object-1.0.2"
       (sources."is-descriptor-1.0.2" // {
         dependencies = [
-          sources."kind-of-6.0.2"
+          sources."kind-of-6.0.3"
         ];
       })
       (sources."is-expression-3.0.0" // {
@@ -10549,7 +10615,7 @@ in
       })
       sources."is-extendable-0.1.1"
       sources."is-extglob-2.1.1"
-      sources."is-finite-1.0.2"
+      sources."is-finite-1.1.0"
       sources."is-fullwidth-code-point-2.0.0"
       sources."is-generator-fn-2.1.0"
       sources."is-generator-function-1.0.7"
@@ -10562,10 +10628,10 @@ in
       sources."is-plain-obj-1.1.0"
       sources."is-plain-object-2.0.4"
       sources."is-promise-2.1.0"
-      sources."is-regex-1.0.4"
+      sources."is-regex-1.0.5"
       sources."is-retry-allowed-1.2.0"
       sources."is-stream-1.1.0"
-      sources."is-symbol-1.0.2"
+      sources."is-symbol-1.0.3"
       sources."is-typedarray-1.0.0"
       sources."is-whitespace-0.3.0"
       sources."is-windows-1.0.2"
@@ -10596,14 +10662,14 @@ in
           sources."pify-4.0.1"
         ];
       })
-      sources."istanbul-reports-2.2.6"
+      sources."istanbul-reports-2.2.7"
       sources."isurl-1.0.0"
       sources."jest-24.9.0"
       sources."jest-changed-files-24.9.0"
       (sources."jest-cli-24.9.0" // {
         dependencies = [
           sources."cliui-5.0.0"
-          sources."yargs-13.3.0"
+          sources."yargs-13.3.2"
         ];
       })
       sources."jest-config-24.9.0"
@@ -10632,7 +10698,7 @@ in
         dependencies = [
           sources."cliui-5.0.0"
           sources."slash-2.0.0"
-          sources."yargs-13.3.0"
+          sources."yargs-13.3.2"
         ];
       })
       sources."jest-serializer-24.9.0"
@@ -10657,21 +10723,17 @@ in
           sources."supports-color-6.1.0"
         ];
       })
-      sources."js-beautify-1.10.2"
+      sources."js-beautify-1.10.3"
       sources."js-stringify-1.0.2"
       sources."js-tokens-3.0.2"
-      (sources."js-yaml-3.13.1" // {
-        dependencies = [
-          sources."esprima-4.0.1"
-        ];
-      })
+      sources."js-yaml-3.13.1"
       sources."jsbn-0.1.1"
       (sources."jsdom-11.12.0" // {
         dependencies = [
-          sources."acorn-5.7.3"
+          sources."acorn-5.7.4"
           (sources."acorn-globals-4.3.4" // {
             dependencies = [
-              sources."acorn-6.3.0"
+              sources."acorn-6.4.1"
             ];
           })
           sources."ws-5.2.2"
@@ -10686,22 +10748,18 @@ in
       sources."json3-3.3.3"
       (sources."json5-1.0.1" // {
         dependencies = [
-          sources."minimist-1.2.0"
+          sources."minimist-1.2.5"
         ];
       })
       sources."jsonpath-plus-0.19.0"
       sources."jsprim-1.4.1"
       sources."jstransformer-1.0.0"
-      sources."keygrip-1.0.3"
+      sources."keygrip-1.1.0"
       sources."keyv-3.0.0"
       sources."killable-1.0.1"
-      (sources."kind-of-3.2.2" // {
-        dependencies = [
-          sources."is-buffer-1.1.6"
-        ];
-      })
+      sources."kind-of-3.2.2"
       sources."kleur-3.0.3"
-      sources."koa-2.8.2"
+      sources."koa-2.11.0"
       sources."koa-body-4.1.1"
       sources."koa-compose-4.1.0"
       (sources."koa-convert-1.2.0" // {
@@ -10709,7 +10767,6 @@ in
           sources."koa-compose-3.2.1"
         ];
       })
-      sources."koa-is-json-1.0.0"
       (sources."koa-router-7.4.0" // {
         dependencies = [
           sources."koa-compose-3.2.1"
@@ -10730,7 +10787,7 @@ in
       sources."levn-0.3.0"
       sources."load-json-file-4.0.0"
       sources."loader-runner-2.4.0"
-      sources."loader-utils-1.2.3"
+      sources."loader-utils-1.4.0"
       sources."locate-path-3.0.0"
       sources."lodash-4.17.15"
       sources."lodash.camelcase-4.3.0"
@@ -10738,7 +10795,7 @@ in
       sources."lodash.memoize-4.1.2"
       sources."lodash.sortby-4.7.0"
       sources."log-symbols-2.2.0"
-      sources."loglevel-1.6.4"
+      sources."loglevel-1.6.7"
       sources."loglevelnext-1.0.5"
       sources."long-4.0.0"
       sources."longest-1.0.1"
@@ -10746,7 +10803,7 @@ in
       sources."lowercase-keys-1.0.1"
       sources."lru-cache-5.1.1"
       sources."make-dir-1.3.0"
-      sources."make-error-1.3.5"
+      sources."make-error-1.3.6"
       sources."makeerror-1.0.11"
       sources."mamacro-0.0.3"
       sources."map-age-cleaner-0.1.3"
@@ -10760,7 +10817,7 @@ in
           sources."p-is-promise-2.1.0"
         ];
       })
-      sources."memory-fs-0.4.1"
+      sources."memory-fs-0.5.0"
       sources."merge-descriptors-1.0.1"
       sources."merge-stream-2.0.0"
       sources."methods-1.1.2"
@@ -10768,13 +10825,13 @@ in
         dependencies = [
           sources."extend-shallow-3.0.2"
           sources."is-extendable-1.0.1"
-          sources."kind-of-6.0.2"
+          sources."kind-of-6.0.3"
         ];
       })
       sources."miller-rabin-4.0.1"
       sources."mime-1.6.0"
-      sources."mime-db-1.40.0"
-      sources."mime-types-2.1.24"
+      sources."mime-db-1.43.0"
+      sources."mime-types-2.1.26"
       sources."mimic-fn-1.2.0"
       sources."mimic-response-1.0.1"
       sources."minimalistic-assert-1.0.1"
@@ -10793,7 +10850,7 @@ in
       })
       sources."mkdirp-0.5.1"
       sources."moment-2.24.0"
-      sources."moment-timezone-0.5.26"
+      sources."moment-timezone-0.5.28"
       sources."move-concurrently-1.0.1"
       sources."ms-2.0.0"
       sources."multicast-dns-6.2.3"
@@ -10804,7 +10861,7 @@ in
         dependencies = [
           sources."extend-shallow-3.0.2"
           sources."is-extendable-1.0.1"
-          sources."kind-of-6.0.2"
+          sources."kind-of-6.0.3"
         ];
       })
       sources."natural-compare-1.4.0"
@@ -10822,13 +10879,13 @@ in
       })
       sources."node-modules-regexp-1.0.0"
       sources."node-notifier-5.4.3"
-      sources."nopt-4.0.1"
+      sources."nopt-4.0.3"
       sources."normalize-package-data-2.5.0"
       sources."normalize-path-2.1.1"
       sources."normalize-url-2.0.1"
       sources."npm-run-path-2.0.2"
       sources."number-is-nan-1.0.1"
-      sources."nwsapi-2.1.4"
+      sources."nwsapi-2.2.0"
       sources."oauth-sign-0.9.0"
       sources."object-assign-4.1.1"
       (sources."object-copy-0.1.0" // {
@@ -10844,11 +10901,11 @@ in
         ];
       })
       sources."object-hash-1.3.1"
-      sources."object-inspect-1.6.0"
+      sources."object-inspect-1.7.0"
       sources."object-keys-1.1.1"
       sources."object-visit-1.0.1"
       sources."object.assign-4.1.0"
-      sources."object.getownpropertydescriptors-2.0.3"
+      sources."object.getownpropertydescriptors-2.1.0"
       sources."object.pick-1.3.0"
       sources."obuf-1.1.2"
       sources."oidc-token-hash-3.0.2"
@@ -10860,12 +10917,7 @@ in
       sources."opener-1.5.1"
       sources."openid-client-2.5.0"
       sources."opn-5.5.0"
-      sources."optimist-0.6.1"
-      (sources."optionator-0.8.2" // {
-        dependencies = [
-          sources."wordwrap-1.0.0"
-        ];
-      })
+      sources."optionator-0.8.3"
       sources."ora-3.4.0"
       sources."original-1.0.2"
       sources."os-browserify-0.3.0"
@@ -10879,7 +10931,7 @@ in
       sources."p-each-series-1.0.0"
       sources."p-finally-1.0.0"
       sources."p-is-promise-1.1.0"
-      sources."p-limit-2.2.1"
+      sources."p-limit-2.2.2"
       sources."p-locate-3.0.0"
       sources."p-map-2.1.0"
       sources."p-reduce-1.0.0"
@@ -10887,7 +10939,7 @@ in
       sources."p-some-2.0.1"
       sources."p-timeout-2.0.1"
       sources."p-try-2.2.0"
-      sources."pako-1.0.10"
+      sources."pako-1.0.11"
       sources."parallel-transform-1.2.0"
       sources."parse-asn1-5.1.5"
       sources."parse-json-4.0.0"
@@ -10902,7 +10954,7 @@ in
       sources."path-is-inside-1.0.2"
       sources."path-key-2.0.1"
       sources."path-parse-1.0.6"
-      (sources."path-to-regexp-1.7.0" // {
+      (sources."path-to-regexp-1.8.0" // {
         dependencies = [
           sources."isarray-0.0.1"
         ];
@@ -10924,15 +10976,16 @@ in
         ];
       })
       sources."pn-1.1.0"
-      (sources."portfinder-1.0.24" // {
+      (sources."portfinder-1.0.25" // {
         dependencies = [
-          sources."debug-2.6.9"
+          sources."debug-3.2.6"
+          sources."ms-2.1.2"
         ];
       })
       sources."posix-character-classes-0.1.1"
       sources."prelude-ls-1.1.2"
       sources."prepend-http-2.0.0"
-      sources."prettier-1.18.2"
+      sources."prettier-1.19.1"
       sources."pretty-2.0.0"
       sources."pretty-format-24.9.0"
       sources."private-0.1.8"
@@ -10940,12 +10993,12 @@ in
       sources."process-nextick-args-2.0.1"
       sources."promise-7.3.1"
       sources."promise-inflight-1.0.1"
-      sources."prompts-2.2.1"
+      sources."prompts-2.3.1"
       sources."proto-list-1.2.4"
-      sources."proxy-addr-2.0.5"
+      sources."proxy-addr-2.0.6"
       sources."prr-1.0.1"
       sources."pseudomap-1.0.2"
-      sources."psl-1.4.0"
+      sources."psl-1.7.0"
       sources."public-encrypt-4.0.3"
       sources."pug-2.0.4"
       sources."pug-attrs-2.0.4"
@@ -10975,10 +11028,10 @@ in
       sources."randomfill-1.0.4"
       sources."range-parser-1.2.1"
       sources."raw-body-2.4.1"
-      sources."react-is-16.10.2"
+      sources."react-is-16.13.0"
       sources."read-pkg-3.0.0"
       sources."read-pkg-up-4.0.0"
-      (sources."readable-stream-2.3.6" // {
+      (sources."readable-stream-2.3.7" // {
         dependencies = [
           sources."safe-buffer-5.1.2"
         ];
@@ -11006,13 +11059,13 @@ in
       sources."repeat-element-1.1.3"
       sources."repeat-string-1.6.1"
       sources."repeating-2.0.1"
-      sources."request-2.88.0"
-      sources."request-promise-core-1.1.2"
-      sources."request-promise-native-1.0.7"
+      sources."request-2.88.2"
+      sources."request-promise-core-1.1.3"
+      sources."request-promise-native-1.0.8"
       sources."require-directory-2.1.1"
       sources."require-main-filename-2.0.0"
       sources."requires-port-1.0.0"
-      sources."resolve-1.12.0"
+      sources."resolve-1.15.1"
       sources."resolve-cwd-2.0.0"
       (sources."resolve-dir-1.0.1" // {
         dependencies = [
@@ -11037,13 +11090,13 @@ in
       sources."ripemd160-2.0.2"
       sources."rsvp-4.8.5"
       sources."run-queue-1.0.3"
-      sources."rxjs-6.5.3"
+      sources."rxjs-6.5.4"
       sources."safe-buffer-5.2.0"
       sources."safe-regex-1.1.0"
       sources."safer-buffer-2.1.2"
       (sources."sane-4.1.0" // {
         dependencies = [
-          sources."minimist-1.2.0"
+          sources."minimist-1.2.5"
         ];
       })
       sources."sax-1.2.4"
@@ -11087,7 +11140,7 @@ in
       sources."sigmund-1.0.1"
       sources."signal-exit-3.0.2"
       sources."simple-git-1.96.0"
-      sources."sisteransi-1.0.3"
+      sources."sisteransi-1.0.4"
       sources."slash-1.0.0"
       (sources."snapdragon-0.8.2" // {
         dependencies = [
@@ -11098,7 +11151,6 @@ in
               sources."kind-of-3.2.2"
             ];
           })
-          sources."is-buffer-1.1.6"
           (sources."is-data-descriptor-0.1.4" // {
             dependencies = [
               sources."kind-of-3.2.2"
@@ -11126,8 +11178,8 @@ in
       sources."sort-keys-2.0.0"
       sources."source-list-map-2.0.1"
       sources."source-map-0.6.1"
-      sources."source-map-resolve-0.5.2"
-      sources."source-map-support-0.5.13"
+      sources."source-map-resolve-0.5.3"
+      sources."source-map-support-0.5.16"
       sources."source-map-url-0.4.0"
       sources."spdx-correct-3.1.0"
       sources."spdx-exceptions-2.2.0"
@@ -11143,7 +11195,7 @@ in
         dependencies = [
           sources."debug-4.1.1"
           sources."ms-2.1.2"
-          sources."readable-stream-3.4.0"
+          sources."readable-stream-3.6.0"
         ];
       })
       (sources."split-string-3.1.0" // {
@@ -11164,7 +11216,6 @@ in
               sources."kind-of-3.2.2"
             ];
           })
-          sources."is-buffer-1.1.6"
           (sources."is-data-descriptor-0.1.4" // {
             dependencies = [
               sources."kind-of-3.2.2"
@@ -11179,7 +11230,7 @@ in
       sources."stream-browserify-2.0.2"
       sources."stream-each-1.2.3"
       sources."stream-http-2.8.3"
-      sources."stream-shift-1.0.0"
+      sources."stream-shift-1.0.1"
       sources."strict-uri-encode-1.1.0"
       (sources."string-length-2.0.0" // {
         dependencies = [
@@ -11188,8 +11239,8 @@ in
         ];
       })
       sources."string-width-3.1.0"
-      sources."string.prototype.trimleft-2.1.0"
-      sources."string.prototype.trimright-2.1.0"
+      sources."string.prototype.trimleft-2.1.1"
+      sources."string.prototype.trimright-2.1.1"
       (sources."string_decoder-1.1.1" // {
         dependencies = [
           sources."safe-buffer-5.1.2"
@@ -11201,8 +11252,8 @@ in
       sources."supports-color-5.5.0"
       sources."symbol-tree-3.2.4"
       sources."tapable-1.1.3"
-      sources."terser-4.3.8"
-      (sources."terser-webpack-plugin-1.4.1" // {
+      sources."terser-4.6.6"
+      (sources."terser-webpack-plugin-1.4.3" // {
         dependencies = [
           sources."cacache-12.0.3"
           sources."find-cache-dir-2.1.0"
@@ -11210,6 +11261,7 @@ in
           sources."mississippi-3.0.0"
           sources."pify-4.0.1"
           sources."pkg-dir-3.0.0"
+          sources."serialize-javascript-2.1.2"
           sources."ssri-6.0.1"
         ];
       })
@@ -11218,7 +11270,7 @@ in
       sources."thenify-all-1.6.0"
       sources."throat-4.1.0"
       sources."through2-2.0.5"
-      sources."thunky-1.0.3"
+      sources."thunky-1.1.0"
       sources."timed-out-4.0.1"
       sources."timers-browserify-2.0.11"
       sources."tmpl-1.0.4"
@@ -11234,23 +11286,20 @@ in
       sources."to-regex-range-2.1.1"
       sources."toidentifier-1.0.0"
       sources."token-stream-0.0.1"
-      (sources."tough-cookie-2.4.3" // {
-        dependencies = [
-          sources."punycode-1.4.1"
-        ];
-      })
+      sources."tough-cookie-2.5.0"
       sources."tr46-1.0.1"
       sources."trim-right-1.0.1"
       sources."tryer-1.0.1"
-      (sources."ts-jest-24.1.0" // {
+      (sources."ts-jest-24.3.0" // {
         dependencies = [
           sources."camelcase-4.1.0"
           sources."json5-2.1.1"
-          sources."minimist-1.2.0"
+          sources."minimist-1.2.5"
           sources."yargs-parser-10.1.0"
         ];
       })
-      sources."tslib-1.10.0"
+      sources."tslib-1.11.1"
+      sources."tsscmp-1.0.6"
       sources."tty-browserify-0.0.0"
       sources."tunnel-agent-0.6.0"
       sources."tweetnacl-0.14.5"
@@ -11259,7 +11308,7 @@ in
       sources."type-is-1.6.18"
       sources."typedarray-0.0.6"
       sources."typedarray-to-buffer-3.1.5"
-      sources."typescript-3.6.3"
+      sources."typescript-3.8.3"
       sources."typical-4.0.0"
       (sources."uglify-js-2.8.29" // {
         dependencies = [
@@ -11267,7 +11316,7 @@ in
         ];
       })
       sources."uglify-to-browserify-1.0.2"
-      sources."underscore-1.9.1"
+      sources."underscore-1.9.2"
       sources."union-value-1.0.1"
       sources."unique-filename-1.1.1"
       sources."unique-slug-2.0.2"
@@ -11284,7 +11333,7 @@ in
       })
       sources."upath-1.2.0"
       sources."uri-js-4.2.2"
-      sources."urijs-1.19.1"
+      sources."urijs-1.19.2"
       sources."urix-0.1.0"
       (sources."url-0.11.0" // {
         dependencies = [
@@ -11301,45 +11350,52 @@ in
         ];
       })
       sources."util-deprecate-1.0.2"
-      sources."util.promisify-1.0.0"
+      sources."util.promisify-1.0.1"
       sources."utils-merge-1.0.1"
-      sources."uuid-3.3.3"
+      sources."uuid-3.4.0"
       sources."v8-compile-cache-2.0.3"
       sources."validate-npm-package-license-3.0.4"
       sources."vary-1.1.2"
       sources."verror-1.10.0"
-      sources."vm-browserify-1.1.0"
+      sources."vm-browserify-1.1.2"
       sources."void-elements-2.0.1"
-      sources."w3c-hr-time-1.0.1"
+      sources."w3c-hr-time-1.0.2"
       sources."walker-1.0.7"
       sources."watchpack-1.6.0"
       sources."wbuf-1.7.3"
       sources."wcwidth-1.0.1"
       sources."webidl-conversions-4.0.2"
-      (sources."webpack-4.41.0" // {
+      (sources."webpack-4.42.0" // {
         dependencies = [
-          sources."acorn-6.3.0"
+          sources."acorn-6.4.1"
+          sources."memory-fs-0.4.1"
         ];
       })
-      (sources."webpack-bundle-analyzer-3.5.2" // {
+      (sources."webpack-bundle-analyzer-3.6.1" // {
         dependencies = [
-          sources."acorn-6.3.0"
+          sources."acorn-7.1.1"
+          sources."acorn-walk-7.1.1"
         ];
       })
-      (sources."webpack-cli-3.3.9" // {
+      (sources."webpack-cli-3.3.11" // {
         dependencies = [
           sources."cliui-5.0.0"
+          sources."emojis-list-2.1.0"
+          sources."enhanced-resolve-4.1.0"
+          sources."loader-utils-1.2.3"
+          sources."memory-fs-0.4.1"
           sources."supports-color-6.1.0"
           sources."yargs-13.2.4"
         ];
       })
       (sources."webpack-dev-middleware-3.7.2" // {
         dependencies = [
+          sources."memory-fs-0.4.1"
           sources."mime-2.4.4"
           sources."webpack-log-2.0.0"
         ];
       })
-      (sources."webpack-dev-server-3.8.2" // {
+      (sources."webpack-dev-server-3.10.3" // {
         dependencies = [
           sources."ansi-regex-2.1.1"
           sources."camelcase-5.3.1"
@@ -11376,7 +11432,7 @@ in
       })
       sources."webpack-log-1.2.0"
       sources."webpack-sources-1.4.3"
-      (sources."websocket-1.0.30" // {
+      (sources."websocket-1.0.31" // {
         dependencies = [
           sources."debug-2.6.9"
         ];
@@ -11390,6 +11446,7 @@ in
       sources."which-module-2.0.0"
       sources."window-size-0.1.0"
       sources."with-5.1.1"
+      sources."word-wrap-1.2.3"
       sources."wordwrap-0.0.2"
       sources."worker-farm-1.7.0"
       sources."wrap-ansi-5.1.0"
@@ -11402,7 +11459,7 @@ in
       sources."yaeti-0.0.6"
       sources."yallist-3.1.1"
       sources."yargs-3.10.0"
-      (sources."yargs-parser-13.1.1" // {
+      (sources."yargs-parser-13.1.2" // {
         dependencies = [
           sources."camelcase-5.3.1"
         ];
diff --git a/pkgs/applications/networking/cluster/spark/default.nix b/pkgs/applications/networking/cluster/spark/default.nix
index b8d4b947e324..162585851d0c 100644
--- a/pkgs/applications/networking/cluster/spark/default.nix
+++ b/pkgs/applications/networking/cluster/spark/default.nix
@@ -54,6 +54,6 @@ stdenv.mkDerivation rec {
     license          = stdenv.lib.licenses.asl20;
     platforms        = stdenv.lib.platforms.all;
     maintainers      = with maintainers; [ thoughtpolice offline kamilchm ];
-    repositories.git = git://git.apache.org/spark.git;
+    repositories.git = "git://git.apache.org/spark.git";
   };
 }
diff --git a/pkgs/applications/networking/cluster/ssm-session-manager-plugin/default.nix b/pkgs/applications/networking/cluster/ssm-session-manager-plugin/default.nix
new file mode 100644
index 000000000000..7c948fbcdfc7
--- /dev/null
+++ b/pkgs/applications/networking/cluster/ssm-session-manager-plugin/default.nix
@@ -0,0 +1,29 @@
+{ stdenv, lib, fetchurl, autoPatchelfHook, dpkg, awscli }:
+stdenv.mkDerivation rec {
+  pname = "ssm-session-manager-plugin";
+  version = "1.1.61.0";
+
+  src = fetchurl {
+    url =
+      "https://s3.amazonaws.com/session-manager-downloads/plugin/${version}/ubuntu_64bit/session-manager-plugin.deb";
+    sha256 = "0z59irrpwhjjhn379454xyraqs590hij2n6n6k25w5hh8ak7imfl";
+  };
+
+  nativeBuildInputs = [ autoPatchelfHook dpkg ];
+
+  buildInputs = [ awscli ];
+
+  unpackPhase = "dpkg-deb -x $src .";
+
+  installPhase =
+    "install -m755 -D usr/local/sessionmanagerplugin/bin/session-manager-plugin $out/bin/session-manager-plugin";
+
+  meta = with lib; {
+    homepage =
+      "https://docs.aws.amazon.com/systems-manager/latest/userguide/session-manager-working-with-install-plugin.html";
+    description = "Amazon SSM Session Manager Plugin";
+    platforms = [ "x86_64-linux" ];
+    license = licenses.unfree;
+    maintainers = with maintainers; [ mbaillie ];
+  };
+}
diff --git a/pkgs/applications/networking/cluster/stern/default.nix b/pkgs/applications/networking/cluster/stern/default.nix
index 144d46043ffe..8ad0e8711f2f 100644
--- a/pkgs/applications/networking/cluster/stern/default.nix
+++ b/pkgs/applications/networking/cluster/stern/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, lib, buildPackages, buildGoPackage, fetchFromGitHub }:
+{ stdenv, lib, buildPackages, buildGoPackage, fetchFromGitHub, installShellFiles }:
 
 let isCrossBuild = stdenv.hostPlatform != stdenv.buildPlatform; in
 
@@ -17,13 +17,15 @@ buildGoPackage rec {
 
   goDeps = ./deps.nix;
 
+  nativeBuildInputs = [ installShellFiles ];
+
   postInstall =
-    let stern = if isCrossBuild then buildPackages.stern else "$bin"; in
+    let stern = if isCrossBuild then buildPackages.stern else "$out"; in
     ''
-      mkdir -p $bin/share/bash-completion/completions
-      ${stern}/bin/stern --completion bash > $bin/share/bash-completion/completions/stern
-      mkdir -p $bin/share/zsh/site-functions
-      ${stern}/bin/stern --completion zsh > $bin/share/zsh/site-functions/_stern
+      for shell in bash zsh; do
+        ${stern}/bin/stern --completion $shell > stern.$shell
+        installShellCompletion stern.$shell
+      done
     '';
 
   meta = with lib; {
diff --git a/pkgs/applications/networking/cluster/taktuk/default.nix b/pkgs/applications/networking/cluster/taktuk/default.nix
index 3423163f5902..a5a2ace2399b 100644
--- a/pkgs/applications/networking/cluster/taktuk/default.nix
+++ b/pkgs/applications/networking/cluster/taktuk/default.nix
@@ -25,7 +25,7 @@ stdenv.mkDerivation rec {
       network to transport commands and perform I/Os multiplexing. It doesn't
       require any specific software on the nodes thanks to a self-propagation
       algorithm.'';
-    homepage = http://taktuk.gforge.inria.fr/;
+    homepage = "http://taktuk.gforge.inria.fr/";
     license = stdenv.lib.licenses.gpl2;
     maintainers = [ stdenv.lib.maintainers.bzizou ];
     platforms = stdenv.lib.platforms.linux;
diff --git a/pkgs/applications/networking/cluster/terraform-docs/default.nix b/pkgs/applications/networking/cluster/terraform-docs/default.nix
index 606cd0370aa2..a5b6e7d2f5e7 100644
--- a/pkgs/applications/networking/cluster/terraform-docs/default.nix
+++ b/pkgs/applications/networking/cluster/terraform-docs/default.nix
@@ -1,7 +1,7 @@
 { lib, buildGoPackage, fetchFromGitHub }:
 buildGoPackage rec {
   pname = "terraform-docs";
-  version = "0.6.0";
+  version = "0.9.1";
 
   goPackagePath = "github.com/segmentio/${pname}";
 
@@ -9,7 +9,7 @@ buildGoPackage rec {
     owner  = "segmentio";
     repo   = pname;
     rev    = "v${version}";
-    sha256 = "1p6prhjf82qnhf1zwl9h92j4ds5g383a6g9pwwnqbc3wdwy5zx7d";
+    sha256 = "00sfzdqhf8g85m03r6mbzfas5vvc67iq7syb8ljcgxg8l1knxnjx";
   };
 
   preBuild = ''
diff --git a/pkgs/applications/networking/cluster/terraform-inventory/default.nix b/pkgs/applications/networking/cluster/terraform-inventory/default.nix
index 1bb8df88d010..38fbd1b42865 100644
--- a/pkgs/applications/networking/cluster/terraform-inventory/default.nix
+++ b/pkgs/applications/networking/cluster/terraform-inventory/default.nix
@@ -19,7 +19,7 @@ buildGoPackage rec {
   goDeps = ./deps.nix;
 
   meta = with stdenv.lib; {
-    homepage = https://github.com/adammck/terraform-inventory;
+    homepage = "https://github.com/adammck/terraform-inventory";
     description = "Terraform state to ansible inventory adapter";
     platforms = platforms.all;
     license = licenses.mit;
diff --git a/pkgs/applications/networking/cluster/terraform-landscape/Gemfile.lock b/pkgs/applications/networking/cluster/terraform-landscape/Gemfile.lock
index b801fad546df..7307d8a33f3c 100644
--- a/pkgs/applications/networking/cluster/terraform-landscape/Gemfile.lock
+++ b/pkgs/applications/networking/cluster/terraform-landscape/Gemfile.lock
@@ -22,4 +22,4 @@ DEPENDENCIES
   terraform_landscape
 
 BUNDLED WITH
-   1.16.3
+   2.1.4
diff --git a/pkgs/applications/networking/cluster/terraform-landscape/default.nix b/pkgs/applications/networking/cluster/terraform-landscape/default.nix
index 32f6680b2f8b..903aa9abb6e2 100644
--- a/pkgs/applications/networking/cluster/terraform-landscape/default.nix
+++ b/pkgs/applications/networking/cluster/terraform-landscape/default.nix
@@ -10,7 +10,7 @@ bundlerApp {
 
   meta = with lib; {
     description = "Improve Terraform's plan output to be easier to read and understand";
-    homepage    = https://github.com/coinbase/terraform-landscape;
+    homepage    = "https://github.com/coinbase/terraform-landscape";
     license     = with licenses; asl20;
     maintainers = with maintainers; [ mbode manveru nicknovitski ];
     platforms   = platforms.unix;
diff --git a/pkgs/applications/networking/cluster/terraform-providers/data.nix b/pkgs/applications/networking/cluster/terraform-providers/data.nix
index b78ab3f6ddaa..6994f2b85a33 100644
--- a/pkgs/applications/networking/cluster/terraform-providers/data.nix
+++ b/pkgs/applications/networking/cluster/terraform-providers/data.nix
@@ -1,5 +1,13 @@
 # Generated with ./update-all
 {
+  aci =
+    {
+      owner   = "terraform-providers";
+      repo    = "terraform-provider-aci";
+      rev     = "v0.2.1";
+      version = "0.2.1";
+      sha256  = "1ylc3w5m68q7vvdignrgw3kwdmrw7w0blmfffxc4cam0a6a7q05l";
+    };
   acme =
     {
       owner   = "terraform-providers";
@@ -8,17 +16,25 @@
       version = "1.5.0";
       sha256  = "1h53bgflchavnn4laf801d920bsgqqg0ph4slnf7y1fpb0mz5vdv";
     };
+  akamai =
+    {
+      owner   = "terraform-providers";
+      repo    = "terraform-provider-akamai";
+      rev     = "v0.5.0";
+      version = "0.5.0";
+      sha256  = "18l1ik10pn4aq0911sqnfjw9a5zxrm0qbsgynvf5vxc02zds13n5";
+    };
   alicloud =
     {
       owner   = "terraform-providers";
       repo    = "terraform-provider-alicloud";
-      rev     = "v1.70.1";
-      version = "1.70.1";
-      sha256  = "19bhnnw5gh4pqap8y23v57lyk27z7fw1wb4p0faj860kdf2zpq4j";
+      rev     = "v1.80.1";
+      version = "1.80.1";
+      sha256  = "0d483lp3rwz99f77sds717hafzbz1z7gq58dw52qzqagam8lrc10";
     };
   archive =
     {
-      owner   = "terraform-providers";
+      owner   = "hashicorp";
       repo    = "terraform-provider-archive";
       rev     = "v1.3.0";
       version = "1.3.0";
@@ -32,37 +48,53 @@
       version = "1.1.0";
       sha256  = "1akl9fzgm5qv01vz18xjzyqjnlxw699qq4x8vr96j16l1zf10h99";
     };
-  atlas =
+  auth0 =
     {
       owner   = "terraform-providers";
-      repo    = "terraform-provider-atlas";
-      rev     = "v0.1.1";
-      version = "0.1.1";
-      sha256  = "0k73vv14vnjl5qm33w54s5zzi0mmk1kn2zs3qkfq71aqi9ml7d14";
+      repo    = "terraform-provider-auth0";
+      rev     = "v0.9.3";
+      version = "0.9.3";
+      sha256  = "04dd7jxhpw2dqj6h3sbknbl1fa92jzshznm8icxrjajpxhcnbc32";
+    };
+  avi =
+    {
+      owner   = "terraform-providers";
+      repo    = "terraform-provider-avi";
+      rev     = "18.2.8";
+      version = "18.2.8";
+      sha256  = "0vpa6wksvb4gz65hgq0vizw0bky400bqh9zgf41g0mqkhv3wwb4i";
+    };
+  aviatrix =
+    {
+      owner   = "terraform-providers";
+      repo    = "terraform-provider-aviatrix";
+      rev     = "v2.13.0";
+      version = "2.13.0";
+      sha256  = "1913fp3lfvdr3npwr0vbdhb4xsvyyr1r76hv3h7rg5fidf3vpw5a";
     };
   aws =
     {
       owner   = "terraform-providers";
       repo    = "terraform-provider-aws";
-      rev     = "v2.45.0";
-      version = "2.45.0";
-      sha256  = "0416f32wy88zyagnwcf2flh1rh7i118b9h5qn8fwrm3sv43p3blm";
+      rev     = "v2.59.0";
+      version = "2.59.0";
+      sha256  = "0hkvjvabw8phl5mb9km2dxm64a5lf56g9aq9qf593zsij1rsjwkk";
     };
   azuread =
     {
       owner   = "terraform-providers";
       repo    = "terraform-provider-azuread";
-      rev     = "v0.7.0";
-      version = "0.7.0";
-      sha256  = "1a7w31dvjz5498445ia4m5gd1js3k7ghz6qqfq51f2n86iafs0xq";
+      rev     = "v0.8.0";
+      version = "0.8.0";
+      sha256  = "0vljhjbizxh5s8f2ki7yn6hzf5xbn5swhxmq9wpxmg7jw5z0k6ha";
     };
   azurerm =
     {
       owner   = "terraform-providers";
       repo    = "terraform-provider-azurerm";
-      rev     = "v1.41.0";
-      version = "1.41.0";
-      sha256  = "0ma291m9d452wavjr3lgyik01r8napmwz91bbnbfzp1j48hhqc4h";
+      rev     = "v2.7.0";
+      version = "2.7.0";
+      sha256  = "0w4bafj3kn5kvkrc26ix1y9rgf3w4810x7la7g1aclpg7507fcv3";
     };
   azurestack =
     {
@@ -72,21 +104,29 @@
       version = "0.9.0";
       sha256  = "1msm7jwzry0vmas3l68h6p0migrsm6d18zpxcncv197m8xbvg324";
     };
+  baiducloud =
+    {
+      owner   = "terraform-providers";
+      repo    = "terraform-provider-baiducloud";
+      rev     = "v1.2.0";
+      version = "1.2.0";
+      sha256  = "1s2vk4vjni5nc50pdw60pm0grrf835xy551i6d4cmfxkkpqx3f6f";
+    };
   bigip =
     {
       owner   = "terraform-providers";
       repo    = "terraform-provider-bigip";
-      rev     = "v1.1.1";
-      version = "1.1.1";
-      sha256  = "15rx25fbvdmgvg5n0qnq1hyfnr7l4nx8igdb4107g41fp73bxg32";
+      rev     = "v1.12";
+      version = "1.12";
+      sha256  = "0yjv0xldplx7jfld1izzc7i93bzwdqrjjzymq02isy2xyfh8by35";
     };
   bitbucket =
     {
       owner   = "terraform-providers";
       repo    = "terraform-provider-bitbucket";
-      rev     = "v1.1.0";
-      version = "1.1.0";
-      sha256  = "06bjagbgpgfphwym015wl00wx6qf7lsdig0fhpxqaykvlkn3sg49";
+      rev     = "v1.2.0";
+      version = "1.2.0";
+      sha256  = "11n4wpvmaab164g6k077n9dbdbhd5lwl7pxpha5492ks468nd95b";
     };
   brightbox =
     {
@@ -96,6 +136,14 @@
       version = "1.2.0";
       sha256  = "0s1b2k58r2kmjrdqrkw2dlfpby79i81gml9rpa10y372bwq314zd";
     };
+  checkpoint =
+    {
+      owner   = "terraform-providers";
+      repo    = "terraform-provider-checkpoint";
+      rev     = "v1.0.1";
+      version = "1.0.1";
+      sha256  = "1z2m8lbnplcfaij1xnclyhl4zlchx6bmvrc2fr4hwfzc58m9v7ra";
+    };
   chef =
     {
       owner   = "terraform-providers";
@@ -104,13 +152,21 @@
       version = "0.2.0";
       sha256  = "0ihn4706fflmf0585w22l7arzxsa9biq4cgh8nlhlp5y0zy934ns";
     };
-  circonus =
+  cherryservers =
     {
       owner   = "terraform-providers";
-      repo    = "terraform-provider-circonus";
-      rev     = "v0.5.0";
-      version = "0.5.0";
-      sha256  = "0m6xbmgbismsmxnh79xb9p3mvy9aqdwvmsvifpxsbd73lki232mc";
+      repo    = "terraform-provider-cherryservers";
+      rev     = "v1.0.0";
+      version = "1.0.0";
+      sha256  = "1z6ai6q8aw38kiy8x13rp0dsvb4jk40cv8pk5c069q15m4jab8lh";
+    };
+  ciscoasa =
+    {
+      owner   = "terraform-providers";
+      repo    = "terraform-provider-ciscoasa";
+      rev     = "v1.2.0";
+      version = "1.2.0";
+      sha256  = "033pgy42qwjpmjyzylpml7sfzd6dvvybs56cid1f6sm4ykmxbal7";
     };
   clc =
     {
@@ -124,17 +180,25 @@
     {
       owner   = "terraform-providers";
       repo    = "terraform-provider-cloudflare";
-      rev     = "v2.3.0";
-      version = "2.3.0";
-      sha256  = "031xb0g1g74gc44nadbgrfn59hzjr5q0s98lgxrglsdm5mfgzdfr";
+      rev     = "v2.6.0";
+      version = "2.6.0";
+      sha256  = "01z2znif5yy4bawcf76b6d0j3b67fljbx87b4b2cb5vqy4l4aamk";
+    };
+  cloudinit =
+    {
+      owner   = "hashicorp";
+      repo    = "terraform-provider-cloudinit";
+      rev     = "v1.0.0";
+      version = "1.0.0";
+      sha256  = "0i926f4xkfydd2bxmim69xrvi9ymn1vrc66zl117axzsmy9200zx";
     };
   cloudscale =
     {
       owner   = "terraform-providers";
       repo    = "terraform-provider-cloudscale";
-      rev     = "v2.1.1";
-      version = "2.1.1";
-      sha256  = "122yi2wbd8mqddkwp2la6vwqw0kw7c9ff5j6y4xqczjg2bwb9mph";
+      rev     = "v2.1.2";
+      version = "2.1.2";
+      sha256  = "052pa17a77fkmhvygfgmpz87xlc08qvz1apzc2scg2449xfdv7zb";
     };
   cloudstack =
     {
@@ -156,25 +220,25 @@
     {
       owner   = "terraform-providers";
       repo    = "terraform-provider-consul";
-      rev     = "v2.6.1";
-      version = "2.6.1";
-      sha256  = "17lgfanz3by7wfrgqbwbsbxs46mrr8a1iyqkj38qc8xg0m6pg97v";
+      rev     = "v2.7.0";
+      version = "2.7.0";
+      sha256  = "11c54waq7w34l79ak4kizjkmh8zjca5ygh9yib691hdmxsx2cifj";
     };
   datadog =
     {
       owner   = "terraform-providers";
       repo    = "terraform-provider-datadog";
-      rev     = "v2.6.0";
-      version = "2.6.0";
-      sha256  = "05ijf01sxdxrxc3ii68ha8b6x8pz025kfa51i91q42ldhf3kqhsz";
+      rev     = "v2.7.0";
+      version = "2.7.0";
+      sha256  = "0cq11cjcm2nlszqhsrj425mk8dp0h5ljrrn7jplrbffp8g6wvadd";
     };
   digitalocean =
     {
       owner   = "terraform-providers";
       repo    = "terraform-provider-digitalocean";
-      rev     = "v1.12.0";
-      version = "1.12.0";
-      sha256  = "137p8q30pv28h5gfqag0i44dxbc1dbq239gnzbb4hkzgsqgrb9gp";
+      rev     = "v1.16.0";
+      version = "1.16.0";
+      sha256  = "0yymgkn66a9mif0wic4rais7ap6d4gfxij835ssr2pr3rb49ay8d";
     };
   dme =
     {
@@ -184,29 +248,37 @@
       version = "0.1.0";
       sha256  = "1ipqw1sbx0i9rhxawsysrqxvf10z8ra2y86xwd4iz0f12x9drblv";
     };
-  dns =
+  dnsimple =
     {
       owner   = "terraform-providers";
+      repo    = "terraform-provider-dnsimple";
+      rev     = "v0.3.0";
+      version = "0.3.0";
+      sha256  = "1m38whc6jx5mccaisnbnkawwlz1bxvy991rqy6h9xb10zyvqar62";
+    };
+  dns =
+    {
+      owner   = "hashicorp";
       repo    = "terraform-provider-dns";
       rev     = "v2.2.0";
       version = "2.2.0";
       sha256  = "11xdxj6hfclaq9glbh14nihmrsk220crm9ld8bdv77w0bppmrrch";
     };
-  dnsimple =
+  docker =
     {
       owner   = "terraform-providers";
-      repo    = "terraform-provider-dnsimple";
-      rev     = "v0.2.0";
-      version = "0.2.0";
-      sha256  = "0jj82fffqaz7gramj5d4avx7vka6w190yz4r9q7628qh8ih2pfhz";
+      repo    = "terraform-provider-docker";
+      rev     = "v2.7.0";
+      version = "2.7.0";
+      sha256  = "0pl515xjnic7mhfvqbml1z1win5mrhjdqb84jhd5n09j39lb24gx";
     };
-  docker =
+  dome9 =
     {
       owner   = "terraform-providers";
-      repo    = "terraform-provider-docker";
-      rev     = "v2.6.0";
-      version = "2.6.0";
-      sha256  = "12qq7m75yxfczik78klqaimrzhp70m2vk5q0h3v8b2dwvvynj0dg";
+      repo    = "terraform-provider-dome9";
+      rev     = "v1.18.1";
+      version = "1.18.1";
+      sha256  = "0m4fxpik55z9ah5nlhvy314xyxvlaldqbwdp3bx1xs9kpm3znvyl";
     };
   dyn =
     {
@@ -216,9 +288,17 @@
       version = "1.2.0";
       sha256  = "1a3kxmbib2y0nl7gnxknbhsflj5kfknxnm3gjxxrb2h5d2kvqy48";
     };
-  external =
+  exoscale =
     {
       owner   = "terraform-providers";
+      repo    = "terraform-provider-exoscale";
+      rev     = "v0.16.2";
+      version = "0.16.2";
+      sha256  = "102z4v3shk0as76v90151j4c6p93wy16m1hzzk1yp50dlc8ffsks";
+    };
+  external =
+    {
+      owner   = "hashicorp";
       repo    = "terraform-provider-external";
       rev     = "v1.2.0";
       version = "1.2.0";
@@ -228,49 +308,65 @@
     {
       owner   = "terraform-providers";
       repo    = "terraform-provider-fastly";
-      rev     = "v0.12.1";
-      version = "0.12.1";
-      sha256  = "1bczp7rdbpmycbky9ijirfix2capw0hjai4c7w5hmm4wda5spwb1";
+      rev     = "v0.14.0";
+      version = "0.14.0";
+      sha256  = "1ak5gyrv66dnf5qy54hvwc4478n3cs5nxd0nwa2vf0gn2zp55bhy";
     };
   flexibleengine =
     {
       owner   = "terraform-providers";
       repo    = "terraform-provider-flexibleengine";
-      rev     = "v1.10.0";
-      version = "1.10.0";
-      sha256  = "1ys1dd7knfk3hic6ph4gi7qsf75s2m5mxkil16p3f9ywvfxpzq8w";
+      rev     = "v1.11.1";
+      version = "1.11.1";
+      sha256  = "12kgnq2ydwi2n29y0dc7r251zrnq8kkskiq8p5ypsrm23j3jm6dw";
+    };
+  fortios =
+    {
+      owner   = "terraform-providers";
+      repo    = "terraform-provider-fortios";
+      rev     = "v1.1.0";
+      version = "1.1.0";
+      sha256  = "0m006ah351f2ih7zvd3pnpga4d8mh42i4m8af4wflhvyzkw50xnf";
+    };
+  genymotion =
+    {
+      owner   = "terraform-providers";
+      repo    = "terraform-provider-genymotion";
+      rev     = "v1.1.0";
+      version = "1.1.0";
+      sha256  = "02jpr3cm7rrf810c69sr6lcxzvxpnf7icc5z80gnvg67wwfg4ph4";
     };
   github =
     {
       owner   = "terraform-providers";
       repo    = "terraform-provider-github";
-      rev     = "v2.3.0";
-      version = "2.3.0";
-      sha256  = "02fd6rq25ms9lpjqn4n1wy13i2mnl9lvczpgjqlz69yj2aiwyw34";
+      rev     = "v2.6.1";
+      version = "2.6.1";
+      sha256  = "1hg5pij2hllj6m6x8salsgw404ap7pw6yccvgynw4y4k26dl0jlr";
     };
   gitlab =
     {
       owner   = "terraform-providers";
       repo    = "terraform-provider-gitlab";
-      rev     = "v2.5.0";
-      version = "2.5.0";
-      sha256  = "1g7girhjks6p7rcs82p2zd8clp6kdfn6d1synlmfwiw6d3496fvf";
+      rev     = "v2.6.0";
+      version = "2.6.0";
+      sha256  = "0qy58fgwipcjwxz473rpcnpkb22n9hqsjckx88lhc2br4pgbcbrd";
     };
-  google =
+  google-beta =
     {
       owner   = "terraform-providers";
-      repo    = "terraform-provider-google";
-      rev     = "v3.5.0";
-      version = "3.5.0";
-      sha256  = "09mlic67940bnq5f8a7magn27k2jm8hvq3z0zh2cv6a9gdpg821i";
+      repo    = "terraform-provider-google-beta";
+      rev     = "v3.18.0";
+      version = "3.18.0";
+      sha256  = "1rsaqrgr6ddgx1pala83y70dk32s0mvf6vi877awmimxjzsa1l4r";
     };
-  google-beta =
+  google =
     {
       owner   = "terraform-providers";
-      repo    = "terraform-provider-google-beta";
-      rev     = "v3.5.0";
-      version = "3.5.0";
-      sha256  = "1qkfvvidvb2j76x095vprj2vm272lig38a8rbxsir2kkvkmnzv5l";
+      repo    = "terraform-provider-google";
+      rev     = "v3.18.0";
+      version = "3.18.0";
+      sha256  = "18cxl1qw1wyvzvhgjm1s3c19hbi5z9s6mipgazhrac70myw8dmy7";
     };
   grafana =
     {
@@ -280,61 +376,85 @@
       version = "1.5.0";
       sha256  = "0zy3bqgpxymp2zygaxzllk1ysdankwxa1sy1djfgr4fs2nlggkwi";
     };
+  gridscale =
+    {
+      owner   = "terraform-providers";
+      repo    = "terraform-provider-gridscale";
+      rev     = "v1.5.1";
+      version = "1.5.1";
+      sha256  = "0m5j9y26a7jl3frnw1j8gll999brprgf0i29p201d3c9b02pxnla";
+    };
   hcloud =
     {
       owner   = "terraform-providers";
       repo    = "terraform-provider-hcloud";
-      rev     = "v1.15.0";
-      version = "1.15.0";
-      sha256  = "0l554mf6s248j0453b4r5pafshcvhn2smk4pp23y9kq5g1xd0xmd";
+      rev     = "v1.16.0";
+      version = "1.16.0";
+      sha256  = "09v2bg4ffyh4ibz449dygxgd7mvjgh4b2r242l3cwi7pzn66imrz";
     };
   hedvig =
     {
       owner   = "terraform-providers";
       repo    = "terraform-provider-hedvig";
-      rev     = "v1.0.5";
-      version = "1.0.5";
-      sha256  = "0dic4kqjwi3s8pss1pmgixnr7xi503gl5i7pcx66fam5y5ar92v5";
+      rev     = "v1.1.1";
+      version = "1.1.1";
+      sha256  = "1gd26jm9frn52hy2vm5sv003lbai5sjgdign6akhjmw5sdsmfr05";
     };
   helm =
     {
       owner   = "terraform-providers";
       repo    = "terraform-provider-helm";
-      rev     = "v0.10.4";
-      version = "0.10.4";
-      sha256  = "0xl0wgh1j6yhymadqvlj21qddxfzaxk3d5wpzskfmhfk732795rc";
+      rev     = "v1.1.1";
+      version = "1.1.1";
+      sha256  = "0sna0xaibdh1aw3lxs1r2hidw95lxkpm4fqdw0hzmdqxwdmg4b40";
     };
   heroku =
     {
       owner   = "terraform-providers";
       repo    = "terraform-provider-heroku";
-      rev     = "v2.2.1";
-      version = "2.2.1";
-      sha256  = "145kfm4asca0ksprb076mjdhs5ahrlrad8cqz8spxra5fa3j46sq";
+      rev     = "v2.4.0";
+      version = "2.4.0";
+      sha256  = "1rhny1mbkqkfiqshps5mc5f3ykxnpypsdi72hw4g1k29pbvr4hh8";
     };
   http =
     {
-      owner   = "terraform-providers";
+      owner   = "hashicorp";
       repo    = "terraform-provider-http";
-      rev     = "v1.1.1";
-      version = "1.1.1";
-      sha256  = "0ah4wi9gm5m7z0wyy6vn3baz2iw2sq7ah7q0lb9srwr887aai3x0";
+      rev     = "v1.2.0";
+      version = "1.2.0";
+      sha256  = "0q8ichbqrq62q1j0rc7sdz1jzfwg2l9v4ac9jqf6y485dblhmwqd";
+    };
+  huaweicloudstack =
+    {
+      owner   = "terraform-providers";
+      repo    = "terraform-provider-huaweicloudstack";
+      rev     = "v1.1.0";
+      version = "1.1.0";
+      sha256  = "1zzf7jbvdlccfbb4cmw2k3mlfj4hh0lv59zahq2zy8afiajsb68i";
     };
   huaweicloud =
     {
       owner   = "terraform-providers";
       repo    = "terraform-provider-huaweicloud";
-      rev     = "v1.12.0";
-      version = "1.12.0";
-      sha256  = "1wcr1d9y6bnwjh6b0a49i566wyn0d8bjnxnpgmd4s6wmr9sc4l0b";
+      rev     = "v1.14.0";
+      version = "1.14.0";
+      sha256  = "10g5xl3pspzmj0bjzqbw3br4k7kh2jplph06f7sz2zg9dncl4h5z";
+    };
+  ibm =
+    {
+      owner   = "IBM-Cloud";
+      repo    = "terraform-provider-ibm";
+      rev     = "v1.4.0";
+      version = "1.4.0";
+      sha256  = "147vl55g6c49ihk8z2hwfq2v7g1yj35id1qfjlz0dxalm7cwa3l6";
     };
   icinga2 =
     {
       owner   = "terraform-providers";
       repo    = "terraform-provider-icinga2";
-      rev     = "v0.2.0";
-      version = "0.2.0";
-      sha256  = "02ladn2w75k35vn8llj3zh9hbpnnnvpm47c9f29zshfs04acwbq0";
+      rev     = "v0.3.0";
+      version = "0.3.0";
+      sha256  = "0xwjxb84glhp9viqykziwanj696w2prq4r7k0565k0w3qiaz440v";
     };
   ignition =
     {
@@ -344,6 +464,14 @@
       version = "1.2.1";
       sha256  = "0wd29iw0a5w7ykgs9m1mmi0bw5z9dl4z640qyz64x8rlh5hl1wql";
     };
+  incapsula =
+    {
+      owner   = "terraform-providers";
+      repo    = "terraform-provider-incapsula";
+      rev     = "v2.1.0";
+      version = "2.1.0";
+      sha256  = "12zw2m7j52rszfawywbiv9rgv976h1w6bp98012qn45d4ap2kvzy";
+    };
   influxdb =
     {
       owner   = "terraform-providers";
@@ -352,13 +480,37 @@
       version = "1.3.0";
       sha256  = "19af40g8hgz2rdz6523v0fs71ww7qdlf2mh5j9vb7pfzriqwa5k9";
     };
+  infoblox =
+    {
+      owner   = "terraform-providers";
+      repo    = "terraform-provider-infoblox";
+      rev     = "v1.0.0";
+      version = "1.0.0";
+      sha256  = "0p95y5w3fzddygmsjc0j60z0f4aazvy5iwbwszj0i8gs42qhda2f";
+    };
+  jdcloud =
+    {
+      owner   = "terraform-providers";
+      repo    = "terraform-provider-jdcloud";
+      rev     = "v1.1.0";
+      version = "1.1.0";
+      sha256  = "04vz0m3z9rfw2hp0h3jhn625r2v37b319krznvhqylqzksv39dzf";
+    };
   kubernetes =
     {
       owner   = "terraform-providers";
       repo    = "terraform-provider-kubernetes";
-      rev     = "v1.10.0";
-      version = "1.10.0";
-      sha256  = "04hd9n9jm72fi81cmdz0yf374fg52r8yinsxy0ag29rd3r2l1k81";
+      rev     = "v1.11.1";
+      version = "1.11.1";
+      sha256  = "13m0g52i2z4s58grk22rv0yqbrfszfbxxhwisb5mi7cma4cp7506";
+    };
+  launchdarkly =
+    {
+      owner   = "terraform-providers";
+      repo    = "terraform-provider-launchdarkly";
+      rev     = "v1.2.2";
+      version = "1.2.2";
+      sha256  = "0rvyzn2a8bh8hvd3f6whfwzpx2frqnfmh8nwlasb0r4xya8lv3bc";
     };
   librato =
     {
@@ -372,13 +524,13 @@
     {
       owner   = "terraform-providers";
       repo    = "terraform-provider-linode";
-      rev     = "v1.9.1";
-      version = "1.9.1";
-      sha256  = "10f7nij91fhgf1808r6rv3l13nz7p37mcln5p3nfvhsxskss3vxn";
+      rev     = "v1.9.3";
+      version = "1.9.3";
+      sha256  = "12jwvpnv4xl9crq6jynking2rcl4ci8ci22db3fadigxqs98hb4w";
     };
   local =
     {
-      owner   = "terraform-providers";
+      owner   = "hashicorp";
       repo    = "terraform-provider-local";
       rev     = "v1.4.0";
       version = "1.4.0";
@@ -396,9 +548,9 @@
     {
       owner   = "terraform-providers";
       repo    = "terraform-provider-logicmonitor";
-      rev     = "v1.2.1";
-      version = "1.2.1";
-      sha256  = "1fcv5g92l6xr4x69h9rg48zazjr99wrz9mkmr122fyq9s7kdd98y";
+      rev     = "v1.3.0";
+      version = "1.3.0";
+      sha256  = "00d8qx95cxaif636dyh935nv9nn6lmb1ybxy7n4myy9g80y50ap1";
     };
   mailgun =
     {
@@ -408,6 +560,30 @@
       version = "0.4.1";
       sha256  = "1l76pg4hmww9zg2n4rkhm5dwjh42fxri6d41ih1bf670krkxwsmz";
     };
+  matchbox =
+    {
+      owner   = "poseidon";
+      repo    = "terraform-provider-matchbox";
+      rev     = "v0.3.0";
+      version = "0.3.0";
+      sha256  = "1nq7k8qa7rv8xyryjigwpwcwvj1sw85c4j46rkfdv70b6js25jz3";
+    };
+  metalcloud =
+    {
+      owner   = "terraform-providers";
+      repo    = "terraform-provider-metalcloud";
+      rev     = "v2.2.0";
+      version = "2.2.0";
+      sha256  = "0xii9gk96srzi9y4pbvlx2cvwypll4igvk89f9qrg18qrw72ags3";
+    };
+  mongodbatlas =
+    {
+      owner   = "terraform-providers";
+      repo    = "terraform-provider-mongodbatlas";
+      rev     = "v0.5.0";
+      version = "0.5.0";
+      sha256  = "15m7qmn1gd7gmzlqgf2q70kmihf8ihqabpkf122pxhb3iyikwh77";
+    };
   mysql =
     {
       owner   = "terraform-providers";
@@ -416,49 +592,65 @@
       version = "1.9.0";
       sha256  = "14gxxki3jhncv3s2x828ns2vgmf2xxzigdyp9b54mbkw5rnv1k2g";
     };
+  ncloud =
+    {
+      owner   = "terraform-providers";
+      repo    = "terraform-provider-ncloud";
+      rev     = "v1.2.0";
+      version = "1.2.0";
+      sha256  = "1h2fr0ss58dr3ypqj6kw90iyji6s83sz2i85vhs5z2adjbk7h8va";
+    };
   netlify =
     {
       owner   = "terraform-providers";
       repo    = "terraform-provider-netlify";
-      rev     = "v0.3.0";
-      version = "0.3.0";
-      sha256  = "0mmbli6d3fbpyvvdfsg32f1w83g8ga3x21b36rgmx3mn156r7yij";
+      rev     = "v0.4.0";
+      version = "0.4.0";
+      sha256  = "07xds84k2vgpvn2cy3id7hmzg57sz2603zs4msn3ysxmi28lmqyg";
     };
   newrelic =
     {
       owner   = "terraform-providers";
       repo    = "terraform-provider-newrelic";
-      rev     = "v1.12.1";
-      version = "1.12.1";
-      sha256  = "17xdwhiyzfjxirvjwwl5jnan84i3zd930zch8l4jx04946vjzsc5";
+      rev     = "v1.16.0";
+      version = "1.16.0";
+      sha256  = "0ddfffyrw28syg0y2q9j7xh4k2sjb8l40167rwgz19w39p1caffv";
+    };
+  nixos =
+    {
+      owner   = "tweag";
+      repo    = "terraform-provider-nixos";
+      rev     = "v0.0.1";
+      version = "0.0.1";
+      sha256  = "00vz6qjq1pk39iqg4356b8g3c6slla9jifkv2knk46gc9q93q0lf";
     };
   nomad =
     {
       owner   = "terraform-providers";
       repo    = "terraform-provider-nomad";
-      rev     = "v1.4.2";
-      version = "1.4.2";
-      sha256  = "0h0snkzqdi4g5lp78f5pq98x6556ldwgkg9p9jkmrg04y7928w5v";
+      rev     = "v1.4.5";
+      version = "1.4.5";
+      sha256  = "1sccm4mspjn92ky6nscsrmbb573mx53wzsvvapsf2p4119h9s30i";
     };
   ns1 =
     {
       owner   = "terraform-providers";
       repo    = "terraform-provider-ns1";
-      rev     = "v1.6.4";
-      version = "1.6.4";
-      sha256  = "08wg5qlqj7id5gfwxckjyx1ypfkiq919vjzq8qsdayg9sr9dpf5i";
+      rev     = "v1.8.1";
+      version = "1.8.1";
+      sha256  = "04s46f40md8hrqqiwj6wcq4qpx0115qk8hwbln9a7lsrh0zmmmb3";
     };
   nsxt =
     {
       owner   = "terraform-providers";
       repo    = "terraform-provider-nsxt";
-      rev     = "v1.1.2";
-      version = "1.1.2";
-      sha256  = "1hnxivad7371j363sp3460mfzl5alb3dhxsbp0qwfl5mzvriwrbl";
+      rev     = "v2.0.0";
+      version = "2.0.0";
+      sha256  = "0fka793r0c06sz8vlxk0z7vbm6kab5xzk39r5pznkq34004r17sl";
     };
   null =
     {
-      owner   = "terraform-providers";
+      owner   = "hashicorp";
       repo    = "terraform-provider-null";
       rev     = "v2.1.2";
       version = "2.1.2";
@@ -476,9 +668,25 @@
     {
       owner   = "terraform-providers";
       repo    = "terraform-provider-oci";
-      rev     = "v3.59.0-rc1";
-      version = "3.59.0-rc1";
-      sha256  = "1pgl95rmxk9h9whbkfgpzpbvvkhnm3223flqk73w673ylgrxss49";
+      rev     = "v3.72.0";
+      version = "3.72.0";
+      sha256  = "05sl702b0j9lpsy3bjac104qngjlsln0v2ni8a78j97xif8jb0an";
+    };
+  oktaasa =
+    {
+      owner   = "terraform-providers";
+      repo    = "terraform-provider-oktaasa";
+      rev     = "v1.0.0";
+      version = "1.0.0";
+      sha256  = "093d5r8dz8gryk8qp5var2qrrgkvs1gwgw3zqpxry9xc5cpn30w0";
+    };
+  okta =
+    {
+      owner   = "terraform-providers";
+      repo    = "terraform-provider-okta";
+      rev     = "v3.2.0";
+      version = "3.2.0";
+      sha256  = "13z5srra4pj5p2dwzrqiny2ph4vmmp8q59ycmd7x2yi93fd02mcl";
     };
   oneandone =
     {
@@ -492,33 +700,41 @@
     {
       owner   = "terraform-providers";
       repo    = "terraform-provider-opc";
-      rev     = "v1.3.7";
-      version = "1.3.7";
-      sha256  = "01g09w8mqfp1d8phplsdj0vz63q5bgq9fqwy2kp4vrnwb70dq52w";
+      rev     = "v1.4.0";
+      version = "1.4.0";
+      sha256  = "1yl8bbh4pf94wlmna294zcawylr9hiaix82wr321g9wb0vi3d5l8";
+    };
+  opennebula =
+    {
+      owner   = "terraform-providers";
+      repo    = "terraform-provider-opennebula";
+      rev     = "v0.1.1";
+      version = "0.1.1";
+      sha256  = "048cqd89fz5xpji1w8ylg75nbzzcx1c5n89y1k0ra8d3g2208yb2";
     };
   openstack =
     {
       owner   = "terraform-providers";
       repo    = "terraform-provider-openstack";
-      rev     = "v1.25.0";
-      version = "1.25.0";
-      sha256  = "1yqc7nhmzlcq48csn23ma3fv6yb6cmkqqrxv63jjg6bxb7nyyqxd";
+      rev     = "v1.27.0";
+      version = "1.27.0";
+      sha256  = "0d6dms5y8vndcm10zfid1g13c5fi19z7hqll8z07jr0hgvhbzp2v";
     };
   opentelekomcloud =
     {
       owner   = "terraform-providers";
       repo    = "terraform-provider-opentelekomcloud";
-      rev     = "v1.15.0";
-      version = "1.15.0";
-      sha256  = "080lzs40m3vny5bmg4vhsy7qz884c44ysmh325hi6s3v76dv4jxg";
+      rev     = "v1.16.0";
+      version = "1.16.0";
+      sha256  = "1bxkh8qnm1mw37wi4rxf29q8lksp864124nwbyn14fwb4h6m1yj4";
     };
   opsgenie =
     {
       owner   = "terraform-providers";
       repo    = "terraform-provider-opsgenie";
-      rev     = "v0.2.7";
-      version = "0.2.7";
-      sha256  = "0yylf5iv1dba9naqys65l5whym3q0bwpn98dwxr0lyj0skr8nz7r";
+      rev     = "v0.3.1";
+      version = "0.3.1";
+      sha256  = "1ciqhibij0fk2z20yabl464mj9srp1v6dy04dyazmxkw46bm1lc5";
     };
   oraclepaas =
     {
@@ -532,25 +748,25 @@
     {
       owner   = "terraform-providers";
       repo    = "terraform-provider-ovh";
-      rev     = "v0.6.0";
-      version = "0.6.0";
-      sha256  = "0hj029q9j2751hnay0rh0c8yxgmv2wd6xjwi12gkj6k6rmpgqfdh";
+      rev     = "v0.7.0";
+      version = "0.7.0";
+      sha256  = "167msjsl8xh8zy7lrxvkq2h98xpvxpsjzlil8lcxqmz8qq8a0q5f";
     };
   packet =
     {
       owner   = "terraform-providers";
       repo    = "terraform-provider-packet";
-      rev     = "v2.7.3";
-      version = "2.7.3";
-      sha256  = "1dd9fa416crh5y61qyaj2l0jhn1kh0ndkzqdw3lsxjqdhcqppbns";
+      rev     = "v2.8.1";
+      version = "2.8.1";
+      sha256  = "1idrvkc2bbp3vwz2w45nazr1hq10f7bmyamb57q7mlswydcyk6b2";
     };
   pagerduty =
     {
       owner   = "terraform-providers";
       repo    = "terraform-provider-pagerduty";
-      rev     = "v1.4.1";
-      version = "1.4.1";
-      sha256  = "0dmafnlziyczad907isjqzsn1fyjzc8pdigp3m6114bbnca0ry5k";
+      rev     = "v1.7.0";
+      version = "1.7.0";
+      sha256  = "168v1mpl9df63yp8zjq79hyxcjj4imyzg20rdn6n71d6iz8v85g8";
     };
   panos =
     {
@@ -560,13 +776,21 @@
       version = "1.6.2";
       sha256  = "1qy6jynv61zhvq16s8jkwjhxz7r65cmk9k37ahh07pbhdx707mz5";
     };
+  pass =
+    {
+      owner   = "camptocamp";
+      repo    = "terraform-provider-pass";
+      rev     = "1.2.1";
+      version = "1.2.1";
+      sha256  = "1hf5mvgz5ycp7shiy8px205d9kwswfjmclg7mlh9a55bkraffahk";
+    };
   postgresql =
     {
       owner   = "terraform-providers";
       repo    = "terraform-provider-postgresql";
-      rev     = "v1.4.0";
-      version = "1.4.0";
-      sha256  = "162j6dyrbc9r4ipj6igj64wm6r65l4vb0dlwczfhlksix3qzr3kx";
+      rev     = "v1.5.0";
+      version = "1.5.0";
+      sha256  = "1c9vn1jpfan04iidzn030q21bz3xabrd5pdhlbblblf558ykn4q0";
     };
   powerdns =
     {
@@ -580,17 +804,33 @@
     {
       owner   = "terraform-providers";
       repo    = "terraform-provider-profitbricks";
-      rev     = "v1.4.4";
-      version = "1.4.4";
-      sha256  = "0pzcl3pdhaykihvv1v38zrv607mydchvkzrzhwcakgmdkp3vq54i";
+      rev     = "v1.5.0";
+      version = "1.5.0";
+      sha256  = "0v9x8sj9c6acmbnkv4bnjvz93dd1fmg9b98rwghiakf968hxx6hl";
+    };
+  pureport =
+    {
+      owner   = "terraform-providers";
+      repo    = "terraform-provider-pureport";
+      rev     = "v1.1.8";
+      version = "1.1.8";
+      sha256  = "02vmqwjz5m5hj4zghwicjp27dxvc4qsiwj4gjsi66w6djdqnh4h1";
     };
   rabbitmq =
     {
       owner   = "terraform-providers";
       repo    = "terraform-provider-rabbitmq";
-      rev     = "v1.2.0";
-      version = "1.2.0";
-      sha256  = "1lhra8dvfyi6gn4s8mjd3lkkj6bz8y7xjhw1ki2kl5vpfw79d4l9";
+      rev     = "v1.3.0";
+      version = "1.3.0";
+      sha256  = "1adkbfm0p7a9i1i53bdmb34g5871rklgqkx7kzmwmk4fvv89n6g8";
+    };
+  rancher2 =
+    {
+      owner   = "terraform-providers";
+      repo    = "terraform-provider-rancher2";
+      rev     = "v1.8.3";
+      version = "1.8.3";
+      sha256  = "1k2d9j17b7sssliraww6as196ihdcra1ylhg1qbynklpr0asiwna";
     };
   rancher =
     {
@@ -602,7 +842,7 @@
     };
   random =
     {
-      owner   = "terraform-providers";
+      owner   = "hashicorp";
       repo    = "terraform-provider-random";
       rev     = "v2.2.1";
       version = "2.2.1";
@@ -636,25 +876,49 @@
     {
       owner   = "terraform-providers";
       repo    = "terraform-provider-scaleway";
-      rev     = "v1.13.0";
-      version = "1.13.0";
-      sha256  = "085wv59cfsaac2373gn783lknzp4qmgnrgi2yl1g27znm4b940i7";
+      rev     = "v1.14.0";
+      version = "1.14.0";
+      sha256  = "0j428pinwyyldg1jhlkad32213z98q3891yv906d6n7jg2bk5m6a";
+    };
+  secret =
+    {
+      owner   = "tweag";
+      repo    = "terraform-provider-secret";
+      rev     = "v1.1.0";
+      version = "1.1.0";
+      sha256  = "09gv0fpsrxzgna0xrhrdk8d4va9s0gvdbz596r306qxb4mip4w3r";
+    };
+  segment =
+    {
+      owner   = "ajbosco";
+      repo    = "terraform-provider-segment";
+      rev     = "v0.2.0";
+      version = "0.2.0";
+      sha256  = "0ic5b9djhnb1bs2bz3zdprgy3r55dng09xgc4d9l9fyp85g2amaz";
     };
   selectel =
     {
       owner   = "terraform-providers";
       repo    = "terraform-provider-selectel";
-      rev     = "v3.0.0";
-      version = "3.0.0";
-      sha256  = "0fr97j85inaqvdqmlfk3xcq73zvncn001nsd03pp2ws30qqa8p7r";
+      rev     = "v3.1.0";
+      version = "3.1.0";
+      sha256  = "1ajhnjlx4bf91z04cp8245j3h2h9c30ajf934zr29jvwli0y3piw";
+    };
+  signalfx =
+    {
+      owner   = "terraform-providers";
+      repo    = "terraform-provider-signalfx";
+      rev     = "v4.19.4";
+      version = "4.19.4";
+      sha256  = "15cf9paqrcznj99gv6mxqvgvkd8qbxkwz2145h2qxp5vdcykj78g";
     };
   skytap =
     {
       owner   = "terraform-providers";
       repo    = "terraform-provider-skytap";
-      rev     = "v0.13.0";
-      version = "0.13.0";
-      sha256  = "1why3ipi5a7whf18z87f97lbzdj020hfp8gxpgzl0nwpzpwkhdz3";
+      rev     = "v0.14.1";
+      version = "0.14.1";
+      sha256  = "0ygsdkv7czyhsjsx1q57rmmcl8x66d65yarhg40hlng5c7xpi52g";
     };
   softlayer =
     {
@@ -664,13 +928,29 @@
       version = "0.0.1";
       sha256  = "1xcg5zm2n1pc3l7ng94k589r7ykv6fxsmr5qn9xmmpdf912rdnfq";
     };
+  sops =
+    {
+      owner   = "carlpett";
+      repo    = "terraform-provider-sops";
+      rev     = "v0.5.0";
+      version = "0.5.0";
+      sha256  = "18zhqjkw1639a1vrxniws3sf5p91vrf5m7kksaj3yfiavsr5q2ki";
+    };
   spotinst =
     {
       owner   = "terraform-providers";
       repo    = "terraform-provider-spotinst";
-      rev     = "v1.13.4";
-      version = "1.13.4";
-      sha256  = "063lhm065y6qh9b2k11qjnqyfg5zrx6wa3bqrm7d1dqcha1i6d9f";
+      rev     = "v1.14.3";
+      version = "1.14.3";
+      sha256  = "06brm0bvr13f31km55y8bp4z1xj3imfi11k7l5nirjp73cbvcpmg";
+    };
+  stackpath =
+    {
+      owner   = "terraform-providers";
+      repo    = "terraform-provider-stackpath";
+      rev     = "v1.3.0";
+      version = "1.3.0";
+      sha256  = "0gsr903v6fngaxm2r5h53g9yc3jpx2zccqq07rhzm9jbsfb6rlzn";
     };
   statuscake =
     {
@@ -680,6 +960,14 @@
       version = "1.0.0";
       sha256  = "1x295va6c72465cxps0kx3rrb7s9aip2cniy6icsg1b2yrsb9b26";
     };
+  sumologic =
+    {
+      owner   = "terraform-providers";
+      repo    = "terraform-provider-sumologic";
+      rev     = "v2.0.0";
+      version = "2.0.0";
+      sha256  = "0j6lq9xcc3znjd4yd8gyzsbhwbbwi95k16kj1la9cicbvgra8iap";
+    };
   telefonicaopencloud =
     {
       owner   = "terraform-providers";
@@ -690,7 +978,7 @@
     };
   template =
     {
-      owner   = "terraform-providers";
+      owner   = "hashicorp";
       repo    = "terraform-provider-template";
       rev     = "v2.1.2";
       version = "2.1.2";
@@ -700,9 +988,9 @@
     {
       owner   = "terraform-providers";
       repo    = "terraform-provider-tencentcloud";
-      rev     = "v1.30.1";
-      version = "1.30.1";
-      sha256  = "0gy7c3w217yzysv9hyrsw3q452g0iba9z72iijyfwcqm79gw3208";
+      rev     = "v1.32.0";
+      version = "1.32.0";
+      sha256  = "014zgslr14r446qifk4slq9g5qydxs7bk181gw227k9mr6krgba1";
     };
   terraform =
     {
@@ -716,13 +1004,13 @@
     {
       owner   = "terraform-providers";
       repo    = "terraform-provider-tfe";
-      rev     = "v0.11.4";
-      version = "0.11.4";
-      sha256  = "0ls5736cwshj3z1wgpbcma6bml9p45k5g7hm530bmqdxsamxfj1m";
+      rev     = "v0.16.0";
+      version = "0.16.0";
+      sha256  = "0c9csyp655wijlnr3rbmymg6gaa23y4fyav0b1y99qsxaa358af5";
     };
   tls =
     {
-      owner   = "terraform-providers";
+      owner   = "hashicorp";
       repo    = "terraform-provider-tls";
       rev     = "v2.1.1";
       version = "2.1.1";
@@ -736,13 +1024,21 @@
       version = "0.6.0";
       sha256  = "10z032fa64sd8d6r4v2f4m7gp93v8wb2zk2r13fflzg5rfk5740z";
     };
+  turbot =
+    {
+      owner   = "terraform-providers";
+      repo    = "terraform-provider-turbot";
+      rev     = "v1.1.0";
+      version = "1.1.0";
+      sha256  = "1wb5n17rv1r5jn6xdzjjafw7s96i826x9ww8w6llllihgl798zn7";
+    };
   ucloud =
     {
       owner   = "terraform-providers";
       repo    = "terraform-provider-ucloud";
-      rev     = "v1.15.1";
-      version = "1.15.1";
-      sha256  = "1djlpjig8y6x149r6f21x7y3p49fjvrxx7pbs2fpsyv437zff9vj";
+      rev     = "v1.19.0";
+      version = "1.19.0";
+      sha256  = "17wkhhxvriqix520nv4q4jrk7gah8kkq3l4nj0rzp1kdwxphmsz0";
     };
   ultradns =
     {
@@ -756,57 +1052,57 @@
     {
       owner   = "terraform-providers";
       repo    = "terraform-provider-vault";
-      rev     = "v2.7.1";
-      version = "2.7.1";
-      sha256  = "1lvpgdyi8qk1bvz9i1wml22mmm5ga8kf413xmpj966wvxqsgw6z5";
+      rev     = "v2.10.0";
+      version = "2.10.0";
+      sha256  = "1yg8ck9z5ycw8akfhnv4pnxyfzav9dzbhizv4dp78xi2gnddrawi";
     };
   vcd =
     {
       owner   = "terraform-providers";
       repo    = "terraform-provider-vcd";
-      rev     = "v2.6.0";
-      version = "2.6.0";
-      sha256  = "0f7c5l05h0xcq51yaqpx1v3lg4wmysszayysvcspipiwzrhx5cmg";
+      rev     = "v2.8.0";
+      version = "2.8.0";
+      sha256  = "0myj5a9mrh7vg6h3gk5f0wsdp6832nz0z10h184107sdchpv253n";
     };
-  vsphere =
+  venafi =
     {
       owner   = "terraform-providers";
-      repo    = "terraform-provider-vsphere";
-      rev     = "v1.15.0";
-      version = "1.15.0";
-      sha256  = "1hxzxkqphm00gp0d1s32xn0knxgf5vg05nq68ba3q27wpx4ipanl";
+      repo    = "terraform-provider-venafi";
+      rev     = "v0.9.2";
+      version = "0.9.2";
+      sha256  = "06nk5c7lxs8fc04sz97lc3yk1zk1b9phkzw6fj9fnmpgaak87bj9";
     };
-  yandex =
+  vra7 =
     {
       owner   = "terraform-providers";
-      repo    = "terraform-provider-yandex";
-      rev     = "v0.28.0";
-      version = "0.28.0";
-      sha256  = "1ml96cqjvxzapb76fpblgl6ak15idv3jj5wcs9ix0dr6i2fdfwpc";
+      repo    = "terraform-provider-vra7";
+      rev     = "v1.0.1";
+      version = "1.0.1";
+      sha256  = "0qmldgxmrv840c5rbmskdf4f9g4v52gg9v7magm6j2w2g0dp1022";
     };
-  segment =
+  vsphere =
     {
-      owner   = "ajbosco";
-      repo    = "terraform-provider-segment";
-      rev     = "v0.2.0";
-      version = "0.2.0";
-      sha256  = "0ic5b9djhnb1bs2bz3zdprgy3r55dng09xgc4d9l9fyp85g2amaz";
+      owner   = "terraform-providers";
+      repo    = "terraform-provider-vsphere";
+      rev     = "v1.17.3";
+      version = "1.17.3";
+      sha256  = "109rg8w6szdqq2hb9jg4j3i79z5ppb6vayikl1cg8m8dsv2whhrj";
     };
-  pass =
+  vthunder =
     {
-      owner   = "camptocamp";
-      repo    = "terraform-provider-pass";
-      rev     = "1.2.1";
-      version = "1.2.1";
-      sha256  = "1hf5mvgz5ycp7shiy8px205d9kwswfjmclg7mlh9a55bkraffahk";
+      owner   = "terraform-providers";
+      repo    = "terraform-provider-vthunder";
+      rev     = "v0.1.0";
+      version = "0.1.0";
+      sha256  = "1mw55g0kjgp300p6y4s8wc91fgfxjm0cbszfzgbc8ca4b00j8cc2";
     };
-  matchbox =
+  vultr =
     {
-      owner   = "poseidon";
-      repo    = "terraform-provider-matchbox";
-      rev     = "v0.3.0";
-      version = "0.3.0";
-      sha256  = "1nq7k8qa7rv8xyryjigwpwcwvj1sw85c4j46rkfdv70b6js25jz3";
+      owner   = "terraform-providers";
+      repo    = "terraform-provider-vultr";
+      rev     = "v1.1.5";
+      version = "1.1.5";
+      sha256  = "06sxcqklqqsninqach05fzilh6k2h9bv66mgfhf9s53ggs5nm8z7";
     };
   wavefront =
     {
@@ -816,20 +1112,12 @@
       version = "2.1.1";
       sha256  = "0cbs74kd820i8f13a9jfbwh2y5zmmx3c2mp07qy7m0xx3m78jksn";
     };
-  nixos =
-    {
-      owner   = "tweag";
-      repo    = "terraform-provider-nixos";
-      rev     = "v0.0.1";
-      version = "0.0.1";
-      sha256  = "00vz6qjq1pk39iqg4356b8g3c6slla9jifkv2knk46gc9q93q0lf";
-    };
-  secret =
+  yandex =
     {
-      owner   = "tweag";
-      repo    = "terraform-provider-secret";
-      rev     = "v1.1.0";
-      version = "1.1.0";
-      sha256  = "09gv0fpsrxzgna0xrhrdk8d4va9s0gvdbz596r306qxb4mip4w3r";
+      owner   = "terraform-providers";
+      repo    = "terraform-provider-yandex";
+      rev     = "v0.38.0";
+      version = "0.38.0";
+      sha256  = "16s9ffbdgws5hglfr6f48ipjv2sbkdpkg20m9s1m6v2f055nxwak";
     };
 }
diff --git a/pkgs/applications/networking/cluster/terraform-providers/default.nix b/pkgs/applications/networking/cluster/terraform-providers/default.nix
index 6298c25ba254..82ce5a706796 100644
--- a/pkgs/applications/networking/cluster/terraform-providers/default.nix
+++ b/pkgs/applications/networking/cluster/terraform-providers/default.nix
@@ -2,7 +2,6 @@
 , buildGoPackage
 , fetchFromGitHub
 , callPackage
-, buildGo112Module
 }:
 let
   list = import ./data.nix;
@@ -16,22 +15,128 @@ let
       src = fetchFromGitHub {
         inherit owner repo rev sha256;
       };
-
-
       # Terraform allow checking the provider versions, but this breaks
       # if the versions are not provided via file paths.
       postBuild = "mv go/bin/${repo}{,_v${version}}";
     };
-in
-  {
-    elasticsearch = callPackage ./elasticsearch {
-      # Version 0.7.0 fails to build with go 1.13 due to dependencies:
-      #   verifying git.apache.org/thrift.git@v0.12.0/go.mod: git.apache.org/thrift.git@v0.12.0/go.mod: Get https://sum.golang.org/lookup/git.apache.org/thrift.git@v0.12.0: dial tcp: lookup sum.golang.org on [::1]:53: read udp [::1]:52968->[::1]:53: read: connection refused
-      #   verifying github.com/hashicorp/terraform@v0.12.0/go.mod: github.com/hashicorp/terraform@v0.12.0/go.mod: Get https://sum.golang.org/lookup/github.com/hashicorp/terraform@v0.12.0: dial tcp: lookup sum.golang.org on [::1]:53: read udp [::1]:52968->[::1]:53: read: connection refused
-      buildGoModule = buildGo112Module;
-    };
+
+  # Google is now using the vendored go modules, which works a bit differently
+  # and is not 100% compatible with the pre-modules vendored folders.
+  #
+  # Instead of switching to goModules which requires a goModSha256, patch the
+  # goPackage derivation so it can install the top-level.
+  patchGoModVendor = drv:
+    drv.overrideAttrs (attrs: {
+      buildFlags = "-mod=vendor";
+
+      # override configurePhase to not move the source into GOPATH
+      configurePhase = ''
+        export GOPATH=$NIX_BUILD_TOP/go:$GOPATH
+        export GOCACHE=$TMPDIR/go-cache
+        export GO111MODULE=on
+      '';
+
+      # just build and install into $GOPATH/bin
+      buildPhase = ''
+        go install -mod=vendor -v -p 16 .
+      '';
+
+      # don't run the tests, they are broken in this setup
+      doCheck = false;
+    });
+
+  # These providers are managed with the ./update-all script
+  automated-providers = lib.mapAttrs (_: toDrv) list;
+
+  # These are the providers that don't fall in line with the default model
+  special-providers = {
+    # Override providers that use Go modules + vendor/ folder
+    google = patchGoModVendor automated-providers.google;
+    google-beta = patchGoModVendor automated-providers.google-beta;
+    ibm = patchGoModVendor automated-providers.ibm;
+
+    # providers that were moved to the `hashicorp` organization,
+    # but haven't updated their references yet:
+
+    # https://github.com/hashicorp/terraform-provider-archive/pull/67
+    archive = automated-providers.archive.overrideAttrs (attrs: {
+      prePatch = attrs.prePatch or "" + ''
+        substituteInPlace go.mod --replace terraform-providers/terraform-provider-archive hashicorp/terraform-provider-archive
+        substituteInPlace main.go --replace terraform-providers/terraform-provider-archive hashicorp/terraform-provider-archive
+      '';
+    });
+
+    # https://github.com/hashicorp/terraform-provider-dns/pull/101
+    dns = automated-providers.dns.overrideAttrs (attrs: {
+      prePatch = attrs.prePatch or "" + ''
+        substituteInPlace go.mod --replace terraform-providers/terraform-provider-dns hashicorp/terraform-provider-dns
+        substituteInPlace main.go --replace terraform-providers/terraform-provider-dns hashicorp/terraform-provider-dns
+      '';
+    });
+
+    # https://github.com/hashicorp/terraform-provider-external/pull/41
+    external = automated-providers.external.overrideAttrs (attrs: {
+      prePatch = attrs.prePatch or "" + ''
+        substituteInPlace go.mod --replace terraform-providers/terraform-provider-external hashicorp/terraform-provider-external
+        substituteInPlace main.go --replace terraform-providers/terraform-provider-external hashicorp/terraform-provider-external
+      '';
+    });
+
+    # https://github.com/hashicorp/terraform-provider-http/pull/40
+    http = automated-providers.http.overrideAttrs (attrs: {
+      prePatch = attrs.prePatch or "" + ''
+        substituteInPlace go.mod --replace terraform-providers/terraform-provider-http hashicorp/terraform-provider-http
+        substituteInPlace main.go --replace terraform-providers/terraform-provider-http hashicorp/terraform-provider-http
+      '';
+    });
+
+    # https://github.com/hashicorp/terraform-provider-local/pull/40
+    local = automated-providers.local.overrideAttrs (attrs: {
+      prePatch = attrs.prePatch or "" + ''
+        substituteInPlace go.mod --replace terraform-providers/terraform-provider-local hashicorp/terraform-provider-local
+        substituteInPlace main.go --replace terraform-providers/terraform-provider-local hashicorp/terraform-provider-local
+      '';
+    });
+
+    # https://github.com/hashicorp/terraform-provider-null/pull/43
+    null = automated-providers.null.overrideAttrs (attrs: {
+      prePatch = attrs.prePatch or "" + ''
+        substituteInPlace go.mod --replace terraform-providers/terraform-provider-null hashicorp/terraform-provider-null
+        substituteInPlace main.go --replace terraform-providers/terraform-provider-null hashicorp/terraform-provider-null
+      '';
+    });
+
+    # https://github.com/hashicorp/terraform-provider-random/pull/107
+    random = automated-providers.random.overrideAttrs (attrs: {
+      prePatch = attrs.prePatch or "" + ''
+        substituteInPlace go.mod --replace terraform-providers/terraform-provider-random hashicorp/terraform-provider-random
+        substituteInPlace main.go --replace terraform-providers/terraform-provider-random hashicorp/terraform-provider-random
+      '';
+    });
+
+    # https://github.com/hashicorp/terraform-provider-template/pull/79
+    template = automated-providers.template.overrideAttrs (attrs: {
+      prePatch = attrs.prePatch or "" + ''
+        substituteInPlace go.mod --replace terraform-providers/terraform-provider-template hashicorp/terraform-provider-template
+        substituteInPlace main.go --replace terraform-providers/terraform-provider-template hashicorp/terraform-provider-template
+      '';
+    });
+
+    # https://github.com/hashicorp/terraform-provider-tls/pull/71
+    tls = automated-providers.tls.overrideAttrs (attrs: {
+      prePatch = attrs.prePatch or "" + ''
+        substituteInPlace go.mod --replace terraform-providers/terraform-provider-tls hashicorp/terraform-provider-tls
+        substituteInPlace main.go --replace terraform-providers/terraform-provider-tls hashicorp/terraform-provider-tls
+      '';
+    });
+
+    # Packages that don't fit the default model
+    ansible = callPackage ./ansible {};
     gandi = callPackage ./gandi {};
-    ibm = callPackage ./ibm {};
+    elasticsearch = callPackage ./elasticsearch {};
     libvirt = callPackage ./libvirt {};
-    ansible = callPackage ./ansible {};
-  } // lib.mapAttrs (n: v: toDrv v) list
+    lxd = callPackage ./lxd {};
+    vpsadmin = callPackage ./vpsadmin {};
+  };
+in
+  automated-providers // special-providers
diff --git a/pkgs/applications/networking/cluster/terraform-providers/ibm/default.nix b/pkgs/applications/networking/cluster/terraform-providers/ibm/default.nix
deleted file mode 100644
index 06d7b8a9f073..000000000000
--- a/pkgs/applications/networking/cluster/terraform-providers/ibm/default.nix
+++ /dev/null
@@ -1,38 +0,0 @@
-{ stdenv, buildGoPackage, fetchFromGitHub }:
-
-#
-# USAGE:
-# install the following package globally or in nix-shell:
-#
-#   (terraform.withPlugins ( plugins: [ terraform-provider-ibm ]))
-#
-# examples:
-# https://github.com/IBM-Cloud/terraform-provider-ibm/tree/master/examples
-#
-
-buildGoPackage rec {
-  pname = "terraform-provider-ibm";
-  version = "0.11.1";
-
-  goPackagePath = "github.com/terraform-providers/terraform-provider-ibm";
-  subPackages = [ "./" ];
-
-  src = fetchFromGitHub {
-    owner = "IBM-Cloud";
-    repo = "terraform-provider-ibm";
-    sha256 = "1vp1kzadfkacn6c4illxjra8yki1fx7h77b38fixkcvc79mzasmv";
-    rev = "v${version}";
-  };
-
-  # Terraform allow checking the provider versions, but this breaks
-  # if the versions are not provided via file paths.
-  postBuild = "mv go/bin/terraform-provider-ibm{,_v${version}}";
-
-  meta = with stdenv.lib; {
-    homepage = https://github.com/IBM-Cloud/terraform-provider-ibm;
-    description = "Terraform provider is used to manage IBM Cloud resources.";
-    platforms = platforms.all;
-    license = licenses.mpl20;
-    maintainers = with maintainers; [ jensbin ];
-  };
-}
diff --git a/pkgs/applications/networking/cluster/terraform-providers/libvirt/default.nix b/pkgs/applications/networking/cluster/terraform-providers/libvirt/default.nix
index 40a6bb11c7da..daffb5930903 100644
--- a/pkgs/applications/networking/cluster/terraform-providers/libvirt/default.nix
+++ b/pkgs/applications/networking/cluster/terraform-providers/libvirt/default.nix
@@ -30,7 +30,9 @@ buildGoPackage rec {
     sha256 = "1l2n97nj6g44n7bhnbjwmv36xi6754p4iq2qnpkdh39x4384a0zz";
   };
 
-  buildInputs = [ libvirt pkgconfig makeWrapper ];
+  nativeBuildInputs = [ pkgconfig makeWrapper ];
+
+  buildInputs = [ libvirt ];
 
   # mkisofs needed to create ISOs holding cloud-init data,
   # and wrapped to terraform via deecb4c1aab780047d79978c636eeb879dd68630
@@ -41,11 +43,10 @@ buildGoPackage rec {
   postBuild = "mv go/bin/terraform-provider-libvirt{,_v${version}}";
 
   meta = with stdenv.lib; {
-    homepage = https://github.com/dmacvicar/terraform-provider-libvirt;
+    homepage = "https://github.com/dmacvicar/terraform-provider-libvirt";
     description = "Terraform provider for libvirt";
     platforms = platforms.linux;
     license = licenses.asl20;
     maintainers = with maintainers; [ mic92 ];
   };
 }
-
diff --git a/pkgs/applications/networking/cluster/terraform-providers/lxd/default.nix b/pkgs/applications/networking/cluster/terraform-providers/lxd/default.nix
new file mode 100644
index 000000000000..fd2a6c36d65c
--- /dev/null
+++ b/pkgs/applications/networking/cluster/terraform-providers/lxd/default.nix
@@ -0,0 +1,25 @@
+{ stdenv, buildGoModule, fetchFromGitHub }:
+
+buildGoModule rec {
+  pname = "terraform-provider-lxd";
+  version = "1.3.0";
+
+  src = fetchFromGitHub {
+    owner = "sl1pm4t";
+    repo = "terraform-provider-lxd";
+    rev = "v${version}";
+    sha256 = "1k54021178zybh9dqly2ly8ji9x5rka8dn9xd6rv7gkcl5w3y6fv";
+  };
+
+  modSha256 = "1h95ng9by3i3v15s1ws1fv86a47vglivn42xbffdy94s108g0908";
+
+  postBuild = "mv ../go/bin/terraform-provider-lxd{,_v${version}}";
+
+  meta = with stdenv.lib; {
+    homepage = "https://github.com/sl1pm4t/terraform-provider-lxd";
+    description = "Terraform provider for lxd";
+    platforms = platforms.linux;
+    license = licenses.mpl20;
+    maintainers = with maintainers; [ gila ];
+  };
+}
diff --git a/pkgs/applications/networking/cluster/terraform-providers/providers.txt b/pkgs/applications/networking/cluster/terraform-providers/providers.txt
deleted file mode 100644
index bdde66006787..000000000000
--- a/pkgs/applications/networking/cluster/terraform-providers/providers.txt
+++ /dev/null
@@ -1,18 +0,0 @@
-# lines starting with a # are comments
-
-# The accepted format (double escape all grep expresssions):
-#  <organisation>         [grep-expression] [grep-v-expression]  - include all repositories in the organisation.
-#                                                                   grep-expression:   filter repo matching the expression
-#                                                                   grep-v-expression: filter repo not matching the expression
-#  <organisation>/<repo>                                         - include only the named repository.
-
-# include all terraform-providers
-terraform-providers terraform-provider- terraform-provider-\\(azure-classic\\|scaffolding\\)
-
-# include providers from individual repos
-ajbosco/terraform-provider-segment
-camptocamp/terraform-provider-pass
-poseidon/terraform-provider-matchbox
-spaceapegames/terraform-provider-wavefront
-tweag/terraform-provider-nixos
-tweag/terraform-provider-secret
diff --git a/pkgs/applications/networking/cluster/terraform-providers/update-all b/pkgs/applications/networking/cluster/terraform-providers/update-all
index 893a6b1c7d7d..70dfc2f825dd 100755
--- a/pkgs/applications/networking/cluster/terraform-providers/update-all
+++ b/pkgs/applications/networking/cluster/terraform-providers/update-all
@@ -1,6 +1,7 @@
 #!/usr/bin/env nix-shell
-#! nix-shell -i bash -p bash coreutils curl jq nix
+#! nix-shell -i bash -p bash coreutils jq nix gitAndTools.hub
 # vim: ft=sh sw=2 et
+# shellcheck shell=bash
 #
 # This scripts scans the github terraform-providers repo for new releases,
 # generates the corresponding nix code and finally generates an index of
@@ -10,37 +11,53 @@ set -euo pipefail
 # the maximum number of attempts before giving up inside of GET and prefetch_github
 readonly maxAttempts=30
 
-GET() {
-  local url=$1
-  local retry=1
-  echo "fetching $url" >&2
-  while ! curl -#fL -u "$GITHUB_AUTH" "$url"; do
-    echo "The curl command has failed. Attempt $retry/${maxAttempts}" >&2
-    if [[ "${retry}" -eq "${maxAttempts}" ]]; then
-      exit 1
-    fi
-    retry=$(( retry + 1 ))
-    sleep 5
-  done
-}
-
-get_org_repos() {
+get_tf_providers_org() {
+  # returns all terraform providers in a given organization, and their the
+  # latest tags, in the format
+  # $org/$repo $rev
   local org=$1
-  local page=1
-  GET "https://api.github.com/orgs/$org/repos?per_page=100" | jq -r '.[].name'
+  hub api --paginate graphql -f query="
+    query(\$endCursor: String) {
+      repositoryOwner(login: \"${org}\") {
+        repositories(first: 100, after: \$endCursor) {
+          nodes {
+            nameWithOwner
+            name
+            refs(first: 1, refPrefix: \"refs/tags/\", orderBy: {field: TAG_COMMIT_DATE, direction: DESC}) {
+              nodes {
+                name
+              }
+            }
+          }
+          pageInfo {
+            hasNextPage
+            endCursor
+          }
+        }
+      }
+  }" | \
+  jq -r '.data.repositoryOwner.repositories.nodes[] | select(.name | startswith("terraform-provider-")) | select((.refs.nodes | length) > 0) | .nameWithOwner + " " + .refs.nodes[0].name'
+  # filter the result with jq:
+  # - repos need to start with `teraform-provider-`
+  # - they need to have at least one tag
+  # for each of the remaining repos, assemble a string $org/$repo $rev
 }
 
-get_repo_tags() {
+get_latest_repo_tag() {
+  # of a given repo and owner, retrieve the latest tag
   local owner=$1
   local repo=$2
-  GET "https://api.github.com/repos/$owner/$repo/git/refs/tags?per_page=100" | \
+  hub api --paginate "https://api.github.com/repos/$owner/$repo/git/refs/tags" | \
     jq -r '.[].ref' | \
     grep -v 'v\.' | \
     cut -d '/' -f 3- | \
-    sort --version-sort
+    sort --version-sort | \
+    tail -1
 }
 
 prefetch_github() {
+  # of a given owner, repo and rev, fetch the tarball and return the output of
+  # `nix-prefetch-url`
   local owner=$1
   local repo=$2
   local rev=$3
@@ -59,7 +76,7 @@ echo_entry() {
   local owner=$1
   local repo=$2
   local rev=$3
-  local version=$(echo $3 | sed 's/^v//')
+  local version=${rev#v}
   local sha256=$4
   cat <<EOF
 {
@@ -74,18 +91,18 @@ EOF
 
 indent() { sed 's/^/    /'; }
 
-add_repo() {
+add_provider() {
   org="${1}"
   repo="${2}"
+  rev="${3}"
 
-  echo "*** $repo ***"
+  echo "*** $org/$repo $rev ***"
   name=$(echo "$repo" | cut -d - -f 3-)
-  last_tag=$(get_repo_tags "$org" "$repo" | tail -1)
-  last_tag_sha256=$(prefetch_github "$org" "$repo" "$last_tag")
+  sha256=$(prefetch_github "$org" "$repo" "$rev")
 
   {
     echo "  $name ="
-    echo_entry "$org" "$repo" "$last_tag" "$last_tag_sha256" | indent
+    echo_entry "$org" "$repo" "$rev" "$sha256" | indent
   } >> data.nix
 }
 
@@ -93,50 +110,65 @@ add_repo() {
 
 cd "$(dirname "$0")"
 
-if [[ -z "${GITHUB_AUTH:-}" ]]; then
-  cat <<'HELP'
-Missing the GITHUB_AUTH env. This is required to work around the 60 request
-per hour rate-limit.
-
-Go to https://github.com/settings/tokens and create a new token with the
-"public_repo" scope.
-
-Then `export GITHUB_AUTH=<your user>:<your token>` and run this script again.
-HELP
-  exit 1
-fi
+# individual repos to fetch
+slugs=(
+  IBM-Cloud/terraform-provider-ibm
+  ajbosco/terraform-provider-segment
+  camptocamp/terraform-provider-pass
+  carlpett/terraform-provider-sops
+  poseidon/terraform-provider-matchbox
+  spaceapegames/terraform-provider-wavefront
+  tweag/terraform-provider-nixos
+  tweag/terraform-provider-secret
+)
+
+# a list of providers to ignore
+blacklist=(
+  terraform-providers/terraform-provider-azure-classic
+  terraform-providers/terraform-provider-cidr
+  terraform-providers/terraform-provider-circonus
+  terraform-providers/terraform-provider-cloudinit
+  terraform-providers/terraform-provider-quorum
+  hashicorp/terraform-provider-time
+  terraform-providers/terraform-provider-vmc
+)
 
 cat <<HEADER > data.nix
 # Generated with ./update-all
 {
 HEADER
 
-while read line; do
-  IFS=' ' read -r -a fields <<< "$line"
-  if [[ "${#fields[@]}" -eq 0 ]]; then
-    continue
-  fi
-
-  if [[ "${fields[0]}" = *"/"* ]]; then
-    org="$(echo "${fields[0]}" | cut -d/ -f1)"
-    repo="$(echo "${fields[0]}" | cut -d/ -f2)"
-    add_repo "${org}" "${repo}"
-  else
-    org="${fields[0]}"
-    repos=$(get_org_repos "$org")
-    if [[ "${#fields[@]}" -ge 2 ]] && [[ -n "${fields[1]}" ]]; then
-      repos="$( echo "${repos[@]}" | grep "${fields[1]}" )"
-    fi
-    if [[ "${#fields[@]}" -eq 3 ]] && [[ -n "${fields[2]}" ]]; then
-      repos="$( echo "${repos[@]}" | grep -v "${fields[2]}" )"
-    fi
-    repos="$( echo "${repos[@]}" | sort )"
-
-    for repo in $repos; do
-      add_repo "$org" "$repo"
-    done
-  fi
-done < <(grep -v '^#\|^$' providers.txt)
+# assemble list of terraform providers
+providers=$(get_tf_providers_org "terraform-providers")
+providers=$(echo "$providers";get_tf_providers_org "hashicorp")
+
+# add terraform-providers from slugs
+for slug in "${slugs[@]}"; do
+  # retrieve latest tag
+  org=${slug%/*}
+  repo=${slug#*/}
+  rev=$(get_latest_repo_tag "$org" "$repo")
+
+  # add to list
+  providers=$(echo "$providers";echo "$org/$repo $rev")
+done
+
+# filter out all providers on the blacklist
+for repo in "${blacklist[@]}"; do
+  providers=$(echo "$providers" | grep -v "^${repo} ")
+done
+
+# sort results alphabetically by repo name
+providers=$(echo "$providers" | sort -t "/" --key=2)
+
+# render list
+IFS=$'\n'
+for provider in $providers; do
+  org=$(echo "$provider" | cut -d " " -f 1 | cut -d "/" -f1)
+  repo=$(echo "$provider" | cut -d " " -f 1 | cut -d "/" -f2)
+  rev=$(echo "$provider" | cut -d " " -f 2)
+  add_provider "${org}" "${repo}" "${rev}"
+done
 
 cat <<FOOTER >> data.nix
 }
diff --git a/pkgs/applications/networking/cluster/terraform-providers/vpsadmin/default.nix b/pkgs/applications/networking/cluster/terraform-providers/vpsadmin/default.nix
new file mode 100644
index 000000000000..2f788ed915ee
--- /dev/null
+++ b/pkgs/applications/networking/cluster/terraform-providers/vpsadmin/default.nix
@@ -0,0 +1,27 @@
+{ stdenv, fetchFromGitHub, buildGoModule }:
+buildGoModule rec {
+  pname = "terraform-provider-vpsadmin";
+  version = "0.1.0";
+
+  src = fetchFromGitHub {
+    owner = "vpsfreecz";
+    repo = "terraform-provider-vpsadmin";
+    rev = "v${version}";
+    hash = "sha256-+6jRjcManQdoKh7ewOJI1UaulY5OSbkIUHmtrBI33u4=";
+  };
+
+  modSha256 = "sha256-gz+t50uHFj4BQnJg6kOJI/joJVE+usLpVzTqziek2wY=";
+
+  subPackages = [ "." ];
+
+  # Terraform allow checking the provider versions, but this breaks
+  # if the versions are not provided via file paths.
+  postInstall = "mv $out/bin/${pname}{,_v${version}}";
+
+  meta = with stdenv.lib; {
+    description = "Terraform provider for vpsAdmin";
+    homepage = "https://github.com/vpsfreecz/terraform-provider-vpsadmin";
+    license = licenses.mpl20;
+    maintainers = with maintainers; [ zimbatm ];
+  };
+}
diff --git a/pkgs/applications/networking/cluster/terraform/default.nix b/pkgs/applications/networking/cluster/terraform/default.nix
index da943c2aa7ea..516c4e514029 100644
--- a/pkgs/applications/networking/cluster/terraform/default.nix
+++ b/pkgs/applications/networking/cluster/terraform/default.nix
@@ -1,5 +1,5 @@
-{ stdenv, lib, buildEnv, buildGoPackage, fetchFromGitHub, makeWrapper
-, runCommand, writeText, terraform-providers }:
+{ stdenv, lib, buildEnv, buildGoPackage, fetchFromGitHub, makeWrapper, coreutils
+, runCommand, writeText, terraform-providers, fetchpatch }:
 
 let
   goPackagePath = "github.com/hashicorp/terraform";
@@ -18,9 +18,15 @@ let
         inherit sha256;
       };
 
+      postPatch = ''
+        # speakeasy hardcodes /bin/stty https://github.com/bgentry/speakeasy/issues/22
+        substituteInPlace vendor/github.com/bgentry/speakeasy/speakeasy_unix.go \
+          --replace "/bin/stty" "${coreutils}/bin/stty"
+      '';
+
       postInstall = ''
         # remove all plugins, they are part of the main binary now
-        for i in $bin/bin/*; do
+        for i in $out/bin/*; do
           if [[ $(basename $i) != terraform ]]; then
             rm "$i"
           fi
@@ -82,7 +88,7 @@ let
 
             buildCommand = ''
               mkdir -p $out/bin/
-              makeWrapper "${terraform.bin}/bin/terraform" "$out/bin/terraform" \
+              makeWrapper "${terraform}/bin/terraform" "$out/bin/terraform" \
                 --set NIX_TERRAFORM_PLUGIN_DIR "${
                   buildEnv {
                     name = "tf-plugin-env";
@@ -112,9 +118,15 @@ in rec {
   terraform_0_11-full = terraform_0_11.full;
 
   terraform_0_12 = pluggable (generic {
-    version = "0.12.21";
-    sha256 = "128mrqib8rigy6kk6fby0pjh4jh2qm2qwkrlbn0wgfln0637d9ff";
-    patches = [ ./provider-path.patch ];
+    version = "0.12.24";
+    sha256 = "1rjihp6qcaizp2nnv4z20kpmjnqcw95pq5rnhq381a3pdzr0cd0z";
+    patches = [
+        ./provider-path.patch
+        (fetchpatch {
+            name = "fix-mac-mojave-crashes.patch";
+            url = "https://github.com/hashicorp/terraform/pull/24562.patch";
+            sha256 = "1k70kk4hli72x8gza6fy3vpckdm3sf881w61fmssrah3hgmfmbrs";
+        }) ];
     passthru = { inherit plugins; };
   });
 
diff --git a/pkgs/applications/networking/cluster/terragrunt/default.nix b/pkgs/applications/networking/cluster/terragrunt/default.nix
index 49f55370bc42..245bd2fffbb0 100644
--- a/pkgs/applications/networking/cluster/terragrunt/default.nix
+++ b/pkgs/applications/networking/cluster/terragrunt/default.nix
@@ -1,35 +1,32 @@
-{ stdenv, lib, buildGoPackage, fetchFromGitHub, terraform, makeWrapper }:
+{ stdenv, lib, buildGoModule, fetchFromGitHub, terraform, makeWrapper }:
 
-buildGoPackage rec {
+buildGoModule rec {
   pname = "terragrunt";
-  version = "0.21.11";
+  version = "0.23.14";
 
-  goPackagePath = "github.com/gruntwork-io/terragrunt";
-
-  src = fetchFromGitHub {
-    owner  = "gruntwork-io";
-    repo   = "terragrunt";
-    rev    = "v${version}";
-    sha256 = "1w64skk67i0sxjd2mkyqh3nglc32wc7schk7h8fwszpa1rw4dfcn";
+   src = fetchFromGitHub {
+    owner = "gruntwork-io";
+    repo = pname;
+    rev = "v${version}";
+    sha256 = "1znb9d4n9zv3dq10dw17kb1h04gj8iz6gwx1a741fcf4ygp8zpy1";
   };
 
-  goDeps = ./deps.nix;
+  modSha256 = "0pjqsb6lxk73prc6jxj07iwd1wyy5gqz24kigb308r3n0c2vcnky";
 
   buildInputs = [ makeWrapper ];
 
   preBuild = ''
-    find go/src -name vendor | xargs -I % sh -c 'echo Removing %; rm -rf %'
     buildFlagsArray+=("-ldflags" "-X main.VERSION=v${version}")
   '';
 
   postInstall = ''
-    wrapProgram $bin/bin/terragrunt \
+    wrapProgram $out/bin/terragrunt \
       --set TERRAGRUNT_TFPATH ${lib.getBin terraform.full}/bin/terraform
   '';
 
   meta = with stdenv.lib; {
     description = "A thin wrapper for Terraform that supports locking for Terraform state and enforces best practices.";
-    homepage = https://github.com/gruntwork-io/terragrunt/;
+    homepage = "https://github.com/gruntwork-io/terragrunt/";
     license = licenses.mit;
     maintainers = with maintainers; [ peterhoeg ];
   };
diff --git a/pkgs/applications/networking/cluster/terragrunt/deps.nix b/pkgs/applications/networking/cluster/terragrunt/deps.nix
deleted file mode 100644
index 51cb455ce7c9..000000000000
--- a/pkgs/applications/networking/cluster/terragrunt/deps.nix
+++ /dev/null
@@ -1,453 +0,0 @@
-# file generated from Gopkg.lock using dep2nix (https://github.com/nixcloud/dep2nix)
-[
-  {
-    goPackagePath  = "cloud.google.com/go";
-    fetch = {
-      type = "git";
-      url = "https://code.googlesource.com/gocloud";
-      rev =  "28a4bc8c44b3acbcc482cff0cdf7de29a4688b61";
-      sha256 = "0j40msxm72m8gs87rpwkk19iagjj387r42xwxszmrna7il8g0sbl";
-    };
-  }
-  {
-    goPackagePath  = "github.com/agext/levenshtein";
-    fetch = {
-      type = "git";
-      url = "https://github.com/agext/levenshtein";
-      rev =  "0ded9c86537917af2ff89bc9c78de6bd58477894";
-      sha256 = "19d7q69yhcg7gl81j038rkbjz8yjb4qwnsqrmxa4zvhgzlc7d130";
-    };
-  }
-  {
-    goPackagePath  = "github.com/apparentlymart/go-cidr";
-    fetch = {
-      type = "git";
-      url = "https://github.com/apparentlymart/go-cidr";
-      rev =  "b1115bf8e14a60131a196f908223e4506b0ddc35";
-      sha256 = "0r938rb18c9cr2k417cwwd4pfq74aabpjp9pzvk4qkxc5279igl3";
-    };
-  }
-  {
-    goPackagePath  = "github.com/apparentlymart/go-textseg";
-    fetch = {
-      type = "git";
-      url = "https://github.com/apparentlymart/go-textseg";
-      rev =  "fb01f485ebef760e5ee06d55e1b07534dda2d295";
-      sha256 = "0n9xcyj7p5y8mbqilk9zprfyqvgm2y9f1g440wqw9dnn3s4fi1k4";
-    };
-  }
-  {
-    goPackagePath  = "github.com/aws/aws-sdk-go";
-    fetch = {
-      type = "git";
-      url = "https://github.com/aws/aws-sdk-go";
-      rev =  "572908275ed4e38fef7ccb7d507f2faacaa7ab36";
-      sha256 = "07bn3v0c4pd38qdp0a0kgmsvh7q30f14qp7pbbls3jzmvpxh49zs";
-    };
-  }
-  {
-    goPackagePath  = "github.com/bgentry/go-netrc";
-    fetch = {
-      type = "git";
-      url = "https://github.com/bgentry/go-netrc";
-      rev =  "9fd32a8b3d3d3f9d43c341bfe098430e07609480";
-      sha256 = "0dn2h8avgavqdzdqnph8bkhj35bx0wssczry1zdczr22xv650g1l";
-    };
-  }
-  {
-    goPackagePath  = "github.com/bmatcuk/doublestar";
-    fetch = {
-      type = "git";
-      url = "https://github.com/bmatcuk/doublestar";
-      rev =  "2437321e1473408f122a95f65df3d8841fec4fba";
-      sha256 = "0z1jg4l746825qs95sffbc69av1yj0l37n8rjmmnwf7hxh5glxzp";
-    };
-  }
-  {
-    goPackagePath  = "github.com/creack/pty";
-    fetch = {
-      type = "git";
-      url = "https://github.com/creack/pty";
-      rev =  "3a6a957789163cacdfe0e291617a1c8e80612c11";
-      sha256 = "1v52599qq76dwq742mffakzj6mxqqccv2szn3hjicjld56nmd2d3";
-    };
-  }
-  {
-    goPackagePath  = "github.com/davecgh/go-spew";
-    fetch = {
-      type = "git";
-      url = "https://github.com/davecgh/go-spew";
-      rev =  "8991bc29aa16c548c550c7ff78260e27b9ab7c73";
-      sha256 = "0hka6hmyvp701adzag2g26cxdj47g21x6jz4sc6jjz1mn59d474y";
-    };
-  }
-  {
-    goPackagePath  = "github.com/fatih/color";
-    fetch = {
-      type = "git";
-      url = "https://github.com/fatih/color";
-      rev =  "5b77d2a35fb0ede96d138fc9a99f5c9b6aef11b4";
-      sha256 = "0v8msvg38r8d1iiq2i5r4xyfx0invhc941kjrsg5gzwvagv55inv";
-    };
-  }
-  {
-    goPackagePath  = "github.com/go-errors/errors";
-    fetch = {
-      type = "git";
-      url = "https://github.com/go-errors/errors";
-      rev =  "a6af135bd4e28680facf08a3d206b454abc877a4";
-      sha256 = "0rznpknk19rxkr7li6dqs52c26pjazp69lh493l4ny4sxn5922lp";
-    };
-  }
-  {
-    goPackagePath  = "github.com/golang/protobuf";
-    fetch = {
-      type = "git";
-      url = "https://github.com/golang/protobuf";
-      rev =  "b5d812f8a3706043e23a9cd5babf2e5423744d30";
-      sha256 = "15am4s4646qy6iv0g3kkqq52rzykqjhm4bf08dk0fy2r58knpsyl";
-    };
-  }
-  {
-    goPackagePath  = "github.com/google/go-cmp";
-    fetch = {
-      type = "git";
-      url = "https://github.com/google/go-cmp";
-      rev =  "6f77996f0c42f7b84e5a2b252227263f93432e9b";
-      sha256 = "1hyxx3434zshl2m9ja78gwlkg1rx9yl6diqa7dnjb31xz5x4gbjj";
-    };
-  }
-  {
-    goPackagePath  = "github.com/google/uuid";
-    fetch = {
-      type = "git";
-      url = "https://github.com/google/uuid";
-      rev =  "0cd6bf5da1e1c83f8b45653022c74f71af0538a4";
-      sha256 = "0hfxcf9frkb57k6q0rdkrmnfs78ms21r1qfk9fhlqga2yh5xg8zb";
-    };
-  }
-  {
-    goPackagePath  = "github.com/googleapis/gax-go";
-    fetch = {
-      type = "git";
-      url = "https://github.com/googleapis/gax-go";
-      rev =  "beaecbbdd8af86aa3acf14180d53828ce69400b2";
-      sha256 = "1iwnm6ky1x53lgs44mw3hpdkjzrm5qd0kfs50m0qcq2ml5m1cwdm";
-    };
-  }
-  {
-    goPackagePath  = "github.com/gruntwork-io/terratest";
-    fetch = {
-      type = "git";
-      url = "https://github.com/gruntwork-io/terratest";
-      rev =  "a02960d4ef0711ae95ae2651271b4e073f88da4e";
-      sha256 = "0mywsimj8if8j2jbp8sf4igl5lcdlj81hd3lif86fsmyrma090vw";
-    };
-  }
-  {
-    goPackagePath  = "github.com/hashicorp/errwrap";
-    fetch = {
-      type = "git";
-      url = "https://github.com/hashicorp/errwrap";
-      rev =  "8a6fb523712970c966eefc6b39ed2c5e74880354";
-      sha256 = "0slfb6w3b61xz04r32bi0a1bygc82rjzhqkxj2si2074wynqnr1c";
-    };
-  }
-  {
-    goPackagePath  = "github.com/hashicorp/go-cleanhttp";
-    fetch = {
-      type = "git";
-      url = "https://github.com/hashicorp/go-cleanhttp";
-      rev =  "eda1e5db218aad1db63ca4642c8906b26bcf2744";
-      sha256 = "07kx3fhryqmaw3czacmm11qwx63js2q8cfq967vphk7xg9q377kk";
-    };
-  }
-  {
-    goPackagePath  = "github.com/hashicorp/go-getter";
-    fetch = {
-      type = "git";
-      url = "https://github.com/hashicorp/go-getter";
-      rev =  "f9ec369200fd2163b8f452e5e45696d83ae3f4b6";
-      sha256 = "1h69946nsmpp06iqg85whwvjrfqlk1gf9q7y01f0r3sf0cb28f30";
-    };
-  }
-  {
-    goPackagePath  = "github.com/hashicorp/go-multierror";
-    fetch = {
-      type = "git";
-      url = "https://github.com/hashicorp/go-multierror";
-      rev =  "886a7fbe3eb1c874d46f623bfa70af45f425b3d1";
-      sha256 = "00nyn8llqzbfm8aflr9kwsvpzi4kv8v45c141v88xskxp5xf6z49";
-    };
-  }
-  {
-    goPackagePath  = "github.com/hashicorp/go-safetemp";
-    fetch = {
-      type = "git";
-      url = "https://github.com/hashicorp/go-safetemp";
-      rev =  "c9a55de4fe06c920a71964b53cfe3dd293a3c743";
-      sha256 = "0gydks8bkq88adlzmv8qj3rvljx15j94c8lyrp88ji2jn6dvv643";
-    };
-  }
-  {
-    goPackagePath  = "github.com/hashicorp/go-uuid";
-    fetch = {
-      type = "git";
-      url = "https://github.com/hashicorp/go-uuid";
-      rev =  "4f571afc59f3043a65f8fe6bf46d887b10a01d43";
-      sha256 = "0jvb88m0rq41bwgirsadgw7mnayl27av3gd2vqa3xvxp3fy0hp5k";
-    };
-  }
-  {
-    goPackagePath  = "github.com/hashicorp/go-version";
-    fetch = {
-      type = "git";
-      url = "https://github.com/hashicorp/go-version";
-      rev =  "ac23dc3fea5d1a983c43f6a0f6e2c13f0195d8bd";
-      sha256 = "1bwi6y6111xq8ww8kjq0w1cmz15l1h9hb2id6596l8l0ag1vjj1z";
-    };
-  }
-  {
-    goPackagePath  = "github.com/hashicorp/golang-lru";
-    fetch = {
-      type = "git";
-      url = "https://github.com/hashicorp/golang-lru";
-      rev =  "7087cb70de9f7a8bc0a10c375cb0d2280a8edf9c";
-      sha256 = "13f870cvk161bzjj6x41l45r5x9i1z9r2ymwmvm7768kg08zznpy";
-    };
-  }
-  {
-    goPackagePath  = "github.com/hashicorp/hcl2";
-    fetch = {
-      type = "git";
-      url = "https://github.com/hashicorp/hcl2";
-      rev =  "318e80eefe28c3aa01b434c61bcf4c83a0cc6b25";
-      sha256 = "1wlm47qk84ggn6lanafirc49kaq998r1nw2xdcv4ghdxy2ijc0rj";
-    };
-  }
-  {
-    goPackagePath  = "github.com/hashicorp/terraform";
-    fetch = {
-      type = "git";
-      url = "https://github.com/hashicorp/terraform";
-      rev =  "abec0acf40d8e31ac612a244cf3886fb3bcce0bb";
-      sha256 = "14js4n08rg30y0jrm0na79syglpb64cb7cxys0x3w47pcbgymrka";
-    };
-  }
-  {
-    goPackagePath  = "github.com/jmespath/go-jmespath";
-    fetch = {
-      type = "git";
-      url = "https://github.com/jmespath/go-jmespath";
-      rev =  "c2b33e84";
-      sha256 = "1r6w7ydx8ydryxk3sfhzsk8m6f1nsik9jg3i1zhi69v4kfl4d5cz";
-    };
-  }
-  {
-    goPackagePath  = "github.com/mattn/go-colorable";
-    fetch = {
-      type = "git";
-      url = "https://github.com/mattn/go-colorable";
-      rev =  "167de6bfdfba052fa6b2d3664c8f5272e23c9072";
-      sha256 = "1nwjmsppsjicr7anq8na6md7b1z84l9ppnlr045hhxjvbkqwalvx";
-    };
-  }
-  {
-    goPackagePath  = "github.com/mattn/go-isatty";
-    fetch = {
-      type = "git";
-      url = "https://github.com/mattn/go-isatty";
-      rev =  "e1f7b56ace729e4a73a29a6b4fac6cd5fcda7ab3";
-      sha256 = "0i3km37lajahh1y2392g4hpgvq05arcgiiv93yhzxxyv0fpqj72m";
-    };
-  }
-  {
-    goPackagePath  = "github.com/mattn/go-zglob";
-    fetch = {
-      type = "git";
-      url = "https://github.com/mattn/go-zglob";
-      rev =  "2ea3427bfa539cca900ca2768d8663ecc8a708c1";
-      sha256 = "1sncdyq5fbd42al4amyy91h7vlzm3wm6c9vl8za2pjgfgsd581fz";
-    };
-  }
-  {
-    goPackagePath  = "github.com/mitchellh/go-homedir";
-    fetch = {
-      type = "git";
-      url = "https://github.com/mitchellh/go-homedir";
-      rev =  "af06845cf3004701891bf4fdb884bfe4920b3727";
-      sha256 = "0ydzkipf28hwj2bfxqmwlww47khyk6d152xax4bnyh60f4lq3nx1";
-    };
-  }
-  {
-    goPackagePath  = "github.com/mitchellh/go-testing-interface";
-    fetch = {
-      type = "git";
-      url = "https://github.com/mitchellh/go-testing-interface";
-      rev =  "6d0b8010fcc857872e42fc6c931227569016843c";
-      sha256 = "1dl2js8di858bawg7dadlf1qjpkl2g3apziihjyf5imri3znyfpw";
-    };
-  }
-  {
-    goPackagePath  = "github.com/mitchellh/go-wordwrap";
-    fetch = {
-      type = "git";
-      url = "https://github.com/mitchellh/go-wordwrap";
-      rev =  "9e67c67572bc5dd02aef930e2b0ae3c02a4b5a5c";
-      sha256 = "1jffbwcr3nnq6c12c5856bwzv2nxjzqk3jwgvxkwi1xhpd2by0bf";
-    };
-  }
-  {
-    goPackagePath  = "github.com/mitchellh/mapstructure";
-    fetch = {
-      type = "git";
-      url = "https://github.com/mitchellh/mapstructure";
-      rev =  "3536a929edddb9a5b34bd6861dc4a9647cb459fe";
-      sha256 = "03bpv28jz9zhn4947saqwi328ydj7f6g6pf1m2d4m5zdh5jlfkrr";
-    };
-  }
-  {
-    goPackagePath  = "github.com/pmezard/go-difflib";
-    fetch = {
-      type = "git";
-      url = "https://github.com/pmezard/go-difflib";
-      rev =  "792786c7400a136282c1664665ae0a8db921c6c2";
-      sha256 = "0c1cn55m4rypmscgf0rrb88pn58j3ysvc2d0432dp3c6fqg6cnzw";
-    };
-  }
-  {
-    goPackagePath  = "github.com/stretchr/testify";
-    fetch = {
-      type = "git";
-      url = "https://github.com/stretchr/testify";
-      rev =  "ffdc059bfe9ce6a4e144ba849dbedead332c6053";
-      sha256 = "0wjchp2c8xbgcbbq32w3kvblk6q6yn533g78nxl6iskq6y95lxsy";
-    };
-  }
-  {
-    goPackagePath  = "github.com/ulikunitz/xz";
-    fetch = {
-      type = "git";
-      url = "https://github.com/ulikunitz/xz";
-      rev =  "6f934d456d51e742b4eeab20d925a827ef22320a";
-      sha256 = "1qpk02c0nfgfyg110nmbaiy5x12fpn0pm8gy7h1s8pwns133n831";
-    };
-  }
-  {
-    goPackagePath  = "github.com/urfave/cli";
-    fetch = {
-      type = "git";
-      url = "https://github.com/urfave/cli";
-      rev =  "cfb38830724cc34fedffe9a2a29fb54fa9169cd1";
-      sha256 = "0y6f4sbzkiiwrxbl15biivj8c7qwxnvm3zl2dd3mw4wzg4x10ygj";
-    };
-  }
-  {
-    goPackagePath  = "github.com/zclconf/go-cty";
-    fetch = {
-      type = "git";
-      url = "https://github.com/zclconf/go-cty";
-      rev =  "6fd39ad70c3a6bbdb1b4e47444e4cce72f901200";
-      sha256 = "0mb0ws70jg93vlamzhdvyvyfq6x0s0ll5gf44yanb1dhlz6i1f90";
-    };
-  }
-  {
-    goPackagePath  = "github.com/zclconf/go-cty-yaml";
-    fetch = {
-      type = "git";
-      url = "https://github.com/zclconf/go-cty-yaml";
-      rev =  "bc34c981dadb5ed30af852693e3aba8fb6546f42";
-      sha256 = "0dams5g61n88rk7zq7sy0yap873ksjafhf81hn2fg2dpfjhcd3y2";
-    };
-  }
-  {
-    goPackagePath  = "go.opencensus.io";
-    fetch = {
-      type = "git";
-      url = "https://github.com/census-instrumentation/opencensus-go";
-      rev =  "9c377598961b706d1542bd2d84d538b5094d596e";
-      sha256 = "05jr8gkr2w34i5wwki4zhl5ch0qrgi7cdgag5iy5gpxplhbrvbg9";
-    };
-  }
-  {
-    goPackagePath  = "golang.org/x/crypto";
-    fetch = {
-      type = "git";
-      url = "https://go.googlesource.com/crypto";
-      rev =  "5c40567a22f818bd14a1ea7245dad9f8ef0691aa";
-      sha256 = "17g8fb9vy2sqq8vgz8jdvf6c6d2290gm2qs0i4yzsd86mgn4dlrg";
-    };
-  }
-  {
-    goPackagePath  = "golang.org/x/net";
-    fetch = {
-      type = "git";
-      url = "https://go.googlesource.com/net";
-      rev =  "461777fb6f67e8cb9d70cda16573678d085a74cf";
-      sha256 = "0sc0llch05q6h7nqgayi3sgismsznpnlsz4gh89y4klpymdcpbh2";
-    };
-  }
-  {
-    goPackagePath  = "golang.org/x/oauth2";
-    fetch = {
-      type = "git";
-      url = "https://go.googlesource.com/oauth2";
-      rev =  "0f29369cfe4552d0e4bcddc57cc75f4d7e672a33";
-      sha256 = "06jwpvx0x2gjn2y959drbcir5kd7vg87k0r1216abk6rrdzzrzi2";
-    };
-  }
-  {
-    goPackagePath  = "golang.org/x/sys";
-    fetch = {
-      type = "git";
-      url = "https://go.googlesource.com/sys";
-      rev =  "93c9922d18aeb82498a065f07aec7ad7fa60dfb7";
-      sha256 = "0hv96nwbv0li3nrv43ldfzmf12yrrbji2cf8n44iibv8ps5kfssx";
-    };
-  }
-  {
-    goPackagePath  = "golang.org/x/text";
-    fetch = {
-      type = "git";
-      url = "https://go.googlesource.com/text";
-      rev =  "342b2e1fbaa52c93f31447ad2c6abc048c63e475";
-      sha256 = "0flv9idw0jm5nm8lx25xqanbkqgfiym6619w575p7nrdh0riqwqh";
-    };
-  }
-  {
-    goPackagePath  = "google.golang.org/api";
-    fetch = {
-      type = "git";
-      url = "https://code.googlesource.com/google-api-go-client";
-      rev =  "890e5eb51fe205e56dc55eb68d63e82039730816";
-      sha256 = "05r2wsjnmszsz4y59w8q6qknc7zq1mc56kya61i2133dqxyc55ai";
-    };
-  }
-  {
-    goPackagePath  = "google.golang.org/appengine";
-    fetch = {
-      type = "git";
-      url = "https://github.com/golang/appengine";
-      rev =  "b2f4a3cf3c67576a2ee09e1fe62656a5086ce880";
-      sha256 = "0zxlvwzxwkwz4bs4h9zc9979dx76y4xf9ks4d22bclg47dv59yry";
-    };
-  }
-  {
-    goPackagePath  = "google.golang.org/genproto";
-    fetch = {
-      type = "git";
-      url = "https://github.com/google/go-genproto";
-      rev =  "eb0b1bdb6ae60fcfc41b8d907b50dfb346112301";
-      sha256 = "0g00wfxd4z886bglyszcvfpgzak0476axqyfaqv3va62ndbqpk90";
-    };
-  }
-  {
-    goPackagePath  = "google.golang.org/grpc";
-    fetch = {
-      type = "git";
-      url = "https://github.com/grpc/grpc-go";
-      rev =  "501c41df7f472c740d0674ff27122f3f48c80ce7";
-      sha256 = "0hla9rjvyi6wjak4cw39ic8jkdcd0lsymhrz9sa52bfybxsczf38";
-    };
-  }
-]
\ No newline at end of file
diff --git a/pkgs/applications/networking/cluster/tilt/default.nix b/pkgs/applications/networking/cluster/tilt/default.nix
index 30fc9264ae1d..13f2c3d9bd9e 100644
--- a/pkgs/applications/networking/cluster/tilt/default.nix
+++ b/pkgs/applications/networking/cluster/tilt/default.nix
@@ -22,7 +22,7 @@ buildGoPackage rec {
 
   meta = with stdenv.lib; {
     description = "Local development tool to manage your developer instance when your team deploys to Kubernetes in production";
-    homepage = https://tilt.dev/;
+    homepage = "https://tilt.dev/";
     license = licenses.asl20;
     maintainers = with maintainers; [ anton-dessiatov ];
   };
diff --git a/pkgs/applications/networking/datovka/default.nix b/pkgs/applications/networking/datovka/default.nix
index 12bad094fcaa..976541177ddb 100644
--- a/pkgs/applications/networking/datovka/default.nix
+++ b/pkgs/applications/networking/datovka/default.nix
@@ -11,11 +11,11 @@
 
 mkDerivation rec {
   pname = "datovka";
-  version = "4.14.1";
+  version = "4.15.0";
 
   src = fetchurl {
     url = "https://secure.nic.cz/files/datove_schranky/${version}/${pname}-${version}.tar.xz";
-    sha256 = "0jinxsm2zw77294vz9pjiqpgpzdwx5nijsi4nqzxna5rkmwdyxk6";
+    sha256 = "1f311qnyiay34iqpik4x492py46my89j4nnbdf6qcidnydzas8r1";
   };
 
   buildInputs = [ libisds qmake qtbase qtsvg libxml2 ];
diff --git a/pkgs/applications/networking/davmail/default.nix b/pkgs/applications/networking/davmail/default.nix
index a84de6380668..38a08aaf4c06 100644
--- a/pkgs/applications/networking/davmail/default.nix
+++ b/pkgs/applications/networking/davmail/default.nix
@@ -21,7 +21,7 @@ stdenv.mkDerivation rec {
   '';
 
   meta = with stdenv.lib; {
-    homepage = http://davmail.sourceforge.net/;
+    homepage = "http://davmail.sourceforge.net/";
     description = "A Java application which presents a Microsoft Exchange server as local CALDAV, IMAP and SMTP servers";
     maintainers = [ maintainers.hinton ];
     platforms = platforms.all;
diff --git a/pkgs/applications/networking/dnscontrol/default.nix b/pkgs/applications/networking/dnscontrol/default.nix
new file mode 100644
index 000000000000..e8500872d52c
--- /dev/null
+++ b/pkgs/applications/networking/dnscontrol/default.nix
@@ -0,0 +1,24 @@
+{ stdenv, fetchFromGitHub, buildGoPackage}:
+
+buildGoPackage rec {
+  pname = "dnscontrol";
+  version = "3.0.0";
+
+  goPackagePath = "github.com/StackExchange/dnscontrol";
+
+  src = fetchFromGitHub {
+    owner = "StackExchange";
+    repo = pname;
+    rev = "v${version}";
+    sha256 = "1j8i4k7bqkqmi6dmc9fxfab49a7qigig72rlbga902lw336p6cc7";
+  };
+
+  subPackages = [ "." ];
+
+  meta = with stdenv.lib; {
+    description = "Synchronize your DNS to multiple providers from a simple DSL";
+    homepage = "https://stackexchange.github.io/dnscontrol/";
+    license = licenses.mit;
+    maintainers = with maintainers; [ mmahut ];
+  };
+}
diff --git a/pkgs/applications/networking/drive/default.nix b/pkgs/applications/networking/drive/default.nix
index 0967fd95dc0b..ad1a0c9a533c 100644
--- a/pkgs/applications/networking/drive/default.nix
+++ b/pkgs/applications/networking/drive/default.nix
@@ -17,7 +17,7 @@ buildGoPackage rec {
   goDeps = ./deps.nix;
 
   meta = with lib; {
-    homepage = https://github.com/odeke-em/drive;
+    homepage = "https://github.com/odeke-em/drive";
     description = "Google Drive client for the commandline";
     license = licenses.asl20;
     platforms = platforms.unix;
diff --git a/pkgs/applications/networking/droopy/default.nix b/pkgs/applications/networking/droopy/default.nix
index d71b863f881f..f3f5f54f4092 100644
--- a/pkgs/applications/networking/droopy/default.nix
+++ b/pkgs/applications/networking/droopy/default.nix
@@ -23,7 +23,7 @@ stdenv.mkDerivation {
 
   meta = {
     description = "Mini Web server that let others upload files to your computer";
-    homepage = http://stackp.online.fr/droopy;
+    homepage = "http://stackp.online.fr/droopy";
     license = licenses.bsd3;
     maintainers = [ maintainers.Profpatsch ];
   };
diff --git a/pkgs/applications/networking/dropbox/cli.nix b/pkgs/applications/networking/dropbox/cli.nix
index 9b3b99708dfc..12865bd6ca7f 100644
--- a/pkgs/applications/networking/dropbox/cli.nix
+++ b/pkgs/applications/networking/dropbox/cli.nix
@@ -11,7 +11,7 @@
 }:
 
 let
-  version = "2019.02.14";
+  version = "2020.03.04";
   dropboxd = "${dropbox}/bin/dropbox";
 in
 stdenv.mkDerivation {
@@ -22,7 +22,7 @@ stdenv.mkDerivation {
 
   src = fetchurl {
     url = "https://linux.dropboxstatic.com/packages/nautilus-dropbox-${version}.tar.bz2";
-    sha256 = "09yg7q45sycl88l3wq0byz4a9k6sxx3m0r3szinvisfay9wlj35f";
+    sha256 = "1jjc835n2j61d23kvygdb4n4jsrw33r9mbwxrm4fqin6x01l2w7k";
   };
 
   strictDeps = true;
@@ -61,7 +61,7 @@ stdenv.mkDerivation {
   ];
 
   meta = {
-    homepage = https://www.dropbox.com;
+    homepage = "https://www.dropbox.com";
     description = "Command line client for the dropbox daemon";
     license = stdenv.lib.licenses.gpl3Plus;
     maintainers = with stdenv.lib.maintainers; [ the-kenny ];
diff --git a/pkgs/applications/networking/dropbox/default.nix b/pkgs/applications/networking/dropbox/default.nix
index 693a70182130..b3655888e1d3 100644
--- a/pkgs/applications/networking/dropbox/default.nix
+++ b/pkgs/applications/networking/dropbox/default.nix
@@ -77,7 +77,7 @@ buildFHSUserEnv {
 
   meta = with lib; {
     description = "Online stored folders (daemon version)";
-    homepage    = http://www.dropbox.com/;
+    homepage    = "http://www.dropbox.com/";
     license     = licenses.unfree;
     maintainers = with maintainers; [ ttuegel ];
     platforms   = [ "i686-linux" "x86_64-linux" ];
diff --git a/pkgs/applications/networking/dyndns/cfdyndns/default.nix b/pkgs/applications/networking/dyndns/cfdyndns/default.nix
index e5b3e1d52f43..60a7e5b2fb21 100644
--- a/pkgs/applications/networking/dyndns/cfdyndns/default.nix
+++ b/pkgs/applications/networking/dyndns/cfdyndns/default.nix
@@ -1,35 +1,32 @@
-{ stdenv, fetchFromGitHub, rustPlatform, makeWrapper, openssl }:
+{ stdenv, fetchFromGitHub, rustPlatform, pkg-config, openssl }:
 
 with rustPlatform;
 
 buildRustPackage rec {
   pname = "cfdyndns";
-  version = "0.0.1";
+  version = "0.0.3";
   src = fetchFromGitHub {
     owner = "colemickens";
     repo = "cfdyndns";
     rev = "v${version}";
-    sha256 = "1mcdjykrgh0jq6k6y664lai8sbgzk6j7k0r944f43vg63d1jql5b";
+    sha256 = "1fba0w2979dmc2wyggqx4fj52rrl1s2vpjk6mkj1811a848l1hdi";
   };
 
-  # Delete this on next update; see #79975 for details
-  legacyCargoFetcher = true;
+  cargoSha256 = "04ryin24z3pfxjxy4smngy66xs7k85g6gdzsl77cij8ifb29im99";
 
-  cargoSha256 = "1d7jpffkw2m2v37bfdqsl9sqwsl19cgglpa00lwy4ih09kzbc2n9";
-
-  buildInputs = [ makeWrapper openssl ];
+  nativeBuildInputs = [ pkg-config ];
+  buildInputs = [ openssl ];
 
   installPhase = ''
     mkdir -p $out/bin
-    cp -p target/release/cfdyndns $out/bin/
+    cp -p $releaseDir/cfdyndns $out/bin/
   '';
 
   meta = with stdenv.lib; {
     description = "CloudFlare Dynamic DNS Client";
-    homepage = https://github.com/colemickens/cfdyndns;
+    homepage = "https://github.com/colemickens/cfdyndns";
     license = stdenv.lib.licenses.mit;
     maintainers = with maintainers; [ colemickens ];
     platforms = with platforms; linux;
-    broken = true;
   };
 }
diff --git a/pkgs/applications/networking/enhanced-ctorrent/default.nix b/pkgs/applications/networking/enhanced-ctorrent/default.nix
index 59b48df1cd03..76d6d39baf29 100644
--- a/pkgs/applications/networking/enhanced-ctorrent/default.nix
+++ b/pkgs/applications/networking/enhanced-ctorrent/default.nix
@@ -27,7 +27,7 @@ stdenv.mkDerivation {
       CTorrent, a BitTorrent client implemented in C++, with bugfixes and
       performance enhancements.
     '';
-    homepage = http://www.rahul.net/dholmes/ctorrent/;
+    homepage = "http://www.rahul.net/dholmes/ctorrent/";
     license = stdenv.lib.licenses.gpl2Plus;
     platforms = stdenv.lib.platforms.unix;
     maintainers = [ stdenv.lib.maintainers.devhell ];
diff --git a/pkgs/applications/networking/errbot/default.nix b/pkgs/applications/networking/errbot/default.nix
index d5dc287ecac7..642677a9addc 100644
--- a/pkgs/applications/networking/errbot/default.nix
+++ b/pkgs/applications/networking/errbot/default.nix
@@ -67,7 +67,7 @@ py.pkgs.buildPythonApplication rec {
 
   meta = with lib; {
     description = "Chatbot designed to be simple to extend with plugins written in Python";
-    homepage = http://errbot.io/;
+    homepage = "http://errbot.io/";
     maintainers = with maintainers; [ fpletz globin ];
     license = licenses.gpl3;
     platforms = platforms.linux;
diff --git a/pkgs/applications/networking/esniper/default.nix b/pkgs/applications/networking/esniper/default.nix
index a1539bd71659..0282483df8dc 100644
--- a/pkgs/applications/networking/esniper/default.nix
+++ b/pkgs/applications/networking/esniper/default.nix
@@ -23,7 +23,7 @@ stdenv.mkDerivation {
 
   meta = with stdenv.lib; {
     description = "Simple, lightweight tool for sniping eBay auctions";
-    homepage    = http://esniper.sourceforge.net;
+    homepage    = "http://esniper.sourceforge.net";
     license     = licenses.gpl2;
     maintainers = with maintainers; [ lovek323 peti ];
     platforms   = platforms.all;
diff --git a/pkgs/applications/networking/feedreaders/canto-curses/default.nix b/pkgs/applications/networking/feedreaders/canto-curses/default.nix
index 36b4732ca2e7..80106085e1b6 100644
--- a/pkgs/applications/networking/feedreaders/canto-curses/default.nix
+++ b/pkgs/applications/networking/feedreaders/canto-curses/default.nix
@@ -24,7 +24,7 @@ python3Packages.buildPythonApplication rec {
       unreadable white text. An interface with almost infinite customization
       and extensibility using the excellent Python programming language.
     '';
-    homepage = https://codezen.org/canto-ng/;
+    homepage = "https://codezen.org/canto-ng/";
     license = stdenv.lib.licenses.gpl2;
     platforms = stdenv.lib.platforms.linux;
     maintainers = [ stdenv.lib.maintainers.devhell ];
diff --git a/pkgs/applications/networking/feedreaders/canto-daemon/default.nix b/pkgs/applications/networking/feedreaders/canto-daemon/default.nix
index e700c5634ad6..b8279f22de4d 100644
--- a/pkgs/applications/networking/feedreaders/canto-daemon/default.nix
+++ b/pkgs/applications/networking/feedreaders/canto-daemon/default.nix
@@ -23,7 +23,7 @@ python3Packages.buildPythonApplication rec {
       unreadable white text. An interface with almost infinite customization
       and extensibility using the excellent Python programming language.
     '';
-    homepage = https://codezen.org/canto-ng/;
+    homepage = "https://codezen.org/canto-ng/";
     license = stdenv.lib.licenses.gpl2;
     platforms = stdenv.lib.platforms.linux;
     maintainers = [ stdenv.lib.maintainers.devhell ];
diff --git a/pkgs/applications/networking/feedreaders/feedreader/default.nix b/pkgs/applications/networking/feedreaders/feedreader/default.nix
index c336d2d0bba6..f399aeaa98d1 100644
--- a/pkgs/applications/networking/feedreaders/feedreader/default.nix
+++ b/pkgs/applications/networking/feedreaders/feedreader/default.nix
@@ -48,7 +48,7 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "A modern desktop application designed to complement existing web-based RSS accounts";
-    homepage = https://jangernert.github.io/FeedReader/;
+    homepage = "https://jangernert.github.io/FeedReader/";
     license = licenses.gpl3Plus;
     maintainers = with maintainers; [ edwtjo worldofpeace ];
     platforms = platforms.linux;
diff --git a/pkgs/applications/networking/feedreaders/newsboat/default.nix b/pkgs/applications/networking/feedreaders/newsboat/default.nix
index 27bf8e81b117..5b97859304cb 100644
--- a/pkgs/applications/networking/feedreaders/newsboat/default.nix
+++ b/pkgs/applications/networking/feedreaders/newsboat/default.nix
@@ -1,18 +1,18 @@
 { stdenv, rustPlatform, fetchFromGitHub, stfl, sqlite, curl, gettext, pkgconfig, libxml2, json_c, ncurses
-, asciidoc, docbook_xml_dtd_45, libxslt, docbook_xsl, libiconv, Security, makeWrapper }:
+, asciidoctor, libiconv, Security, makeWrapper }:
 
 rustPlatform.buildRustPackage rec {
   pname = "newsboat";
-  version = "2.18";
+  version = "2.19";
 
   src = fetchFromGitHub {
     owner = "newsboat";
     repo = "newsboat";
     rev = "r${version}";
-    sha256 = "1bg2qjkzdawn4fnn0w7jhw1dk6191w8axnqra43z21pinfyim6da";
+    sha256 = "0yyrq8a90l6pkrczm9qvdg75jhsdq0niwp79vrdpm8rsxqpdmfq7";
   };
 
-  cargoSha256 = "0q7bira2adfmx0ghb1c5nqz200iajaxap9bq8j5wvvk9l2wywslp";
+  cargoSha256 = "1q3jf3d80c0ik38qk8jgbhfz5jxv0cy3lzmkyh2l002azp9hvv59";
 
   postPatch = ''
     substituteInPlace Makefile --replace "|| true" ""
@@ -21,22 +21,25 @@ rustPlatform.buildRustPackage rec {
       --replace "ncurses5.4" "ncurses"
   '';
 
-  nativeBuildInputs = [ pkgconfig asciidoc docbook_xml_dtd_45 libxslt docbook_xsl ]
-    ++ stdenv.lib.optionals stdenv.isDarwin [ makeWrapper libiconv ];
+  nativeBuildInputs = [
+    pkgconfig
+    asciidoctor
+    gettext
+  ] ++ stdenv.lib.optionals stdenv.isDarwin [ makeWrapper libiconv ];
 
-  buildInputs = [ stfl sqlite curl gettext libxml2 json_c ncurses ]
+  buildInputs = [ stfl sqlite curl libxml2 json_c ncurses ]
     ++ stdenv.lib.optional stdenv.isDarwin Security;
 
   postBuild = ''
     make
   '';
 
-  NIX_CFLAGS_COMPILE = "-Wno-error=sign-compare"
-    + stdenv.lib.optionalString stdenv.isDarwin " -Wno-error=format-security";
+  # TODO: Check if that's still needed
+  NIX_CFLAGS_COMPILE = stdenv.lib.optionalString stdenv.isDarwin " -Wno-error=format-security";
 
   doCheck = true;
 
-  checkPhase = ''
+  preCheck = ''
     make test
   '';
 
@@ -50,7 +53,7 @@ rustPlatform.buildRustPackage rec {
   '';
 
   meta = with stdenv.lib; {
-    homepage    = https://newsboat.org/;
+    homepage    = "https://newsboat.org/";
     description = "A fork of Newsbeuter, an RSS/Atom feed reader for the text console";
     maintainers = with maintainers; [ dotlambda nicknovitski ];
     license     = licenses.mit;
diff --git a/pkgs/applications/networking/feedreaders/rawdog/default.nix b/pkgs/applications/networking/feedreaders/rawdog/default.nix
index 7304fd2f654b..9fdee56b99b4 100644
--- a/pkgs/applications/networking/feedreaders/rawdog/default.nix
+++ b/pkgs/applications/networking/feedreaders/rawdog/default.nix
@@ -14,7 +14,7 @@ python2Packages.buildPythonApplication rec {
   namePrefix = "";
 
   meta = with stdenv.lib; {
-    homepage = https://offog.org/code/rawdog/;
+    homepage = "https://offog.org/code/rawdog/";
     description = "RSS Aggregator Without Delusions Of Grandeur";
     license = licenses.gpl2;
     platforms = platforms.unix;
diff --git a/pkgs/applications/networking/feedreaders/rss2email/default.nix b/pkgs/applications/networking/feedreaders/rss2email/default.nix
index 07f3f3fde0aa..18f154d3ff74 100644
--- a/pkgs/applications/networking/feedreaders/rss2email/default.nix
+++ b/pkgs/applications/networking/feedreaders/rss2email/default.nix
@@ -37,7 +37,7 @@ buildPythonApplication rec {
 
   meta = with lib; {
     description = "A tool that converts RSS/Atom newsfeeds to email.";
-    homepage = https://pypi.python.org/pypi/rss2email;
+    homepage = "https://pypi.python.org/pypi/rss2email";
     license = licenses.gpl2;
     maintainers = with maintainers; [ jb55 Profpatsch ];
   };
diff --git a/pkgs/applications/networking/feedreaders/rssguard/default.nix b/pkgs/applications/networking/feedreaders/rssguard/default.nix
index 2bb592bfb42c..5ee80250dde1 100644
--- a/pkgs/applications/networking/feedreaders/rssguard/default.nix
+++ b/pkgs/applications/networking/feedreaders/rssguard/default.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation rec {
   pname = "rssguard";
-  version = "3.5.9";
+  version = "3.6.0";
 
   src = fetchFromGitHub {
     owner = "martinrotter";
     repo = pname;
     rev = version;
-    sha256 = "0dvjcazvrgxfxg1gvznxj8kx569v4ivns0brq00cn2yxyd4wx43s";
+    sha256 = "0nlvhcvd3bbvd3dapqix7h29pchbd9gv5n3hmrig9yi98yv8q53r";
   };
 
   buildInputs =  [ qtwebengine qttools ];
@@ -22,7 +22,7 @@ stdenv.mkDerivation rec {
       developed using Qt framework and with online feed synchronization support
       for ownCloud/Nextcloud.
     '';
-    homepage = https://github.com/martinrotter/rssguard;
+    homepage = "https://github.com/martinrotter/rssguard";
     license = licenses.gpl3;
     platforms = platforms.linux;
     maintainers = with maintainers; [ jluttine ];
diff --git a/pkgs/applications/networking/feedreaders/rsstail/default.nix b/pkgs/applications/networking/feedreaders/rsstail/default.nix
index 3e7909c91c05..66228efe8952 100644
--- a/pkgs/applications/networking/feedreaders/rsstail/default.nix
+++ b/pkgs/applications/networking/feedreaders/rsstail/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchFromGitHub, cppcheck, libmrss }:
+{ stdenv, fetchFromGitHub, cppcheck, libmrss, libiconv }:
 
 stdenv.mkDerivation {
   pname = "rsstail";
@@ -11,7 +11,7 @@ stdenv.mkDerivation {
     owner = "flok99";
   };
 
-  buildInputs = [ libmrss ];
+  buildInputs = [ libmrss ] ++ stdenv.lib.optionals stdenv.isDarwin [ libiconv ];
   checkInputs = [ cppcheck ];
 
   postPatch = ''
@@ -29,8 +29,8 @@ stdenv.mkDerivation {
       RSSTail is more or less an RSS reader: it monitors an RSS feed and if it
       detects a new entry it'll emit only that new entry.
     '';
-    homepage = http://www.vanheusden.com/rsstail/;
+    homepage = "http://www.vanheusden.com/rsstail/";
     license = licenses.gpl2Plus;
-    platforms = platforms.linux;
+    platforms = platforms.unix;
   };
 }
diff --git a/pkgs/applications/networking/firehol/default.nix b/pkgs/applications/networking/firehol/default.nix
index ab2ca1601520..c6e8ab5c887b 100644
--- a/pkgs/applications/networking/firehol/default.nix
+++ b/pkgs/applications/networking/firehol/default.nix
@@ -100,7 +100,7 @@ stdenv.mkDerivation rec {
       FireHOL, an iptables stateful packet filtering firewall for humans!
       FireQOS, a TC based bandwidth shaper for humans!
     '';
-    homepage = https://firehol.org/;
+    homepage = "https://firehol.org/";
     license = licenses.gpl2;
     maintainers = with maintainers; [ geistesk ];
     platforms = platforms.linux;
diff --git a/pkgs/applications/networking/firehol/iprange.nix b/pkgs/applications/networking/firehol/iprange.nix
index 194dfc25ebaa..e47afba02945 100644
--- a/pkgs/applications/networking/firehol/iprange.nix
+++ b/pkgs/applications/networking/firehol/iprange.nix
@@ -11,7 +11,7 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "manage IP ranges";
-    homepage = https://github.com/firehol/iprange;
+    homepage = "https://github.com/firehol/iprange";
     license = licenses.gpl2;
     maintainers = with maintainers; [ geistesk ];
   };
diff --git a/pkgs/applications/networking/flent/http-getter.nix b/pkgs/applications/networking/flent/http-getter.nix
index 2bebf4b09601..a38ac8511c23 100644
--- a/pkgs/applications/networking/flent/http-getter.nix
+++ b/pkgs/applications/networking/flent/http-getter.nix
@@ -15,7 +15,7 @@ stdenv.mkDerivation {
   buildInputs = [ cmake pkgconfig curl ];
 
   meta = with stdenv.lib; {
-    homepage = https://github.com/tohojo/http-getter;
+    homepage = "https://github.com/tohojo/http-getter";
     description = "Simple getter for HTTP URLs using cURL";
     platforms = platforms.unix;
     license = licenses.gpl3;
diff --git a/pkgs/applications/networking/flexget/default.nix b/pkgs/applications/networking/flexget/default.nix
index 30665b240818..20ddc6c93d49 100644
--- a/pkgs/applications/networking/flexget/default.nix
+++ b/pkgs/applications/networking/flexget/default.nix
@@ -52,6 +52,8 @@ python3Packages.buildPythonApplication rec {
     sqlalchemy
     terminaltables
     zxcvbn
+    # plugins
+    transmissionrpc
   ];
 
   meta = with lib; {
diff --git a/pkgs/applications/networking/ftp/filezilla/default.nix b/pkgs/applications/networking/ftp/filezilla/default.nix
index 8bb38230d5c1..780385b28f31 100644
--- a/pkgs/applications/networking/ftp/filezilla/default.nix
+++ b/pkgs/applications/networking/ftp/filezilla/default.nix
@@ -1,10 +1,8 @@
 { stdenv
 , fetchurl
-
 , dbus
 , gettext
 , gnutls
-, gtk2
 , libfilezilla
 , libidn
 , nettle
@@ -16,33 +14,46 @@
 , xdg_utils
 }:
 
+let
+  # we can drop this when wxgtk is built with gtk3 by default
+  # see: https://github.com/NixOS/nixpkgs/pull/73145
+  wxgtk' = wxGTK30.override { compat26 = false; withGtk2 = false; };
+
+in
 stdenv.mkDerivation rec {
   pname = "filezilla";
-  version = "3.46.3";
+  version = "3.48.0";
 
   src = fetchurl {
     url = "https://download.filezilla-project.org/client/FileZilla_${version}_src.tar.bz2";
-    sha256 = "15bkg9qs07h4pzkxba1gymp8f264dk0zrzd9brx48fcwm7qbzigi";
+    sha256 = "0msxl8ihbycd56hmn1q8sl1gzmsxc7j8ar9k4zsryd0ayyz7wv05";
   };
 
+  # https://www.linuxquestions.org/questions/slackware-14/trouble-building-filezilla-3-47-2-1-current-4175671182/#post6099769
+  postPatch = ''
+    sed -i src/interface/Mainfrm.h \
+      -e '/^#define/a #include <list>'
+  '';
+
   configureFlags = [
     "--disable-manualupdatecheck"
     "--disable-autoupdatecheck"
   ];
 
   nativeBuildInputs = [ pkgconfig ];
+
   buildInputs = [
     dbus
     gettext
     gnutls
-    gtk2
     libfilezilla
     libidn
     nettle
     pugixml
     sqlite
     tinyxml
-    wxGTK30
+    wxgtk'
+    wxgtk'.gtk
     xdg_utils
   ];
 
diff --git a/pkgs/applications/networking/ftp/taxi/default.nix b/pkgs/applications/networking/ftp/taxi/default.nix
index cb40c347e1cf..b6c8a534545b 100644
--- a/pkgs/applications/networking/ftp/taxi/default.nix
+++ b/pkgs/applications/networking/ftp/taxi/default.nix
@@ -43,7 +43,7 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "The FTP Client that drives you anywhere";
-    homepage    = https://github.com/Alecaddd/taxi;
+    homepage    = "https://github.com/Alecaddd/taxi";
     license     = licenses.gpl3Plus;
     maintainers = with maintainers; [ worldofpeace ];
     platforms   = platforms.linux;
diff --git a/pkgs/applications/networking/gdrive/default.nix b/pkgs/applications/networking/gdrive/default.nix
index 4a4c93128dfe..c5a5d1e970a6 100644
--- a/pkgs/applications/networking/gdrive/default.nix
+++ b/pkgs/applications/networking/gdrive/default.nix
@@ -15,7 +15,7 @@ buildGoPackage rec {
   };
 
   meta = with stdenv.lib; {
-    homepage    = https://github.com/prasmussen/gdrive;
+    homepage    = "https://github.com/prasmussen/gdrive";
     description = "A command line utility for interacting with Google Drive";
     platforms   = platforms.unix;
     license     = licenses.mit;
diff --git a/pkgs/applications/networking/gmailctl/default.nix b/pkgs/applications/networking/gmailctl/default.nix
new file mode 100644
index 000000000000..a7dc6fe1550d
--- /dev/null
+++ b/pkgs/applications/networking/gmailctl/default.nix
@@ -0,0 +1,27 @@
+{ stdenv
+, buildGoModule
+, fetchFromGitHub
+}:
+
+buildGoModule rec {
+  pname = "gmailctl";
+  version = "0.7.0";
+
+  src = fetchFromGitHub {
+    owner = "mbrt";
+    repo = "gmailctl";
+    rev = "v${version}";
+    sha256 = "08q4yjfbwlldirf3j5db18l8kn6sf288wd364s50jlcx2ka8w50j";
+  };
+
+  modSha256 = "1c7dk6l8lkq2j04cp5g97hwkwfmmyn5r0vpr5zpavvalxgjidsf4";
+
+  meta = with stdenv.lib; {
+    description = "Declarative configuration for Gmail filters";
+    homepage = "https://github.com/mbrt/gmailctl";
+    license = licenses.mit;
+    maintainers = [ maintainers.doronbehar ];
+    platforms = platforms.unix;
+  };
+}
+
diff --git a/pkgs/applications/networking/gns3/default.nix b/pkgs/applications/networking/gns3/default.nix
index 6dcfb27b7ba6..1d045afd4c00 100644
--- a/pkgs/applications/networking/gns3/default.nix
+++ b/pkgs/applications/networking/gns3/default.nix
@@ -1,13 +1,13 @@
 { callPackage }:
 
 let
-  stableVersion = "2.2.5";
+  stableVersion = "2.2.7";
   previewVersion = stableVersion;
   addVersion = args:
     let version = if args.stable then stableVersion else previewVersion;
         branch = if args.stable then "stable" else "preview";
     in args // { inherit version branch; };
-  extraArgs = {
+  extraArgs = rec {
     mkOverride = attrname: version: sha256:
       self: super: {
         ${attrname} = super.${attrname}.overridePythonAttrs (oldAttrs: {
@@ -18,11 +18,15 @@ let
           doCheck = oldAttrs.doCheck && (attrname != "psutil");
         });
       };
+    commonOverrides = [
+      (mkOverride "psutil" "5.6.6"
+        "1rs6z8bfy6bqzw88s4i5zllrx3i18hnkv4akvmw7bifngcgjh8dd")
+    ];
   };
   mkGui = args: callPackage (import ./gui.nix (addVersion args // extraArgs)) { };
   mkServer = args: callPackage (import ./server.nix (addVersion args // extraArgs)) { };
-  guiSrcHash = "1yxwbz93x9hn5y6dir8v7bdfsmfgppvjg4z88l8gx82hhf2476fx";
-  serverSrcHash = "1d3m8qrz82g8ii6q6j015wqwp6j0415fbqbjvw43zhdx5mnn962d";
+  guiSrcHash = "1rq1cb07mvakqny848nvwgasp8f6pxdy790gd98xh55xrbi8jvxp";
+  serverSrcHash = "1cf3inppj2050mgmx5sgf540iz3m3nbh53p26dx8m67x2xfyb934";
 in {
   guiStable = mkGui {
     stable = true;
diff --git a/pkgs/applications/networking/gns3/gui.nix b/pkgs/applications/networking/gns3/gui.nix
index 2d462d5c11d0..2524731cd05c 100644
--- a/pkgs/applications/networking/gns3/gui.nix
+++ b/pkgs/applications/networking/gns3/gui.nix
@@ -1,12 +1,10 @@
-{ stable, branch, version, sha256Hash, mkOverride }:
+{ stable, branch, version, sha256Hash, mkOverride, commonOverrides }:
 
 { lib, stdenv, python3, fetchFromGitHub }:
 
 let
   # TODO: This package requires qt5Full to launch
-  defaultOverrides = [
-    (mkOverride "psutil" "5.6.3"
-      "1wv31zly44qj0rp2acg58xbnc7bf6ffyadasq093l455q30qafl6")
+  defaultOverrides = commonOverrides ++ [
     (mkOverride "jsonschema" "2.6.0"
       "00kf3zmpp9ya4sydffpifn0j0mzm342a2vzh82p6r0vh10cg7xbg")
   ];
@@ -40,7 +38,8 @@ in python.pkgs.buildPythonPackage rec {
       requires access to a local or remote GNS3 server (it's recommended to
       download the official GNS3 VM).
     '';
-    homepage = https://www.gns3.com/;
+    homepage = "https://www.gns3.com/";
+    changelog = "https://github.com/GNS3/gns3-gui/releases/tag/v${version}";
     license = licenses.gpl3Plus;
     platforms = platforms.linux;
     maintainers = with maintainers; [ primeos ];
diff --git a/pkgs/applications/networking/gns3/server.nix b/pkgs/applications/networking/gns3/server.nix
index beeac9d02936..32dc42e9f51a 100644
--- a/pkgs/applications/networking/gns3/server.nix
+++ b/pkgs/applications/networking/gns3/server.nix
@@ -1,11 +1,9 @@
-{ stable, branch, version, sha256Hash, mkOverride }:
+{ stable, branch, version, sha256Hash, mkOverride, commonOverrides }:
 
 { lib, stdenv, python3, fetchFromGitHub }:
 
 let
-  defaultOverrides = [
-    (mkOverride "psutil" "5.6.3"
-      "1wv31zly44qj0rp2acg58xbnc7bf6ffyadasq093l455q30qafl6")
+  defaultOverrides = commonOverrides ++ [
     (mkOverride "jsonschema" "2.6.0"
       "00kf3zmpp9ya4sydffpifn0j0mzm342a2vzh82p6r0vh10cg7xbg")
   ];
@@ -25,8 +23,6 @@ in python.pkgs.buildPythonPackage {
   };
 
   postPatch = ''
-    # Only 2.x is problematic:
-    sed -iE "s/prompt-toolkit==1.0.15/prompt-toolkit<2.0.0/" requirements.txt
     # yarl 1.4+ only requires Python 3.6+
     sed -iE "s/yarl==1.3.0//" requirements.txt
   '';
@@ -34,7 +30,7 @@ in python.pkgs.buildPythonPackage {
   propagatedBuildInputs = with python.pkgs; [
     aiohttp-cors yarl aiohttp multidict setuptools
     jinja2 psutil zipstream raven jsonschema distro async_generator aiofiles
-    (python.pkgs.callPackage ../../../development/python-modules/prompt_toolkit/1.nix {})
+    prompt_toolkit py-cpuinfo
   ];
 
   # Requires network access
@@ -51,7 +47,8 @@ in python.pkgs.buildPythonPackage {
       Qemu/KVM. Clients like the GNS3 GUI control the server using a HTTP REST
       API.
     '';
-    homepage = https://www.gns3.com/;
+    homepage = "https://www.gns3.com/";
+    changelog = "https://github.com/GNS3/gns3-server/releases/tag/v${version}";
     license = licenses.gpl3Plus;
     platforms = platforms.linux;
     maintainers = with maintainers; [ primeos ];
diff --git a/pkgs/applications/networking/google-drive-ocamlfuse/default.nix b/pkgs/applications/networking/google-drive-ocamlfuse/default.nix
index 830eae1fc281..5465a27bbf2d 100644
--- a/pkgs/applications/networking/google-drive-ocamlfuse/default.nix
+++ b/pkgs/applications/networking/google-drive-ocamlfuse/default.nix
@@ -20,7 +20,7 @@ stdenv.mkDerivation rec {
   installPhase = "mkdir $out && dune install --prefix $out";
 
   meta = {
-    homepage = http://gdfuse.forge.ocamlcore.org/;
+    homepage = "http://gdfuse.forge.ocamlcore.org/";
     description = "A FUSE-based file system backed by Google Drive, written in OCaml";
     license = stdenv.lib.licenses.mit;
     platforms = stdenv.lib.platforms.linux;
diff --git a/pkgs/applications/networking/gopher/gopher/default.nix b/pkgs/applications/networking/gopher/gopher/default.nix
index f90e35ca7e2e..4e5716386442 100644
--- a/pkgs/applications/networking/gopher/gopher/default.nix
+++ b/pkgs/applications/networking/gopher/gopher/default.nix
@@ -16,7 +16,7 @@ stdenv.mkDerivation rec {
   preConfigure = "export LIBS=-lncurses";
 
   meta = with stdenv.lib; {
-    homepage = http://gopher.quux.org:70/devel/gopher;
+    homepage = "http://gopher.quux.org:70/devel/gopher";
     description = "A ncurses gopher client";
     platforms = platforms.linux; # clang doesn't like local regex.h
     license = licenses.gpl2;
diff --git a/pkgs/applications/networking/gopher/gopherclient/default.nix b/pkgs/applications/networking/gopher/gopherclient/default.nix
deleted file mode 100644
index 45d9235afc98..000000000000
--- a/pkgs/applications/networking/gopher/gopherclient/default.nix
+++ /dev/null
@@ -1,45 +0,0 @@
-{ stdenv, buildGoPackage, fetchgit, makeWrapper, pkgconfig, qtbase, qtdeclarative, qtwebengine }:
-
-buildGoPackage rec {
-  pname = "gopherclient";
-  version = "2016-10-02";
-  rev = "91c41b5542d08001636708e2a5054521a6004702";
-
-  goPackagePath = "github.com/prologic/gopherclient";
-
-  src = fetchgit {
-    inherit rev;
-    url = "https://github.com/prologic/gopherclient";
-    sha256 = "0b1gvxhv4zg930hvric9mmbfp0lnww0sqlkkfbzfkif3wz9ni5y9";
-  };
-
-  nativeBuildInputs = [ makeWrapper pkgconfig ];
-
-  buildInputs = [ qtbase qtdeclarative qtwebengine ];
-
-  preBuild = ''
-    # Generate gopherclient resources with genqrc.
-    ln -s ${goPackagePath}/vendor/gopkg.in go/src/
-    GOBIN="$(pwd)" go install -v gopkg.in/qml.v1/cmd/genqrc
-    PATH="$(pwd):$PATH" go generate ${goPackagePath}
-  '';
-
-  NIX_CFLAGS_COMPILE = [
-    # go-qml needs private Qt headers.
-    "-I${qtbase.dev}/include/QtCore/${qtbase.version}"
-  ];
-
-  postInstall = ''
-    # https://github.com/prologic/gopherclient/#usage
-    wrapProgram $bin/bin/gopherclient --prefix GODEBUG , cgocheck=0
-  '';
-
-  meta = with stdenv.lib; {
-    homepage = https://github.com/prologic/gopherclient;
-    description = "Gopher Qt GUI client";
-    license = licenses.mit;
-    maintainers = with maintainers; [ orivej ];
-    platforms = platforms.linux;
-    broken = true;
-  };
-}
diff --git a/pkgs/applications/networking/hydroxide/default.nix b/pkgs/applications/networking/hydroxide/default.nix
index 75c1cdaece96..679b3f4014fa 100644
--- a/pkgs/applications/networking/hydroxide/default.nix
+++ b/pkgs/applications/networking/hydroxide/default.nix
@@ -2,24 +2,16 @@
 
 buildGoModule rec {
   pname = "hydroxide";
-  version = "0.2.11";
+  version = "0.2.14";
 
   src = fetchFromGitHub {
     owner = "emersion";
     repo = pname;
     rev = "v${version}";
-    sha256 = "0rn35iyli80kgj3yn93lrx0ybgc8fhvmkvx1d18ill7r4cmavand";
+    sha256 = "0d8wjyzmw89yhrszz487f7i19rcz7xlx4w2wd4c69k5nsdrs6dys";
   };
 
-  modSha256 = "0b19rcif8yiyvhrsjd3q5nsvr580lklamlphx4dk47n456ckcqfp";
-
-  # FIXME: remove with next release
-  patches = [
-    (fetchpatch {
-      url = "https://github.com/emersion/hydroxide/commit/80e0fa6f3e0154338fb0af8a82ca32ae6281dd15.patch";
-      sha256 = "1xi0clzgz14a7sxnwr0li7sz9p05sfh3zh5iqg2qz5f415k9jknj";
-    })
-  ];
+  modSha256 = "0888ikywclhjb4n7xqxc7hvzlhx1qhf4c3skaddqs3nrxm171jwn";
 
   subPackages = [ "cmd/hydroxide" ];
 
diff --git a/pkgs/applications/networking/ids/daq/default.nix b/pkgs/applications/networking/ids/daq/default.nix
index 9af105ad52eb..871aba0a669f 100644
--- a/pkgs/applications/networking/ids/daq/default.nix
+++ b/pkgs/applications/networking/ids/daq/default.nix
@@ -19,7 +19,7 @@ stdenv.mkDerivation rec {
 
   meta = {
     description = "Data AcQuisition library (DAQ), for packet I/O";
-    homepage = https://www.snort.org;
+    homepage = "https://www.snort.org";
     maintainers = with stdenv.lib.maintainers; [ aycanirican ];
     license = stdenv.lib.licenses.gpl2;
     platforms = with stdenv.lib.platforms; linux;
diff --git a/pkgs/applications/networking/ids/snort/default.nix b/pkgs/applications/networking/ids/snort/default.nix
index 88df3857ec14..92415148ed5e 100644
--- a/pkgs/applications/networking/ids/snort/default.nix
+++ b/pkgs/applications/networking/ids/snort/default.nix
@@ -27,7 +27,7 @@ stdenv.mkDerivation rec {
   
   meta = {
     description = "Network intrusion prevention and detection system (IDS/IPS)";
-    homepage = https://www.snort.org;
+    homepage = "https://www.snort.org";
     maintainers = with stdenv.lib.maintainers; [ aycanirican ];
     license = stdenv.lib.licenses.gpl2;
     platforms = with stdenv.lib.platforms; linux;
diff --git a/pkgs/applications/networking/ids/suricata/default.nix b/pkgs/applications/networking/ids/suricata/default.nix
index d0829fd73a99..04c87b7c25b6 100644
--- a/pkgs/applications/networking/ids/suricata/default.nix
+++ b/pkgs/applications/networking/ids/suricata/default.nix
@@ -34,11 +34,11 @@
 in
 stdenv.mkDerivation rec {
   pname = "suricata";
-  version = "5.0.1";
+  version = "5.0.2";
 
   src = fetchurl {
     url = "https://www.openinfosecfoundation.org/download/${pname}-${version}.tar.gz";
-    sha256 = "034b0nl0hkh0v26gwbawi2wdv7mb9p54cfg8gc9b8hsw49k3c1wh";
+    sha256 = "1ryfa3bzd8mrq2k5kjfwmblxqqziz6b9n1dnh692mazf5z4wlc3z";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/applications/networking/ids/zeek/default.nix b/pkgs/applications/networking/ids/zeek/default.nix
index 947abc39c21a..8fe856f9773f 100644
--- a/pkgs/applications/networking/ids/zeek/default.nix
+++ b/pkgs/applications/networking/ids/zeek/default.nix
@@ -1,20 +1,35 @@
 {stdenv, fetchurl, cmake, flex, bison, openssl, libpcap, zlib, file, curl
-, libmaxminddb, gperftools, python, swig, rocksdb }:
-
+, libmaxminddb, gperftools, python, swig, fetchpatch }:
+let
+  preConfigure = (import ./script.nix);
+in
 stdenv.mkDerivation rec {
   pname = "zeek";
-  version = "3.0.1";
+  version = "3.1.2";
 
   src = fetchurl {
-    url = "https://www.zeek.org/downloads/zeek-${version}.tar.gz";
-    sha256 = "1lhik212wrbi092qizc08f3i0b9pj318sxwm0abc5jc3v3pz7x3r";
+    url = "https://download.zeek.org/zeek-${version}.tar.gz";
+    sha256 = "18aa4pfwav8m6vq7cr4bhfg243da54ak933rqbriljnhsrgp4n0q";
   };
 
   nativeBuildInputs = [ cmake flex bison file ];
-  buildInputs = [ openssl libpcap zlib curl libmaxminddb gperftools python swig rocksdb ];
+  buildInputs = [ openssl libpcap zlib curl libmaxminddb gperftools python swig ];
+
+  #see issue https://github.com/zeek/zeek/issues/804 to modify hardlinking duplicate files.
+  inherit preConfigure;
 
   enableParallelBuilding = true;
 
+  patches = stdenv.lib.optionals stdenv.cc.isClang [
+    # Fix pybind c++17 build with Clang. See: https://github.com/pybind/pybind11/issues/1604
+    (fetchpatch {
+      url = "https://github.com/pybind/pybind11/commit/759221f5c56939f59d8f342a41f8e2d2cacbc8cf.patch";
+      sha256 = "0l8z7d7chq1awd8dnfarj4c40wx36hkhcan0702p5l89x73wqk54";
+      extraPrefix = "aux/broker/bindings/python/3rdparty/pybind11/";
+      stripLen = 1;
+    })
+  ];
+
   cmakeFlags = [
     "-DPY_MOD_INSTALL_DIR=${placeholder "out"}/${python.sitePackages}"
     "-DENABLE_PERFTOOLS=true"
diff --git a/pkgs/applications/networking/ids/zeek/script.nix b/pkgs/applications/networking/ids/zeek/script.nix
new file mode 100644
index 000000000000..10a2d11a1489
--- /dev/null
+++ b/pkgs/applications/networking/ids/zeek/script.nix
@@ -0,0 +1,62 @@
+''
+   sed -i "1i##! test dpd" $PWD/scripts/base/frameworks/dpd/__load__.zeek
+   sed -i "1i##! test x509" $PWD/scripts/base/files/x509/__load__.zeek
+   sed -i "1i##! test files-extract" $PWD/scripts/base/files/extract/__load__.zeek
+   sed -i "1i##! test files-hash" $PWD/scripts/base/files/hash/__load__.zeek
+   sed -i "1i##! test files-pe" $PWD/scripts/base/files/pe/__load__.zeek
+   sed -i "1i##! test analyzer" $PWD/scripts/base/frameworks/analyzer/__load__.zeek
+   sed -i "1i##! test cluster" $PWD/scripts/base/frameworks/cluster/__load__.zeek
+   sed -i "1i##! test config" $PWD/scripts/base/frameworks/config/__load__.zeek
+   sed -i "1i##! test contro" $PWD/scripts/base/frameworks/control/__load__.zeek
+   sed -i "1i##! test files" $PWD/scripts/base/frameworks/files/__load__.zeek
+   sed -i "1i##! test files-magic" $PWD/scripts/base/frameworks/files/magic/__load__.zeek
+   sed -i "1i##! test input" $PWD/scripts/base/frameworks/input/__load__.zeek
+   sed -i "1i##! test intel" $PWD/scripts/base/frameworks/intel/__load__.zeek
+   sed -i "1i##! test logging" $PWD/scripts/base/frameworks/logging/__load__.zeek
+   sed -i "1i##! test logging-postprocessors" $PWD/scripts/base/frameworks/logging/postprocessors/__load__.zeek
+   sed -i "1i##! test netcontrol" $PWD/scripts/base/frameworks/netcontrol/__load__.zeek
+   sed -i "1i##! test netcontrol-plugins" $PWD/scripts/base/frameworks/netcontrol/plugins/__load__.zeek
+   sed -i "1i##! test notice" $PWD/scripts/base/frameworks/notice/__load__.zeek
+   sed -i "1i##! test openflow" $PWD/scripts/base/frameworks/openflow/__load__.zeek
+   sed -i "1i##! test openflow-plugins" $PWD/scripts/base/frameworks/openflow/plugins/__load__.zeek
+   sed -i "1i##! test packet-filter" $PWD/scripts/base/frameworks/packet-filter/__load__.zeek
+   sed -i "1i##! test reporter" $PWD/scripts/base/frameworks/reporter/__load__.zeek
+   sed -i "1i##! test signatures" $PWD/scripts/base/frameworks/signatures/__load__.zeek
+   sed -i "1i##! test software" $PWD/scripts/base/frameworks/software/__load__.zeek
+   sed -i "1i##! test sumstats" $PWD/scripts/base/frameworks/sumstats/__load__.zeek
+   sed -i "1i##! test sumstats-plugins" $PWD/scripts/base/frameworks/sumstats/plugins/__load__.zeek
+   sed -i "1i##! test conn" $PWD/scripts/base/protocols/conn/__load__.zeek
+   sed -i "1i##! test dce-rpc" $PWD/scripts/base/protocols/dce-rpc/__load__.zeek
+   sed -i "1i##! test dhcp" $PWD/scripts/base/protocols/dhcp/__load__.zeek
+   sed -i "1i##! test dnp3" $PWD/scripts/base/protocols/dnp3/__load__.zeek
+   sed -i "1i##! test dns" $PWD/scripts/base/protocols/dns/__load__.zeek
+   sed -i "1i##! test ftp" $PWD/scripts/base/protocols/ftp/__load__.zeek
+   sed -i "1i##! test http" $PWD/scripts/base/protocols/http/__load__.zeek
+   sed -i "1i##! test imap" $PWD/scripts/base/protocols/imap/__load__.zeek
+   sed -i "1i##! test irc" $PWD/scripts/base/protocols/irc/__load__.zeek
+   sed -i "1i##! test krb" $PWD/scripts/base/protocols/krb/__load__.zeek
+   sed -i "1i##! test modbus" $PWD/scripts/base/protocols/modbus/__load__.zeek
+   sed -i "1i##! test mqtt" $PWD/scripts/base/protocols/mqtt/__load__.zeek
+   sed -i "1i##! test mysql" $PWD/scripts/base/protocols/mysql/__load__.zeek
+   sed -i "1i##! test ntlm" $PWD/scripts/base/protocols/ntlm/__load__.zeek
+   sed -i "1i##! test ntp" $PWD/scripts/base/protocols/ntp/__load__.zeek
+   sed -i "1i##! test pop3" $PWD/scripts/base/protocols/pop3/__load__.zeek
+   sed -i "1i##! test radius" $PWD/scripts/base/protocols/radius/__load__.zeek
+   sed -i "1i##! test rdp" $PWD/scripts/base/protocols/rdp/__load__.zeek
+   sed -i "1i##! test rfb" $PWD/scripts/base/protocols/rfb/__load__.zeek
+   sed -i "1i##! test sip" $PWD/scripts/base/protocols/sip/__load__.zeek
+   sed -i "1i##! test smb" $PWD/scripts/base/protocols/smb/__load__.zeek
+   sed -i "1i##! test smtp" $PWD/scripts/base/protocols/smtp/__load__.zeek
+   sed -i "1i##! test snmp" $PWD/scripts/base/protocols/snmp/__load__.zeek
+   sed -i "1i##! test socks" $PWD/scripts/base/protocols/socks/__load__.zeek
+   sed -i "1i##! test ssh" $PWD/scripts/base/protocols/ssh/__load__.zeek
+   sed -i "1i##! test ssl" $PWD/scripts/base/protocols/ssl/__load__.zeek
+   sed -i "1i##! test syslog" $PWD/scripts/base/protocols/syslog/__load__.zeek
+   sed -i "1i##! test xmpp" $PWD/scripts/base/protocols/xmpp/__load__.zeek
+   sed -i "1i##! test unified2" $PWD/scripts/policy/files/unified2/__load__.zeek
+   sed -i "1i##! test intel-seen" $PWD/scripts/policy/frameworks/intel/seen/__load__.zeek
+   sed -i "1i##! test notice" $PWD/scripts/policy/frameworks/notice/__load__.zeek
+   sed -i "1i##! test barnyard2" $PWD/scripts/policy/integration/barnyard2/__load__.zeek
+   sed -i "1i##! test collective-intel" $PWD/scripts/policy/integration/collective-intel/__load__.zeek
+   sed -i "1i##! test detect-traceroute" $PWD/scripts/policy/misc/detect-traceroute/__load__.zeek
+''
diff --git a/pkgs/applications/networking/ike/default.nix b/pkgs/applications/networking/ike/default.nix
index 0b0491ffb861..93858ba3027c 100644
--- a/pkgs/applications/networking/ike/default.nix
+++ b/pkgs/applications/networking/ike/default.nix
@@ -52,7 +52,7 @@ stdenv.mkDerivation rec {
   '';
 
   meta = with stdenv.lib; {
-    homepage = https://www.shrew.net/software;
+    homepage = "https://www.shrew.net/software";
     description = "IPsec Client for FreeBSD, NetBSD and many Linux based operating systems";
     platforms = platforms.unix;
     maintainers = [ maintainers.domenkozar ];
diff --git a/pkgs/applications/networking/instant-messengers/SkypeExport/default.nix b/pkgs/applications/networking/instant-messengers/SkypeExport/default.nix
index 716989c7b565..f5ec3d7b6bd0 100644
--- a/pkgs/applications/networking/instant-messengers/SkypeExport/default.nix
+++ b/pkgs/applications/networking/instant-messengers/SkypeExport/default.nix
@@ -19,7 +19,7 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "Export Skype history to HTML";
-    homepage = https://github.com/Temptin/SkypeExport;
+    homepage = "https://github.com/Temptin/SkypeExport";
     license = licenses.gpl2;
     platforms = platforms.linux;
     maintainers = with maintainers; [ yegortimoshenko ];
diff --git a/pkgs/applications/networking/instant-messengers/amsn/default.nix b/pkgs/applications/networking/instant-messengers/amsn/default.nix
index 6ff51445718b..60d4ec829cc2 100644
--- a/pkgs/applications/networking/instant-messengers/amsn/default.nix
+++ b/pkgs/applications/networking/instant-messengers/amsn/default.nix
@@ -3,7 +3,7 @@
 stdenv.mkDerivation {
   name = "amsn-0.98.9";
   src = fetchurl {
-    url = mirror://sourceforge/amsn/amsn-0.98.9-src.tar.gz;
+    url = "mirror://sourceforge/amsn/amsn-0.98.9-src.tar.gz";
     sha256 = "0b8ir7spxnsz8f7kvr9f1k91nsy8cb65q6jv2l55b04fl20x4z7r";
   };
 
@@ -21,7 +21,7 @@ stdenv.mkDerivation {
 
   meta = {
     description = "Instant messaging (MSN Messenger clone)";
-    homepage = http://amsn-project.net;
+    homepage = "http://amsn-project.net";
     platforms = stdenv.lib.platforms.linux;
     license = stdenv.lib.licenses.gpl2;
   };
diff --git a/pkgs/applications/networking/instant-messengers/baresip/default.nix b/pkgs/applications/networking/instant-messengers/baresip/default.nix
index a3497df1716c..ace546227b93 100644
--- a/pkgs/applications/networking/instant-messengers/baresip/default.nix
+++ b/pkgs/applications/networking/instant-messengers/baresip/default.nix
@@ -41,7 +41,7 @@ stdenv.mkDerivation rec {
     -DHAVE_INTTYPES_H -D__GLIBC__
     -D__need_timeval -D__need_timespec -D__need_time_t '';
   meta = {
-    homepage = http://www.creytiv.com/baresip.html;
+    homepage = "http://www.creytiv.com/baresip.html";
     platforms = with stdenv.lib.platforms; linux;
     maintainers = with stdenv.lib.maintainers; [raskin];
     license = stdenv.lib.licenses.bsd3;
diff --git a/pkgs/applications/networking/instant-messengers/bitlbee-discord/default.nix b/pkgs/applications/networking/instant-messengers/bitlbee-discord/default.nix
index 5094a13119f7..0b6f142f1e92 100644
--- a/pkgs/applications/networking/instant-messengers/bitlbee-discord/default.nix
+++ b/pkgs/applications/networking/instant-messengers/bitlbee-discord/default.nix
@@ -3,13 +3,13 @@
 with stdenv.lib;
 stdenv.mkDerivation rec {
   pname = "bitlbee-discord";
-  version = "0.4.2";
+  version = "0.4.3";
 
   src = fetchFromGitHub {
     rev = version;
     owner = "sm00th";
     repo = "bitlbee-discord";
-    sha256 = "02pigk2vbz0jdz11f96sygdvp1j762yjn62h124fkcsc070g7a2f";
+    sha256 = "00qgdvrp7hv02n0ns685igp810zxmv3adsama8601122al6x041n";
   };
 
   nativeBuildInputs = [ autoreconfHook pkgconfig ];
@@ -24,7 +24,7 @@ stdenv.mkDerivation rec {
   meta = {
     description = "Bitlbee plugin for Discord";
 
-    homepage = https://github.com/sm00th/bitlbee-discord;
+    homepage = "https://github.com/sm00th/bitlbee-discord";
     license = licenses.gpl2Plus;
     maintainers = with maintainers; [ lassulus jb55 ];
     platforms = stdenv.lib.platforms.linux;
diff --git a/pkgs/applications/networking/instant-messengers/bitlbee-facebook/default.nix b/pkgs/applications/networking/instant-messengers/bitlbee-facebook/default.nix
index 84067dc5f19d..78016065610b 100644
--- a/pkgs/applications/networking/instant-messengers/bitlbee-facebook/default.nix
+++ b/pkgs/applications/networking/instant-messengers/bitlbee-facebook/default.nix
@@ -24,7 +24,7 @@ stdenv.mkDerivation rec {
   meta = {
     description = "The Facebook protocol plugin for bitlbee";
 
-    homepage = https://github.com/bitlbee/bitlbee-facebook;
+    homepage = "https://github.com/bitlbee/bitlbee-facebook";
     license = licenses.gpl2Plus;
     platforms = stdenv.lib.platforms.linux;
   };
diff --git a/pkgs/applications/networking/instant-messengers/bitlbee-mastodon/default.nix b/pkgs/applications/networking/instant-messengers/bitlbee-mastodon/default.nix
index ecd76977eb2b..155ea5edc4d7 100644
--- a/pkgs/applications/networking/instant-messengers/bitlbee-mastodon/default.nix
+++ b/pkgs/applications/networking/instant-messengers/bitlbee-mastodon/default.nix
@@ -3,12 +3,12 @@
 with stdenv.lib;
 stdenv.mkDerivation rec {
   pname = "bitlbee-mastodon";
-  version = "1.4.2";
+  version = "1.4.3";
 
   src = fetchgit {
     url = "https://alexschroeder.ch/cgit/bitlbee-mastodon";
     rev = "v${version}";
-    sha256 = "04rakgr1pfsg1vhfwlfbggbzw249j7dmk88xrsnf3n84c5ccdyas";
+    sha256 = "1k9j4403w6x93f4ls3xj8nrabz8ynjby6sigqdmhb7cqv26l987p";
   };
 
   nativeBuildInputs = [ autoreconfHook pkgconfig ];
diff --git a/pkgs/applications/networking/instant-messengers/bitlbee-steam/default.nix b/pkgs/applications/networking/instant-messengers/bitlbee-steam/default.nix
index 798dab2b646d..14a3319c1490 100644
--- a/pkgs/applications/networking/instant-messengers/bitlbee-steam/default.nix
+++ b/pkgs/applications/networking/instant-messengers/bitlbee-steam/default.nix
@@ -23,7 +23,7 @@ stdenv.mkDerivation rec {
   meta = {
     description = "Steam protocol plugin for BitlBee";
 
-    homepage = https://github.com/jgeboski/bitlbee-steam;
+    homepage = "https://github.com/jgeboski/bitlbee-steam";
     license = licenses.gpl2Plus;
     platforms = stdenv.lib.platforms.linux;
   };
diff --git a/pkgs/applications/networking/instant-messengers/bitlbee/default.nix b/pkgs/applications/networking/instant-messengers/bitlbee/default.nix
index 917610216aeb..cf3f2549c810 100644
--- a/pkgs/applications/networking/instant-messengers/bitlbee/default.nix
+++ b/pkgs/applications/networking/instant-messengers/bitlbee/default.nix
@@ -57,7 +57,7 @@ stdenv.mkDerivation rec {
       Messenger, AIM and ICQ.
     '';
 
-    homepage = https://www.bitlbee.org/;
+    homepage = "https://www.bitlbee.org/";
     license = licenses.gpl2Plus;
 
     maintainers = with maintainers; [ pSub ];
diff --git a/pkgs/applications/networking/instant-messengers/blink/default.nix b/pkgs/applications/networking/instant-messengers/blink/default.nix
index b6e13fe403db..f383daa6fd02 100644
--- a/pkgs/applications/networking/instant-messengers/blink/default.nix
+++ b/pkgs/applications/networking/instant-messengers/blink/default.nix
@@ -7,7 +7,7 @@ mkDerivationWith pythonPackages.buildPythonApplication rec {
   version = "3.2.0";
 
   src = fetchdarcs {
-    url = http://devel.ag-projects.com/repositories/blink-qt;
+    url = "http://devel.ag-projects.com/repositories/blink-qt";
     rev = "release-${version}";
     sha256 = "19rcwr5scw48qnj79q1pysw95fz9h98nyc3161qy2kph5g7dwkc3";
   };
@@ -59,7 +59,7 @@ mkDerivationWith pythonPackages.buildPythonApplication rec {
   '';
 
   meta = with stdenv.lib; {
-    homepage = http://icanblink.com/;
+    homepage = "http://icanblink.com/";
     description = "A state of the art, easy to use SIP client for Voice, Video and IM";
     platforms = platforms.linux;
     license = licenses.gpl3;
diff --git a/pkgs/applications/networking/instant-messengers/bluejeans/default.nix b/pkgs/applications/networking/instant-messengers/bluejeans/default.nix
index 21b21e253499..14fbd4db1a00 100644
--- a/pkgs/applications/networking/instant-messengers/bluejeans/default.nix
+++ b/pkgs/applications/networking/instant-messengers/bluejeans/default.nix
@@ -1,47 +1,120 @@
-{ stdenv, fetchurl, rpmextract, patchelf, libnotify, libcap, cairo, pango, fontconfig, udev, dbus
-, gtk2, atk, expat, gdk-pixbuf, freetype, nspr, glib, nss, gconf, libX11, libXrender, libXtst, libXdamage
-, libXi, libXext, libXfixes, libXcomposite, alsaLib, bash
+{ stdenv
+, fetchurl
+, rpmextract
+, patchelf
+, patchelfUnstable
+, libnotify
+, libuuid
+, cairo
+, cups
+, pango
+, fontconfig
+, udev
+, dbus
+, gtk3
+, atk
+, at-spi2-atk
+, expat
+, gdk-pixbuf
+, freetype
+, nspr
+, glib
+, nss
+, libX11
+, libXrandr
+, libXrender
+, libXtst
+, libXdamage
+, libxcb
+, libXcursor
+, libXi
+, libXext
+, libXfixes
+, libXft
+, libXcomposite
+, libXScrnSaver
+, alsaLib
+, pulseaudio
+, makeWrapper
 }:
 
 stdenv.mkDerivation rec {
   pname = "bluejeans";
-  version = "1.36.9";
+  version = "2.1.0";
 
-  src =
-    fetchurl {
-      url = "https://swdl.bluejeans.com/desktop/linux/1.36/${version}/bluejeans-${version}.x86_64.rpm";
-      sha256 = "0sbv742pzqd2cxn3kq10lfi16jah486i9kyrmi8l1rpb9fhyw2m1";
-    };
+  src = fetchurl {
+    url = "https://swdl.bluejeans.com/desktop-app/linux/${version}/BlueJeans.rpm";
+    sha256 = "1zhh0pla5gk75p8x84va9flvnk456pbcm1n6x8l82c9682fwr7dd";
+  };
 
-  nativeBuildInputs = [ patchelf rpmextract ];
+  nativeBuildInputs = [ rpmextract makeWrapper ];
 
   libPath =
     stdenv.lib.makeLibraryPath
-       [ libnotify libcap cairo pango fontconfig gtk2 atk expat gdk-pixbuf dbus udev.lib
-         freetype nspr glib stdenv.cc stdenv.cc.cc.lib nss gconf libX11 libXrender libXtst libXdamage
-         libXi libXext libXfixes libXcomposite alsaLib
-       ];
+      [
+        libnotify
+        libuuid
+        cairo
+        cups
+        pango
+        fontconfig
+        gtk3
+        atk
+        at-spi2-atk
+        expat
+        gdk-pixbuf
+        dbus
+        udev.lib
+        freetype
+        nspr
+        glib
+        stdenv.cc.cc.lib
+        nss
+        libX11
+        libXrandr
+        libXrender
+        libXtst
+        libXdamage
+        libxcb
+        libXcursor
+        libXi
+        libXext
+        libXfixes
+        libXft
+        libXcomposite
+        libXScrnSaver
+        alsaLib
+        pulseaudio
+      ];
+
+  localtime64_stub = ./localtime64_stub.c;
 
   buildCommand = ''
     mkdir -p $out/bin/
     cd $out
     rpmextract $src
-    patchelf \
+    mv usr/share share
+    rmdir usr
+
+    ${patchelf}/bin/patchelf \
       --set-interpreter $(cat $NIX_CC/nix-support/dynamic-linker) \
-      opt/bluejeans/bluejeans-bin
-    patchelf \
-      --set-rpath ${libPath} \
-      opt/bluejeans/bluejeans-bin
-    patchelf \
       --replace-needed libudev.so.0 libudev.so.1 \
-      opt/bluejeans/bluejeans-bin
-    ln -s $out/opt/bluejeans/bluejeans $out/bin/bluejeans
-    chmod +x $out/bin/bluejeans
-    patchShebangs $out
+      opt/BlueJeans/bluejeans-v2
+    ${patchelfUnstable}/bin/patchelf \
+      --set-interpreter $(cat $NIX_CC/nix-support/dynamic-linker) \
+      opt/BlueJeans/resources/BluejeansHelper
+
+    cc $localtime64_stub -shared -o "$out"/opt/BlueJeans/liblocaltime64_stub.so
+
+    makeWrapper $out/opt/BlueJeans/bluejeans-v2 $out/bin/bluejeans \
+      --set LD_LIBRARY_PATH "${libPath}":"${placeholder "out"}"/opt/BlueJeans \
+      --set LD_PRELOAD "$out"/opt/BlueJeans/liblocaltime64_stub.so
+
+    patchShebangs "$out"
   '';
 
   meta = with stdenv.lib; {
-    description = "Video, audio, and web conferencing that works together with the collaboration tools you use every day.";
+    description = "Video, audio, and web conferencing that works together with the collaboration tools you use every day";
     homepage = "https://www.bluejeans.com";
     license = licenses.unfree;
     maintainers = with maintainers; [ veprbl ];
diff --git a/pkgs/applications/networking/instant-messengers/bluejeans/localtime64_stub.c b/pkgs/applications/networking/instant-messengers/bluejeans/localtime64_stub.c
new file mode 100644
index 000000000000..87c2fa11714c
--- /dev/null
+++ b/pkgs/applications/networking/instant-messengers/bluejeans/localtime64_stub.c
@@ -0,0 +1,12 @@
+#include <stdio.h>
+#include <stdlib.h>
+
+void *localtime64() {
+  fprintf(stderr, "nixpkgs: call into localtime64_r\n");
+  abort();
+}
+
+void *localtime64_r() {
+  fprintf(stderr, "nixpkgs: call into localtime64_r\n");
+  abort();
+}
diff --git a/pkgs/applications/networking/instant-messengers/centerim/default.nix b/pkgs/applications/networking/instant-messengers/centerim/default.nix
index daffb539676f..52d8178764c5 100644
--- a/pkgs/applications/networking/instant-messengers/centerim/default.nix
+++ b/pkgs/applications/networking/instant-messengers/centerim/default.nix
@@ -24,7 +24,7 @@ stdenv.mkDerivation rec {
   ];
 
   meta = {
-    homepage = http://www.centerim.org/;
+    homepage = "http://www.centerim.org/";
     description = "Fork of CenterICQ, a curses instant messaging program";
     license = stdenv.lib.licenses.gpl2Plus;
     platforms = with stdenv.lib.platforms; linux;
diff --git a/pkgs/applications/networking/instant-messengers/coyim/default.nix b/pkgs/applications/networking/instant-messengers/coyim/default.nix
index 3186009db582..67c2a0db2372 100644
--- a/pkgs/applications/networking/instant-messengers/coyim/default.nix
+++ b/pkgs/applications/networking/instant-messengers/coyim/default.nix
@@ -14,11 +14,13 @@ buildGoPackage rec {
     sha256 = "1g8nf56j17rdhhj7pv3ha1rb2mfc0mdvyzl35pgcki08w7iw08j3";
   };
 
-  nativeBuildInputs = [ pkgconfig wrapGAppsHook glib cairo gdk-pixbuf gtk3 gnome3.adwaita-icon-theme ];
+  nativeBuildInputs = [ pkgconfig wrapGAppsHook ];
+
+  buildInputs = [ glib cairo gdk-pixbuf gtk3 gnome3.adwaita-icon-theme ];
 
   meta = with stdenv.lib; {
     description = "a safe and secure chat client";
-    homepage = https://coy.im/;
+    homepage = "https://coy.im/";
     license = licenses.gpl3;
     platforms = platforms.linux;
   };
diff --git a/pkgs/applications/networking/instant-messengers/deltachat-electron/default.nix b/pkgs/applications/networking/instant-messengers/deltachat-electron/default.nix
new file mode 100644
index 000000000000..5418b671633e
--- /dev/null
+++ b/pkgs/applications/networking/instant-messengers/deltachat-electron/default.nix
@@ -0,0 +1,36 @@
+{ lib, fetchurl, appimageTools }:
+
+let
+  pname = "deltachat-electron";
+  version = "1.2.0";
+  name = "${pname}-${version}";
+
+  src = fetchurl {
+    url =
+      "https://download.delta.chat/desktop/v${version}/DeltaChat-${version}.AppImage";
+    sha256 = "Cyb34bfQEdwOA6XYZO+1Ri/2e/PRat15aUMn7IElmUI=";
+  };
+
+  appimageContents = appimageTools.extract { inherit name src; };
+
+in appimageTools.wrapType2 {
+  inherit name src;
+
+  extraInstallCommands = ''
+    mv $out/bin/${name} $out/bin/${pname}
+    install -m 444 -D \
+      ${appimageContents}/deltachat-desktop.desktop \
+      $out/share/applications/${pname}.desktop
+    substituteInPlace $out/share/applications/${pname}.desktop \
+      --replace 'Exec=AppRun' 'Exec=${pname}'
+    cp -r ${appimageContents}/usr/share/icons $out/share
+  '';
+
+  meta = with lib; {
+    description = "Electron client for DeltaChat";
+    homepage = "https://delta.chat/";
+    license = licenses.gpl3;
+    maintainers = with maintainers; [ ehmry ];
+    platforms = [ "x86_64-linux" ];
+  };
+}
diff --git a/pkgs/applications/networking/instant-messengers/dino/default.nix b/pkgs/applications/networking/instant-messengers/dino/default.nix
index 9cf0032cf49f..035878b8e008 100644
--- a/pkgs/applications/networking/instant-messengers/dino/default.nix
+++ b/pkgs/applications/networking/instant-messengers/dino/default.nix
@@ -64,7 +64,7 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "Modern Jabber/XMPP Client using GTK/Vala";
-    homepage = https://github.com/dino/dino;
+    homepage = "https://github.com/dino/dino";
     license = licenses.gpl3;
     platforms = platforms.linux;
     maintainers = with maintainers; [ mic92 qyliss ];
diff --git a/pkgs/applications/networking/instant-messengers/discord/base.nix b/pkgs/applications/networking/instant-messengers/discord/base.nix
index 6e4a914ecb0e..8f4f16673d25 100644
--- a/pkgs/applications/networking/instant-messengers/discord/base.nix
+++ b/pkgs/applications/networking/instant-messengers/discord/base.nix
@@ -51,6 +51,8 @@ in stdenv.mkDerivation rec {
     mimeType = "x-scheme-handler/discord";
   };
 
+  passthru.updateScript = ./update-discord.sh;
+
   meta = with stdenv.lib; {
     description = "All-in-one cross-platform voice and text chat for gamers";
     homepage = "https://discordapp.com/";
diff --git a/pkgs/applications/networking/instant-messengers/discord/default.nix b/pkgs/applications/networking/instant-messengers/discord/default.nix
index ab15cbb22af4..926ddeeb0483 100644
--- a/pkgs/applications/networking/instant-messengers/discord/default.nix
+++ b/pkgs/applications/networking/instant-messengers/discord/default.nix
@@ -1,5 +1,5 @@
 { branch ? "stable", pkgs }:
-# Generated by /maintainers/scripts/update-discord
+# Generated by ./update-discord.sh
 let
   inherit (pkgs) callPackage fetchurl;
 in {
@@ -17,20 +17,20 @@ in {
     pname = "discord-ptb";
     binaryName = "DiscordPTB";
     desktopName = "Discord PTB";
-    version = "0.0.18";
+    version = "0.0.19";
     src = fetchurl {
       url = "https://dl-ptb.discordapp.net/apps/linux/${version}/discord-ptb-${version}.tar.gz";
-      sha256 = "1v9xph7shpmabwysbc08qqlkydzgsir8rwarrjf01xmpcpyia17g";
+      sha256 = "0wixmm16qsmgbr0l9144vl5pc3s2p4jqhl7cnc6kmgy1y4ig56ib";
     };
   };
   canary = callPackage ./base.nix rec {
     pname = "discord-canary";
     binaryName = "DiscordCanary";
     desktopName = "Discord Canary";
-    version = "0.0.102";
+    version = "0.0.103";
     src = fetchurl {
       url = "https://dl-canary.discordapp.net/apps/linux/${version}/discord-canary-${version}.tar.gz";
-      sha256 = "1zl53vprkwbkfn3v0lddpp1swignqjxksi4qxl5zqj7482j372a4";
+      sha256 = "1d95q75ak4z6wkxlgcmkl7yk20gl7zf568b0xslz42hwx032fn4z";
     };
   };
 }.${branch}
diff --git a/pkgs/applications/networking/instant-messengers/discord/update-discord.sh b/pkgs/applications/networking/instant-messengers/discord/update-discord.sh
new file mode 100755
index 000000000000..34c1574c65aa
--- /dev/null
+++ b/pkgs/applications/networking/instant-messengers/discord/update-discord.sh
@@ -0,0 +1,36 @@
+#!/usr/bin/env bash
+# script to generate ./default.nix
+
+set -e
+exec >"${BASH_SOURCE%/*}/default.nix"
+
+cat <<EOF
+{ branch ? "stable", pkgs }:
+# Generated by ./update-discord.sh
+let
+  inherit (pkgs) callPackage fetchurl;
+in {
+EOF
+
+for branch in "" ptb canary; do
+    url=$(curl -sI "https://discordapp.com/api/download${branch:+/}${branch}?platform=linux&format=tar.gz" | grep -oP 'location: \K\S+')
+    version=${url##https://dl*.discordapp.net/apps/linux/}
+    version=${version%%/*.tar.gz}
+    echo "  ${branch:-stable} = callPackage ./base.nix rec {"
+    echo "    pname = \"discord${branch:+-}${branch}\";"
+    case $branch in
+        "") suffix="" ;;
+        ptb) suffix="PTB" ;;
+        canary) suffix="Canary" ;;
+    esac
+    echo "    binaryName = \"Discord${suffix}\";"
+    echo "    desktopName = \"Discord${suffix:+ }${suffix}\";"
+    echo "    version = \"${version}\";"
+    echo "    src = fetchurl {"
+    echo "      url = \"${url//${version}/\$\{version\}}\";"
+    echo "      sha256 = \"$(nix-prefetch-url "$url")\";"
+    echo "    };"
+    echo "  };"
+done
+
+echo "}.\${branch}"
diff --git a/pkgs/applications/networking/instant-messengers/fractal/default.nix b/pkgs/applications/networking/instant-messengers/fractal/default.nix
index 896ca4f38a61..05767d1a9cd6 100644
--- a/pkgs/applications/networking/instant-messengers/fractal/default.nix
+++ b/pkgs/applications/networking/instant-messengers/fractal/default.nix
@@ -46,6 +46,7 @@ rustPlatform.buildRustPackage rec {
     python3
     rustc
     wrapGAppsHook
+    glib
   ];
 
   buildInputs = [
@@ -79,9 +80,8 @@ rustPlatform.buildRustPackage rec {
 
   meta = with stdenv.lib; {
     description = "Matrix group messaging app";
-    homepage = https://gitlab.gnome.org/GNOME/fractal;
+    homepage = "https://gitlab.gnome.org/GNOME/fractal";
     license = licenses.gpl3;
     maintainers = with maintainers; [ dtzWill worldofpeace ];
   };
 }
-
diff --git a/pkgs/applications/networking/instant-messengers/franz/default.nix b/pkgs/applications/networking/instant-messengers/franz/default.nix
index 605550beb50e..0c5090574fa6 100644
--- a/pkgs/applications/networking/instant-messengers/franz/default.nix
+++ b/pkgs/applications/networking/instant-messengers/franz/default.nix
@@ -48,7 +48,7 @@ in stdenv.mkDerivation {
 
   meta = with stdenv.lib; {
     description = "A free messaging app that combines chat & messaging services into one application";
-    homepage = https://meetfranz.com;
+    homepage = "https://meetfranz.com";
     license = licenses.free;
     maintainers = [ maintainers.davidtwco ];
     platforms = ["x86_64-linux"];
diff --git a/pkgs/applications/networking/instant-messengers/gajim/default.nix b/pkgs/applications/networking/instant-messengers/gajim/default.nix
index 1fd8c47a99c2..b2be635728d7 100644
--- a/pkgs/applications/networking/instant-messengers/gajim/default.nix
+++ b/pkgs/applications/networking/instant-messengers/gajim/default.nix
@@ -59,7 +59,7 @@ python3.pkgs.buildPythonApplication rec {
   '';
 
   meta = {
-    homepage = http://gajim.org/;
+    homepage = "http://gajim.org/";
     description = "Jabber client written in PyGTK";
     license = lib.licenses.gpl3Plus;
     maintainers = with lib.maintainers; [ raskin aszlig abbradar ];
diff --git a/pkgs/applications/networking/instant-messengers/gomuks/default.nix b/pkgs/applications/networking/instant-messengers/gomuks/default.nix
index a36f72c03d08..2962d190d369 100644
--- a/pkgs/applications/networking/instant-messengers/gomuks/default.nix
+++ b/pkgs/applications/networking/instant-messengers/gomuks/default.nix
@@ -1,19 +1,34 @@
-{ stdenv, buildGoModule, fetchFromGitHub }:
+{ stdenv, buildGoModule, fetchFromGitHub, makeDesktopItem }:
 
 buildGoModule rec {
   pname = "gomuks";
-  version = "2020-02-19";
+  version = "2020-03-20";
 
   goPackagePath = "maunium.net/go/gomuks";
 
   src = fetchFromGitHub {
     owner = "tulir";
     repo = pname;
-    rev = "702592bf89dfcf1ec382c0a09d99318bce7a3943";
-    sha256 = "0g638q8ypkp6dbfy1s4hz798cpkld301f914il3yd70yf05vvysc";
+    rev = "bce30e32a049b3ee76081c8d3881a3820b0e7341";
+    sha256 = "0f7i88vrvl1xl4hmjplq3wwihqwijbgxy6nk5fkvc8pfmm5hsjcs";
   };
 
-  modSha256 = "03vbrh50pvx71rp6c23qc2sh0ir4jm1wl0gvi3z1c14ndzhsqky4";
+  modSha256 = "10w0bjhnf6bbqx5jbgfv2jxxyqswzx25p64kkjmvh5qamjzpbjz2";
+
+  postInstall = ''
+    cp -r ${
+      makeDesktopItem {
+        name = "net.maunium.gomuks.desktop";
+        exec = "@out@/bin/gomuks";
+        terminal = "true";
+        desktopName = "Gomuks";
+        genericName = "Matrix client";
+        categories = "Network;Chat";
+        comment = meta.description;
+      }
+    }/* $out/
+    substituteAllInPlace $out/share/applications/*
+  '';
 
   meta = with stdenv.lib; {
     homepage = "https://maunium.net/go/gomuks/";
diff --git a/pkgs/applications/networking/instant-messengers/gtmess/default.nix b/pkgs/applications/networking/instant-messengers/gtmess/default.nix
index 3e16a58f54bb..0661e6d7525e 100644
--- a/pkgs/applications/networking/instant-messengers/gtmess/default.nix
+++ b/pkgs/applications/networking/instant-messengers/gtmess/default.nix
@@ -4,7 +4,7 @@ stdenv.mkDerivation {
   name = "gtmess-0.97";
 
   src = fetchurl {
-    url = mirror://sourceforge/gtmess/gtmess-0.97.tar.gz;
+    url = "mirror://sourceforge/gtmess/gtmess-0.97.tar.gz";
     sha256 = "1ipmqsrj0r1ssbgs2fpr4x5vnzlxlqhx9jrnadp1jw7s0sxpjqv0";
   };
 
@@ -12,7 +12,7 @@ stdenv.mkDerivation {
 
   meta = {
     description = "Console MSN Messenger client for Linux and other unix systems";
-    homepage = http://gtmess.sourceforge.net/;
+    homepage = "http://gtmess.sourceforge.net/";
     license = stdenv.lib.licenses.gpl2Plus;
     platforms = with stdenv.lib.platforms; linux;
   };
diff --git a/pkgs/applications/networking/instant-messengers/hipchat/default.nix b/pkgs/applications/networking/instant-messengers/hipchat/default.nix
index 47854683e0ed..7213332a549a 100644
--- a/pkgs/applications/networking/instant-messengers/hipchat/default.nix
+++ b/pkgs/applications/networking/instant-messengers/hipchat/default.nix
@@ -80,7 +80,7 @@ in stdenv.mkDerivation {
 
   meta = with stdenv.lib; {
     description = "Desktop client for HipChat services";
-    homepage = http://www.hipchat.com;
+    homepage = "http://www.hipchat.com";
     license = licenses.unfree;
     platforms = [ "x86_64-linux" ];
     maintainers = with maintainers; [ puffnfresh ];
diff --git a/pkgs/applications/networking/instant-messengers/jackline/default.nix b/pkgs/applications/networking/instant-messengers/jackline/default.nix
index 169ddf65b29c..f2b026e79dac 100644
--- a/pkgs/applications/networking/instant-messengers/jackline/default.nix
+++ b/pkgs/applications/networking/instant-messengers/jackline/default.nix
@@ -1,22 +1,23 @@
 { stdenv, fetchFromGitHub, ocamlPackages }:
 
-assert stdenv.lib.versionAtLeast ocamlPackages.ocaml.version "4.02.2";
+assert stdenv.lib.versionAtLeast ocamlPackages.ocaml.version "4.07";
 
 stdenv.mkDerivation {
   pname = "jackline";
-  version = "2019-08-08";
+  version = "unstable-2020-04-24";
 
   src = fetchFromGitHub {
     owner  = "hannesm";
     repo   = "jackline";
-    rev    = "b934594010a563ded9c0f436e3fab8f1cae29856";
-    sha256 = "076h03jd970xlii90ax6kvgyq67g81gs30yvdzps366n7zzy3yfc";
+    rev    = "885b97b90d565f5f7c2b5f66f5edf14a82251b87";
+    sha256 = "1mdn413ya2g0a1mrdbh1b65gnygrxb08k99z5lmidhh34kd1llsj";
   };
 
   buildInputs = with ocamlPackages; [
-                  ocaml ocamlbuild findlib topkg ppx_sexp_conv
-                  erm_xmpp tls nocrypto x509 ocaml_lwt otr astring
-                  ptime notty sexplib hex uutf
+                  ocaml ocamlbuild findlib topkg ppx_sexp_conv ppx_deriving
+                  erm_xmpp tls mirage-crypto mirage-crypto-pk x509 domain-name
+                  ocaml_lwt otr astring ptime notty sexplib hex uutf
+                  dns-client base64
                 ];
 
   buildPhase = "${ocamlPackages.topkg.run} build --pinned true";
@@ -24,8 +25,8 @@ stdenv.mkDerivation {
   inherit (ocamlPackages.topkg) installPhase;
 
   meta = with stdenv.lib; {
-    homepage = https://github.com/hannesm/jackline;
-    description = "Terminal-based XMPP client in OCaml";
+    homepage = "https://github.com/hannesm/jackline";
+    description = "minimalistic secure XMPP client in OCaml";
     license = licenses.bsd2;
     maintainers = with maintainers; [ sternenseemann ];
   };
diff --git a/pkgs/applications/networking/instant-messengers/jitsi-meet-electron/default.nix b/pkgs/applications/networking/instant-messengers/jitsi-meet-electron/default.nix
new file mode 100644
index 000000000000..7afe273599f4
--- /dev/null
+++ b/pkgs/applications/networking/instant-messengers/jitsi-meet-electron/default.nix
@@ -0,0 +1,57 @@
+{ stdenv
+, fetchurl
+, appimageTools
+, makeWrapper
+, electron_8
+}:
+
+stdenv.mkDerivation rec {
+  pname = "jitsi-meet-electron";
+  version = "2.0.2";
+
+  src = fetchurl {
+    url = "https://github.com/jitsi/jitsi-meet-electron/releases/download/v${version}/jitsi-meet-x86_64.AppImage";
+    sha256 = "04y3qn2clvsfiyp9s6ib09mfxspv3kpr9248sda8s09n1cm0jpps";
+    name="${pname}-${version}.AppImage";
+  };
+
+  appimageContents = appimageTools.extractType2 {
+    name = "${pname}-${version}";
+    inherit src;
+  };
+
+  dontUnpack = true;
+  dontConfigure = true;
+  dontBuild = true;
+
+  nativeBuildInputs = [ makeWrapper ];
+
+  installPhase = ''
+    runHook preInstall
+
+    mkdir -p $out/bin $out/share/${pname} $out/share/applications
+
+    cp -a ${appimageContents}/{locales,resources} $out/share/${pname}
+    cp -a ${appimageContents}/jitsi-meet.desktop $out/share/applications/${pname}.desktop
+    cp -a ${appimageContents}/usr/share/icons $out/share
+
+    substituteInPlace $out/share/applications/${pname}.desktop \
+      --replace 'Exec=AppRun' 'Exec=${pname}'
+
+    runHook postInstall
+  '';
+
+  postFixup = ''
+    makeWrapper ${electron_8}/bin/electron $out/bin/${pname} \
+      --add-flags $out/share/${pname}/resources/app.asar \
+      --prefix LD_LIBRARY_PATH : "${stdenv.lib.makeLibraryPath [ stdenv.cc.cc ]}"
+  '';
+
+  meta = with stdenv.lib; {
+    description = "Jitsi Meet desktop application powered by Electron";
+    homepage = "https://github.com/jitsi/jitsi-meet-electron";
+    license = licenses.asl20;
+    maintainers = with maintainers; [ prusnak ];
+    platforms = [ "x86_64-linux" ];
+  };
+}
diff --git a/pkgs/applications/networking/instant-messengers/jitsi/default.nix b/pkgs/applications/networking/instant-messengers/jitsi/default.nix
index 7e01f97fe0df..13013dc4c753 100644
--- a/pkgs/applications/networking/instant-messengers/jitsi/default.nix
+++ b/pkgs/applications/networking/instant-messengers/jitsi/default.nix
@@ -62,7 +62,7 @@ stdenv.mkDerivation rec {
   '';
 
   meta = with stdenv.lib; {
-    homepage = https://jitsi.org/;
+    homepage = "https://jitsi.org/";
     description = "Open Source Video Calls and Chat";
     license = licenses.lgpl21Plus;
     platforms = platforms.linux;
diff --git a/pkgs/applications/networking/instant-messengers/linphone/default.nix b/pkgs/applications/networking/instant-messengers/linphone/default.nix
index b155f3129642..0d97fcbbf511 100644
--- a/pkgs/applications/networking/instant-messengers/linphone/default.nix
+++ b/pkgs/applications/networking/instant-messengers/linphone/default.nix
@@ -1,61 +1,238 @@
-{ stdenv, intltool, pkgconfig, readline, openldap, cyrus_sasl, libupnp
-, zlib, libxml2, gtk2, libnotify, speex, ffmpeg, libX11, libsoup, udev
-, ortp, mediastreamer, sqlite, belle-sip, libosip, libexosip, bzrtp
-, mediastreamer-openh264, bctoolbox, makeWrapper, fetchFromGitHub, cmake
-, libmatroska, bcunit, doxygen, gdk-pixbuf, glib, cairo, pango, mbedtls
-, python, graphviz, belcard, bcg729
-, withGui ? true
+{ bcg729
+, bctoolbox
+, bcunit
+, belcard
+, belle-sip
+, belr
+, bzrtp
+, cairo
+, cmake
+, cyrus_sasl
+, fetchFromGitLab
+, fetchurl
+, ffmpeg
+, gdk-pixbuf
+, glib
+, gnused
+, graphviz
+, gtk2
+, intltool
+, lib
+, libexosip
+, liblinphone
+, libmatroska
+, libnotify
+, libosip
+, libsoup
+, libupnp
+, libX11
+, libxml2
+, makeWrapper
+, mbedtls
+, mediastreamer
+, mediastreamer-openh264
+, mkDerivation
+, openldap
+, ortp
+, pango
+, pkgconfig
+, python
+, qtbase
+, qtgraphicaleffects
+, qtquickcontrols2
+, qttranslations
+, readline
+, speex
+, sqlite
+, stdenv
+, udev
+, zlib
+  # For Minizip 2.2.7:
+, fetchFromGitHub
+, libbsd
 }:
+let
+  # Linphone Desktop requires Minizip 2.2.7. Nixpkgs contains a very old version
+  # from the time when it was part of zlib. The most recent release of Minizip
+  # is currently 2.9.2 but Linphone Desktop didn't work with that. So, even if
+  # we added most recent Minizip version to nixpkgs, probably Minizip 2.2.7 is
+  # only needed here and we shouldn't add this semi-old version to
+  # all-packages.nix. Therefore, just define it here locally.
+  minizip2 = stdenv.mkDerivation rec {
+    pname = "minizip";
+    version = "2.2.7";
 
-stdenv.mkDerivation rec {
-  pname = "linphone";
-  version = "3.12.0";
+    disabled = stdenv.isAarch32;
 
-  src = fetchFromGitHub {
-    owner = "BelledonneCommunications";
+    src = fetchFromGitHub {
+      owner = "nmoinvaz";
+      repo = pname;
+      rev = version;
+      sha256 = "1a88v1gjlflsd17mlrgxh420rpa38q0d17yh9q8j1zzqfrd1azch";
+    };
+
+    nativeBuildInputs = [ cmake pkgconfig ];
+
+    cmakeFlags = [
+      "-DBUILD_SHARED_LIBS=YES"
+    ];
+
+    buildInputs = [
+      zlib
+      libbsd # required in 2.2.7 but not in 2.9.2?
+    ];
+
+    meta = with stdenv.lib; {
+      description = "Compression library implementing the deflate compression method found in gzip and PKZIP";
+      homepage = "https://github.com/nmoinvaz/minizip";
+      license = licenses.zlib;
+      platforms = platforms.unix;
+    };
+  };
+in
+mkDerivation rec {
+  pname = "linphone-desktop";
+  # Latest release is 4.1.1 old and doesn't build with the latest releases of
+  # some of the dependencies so let's use the latest commit.
+  version = "unstable-2020-03-06";
+
+  src = fetchFromGitLab {
+    domain = "gitlab.linphone.org";
+    owner = "public";
+    group = "BC";
     repo = pname;
-    rev = version;
-    sha256 = "0az2ywrpx11sqfb4s4r2v726avcjf4k15bvrqj7xvhz7hdndmh0j";
+    rev = "971997e162558d37051f89c9c34bbc240135f704";
+    sha256 = "02ji4r8bpcm2kyisn9d3054m026l33g2574i1ag1cmb2dz2p8i1c";
   };
 
-  cmakeFlags = stdenv.lib.optional withGui [ "-DENABLE_GTK_UI=ON" ];
+  # Without this patch, the build fails with:
+  #
+  #   No rule to make target
+  #   'minizip_OUTPUT/nix/store/...linphone-desktop.../lib/libminizip.so',
+  #
+  # So, the makefile tries to use a full absolute path to the library but does
+  # it incorrectly. As we have installed Minizip properly, it's sufficient to
+  # just use "minizip" and the library is found automatically. If this patched
+  # target_link_libraries line was removed entirely, the build would fail at the
+  # very end when linking minizip.
+  patches = [
+    ./fix_minizip_linking.patch
+  ];
 
+  # See: https://gitlab.linphone.org/BC/public/linphone-desktop/issues/21
   postPatch = ''
-    touch coreapi/liblinphone_gitversion.h
+    substituteInPlace src/app/AppController.cpp \
+      --replace "LINPHONE_QT_GIT_VERSION" "\"${version}\""
   '';
 
+  # TODO: After linphone-desktop and liblinphone split into separate packages,
+  # there might be some build inputs here that aren't needed for
+  # linphone-desktop.
   buildInputs = [
-    readline openldap cyrus_sasl libupnp zlib libxml2 gtk2 libnotify speex ffmpeg libX11
-    mbedtls libsoup udev ortp mediastreamer sqlite belle-sip libosip libexosip
-    bctoolbox libmatroska gdk-pixbuf glib cairo pango bzrtp belcard bcg729
+    bcg729
+    bctoolbox
+    belcard
+    belle-sip
+    belr
+    bzrtp
+    cairo
+    cyrus_sasl
+    ffmpeg
+    gdk-pixbuf
+    glib
+    gtk2
+    libX11
+    libexosip
+    liblinphone
+    libmatroska
+    libnotify
+    libosip
+    libsoup
+    libupnp
+    libxml2
+    mbedtls
+    mediastreamer
+    mediastreamer-openh264
+    minizip2
+    openldap
+    ortp
+    pango
+    qtbase
+    qtgraphicaleffects
+    qtquickcontrols2
+    qttranslations
+    readline
+    speex
+    sqlite
+    udev
+    zlib
   ];
 
   nativeBuildInputs = [
-    intltool pkgconfig makeWrapper cmake bcunit doxygen graphviz
-    (python.withPackages (ps: [ ps.pystache ps.six ]))
+    bcunit
+    cmake
+    gnused
+    graphviz
+    intltool
+    makeWrapper
+    pkgconfig
   ];
 
-  NIX_CFLAGS_COMPILE = [
-    "-Wno-error"
-    "-I${glib.dev}/include/glib-2.0"
-    "-I${glib.out}/lib/glib-2.0/include"
-    "-I${gtk2.dev}/include/gtk-2.0/"
-    "-I${cairo.dev}/include/cairo"
-    "-I${pango.dev}/include/pango-1.0"
-    "-I${gtk2}/lib/gtk-2.0/include"
-    "-DLIBLINPHONE_GIT_VERSION=\"v${version}\""
+  cmakeFlags = [
+    "-DCMAKE_BUILD_TYPE=RelWithDebInfo"
+    "-DMINIZIP_INCLUDE_DIRS=${minizip2}/include"
+    "-DMINIZIP_LIBRARIES=minizip"
   ];
 
-  postInstall = ''
-    for i in $(cd $out/bin && ls); do
-      wrapProgram $out/bin/$i --set MEDIASTREAMER_PLUGINS_DIR ${mediastreamer-openh264}/lib/mediastreamer/plugins
-    done
+  # The default install phase fails because the paths are somehow messed up in
+  # the makefiles. The errors were like:
+  #
+  #   CMake Error at cmake_builder/linphone_package/cmake_install.cmake:49 (file):
+  #     file INSTALL cannot find
+  #     "/build/linphone-desktop-.../build/linphone-sdk/desktop//nix/store/.../bin":
+  #     No such file or directory.
+  #
+  # If someone is able to figure out how to fix that, great. For now, just
+  # trying to pick all the relevant files to the output.
+  #
+  # Also, the exec path in linphone.desktop file remains invalid, pointing to
+  # the build directory, after the whole nix build process. So, let's use sed to
+  # manually fix that path.
+  #
+  # In order to find mediastreamer plugins, mediastreamer package was patched to
+  # support an environment variable pointing to the plugin directory. Set that
+  # environment variable by wrapping the Linphone executable.
+  #
+  # Also, some grammar files needed to be copied too from some dependencies. I
+  # suppose if one define a dependency in such a way that its share directory is
+  # found, then this copying would be unnecessary. These missing grammar files
+  # were discovered when linphone crashed at startup and it was run with
+  # --verbose flag. Instead of actually copying these files, create symlinks.
+  #
+  # It is quite likely that there are some other files still missing and
+  # Linphone will randomly crash when it tries to access those files. Then,
+  # those just need to be copied manually below.
+  installPhase = ''
+    mkdir -p $out/bin
+    cp linphone $out/bin/
+    wrapProgram $out/bin/linphone \
+      --set MEDIASTREAMER_PLUGINS_DIR \
+            ${mediastreamer-openh264}/lib/mediastreamer/plugins
+    mkdir -p $out/share/applications
+    sed -i "s@/build/.*/OUTPUT/bin@$out/bin@" linphone.desktop
+    cp linphone.desktop $out/share/applications/
+    cp -r ../assets/icons $out/share/
+    mkdir -p $out/share/belr/grammars
+    ln -s ${liblinphone}/share/belr/grammars/* $out/share/belr/grammars/
+    mkdir -p $out/share/linphone
+    ln -s ${liblinphone}/share/linphone/* $out/share/linphone/
   '';
 
-  meta = with stdenv.lib; {
-    homepage = https://www.linphone.org/;
+  meta = with lib; {
+    homepage = "https://www.linphone.org/";
     description = "Open source SIP phone for voice/video calls and instant messaging";
-    license = licenses.gpl2Plus;
+    license = licenses.gpl3;
     platforms = platforms.linux;
+    maintainers = with maintainers; [ jluttine ];
   };
 }
diff --git a/pkgs/applications/networking/instant-messengers/linphone/fix_minizip_linking.patch b/pkgs/applications/networking/instant-messengers/linphone/fix_minizip_linking.patch
new file mode 100644
index 000000000000..bb88d0030fae
--- /dev/null
+++ b/pkgs/applications/networking/instant-messengers/linphone/fix_minizip_linking.patch
@@ -0,0 +1,13 @@
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index 3ee77441..18ea5c27 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -517,7 +517,7 @@ else()
+             target_link_libraries(${TARGET_NAME} "${MINIZIP_OUTPUT_DIR}/${CMAKE_INSTALL_LIBDIR}/libminizip.dylib")
+             execute_process(COMMAND install_name_tool -id "@executable_path/../Frameworks/libminizip.dylib" "${MINIZIP_OUTPUT_DIR}/${CMAKE_INSTALL_LIBDIR}/libminizip.dylib")
+         elseif(NOT WIN32)
+-            target_link_libraries(${TARGET_NAME} "${MINIZIP_OUTPUT_DIR}/${CMAKE_INSTALL_LIBDIR}/libminizip.so")
++            target_link_libraries(${TARGET_NAME} "minizip")
+         endif()
+     endif()#If (LinphoneCxx_FOUND AND Minizip_FOUND)
+ endif()#If (LinphoneCxx_FOUND)
diff --git a/pkgs/applications/networking/instant-messengers/matrix-dl/default.nix b/pkgs/applications/networking/instant-messengers/matrix-dl/default.nix
new file mode 100644
index 000000000000..97f775220229
--- /dev/null
+++ b/pkgs/applications/networking/instant-messengers/matrix-dl/default.nix
@@ -0,0 +1,25 @@
+{ lib, python3Packages, fetchFromGitHub }:
+
+python3Packages.buildPythonApplication rec {
+  pname = "matrix-dl-unstable";
+  version = "2019-09-22";
+
+  src = fetchFromGitHub {
+    owner = "rubo77";
+    repo = "matrix-dl";
+    rev = "e91610f45b7b3b0aca34923309fc83ba377f8a69";
+    sha256 = "036xfdd21pcfjlilknc67z5jqpk0vz07853wwcsiac32iypc6f2q";
+  };
+
+  propagatedBuildInputs = with python3Packages; [
+    matrix-client
+  ];
+
+  meta = with lib; {
+    description = "Download backlogs from Matrix as raw text";
+    homepage = src.meta.homepage;
+    license = licenses.gpl1Plus;
+    maintainers = with maintainers; [ aw ];
+    platforms = platforms.unix;
+  };
+}
diff --git a/pkgs/applications/networking/instant-messengers/matrix-recorder/node-packages.nix b/pkgs/applications/networking/instant-messengers/matrix-recorder/node-packages.nix
index 012ad195a71b..577619dcc04e 100644
--- a/pkgs/applications/networking/instant-messengers/matrix-recorder/node-packages.nix
+++ b/pkgs/applications/networking/instant-messengers/matrix-recorder/node-packages.nix
@@ -784,7 +784,7 @@ let
       version = "2.3.0";
       src = fetchurl {
         name = "olm-2.3.0.tar.gz";
-        url = https://packages.matrix.org/npm/olm/olm-2.3.0.tgz;
+        url = "https://packages.matrix.org/npm/olm/olm-2.3.0.tgz";
         sha256 = "1f0f037a025a44509646cb849ded7c1a1f55e7bfed240fad19676c002fcd953a";
       };
     };
diff --git a/pkgs/applications/networking/instant-messengers/mattermost-desktop/default.nix b/pkgs/applications/networking/instant-messengers/mattermost-desktop/default.nix
index dbfc87b8e8d4..0a41c9666b68 100644
--- a/pkgs/applications/networking/instant-messengers/mattermost-desktop/default.nix
+++ b/pkgs/applications/networking/instant-messengers/mattermost-desktop/default.nix
@@ -90,7 +90,7 @@ in
 
     meta = with stdenv.lib; {
       description = "Mattermost Desktop client";
-      homepage    = https://about.mattermost.com/;
+      homepage    = "https://about.mattermost.com/";
       license     = licenses.asl20;
       platforms   = [ "x86_64-linux" "i686-linux" ];
       maintainers = [ maintainers.joko ];
diff --git a/pkgs/applications/networking/instant-messengers/mcabber/default.nix b/pkgs/applications/networking/instant-messengers/mcabber/default.nix
index f41111237114..98b326820b9f 100644
--- a/pkgs/applications/networking/instant-messengers/mcabber/default.nix
+++ b/pkgs/applications/networking/instant-messengers/mcabber/default.nix
@@ -23,7 +23,7 @@ stdenv.mkDerivation rec {
   doCheck = true;
 
   meta = with stdenv.lib; {
-    homepage = http://mcabber.com/;
+    homepage = "http://mcabber.com/";
     description = "Small Jabber console client";
     license = licenses.gpl2;
     maintainers = with maintainers; [ pSub ];
diff --git a/pkgs/applications/networking/instant-messengers/mikutter/default.nix b/pkgs/applications/networking/instant-messengers/mikutter/default.nix
index 7d2037d16a77..5c86157f5023 100644
--- a/pkgs/applications/networking/instant-messengers/mikutter/default.nix
+++ b/pkgs/applications/networking/instant-messengers/mikutter/default.nix
@@ -74,7 +74,7 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "An extensible Twitter client";
-    homepage = https://mikutter.hachune.net;
+    homepage = "https://mikutter.hachune.net";
     platforms = ruby.meta.platforms;
     license = licenses.mit;
     broken = true;
diff --git a/pkgs/applications/networking/instant-messengers/mm/default.nix b/pkgs/applications/networking/instant-messengers/mm/default.nix
index 7122a509215d..3bdfcbfe7d1d 100644
--- a/pkgs/applications/networking/instant-messengers/mm/default.nix
+++ b/pkgs/applications/networking/instant-messengers/mm/default.nix
@@ -15,7 +15,7 @@ buildGoPackage {
 
   meta = {
     description = "A file system based matrix client";
-    homepage = https://gitlab.com/meutraa/mm;
+    homepage = "https://gitlab.com/meutraa/mm";
     license = stdenv.lib.licenses.isc;
   };
 }
diff --git a/pkgs/applications/networking/instant-messengers/nheko/default.nix b/pkgs/applications/networking/instant-messengers/nheko/default.nix
index f214f7221438..f3b304564cbe 100644
--- a/pkgs/applications/networking/instant-messengers/nheko/default.nix
+++ b/pkgs/applications/networking/instant-messengers/nheko/default.nix
@@ -1,79 +1,82 @@
-{ lib, stdenv, fetchFromGitHub
-, cmake, cmark, lmdb, mkDerivation, qtbase, qtmacextras
-, qtmultimedia, qttools, mtxclient, boost, spdlog, olm, pkgconfig
+{ lib
+, stdenv
+, fetchFromGitHub
+, fetchpatch
+, cmake
+, cmark
+, lmdb
+, lmdbxx
+, tweeny
+, mkDerivation
+, qtbase
+, qtmacextras
+, qtmultimedia
+, qttools
+, qtquickcontrols2
+, qtgraphicaleffects
+, mtxclient
+, boost17x
+, spdlog
+, olm
+, pkgconfig
 , nlohmann_json
 }:
 
-# These hashes and revisions are based on those from here:
-# https://github.com/Nheko-Reborn/nheko/blob/v0.6.4/deps/CMakeLists.txt#L52
-let
-  tweeny = fetchFromGitHub {
-    owner = "mobius3";
-    repo = "tweeny";
-    rev = "b94ce07cfb02a0eb8ac8aaf66137dabdaea857cf";
-    sha256 = "1wyyq0j7dhjd6qgvnh3knr70li47hmf5394yznkv9b1indqjx4mi";
-  };
-
-  lmdbxx = fetchFromGitHub {
-    owner = "bendiken";
-    repo = "lmdbxx";
-    rev = "0b43ca87d8cfabba392dfe884eb1edb83874de02";
-    sha256 = "1whsc5cybf9rmgyaj6qjji03fv5jbgcgygp956s3835b9f9cjg1n";
-  };
-in
 mkDerivation rec {
   pname = "nheko";
-  version = "0.6.4";
+  version = "0.7.1";
 
   src = fetchFromGitHub {
     owner = "Nheko-Reborn";
     repo = "nheko";
     rev = "v${version}";
-    sha256 = "19dkc98l1q4070v6mli4ybqn0ip0za607w39hjf0x8rqdxq45iwm";
+    sha256 = "12sxibbrn79sxkf9jrm7jrlj7l5vz15claxrrll7pkv9mv44wady";
   };
 
-  # If, on Darwin, you encounter the error
-  #   error: must specify at least one argument for '...' parameter of variadic
-  #   macro [-Werror,-Wgnu-zero-variadic-macro-arguments]
-  # Then adding this parameter is likely the fix you want.
-  #
-  # However, it looks like either cmake doesn't honor this CFLAGS variable, or
-  # darwin's compiler doesn't have the same syntax as gcc for turning off
-  # -Werror selectively.
-  #
-  # Anyway, this is something that will have to be debugged with access to a
-  # darwin-based OS. Sorry about that!
-  #
-  #preConfigure = lib.optionalString stdenv.isDarwin ''
-  #  export CFLAGS=-Wno-error=gnu-zero-variadic-macro-arguments
-  #'';
-
-  postPatch = ''
-    mkdir -p .deps/include/
-    ln -s ${tweeny}/include .deps/include/tweeny
-    ln -s ${spdlog} .deps/spdlog
-  '';
-
+  nativeBuildInputs = [
+    lmdbxx
+    cmake
+    pkgconfig
+  ];
   cmakeFlags = [
-    "-DTWEENY_INCLUDE_DIR=.deps/include"
-    "-DLMDBXX_INCLUDE_DIR=${lmdbxx}"
-    "-Dnlohmann_json_DIR=${nlohmann_json}/lib/cmake/nlohmann_json"
+    # Can be removed once either https://github.com/NixOS/nixpkgs/pull/85254 or
+    # https://github.com/NixOS/nixpkgs/pull/73940 are merged
+    "-DBoost_NO_BOOST_CMAKE=TRUE"
+  ];
+  # commit missing from latest release and recommended by upstream:
+  # https://github.com/NixOS/nixpkgs/pull/85922#issuecomment-619263903
+  patches = [
+    (fetchpatch {
+      name = "room-ids-escape-patch";
+      url = "https://github.com/Nheko-Reborn/nheko/commit/d94ac86816f9f325cba11f71344a3ca99591130d.patch";
+      sha256 = "1p0kj4a60l3jf0rfakc88adld7ccg3vfjhzia5rf2i03h35cxw8c";
+    })
   ];
-
-  nativeBuildInputs = [ cmake pkgconfig ];
 
   buildInputs = [
-    mtxclient olm boost lmdb spdlog cmark
-    qtbase qtmultimedia qttools
+    nlohmann_json
+    tweeny
+    mtxclient
+    olm
+    boost17x
+    lmdb
+    spdlog
+    cmark
+    qtbase
+    qtmultimedia
+    qttools
+    qtquickcontrols2
+    qtgraphicaleffects
   ] ++ lib.optional stdenv.isDarwin qtmacextras;
 
-  enableParallelBuilding = true;
-
   meta = with stdenv.lib; {
     description = "Desktop client for the Matrix protocol";
-    homepage = https://github.com/Nheko-Reborn/nheko;
+    homepage = "https://github.com/Nheko-Reborn/nheko";
     maintainers = with maintainers; [ ekleog fpletz ];
-    platforms = platforms.unix;
+    platforms = platforms.all;
+    # Should be fixable if a higher clang version is used, see:
+    # https://github.com/NixOS/nixpkgs/pull/85922#issuecomment-619287177
+    broken = stdenv.targetPlatform.isDarwin;
     license = licenses.gpl3Plus;
   };
 }
diff --git a/pkgs/applications/networking/instant-messengers/oysttyer/default.nix b/pkgs/applications/networking/instant-messengers/oysttyer/default.nix
index 3b3b0c2fd661..e3595e07a788 100644
--- a/pkgs/applications/networking/instant-messengers/oysttyer/default.nix
+++ b/pkgs/applications/networking/instant-messengers/oysttyer/default.nix
@@ -35,7 +35,7 @@ stdenv.mkDerivation rec {
   meta = with lib; {
     inherit version;
     description = "Perl Console Twitter Client";
-    homepage    = http://oysttyer.github.io/;
+    homepage    = "http://oysttyer.github.io/";
     maintainers = with maintainers; [ woffs ];
     license = with licenses; [ ffsl ];
   };
diff --git a/pkgs/applications/networking/instant-messengers/pantalaimon/default.nix b/pkgs/applications/networking/instant-messengers/pantalaimon/default.nix
index 2fcf65dfc1c2..c7d8ce4b56d5 100644
--- a/pkgs/applications/networking/instant-messengers/pantalaimon/default.nix
+++ b/pkgs/applications/networking/instant-messengers/pantalaimon/default.nix
@@ -1,4 +1,4 @@
-{ lib, stdenv, buildPythonApplication, fetchPypi, pythonOlder,
+{ lib, stdenv, buildPythonApplication, fetchFromGitHub, pythonOlder,
   attrs, aiohttp, appdirs, click, keyring, Logbook, peewee, janus,
   prompt_toolkit, matrix-nio, dbus-python, pydbus, notify2, pygobject3,
 
@@ -9,13 +9,16 @@
 
 buildPythonApplication rec {
   pname = "pantalaimon";
-  version = "0.4";
+  version = "0.5.1";
 
   disabled = pythonOlder "3.6";
 
-  src = fetchPypi {
-    inherit pname version;
-    sha256 = "1canj9w72wh1rcw6fivrvaahpxy13gb6gh1k8nss6bgixalvnq9m";
+  # pypi tarball miss tests
+  src = fetchFromGitHub {
+    owner = "matrix-org";
+    repo = pname;
+    rev = version;
+    sha256 = "18jihvqlfk8lx97hxcr36zdkp2sffg2l8mkg5lflylwcgwy1dx0y";
   };
 
   propagatedBuildInputs = [
diff --git a/pkgs/applications/networking/instant-messengers/pidgin-plugins/carbons/default.nix b/pkgs/applications/networking/instant-messengers/pidgin-plugins/carbons/default.nix
index 079fc7d57fb1..7c2150a584fe 100644
--- a/pkgs/applications/networking/instant-messengers/pidgin-plugins/carbons/default.nix
+++ b/pkgs/applications/networking/instant-messengers/pidgin-plugins/carbons/default.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation rec {
   pname = "pidgin-carbons";
-  version = "0.1.3";
+  version = "0.2.2";
 
   src = fetchFromGitHub {
     owner = "gkdr";
     repo  = "carbons";
     rev   = "v${version}";
-    sha256 = "05hcqvsirb7gnpfcszsrgal5q7dajl2wdi2dy7c41zgl377syavw";
+    sha256 = "1aq9bwgpmbwrigq6ywf0pjkngqcm0qxncygaj1fi57npjhcjs6ln";
   };
 
   makeFlags = [ "PURPLE_PLUGIN_DIR=$(out)/lib/pidgin" ];
@@ -17,10 +17,10 @@ stdenv.mkDerivation rec {
   buildInputs = [ libxml2 pidgin ];
 
   meta = with stdenv.lib; {
-    homepage = https://github.com/gkdr/carbons;
+    homepage = "https://github.com/gkdr/carbons";
     description = "XEP-0280: Message Carbons plugin for libpurple";
     license = licenses.gpl2;
     platforms = platforms.linux;
-    maintainers = with maintainers; [ jb55 ];
+    maintainers = with maintainers; [ ];
   };
 }
diff --git a/pkgs/applications/networking/instant-messengers/pidgin-plugins/msn-pecan/default.nix b/pkgs/applications/networking/instant-messengers/pidgin-plugins/msn-pecan/default.nix
index 452149443096..eccb8de31e59 100644
--- a/pkgs/applications/networking/instant-messengers/pidgin-plugins/msn-pecan/default.nix
+++ b/pkgs/applications/networking/instant-messengers/pidgin-plugins/msn-pecan/default.nix
@@ -3,13 +3,13 @@
 stdenv.mkDerivation {
   name = "pidgin-msn-pecan-0.1.4";
   src = fetchurl {
-    url = http://msn-pecan.googlecode.com/files/msn-pecan-0.1.4.tar.bz2;
+    url = "http://msn-pecan.googlecode.com/files/msn-pecan-0.1.4.tar.bz2";
     sha256 = "0d43z2ay9is1r2kkc9my8pz0fwdyzv7k19vdmbird18lg7rlbjd2";
   };
 
   meta = {
     description = "Alternative MSN protocol plug-in for Pidgin IM";
-    homepage = https://github.com/felipec/msn-pecan;
+    homepage = "https://github.com/felipec/msn-pecan";
     platforms = stdenv.lib.platforms.linux;
   };
 
diff --git a/pkgs/applications/networking/instant-messengers/pidgin-plugins/otr/default.nix b/pkgs/applications/networking/instant-messengers/pidgin-plugins/otr/default.nix
index 9f5c246ede63..bdc16d101f55 100644
--- a/pkgs/applications/networking/instant-messengers/pidgin-plugins/otr/default.nix
+++ b/pkgs/applications/networking/instant-messengers/pidgin-plugins/otr/default.nix
@@ -12,7 +12,7 @@ stdenv.mkDerivation rec {
   buildInputs = [ libotr pidgin intltool ];
 
   meta = with stdenv.lib; {
-    homepage = https://otr.cypherpunks.ca/;
+    homepage = "https://otr.cypherpunks.ca/";
     description = "Plugin for Pidgin 2.x which implements OTR Messaging";
     license = licenses.gpl2;
     platforms = platforms.linux;
diff --git a/pkgs/applications/networking/instant-messengers/pidgin-plugins/pidgin-latex/default.nix b/pkgs/applications/networking/instant-messengers/pidgin-plugins/pidgin-latex/default.nix
index bfd4b1abd5e5..1fd248e0c89d 100644
--- a/pkgs/applications/networking/instant-messengers/pidgin-plugins/pidgin-latex/default.nix
+++ b/pkgs/applications/networking/instant-messengers/pidgin-plugins/pidgin-latex/default.nix
@@ -24,7 +24,7 @@ stdenv.mkDerivation {
   };
 
   meta = with stdenv.lib; {
-    homepage = https://sourceforge.net/projects/pidgin-latex/;
+    homepage = "https://sourceforge.net/projects/pidgin-latex/";
     description = "LaTeX rendering plugin for Pidgin IM";
     license = licenses.gpl2;
     platforms = platforms.linux;
diff --git a/pkgs/applications/networking/instant-messengers/pidgin-plugins/pidgin-mra/default.nix b/pkgs/applications/networking/instant-messengers/pidgin-plugins/pidgin-mra/default.nix
index 3555e5a7197b..13e165ad7a13 100644
--- a/pkgs/applications/networking/instant-messengers/pidgin-plugins/pidgin-mra/default.nix
+++ b/pkgs/applications/networking/instant-messengers/pidgin-plugins/pidgin-mra/default.nix
@@ -27,7 +27,7 @@ stdenv.mkDerivation {
   ];
 
   meta = {
-    homepage = https://github.com/dreadatour/pidgin-mra;
+    homepage = "https://github.com/dreadatour/pidgin-mra";
     description = "Mail.ru Agent plugin for Pidgin / libpurple";
     license = stdenv.lib.licenses.gpl2;
     platforms = stdenv.lib.platforms.linux;
diff --git a/pkgs/applications/networking/instant-messengers/pidgin-plugins/pidgin-opensteamworks/default.nix b/pkgs/applications/networking/instant-messengers/pidgin-plugins/pidgin-opensteamworks/default.nix
index 6d527f3a7e46..067a71a93dd5 100644
--- a/pkgs/applications/networking/instant-messengers/pidgin-plugins/pidgin-opensteamworks/default.nix
+++ b/pkgs/applications/networking/instant-messengers/pidgin-plugins/pidgin-opensteamworks/default.nix
@@ -28,7 +28,7 @@ stdenv.mkDerivation rec {
   ];
 
   meta = with stdenv.lib; {
-    homepage = https://github.com/EionRobb/pidgin-opensteamworks;
+    homepage = "https://github.com/EionRobb/pidgin-opensteamworks";
     description = "Plugin for Pidgin 2.x which implements Steam Friends/Steam IM compatibility";
     license = licenses.gpl3;
     platforms = platforms.linux;
diff --git a/pkgs/applications/networking/instant-messengers/pidgin-plugins/pidgin-osd/default.nix b/pkgs/applications/networking/instant-messengers/pidgin-plugins/pidgin-osd/default.nix
index ff065e7e2ce3..bf9979c19f25 100644
--- a/pkgs/applications/networking/instant-messengers/pidgin-plugins/pidgin-osd/default.nix
+++ b/pkgs/applications/networking/instant-messengers/pidgin-plugins/pidgin-osd/default.nix
@@ -23,7 +23,7 @@ stdenv.mkDerivation rec {
   buildInputs = [ xosd pidgin ];
 
   meta = with stdenv.lib; {
-    homepage = https://github.com/mbroemme/pidgin-osd;
+    homepage = "https://github.com/mbroemme/pidgin-osd";
     description = "Plugin for Pidgin which implements on-screen display via libxosd";
     license = licenses.gpl3;
     platforms = platforms.linux;
diff --git a/pkgs/applications/networking/instant-messengers/pidgin-plugins/pidgin-skypeweb/default.nix b/pkgs/applications/networking/instant-messengers/pidgin-plugins/pidgin-skypeweb/default.nix
index c418b2e992a8..cae84c054e89 100644
--- a/pkgs/applications/networking/instant-messengers/pidgin-plugins/pidgin-skypeweb/default.nix
+++ b/pkgs/applications/networking/instant-messengers/pidgin-plugins/pidgin-skypeweb/default.nix
@@ -22,7 +22,7 @@ stdenv.mkDerivation rec {
   PKG_CONFIG_PURPLE_DATADIR = "${placeholder "out"}/share";
 
   meta = with stdenv.lib; {
-    homepage = https://github.com/EionRobb/skype4pidgin;
+    homepage = "https://github.com/EionRobb/skype4pidgin";
     description = "SkypeWeb plugin for Pidgin";
     license = licenses.gpl3;
     platforms = platforms.linux;
diff --git a/pkgs/applications/networking/instant-messengers/pidgin-plugins/pidgin-xmpp-receipts/default.nix b/pkgs/applications/networking/instant-messengers/pidgin-plugins/pidgin-xmpp-receipts/default.nix
index 7302ba89a715..463b6326b5a2 100644
--- a/pkgs/applications/networking/instant-messengers/pidgin-plugins/pidgin-xmpp-receipts/default.nix
+++ b/pkgs/applications/networking/instant-messengers/pidgin-plugins/pidgin-xmpp-receipts/default.nix
@@ -22,7 +22,7 @@ stdenv.mkDerivation {
   '';
 
   meta = with stdenv.lib; {
-    homepage = http://devel.kondorgulasch.de/pidgin-xmpp-receipts/;
+    homepage = "http://devel.kondorgulasch.de/pidgin-xmpp-receipts/";
     description = "Message delivery receipts (XEP-0184) Pidgin plugin";
     license = licenses.gpl3;
     platforms = platforms.linux;
diff --git a/pkgs/applications/networking/instant-messengers/pidgin-plugins/purple-discord/default.nix b/pkgs/applications/networking/instant-messengers/pidgin-plugins/purple-discord/default.nix
index 6695f8cb69b8..0322005ae935 100644
--- a/pkgs/applications/networking/instant-messengers/pidgin-plugins/purple-discord/default.nix
+++ b/pkgs/applications/networking/instant-messengers/pidgin-plugins/purple-discord/default.nix
@@ -18,7 +18,7 @@ stdenv.mkDerivation {
   PKG_CONFIG_PURPLE_DATADIR = "${placeholder "out"}/share";
 
   meta = with stdenv.lib; {
-    homepage = https://github.com/EionRobb/purple-discord;
+    homepage = "https://github.com/EionRobb/purple-discord";
     description = "Discord plugin for Pidgin";
     license = licenses.gpl3;
     platforms = platforms.linux;
diff --git a/pkgs/applications/networking/instant-messengers/pidgin-plugins/purple-hangouts/default.nix b/pkgs/applications/networking/instant-messengers/pidgin-plugins/purple-hangouts/default.nix
index 5d2292b50ad0..204d99f6d7ab 100644
--- a/pkgs/applications/networking/instant-messengers/pidgin-plugins/purple-hangouts/default.nix
+++ b/pkgs/applications/networking/instant-messengers/pidgin-plugins/purple-hangouts/default.nix
@@ -16,7 +16,7 @@ stdenv.mkDerivation {
   PKG_CONFIG_PURPLE_DATADIR = "${placeholder "out"}/share";
 
   meta = with stdenv.lib; {
-    homepage = https://bitbucket.org/EionRobb/purple-hangouts;
+    homepage = "https://bitbucket.org/EionRobb/purple-hangouts";
     description = "Native Hangouts support for pidgin";
     license = licenses.gpl3;
     platforms = platforms.linux;
diff --git a/pkgs/applications/networking/instant-messengers/pidgin-plugins/purple-lurch/default.nix b/pkgs/applications/networking/instant-messengers/pidgin-plugins/purple-lurch/default.nix
index e488ae73be00..0a6aa1a133d6 100644
--- a/pkgs/applications/networking/instant-messengers/pidgin-plugins/purple-lurch/default.nix
+++ b/pkgs/applications/networking/instant-messengers/pidgin-plugins/purple-lurch/default.nix
@@ -22,7 +22,7 @@ stdenv.mkDerivation rec {
   '';
 
   meta = with stdenv.lib; {
-    homepage = https://github.com/gkdr/lurch;
+    homepage = "https://github.com/gkdr/lurch";
     description = "XEP-0384: OMEMO Encryption for libpurple";
     license = licenses.gpl3;
     platforms = platforms.linux;
diff --git a/pkgs/applications/networking/instant-messengers/pidgin-plugins/purple-matrix/default.nix b/pkgs/applications/networking/instant-messengers/pidgin-plugins/purple-matrix/default.nix
index e9a0812e925b..999235314fe6 100644
--- a/pkgs/applications/networking/instant-messengers/pidgin-plugins/purple-matrix/default.nix
+++ b/pkgs/applications/networking/instant-messengers/pidgin-plugins/purple-matrix/default.nix
@@ -27,7 +27,7 @@ stdenv.mkDerivation rec {
   ];
 
   meta = with stdenv.lib; {
-    homepage = https://github.com/matrix-org/purple-matrix;
+    homepage = "https://github.com/matrix-org/purple-matrix";
     description = "Matrix support for Pidgin / libpurple";
     license = licenses.gpl2;
     maintainers = with maintainers; [ symphorien ];
diff --git a/pkgs/applications/networking/instant-messengers/pidgin-plugins/purple-plugin-pack/default.nix b/pkgs/applications/networking/instant-messengers/pidgin-plugins/purple-plugin-pack/default.nix
index 8022d32a081a..6739befbfea4 100644
--- a/pkgs/applications/networking/instant-messengers/pidgin-plugins/purple-plugin-pack/default.nix
+++ b/pkgs/applications/networking/instant-messengers/pidgin-plugins/purple-plugin-pack/default.nix
@@ -10,7 +10,7 @@ stdenv.mkDerivation rec {
   buildInputs = [ pidgin intltool python ];
 
   meta = with stdenv.lib; {
-    homepage = https://bitbucket.org/rekkanoryo/purple-plugin-pack;
+    homepage = "https://bitbucket.org/rekkanoryo/purple-plugin-pack";
     description = "Plugin pack for Pidgin 2.x";
     license = licenses.gpl2;
     platforms = platforms.linux;
diff --git a/pkgs/applications/networking/instant-messengers/pidgin-plugins/purple-slack/default.nix b/pkgs/applications/networking/instant-messengers/pidgin-plugins/purple-slack/default.nix
index 10973345dec9..7d7abbd1eed6 100644
--- a/pkgs/applications/networking/instant-messengers/pidgin-plugins/purple-slack/default.nix
+++ b/pkgs/applications/networking/instant-messengers/pidgin-plugins/purple-slack/default.nix
@@ -18,7 +18,7 @@ stdenv.mkDerivation {
   PKG_CONFIG_PURPLE_DATAROOTDIR = "${placeholder "out"}/share";
 
   meta = with stdenv.lib; {
-    homepage = https://github.com/dylex/slack-libpurple;
+    homepage = "https://github.com/dylex/slack-libpurple";
     description = "Slack plugin for Pidgin";
     license = licenses.gpl2;
     platforms = platforms.linux;
diff --git a/pkgs/applications/networking/instant-messengers/pidgin-plugins/purple-vk-plugin/default.nix b/pkgs/applications/networking/instant-messengers/pidgin-plugins/purple-vk-plugin/default.nix
index edb4ca3c3495..76b242659e7a 100644
--- a/pkgs/applications/networking/instant-messengers/pidgin-plugins/purple-vk-plugin/default.nix
+++ b/pkgs/applications/networking/instant-messengers/pidgin-plugins/purple-vk-plugin/default.nix
@@ -22,7 +22,7 @@ stdenv.mkDerivation {
   cmakeFlags = [ "-DCMAKE_INSTALL_PREFIX_INITIALIZED_TO_DEFAULT=1" ];
 
   meta = {
-    homepage = https://bitbucket.org/olegoandreev/purple-vk-plugin;
+    homepage = "https://bitbucket.org/olegoandreev/purple-vk-plugin";
     description = "Vk (russian social network) plugin for Pidgin / libpurple";
     license = stdenv.lib.licenses.gpl3;
     platforms = stdenv.lib.platforms.linux;
diff --git a/pkgs/applications/networking/instant-messengers/pidgin-plugins/purple-xmpp-http-upload/default.nix b/pkgs/applications/networking/instant-messengers/pidgin-plugins/purple-xmpp-http-upload/default.nix
index 83904531753b..3277e12ec086 100644
--- a/pkgs/applications/networking/instant-messengers/pidgin-plugins/purple-xmpp-http-upload/default.nix
+++ b/pkgs/applications/networking/instant-messengers/pidgin-plugins/purple-xmpp-http-upload/default.nix
@@ -16,7 +16,7 @@ stdenv.mkDerivation {
   '';
 
   meta = with stdenv.lib; {
-    homepage = https://github.com/Junker/purple-xmpp-http-upload;
+    homepage = "https://github.com/Junker/purple-xmpp-http-upload";
     description = "HTTP File Upload plugin for libpurple (XMPP Protocol XEP-0363)";
     license = licenses.gpl3;
     platforms = platforms.linux;
diff --git a/pkgs/applications/networking/instant-messengers/pidgin-plugins/skype4pidgin/default.nix b/pkgs/applications/networking/instant-messengers/pidgin-plugins/skype4pidgin/default.nix
index 6657ff96b11f..253d2ddfe24a 100644
--- a/pkgs/applications/networking/instant-messengers/pidgin-plugins/skype4pidgin/default.nix
+++ b/pkgs/applications/networking/instant-messengers/pidgin-plugins/skype4pidgin/default.nix
@@ -33,7 +33,7 @@ stdenv.mkDerivation rec {
   buildInputs = [ pidgin libnotify gdk-pixbuf glib dbus dbus-glib ];
 
   meta = {
-    homepage = https://github.com/novas0x2a/skype4pidgin;
+    homepage = "https://github.com/novas0x2a/skype4pidgin";
     license = stdenv.lib.licenses.gpl3Plus;
     description = "Plugin to use a running skype account through pidgin";
     platforms = stdenv.lib.platforms.linux;
diff --git a/pkgs/applications/networking/instant-messengers/pidgin-plugins/telegram-purple/default.nix b/pkgs/applications/networking/instant-messengers/pidgin-plugins/telegram-purple/default.nix
index c38ff8f454e9..38424ca25979 100644
--- a/pkgs/applications/networking/instant-messengers/pidgin-plugins/telegram-purple/default.nix
+++ b/pkgs/applications/networking/instant-messengers/pidgin-plugins/telegram-purple/default.nix
@@ -34,7 +34,7 @@ stdenv.mkDerivation rec {
   '';
 
   meta = with stdenv.lib; {
-    homepage = https://github.com/majn/telegram-purple;
+    homepage = "https://github.com/majn/telegram-purple";
     description = "Telegram for Pidgin / libpurple";
     license = licenses.gpl2;
     maintainers = [ maintainers.jagajaga ];
diff --git a/pkgs/applications/networking/instant-messengers/pidgin-plugins/tox-prpl/default.nix b/pkgs/applications/networking/instant-messengers/pidgin-plugins/tox-prpl/default.nix
index 41f205514e76..de48ee26a6ed 100644
--- a/pkgs/applications/networking/instant-messengers/pidgin-plugins/tox-prpl/default.nix
+++ b/pkgs/applications/networking/instant-messengers/pidgin-plugins/tox-prpl/default.nix
@@ -19,7 +19,7 @@ stdenv.mkDerivation rec {
   nativeBuildInputs = [ autoreconfHook ];
 
   meta = with stdenv.lib; {
-    homepage = https://github.com/jin-eld/tox-prpl;
+    homepage = "https://github.com/jin-eld/tox-prpl";
     description = "Tox plugin for Pidgin / libpurple";
     license = licenses.gpl3;
     platforms = platforms.linux;
diff --git a/pkgs/applications/networking/instant-messengers/pidgin-plugins/window-merge/default.nix b/pkgs/applications/networking/instant-messengers/pidgin-plugins/window-merge/default.nix
index 8f86256069ce..f576f2ad9c3e 100644
--- a/pkgs/applications/networking/instant-messengers/pidgin-plugins/window-merge/default.nix
+++ b/pkgs/applications/networking/instant-messengers/pidgin-plugins/window-merge/default.nix
@@ -12,7 +12,7 @@ stdenv.mkDerivation rec {
   buildInputs = [ pidgin ];
 
   meta = with stdenv.lib; {
-    homepage = https://github.com/dm0-/window_merge;
+    homepage = "https://github.com/dm0-/window_merge";
     description = "Pidgin plugin that merges the Buddy List window with a conversation window";
     license = licenses.gpl3;
     platforms = platforms.linux;
diff --git a/pkgs/applications/networking/instant-messengers/pidgin/default.nix b/pkgs/applications/networking/instant-messengers/pidgin/default.nix
index 71168e1a692c..369ae0693246 100644
--- a/pkgs/applications/networking/instant-messengers/pidgin/default.nix
+++ b/pkgs/applications/networking/instant-messengers/pidgin/default.nix
@@ -67,7 +67,7 @@ let unwrapped = stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "Multi-protocol instant messaging client";
-    homepage = http://pidgin.im;
+    homepage = "http://pidgin.im";
     license = licenses.gpl2Plus;
     platforms = platforms.linux;
     maintainers = [ maintainers.vcunat ];
diff --git a/pkgs/applications/networking/instant-messengers/poezio/default.nix b/pkgs/applications/networking/instant-messengers/poezio/default.nix
index 31c9fb4e7c3f..f7238419b539 100644
--- a/pkgs/applications/networking/instant-messengers/poezio/default.nix
+++ b/pkgs/applications/networking/instant-messengers/poezio/default.nix
@@ -23,7 +23,7 @@ buildPythonApplication rec {
 
     meta = with lib; {
       description = "Free console XMPP client";
-      homepage = https://poez.io;
+      homepage = "https://poez.io";
       license = licenses.mit;
       maintainers = [ maintainers.lsix ];
     };
diff --git a/pkgs/applications/networking/instant-messengers/profanity/default.nix b/pkgs/applications/networking/instant-messengers/profanity/default.nix
index f6c1aa14e0ff..86e760d497ce 100644
--- a/pkgs/applications/networking/instant-messengers/profanity/default.nix
+++ b/pkgs/applications/networking/instant-messengers/profanity/default.nix
@@ -71,7 +71,7 @@ stdenv.mkDerivation rec {
       Profanity is a console based XMPP client written in C using ncurses and
       libstrophe, inspired by Irssi.
     '';
-    homepage = http://www.profanity.im/;
+    homepage = "http://www.profanity.im/";
     license = licenses.gpl3Plus;
     platforms = platforms.unix;
     maintainers = [ maintainers.devhell ];
diff --git a/pkgs/applications/networking/instant-messengers/psi-plus/default.nix b/pkgs/applications/networking/instant-messengers/psi-plus/default.nix
index 010c06e0c2ac..e58627698823 100644
--- a/pkgs/applications/networking/instant-messengers/psi-plus/default.nix
+++ b/pkgs/applications/networking/instant-messengers/psi-plus/default.nix
@@ -6,26 +6,15 @@
 
 stdenv.mkDerivation rec {
   pname = "psi-plus";
-  version = "1.4.984";
+  version = "1.4.1159";
 
   src = fetchFromGitHub {
     owner = "psi-plus";
     repo = "psi-plus-snapshots";
     rev = version;
-    sha256 = "1nii2nfi37i6mn79xmygscmm8ax75ky244wxkzlga0ya8i8wfjh7";
+    sha256 = "1k4ip2glkjsbb28gzffahi81kz90qkf213j89gsmcvbdjf4kp687";
   };
 
-  resources = fetchFromGitHub {
-    owner = "psi-plus";
-    repo = "resources";
-    rev = "2f1c12564f7506bf902a26040fdb47ead4df6b73";
-    sha256 = "1dgm9k052fq7f2bpx13kchg7sxb227dkn115lyspzvhnhprnypz2";
-  };
-
-  postUnpack = ''
-    cp -a "${resources}/iconsets" "$sourceRoot"
-  '';
-
   cmakeFlags = [
     "-DENABLE_PLUGINS=ON"
   ];
@@ -38,8 +27,6 @@ stdenv.mkDerivation rec {
     libgcrypt libotr html-tidy libgpgerror libsignal-protocol-c
   ];
 
-  enableParallelBuilding = true;
-
   meta = with stdenv.lib; {
     description = "XMPP (Jabber) client";
     maintainers = with maintainers; [ orivej misuzu ];
diff --git a/pkgs/applications/networking/instant-messengers/pybitmessage/default.nix b/pkgs/applications/networking/instant-messengers/pybitmessage/default.nix
index 111f4e728e78..d76b8dd206e4 100644
--- a/pkgs/applications/networking/instant-messengers/pybitmessage/default.nix
+++ b/pkgs/applications/networking/instant-messengers/pybitmessage/default.nix
@@ -31,7 +31,7 @@ python2Packages.buildPythonApplication rec {
   '';
 
   meta = with stdenv.lib; {
-    homepage = https://bitmessage.org/;
+    homepage = "https://bitmessage.org/";
     description = "The official Bitmessage client";
     license = licenses.mit;
     maintainers = with maintainers; [ jgillich ];
diff --git a/pkgs/applications/networking/instant-messengers/qtox/default.nix b/pkgs/applications/networking/instant-messengers/qtox/default.nix
index a78e5d1c2d12..58d6230f26ae 100644
--- a/pkgs/applications/networking/instant-messengers/qtox/default.nix
+++ b/pkgs/applications/networking/instant-messengers/qtox/default.nix
@@ -7,7 +7,7 @@
 , AVFoundation ? null }:
 
 let
-  version = "1.16.3";
+  version = "1.17.2";
   rev = "v${version}";
 
 in mkDerivation {
@@ -17,7 +17,7 @@ in mkDerivation {
   src = fetchFromGitHub {
     owner  = "qTox";
     repo   = "qTox";
-    sha256 = "0qd4nvbrjnnfnk8ghsxq3cd1n1qf1ck5zg6ib11ij2pg03s146pa";
+    sha256 = "04pbv1zsxy8dph2v0r9xc8lcm5g6604pwnppi3la5w46ihbwxlb9";
     inherit rev;
   };
 
@@ -43,7 +43,7 @@ in mkDerivation {
 
   meta = with lib; {
     description = "Qt Tox client";
-    homepage    = https://tox.chat;
+    homepage    = "https://tox.chat";
     license     = licenses.gpl3;
     maintainers = with maintainers; [ akaWolf peterhoeg ];
     platforms   = platforms.all;
diff --git a/pkgs/applications/networking/instant-messengers/quaternion/default.nix b/pkgs/applications/networking/instant-messengers/quaternion/default.nix
index 757551c70740..18b590304d8d 100644
--- a/pkgs/applications/networking/instant-messengers/quaternion/default.nix
+++ b/pkgs/applications/networking/instant-messengers/quaternion/default.nix
@@ -1,46 +1,47 @@
 { mkDerivation, stdenv, lib, fetchFromGitHub, cmake
-, qtbase, qtquickcontrols, qtkeychain, qtmultimedia, qttools
-, libqmatrixclient_0_5
-, gnome3
+, qtbase, qtquickcontrols, qtquickcontrols2, qtkeychain, qtmultimedia, qttools
+, libquotient, libsecret
 }:
 
-let
-  generic = version: sha256: prefix: library: mkDerivation {
-    pname = "quaternion";
-    inherit version;
-
-    src = fetchFromGitHub {
-      owner = "QMatrixClient";
-      repo  = "Quaternion";
-      rev   = "${prefix}${version}";
-      inherit sha256;
-    };
-
-    buildInputs = [ qtbase qtmultimedia qtquickcontrols qtkeychain library gnome3.libsecret ];
-
-    nativeBuildInputs = [ cmake qttools ];
+mkDerivation rec {
+  pname = "quaternion";
+  version = "0.0.9.4e";
 
-    postInstall = if stdenv.isDarwin then ''
-      mkdir -p $out/Applications
-      mv $out/bin/quaternion.app $out/Applications
-      rmdir $out/bin || :
-    '' else ''
-      substituteInPlace $out/share/applications/quaternion.desktop \
-        --replace 'Exec=quaternion' "Exec=$out/bin/quaternion"
-    '';
-
-    meta = with lib; {
-      description = "Cross-platform desktop IM client for the Matrix protocol";
-      homepage    = "https://matrix.org/docs/projects/client/quaternion.html";
-      license     = licenses.gpl3;
-      maintainers = with maintainers; [ peterhoeg ];
-      inherit (qtbase.meta) platforms;
-      inherit version;
-    };
+  src = fetchFromGitHub {
+    owner = "QMatrixClient";
+    repo = "Quaternion";
+    rev = "${version}";
+    sha256 = "sha256-2yEiILiitRPj2hCodUDM8UNVq8crb9nyX21ebuh5EEM=";
   };
 
-in rec {
-  quaternion     = generic "0.0.9.4c"     "12mkwiqqbi4774kwl7gha72jyf0jf547acy6rw8ry249zl4lja54" "" libqmatrixclient_0_5;
-
-  quaternion-git = quaternion;
+  buildInputs = [
+    qtbase
+    qtmultimedia
+    qtquickcontrols
+    qtquickcontrols2
+    qtkeychain
+    libquotient
+    libsecret
+  ];
+
+  nativeBuildInputs = [ cmake qttools ];
+
+  postInstall = if stdenv.isDarwin then ''
+    mkdir -p $out/Applications
+    mv $out/bin/quaternion.app $out/Applications
+    rmdir $out/bin || :
+  '' else ''
+    substituteInPlace $out/share/applications/com.github.quaternion.desktop \
+      --replace 'Exec=quaternion' "Exec=$out/bin/quaternion"
+  '';
+
+  meta = with lib; {
+    description =
+      "Cross-platform desktop IM client for the Matrix protocol";
+    homepage = "https://matrix.org/docs/projects/client/quaternion.html";
+    license = licenses.gpl3;
+    maintainers = with maintainers; [ peterhoeg ];
+    inherit (qtbase.meta) platforms;
+    inherit version;
+  };
 }
diff --git a/pkgs/applications/networking/instant-messengers/rambox/default.nix b/pkgs/applications/networking/instant-messengers/rambox/default.nix
index 488da12c18c2..74a644d189d4 100644
--- a/pkgs/applications/networking/instant-messengers/rambox/default.nix
+++ b/pkgs/applications/networking/instant-messengers/rambox/default.nix
@@ -3,18 +3,18 @@
 }:
 
 let
-  version = "0.7.3";
+  version = "0.7.5";
 in stdenv.mkDerivation rec {
   pname = "rambox";
   inherit version;
   src = {
     x86_64-linux = fetchurl {
       url = "https://github.com/ramboxapp/community-edition/releases/download/${version}/Rambox-${version}-linux-amd64.deb";
-      sha256 = "09v8zlayas906zhqy2aw4wkvyl87ykr09sjf0nmgmf69piwmjgg6";
+      sha256 = "108yd5djnap37yh0nbjyqkp5ci1zmydfzqcsbapin40a4f36zm31";
     };
     i686-linux = fetchurl {
       url = "https://github.com/ramboxapp/community-edition/releases/download/${version}/Rambox-${version}-linux-i386.deb";
-      sha256 = "0gv4pf3vhrw4xyccm24ivv92d9qy4zpwsh0m82ib1w764lyxmyrz";
+      sha256 = "1pvh048h6m19rmbscsy69ih0jkyhazmq2pcagmf3kk8gmbi7y6p6";
     };
   }.${stdenv.system} or (throw "Unsupported system: ${stdenv.system}");
 
@@ -41,9 +41,9 @@ in stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "Free and Open Source messaging and emailing app that combines common web applications into one";
-    homepage = http://rambox.pro;
+    homepage = "https://rambox.pro";
     license = licenses.mit;
-    maintainers = [ maintainers.gnidorah ];
+    maintainers = with maintainers; [ gnidorah ma27 ];
     platforms = ["i686-linux" "x86_64-linux"];
     hydraPlatforms = [];
   };
diff --git a/pkgs/applications/networking/instant-messengers/rambox/pro.nix b/pkgs/applications/networking/instant-messengers/rambox/pro.nix
index df4675b04497..16c96a86a412 100644
--- a/pkgs/applications/networking/instant-messengers/rambox/pro.nix
+++ b/pkgs/applications/networking/instant-messengers/rambox/pro.nix
@@ -2,7 +2,7 @@
 
 stdenv.mkDerivation rec {
   pname = "rambox-pro";
-  version = "1.2.2";
+  version = "1.3.1";
 
   dontBuild = true;
   dontStrip = true;
@@ -12,7 +12,7 @@ stdenv.mkDerivation rec {
 
   src = fetchurl {
     url = "https://github.com/ramboxapp/download/releases/download/v${version}/RamboxPro-${version}-linux-x64.tar.gz";
-    sha256 = "1zzlfk86gzg20qapqz9s8p9vmak8vj1smkwn9yrzs2yisfqh0gpc";
+    sha256 = "1cy4h2yzrpr3gxd16p4323w06i67d82jjlyx737c3ngzw7aahmq1";
   };
 
   installPhase = ''
@@ -36,7 +36,7 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "Messaging and emailing app that combines common web applications into one";
-    homepage = https://rambox.pro;
+    homepage = "https://rambox.pro";
     license = licenses.unfree;
     maintainers = with maintainers; [ chrisaw ];
     platforms = [ "i686-linux" "x86_64-linux" ];
diff --git a/pkgs/applications/networking/instant-messengers/ratox/default.nix b/pkgs/applications/networking/instant-messengers/ratox/default.nix
index 3768ecd137fb..212ba3a31a4b 100644
--- a/pkgs/applications/networking/instant-messengers/ratox/default.nix
+++ b/pkgs/applications/networking/instant-messengers/ratox/default.nix
@@ -28,7 +28,7 @@ in stdenv.mkDerivation {
 
   meta = {
     description = "FIFO based tox client";
-    homepage = http://ratox.2f30.org/;
+    homepage = "http://ratox.2f30.org/";
     license = licenses.isc;
     maintainers = with maintainers; [ ehmry ];
     platforms = platforms.linux;
diff --git a/pkgs/applications/networking/instant-messengers/ricochet/default.nix b/pkgs/applications/networking/instant-messengers/ricochet/default.nix
index 96ce9c32a7d6..de46c891d1fa 100644
--- a/pkgs/applications/networking/instant-messengers/ricochet/default.nix
+++ b/pkgs/applications/networking/instant-messengers/ricochet/default.nix
@@ -1,9 +1,9 @@
-{ stdenv, fetchurl, pkgconfig, makeDesktopItem
+{ mkDerivation, stdenv, fetchurl, pkgconfig, makeDesktopItem
 , qtbase, qttools, qtmultimedia, qtquick1, qtquickcontrols
 , openssl, protobuf, qmake
 }:
 
-stdenv.mkDerivation rec {
+mkDerivation rec {
   pname = "ricochet";
   version = "1.1.4";
 
@@ -51,7 +51,7 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "Anonymous peer-to-peer instant messaging";
-    homepage = https://ricochet.im;
+    homepage = "https://ricochet.im";
     license = licenses.bsd3;
     maintainers = [ maintainers.codsl maintainers.jgillich maintainers.np ];
     platforms = platforms.linux;
diff --git a/pkgs/applications/networking/instant-messengers/ring-daemon/default.nix b/pkgs/applications/networking/instant-messengers/ring-daemon/default.nix
index 97c00924d6cf..55624643a018 100644
--- a/pkgs/applications/networking/instant-messengers/ring-daemon/default.nix
+++ b/pkgs/applications/networking/instant-messengers/ring-daemon/default.nix
@@ -44,7 +44,7 @@ let
   ]);
 
   src = fetchgit {
-    url = https://gitlab.savoirfairelinux.com/ring/ring-daemon.git;
+    url = "https://gitlab.savoirfairelinux.com/ring/ring-daemon.git";
     rev = "006b8dc7be08fe9beb68709af71004e7bc1ceb5c";
     sha256 = "0ih9g0rismrhx6nqcy3jqfbcs166grg0shnfmrnmykl9h0xy8z47";
   };
@@ -140,7 +140,7 @@ stdenv.mkDerivation {
       graphical user interfaces and even scripts to control the daemon from the
       shell.
     '';
-    homepage = https://ring.cx;
+    homepage = "https://ring.cx";
     license = licenses.gpl3Plus;
     maintainers = with maintainers; [ taeer olynch ];
     platforms = platforms.linux;
diff --git a/pkgs/applications/networking/instant-messengers/ring-daemon/restbed.nix b/pkgs/applications/networking/instant-messengers/ring-daemon/restbed.nix
index d4298a3d32f3..775b9015eb0e 100644
--- a/pkgs/applications/networking/instant-messengers/ring-daemon/restbed.nix
+++ b/pkgs/applications/networking/instant-messengers/ring-daemon/restbed.nix
@@ -33,7 +33,7 @@ stdenv.mkDerivation {
       business processes. Targeting mobile, tablet, desktop, and embedded
       production environments.
     '';
-    homepage = https://corvusoft.co.uk/;
+    homepage = "https://corvusoft.co.uk/";
     license = licenses.agpl3;
     maintainers = with maintainers; [ taeer ];
     platforms = platforms.linux;
diff --git a/pkgs/applications/networking/instant-messengers/riot/riot-desktop-package.json b/pkgs/applications/networking/instant-messengers/riot/riot-desktop-package.json
index 3dc7c79b00b9..d036050a4768 100644
--- a/pkgs/applications/networking/instant-messengers/riot/riot-desktop-package.json
+++ b/pkgs/applications/networking/instant-messengers/riot/riot-desktop-package.json
@@ -2,7 +2,7 @@
   "name": "riot-web",
   "productName": "Riot",
   "main": "src/electron-main.js",
-  "version": "1.5.10",
+  "version": "1.6.0",
   "description": "A feature-rich client for Matrix.org",
   "author": "New Vector Ltd.",
   "dependencies": {
diff --git a/pkgs/applications/networking/instant-messengers/riot/riot-desktop-yarndeps.nix b/pkgs/applications/networking/instant-messengers/riot/riot-desktop-yarndeps.nix
index b76848c2b810..0db687dff0bc 100644
--- a/pkgs/applications/networking/instant-messengers/riot/riot-desktop-yarndeps.nix
+++ b/pkgs/applications/networking/instant-messengers/riot/riot-desktop-yarndeps.nix
@@ -610,11 +610,11 @@
       };
     }
     {
-      name = "minimist___minimist_1.2.0.tgz";
+      name = "minimist___minimist_1.2.3.tgz";
       path = fetchurl {
-        name = "minimist___minimist_1.2.0.tgz";
-        url  = "https://registry.yarnpkg.com/minimist/-/minimist-1.2.0.tgz";
-        sha1 = "a35008b20f41383eec1fb914f4cd5df79a264284";
+        name = "minimist___minimist_1.2.3.tgz";
+        url  = "https://registry.yarnpkg.com/minimist/-/minimist-1.2.3.tgz";
+        sha1 = "3db5c0765545ab8637be71f333a104a965a9ca3f";
       };
     }
     {
diff --git a/pkgs/applications/networking/instant-messengers/riot/riot-desktop.nix b/pkgs/applications/networking/instant-messengers/riot/riot-desktop.nix
index f94d7ad165db..3b4f968c129c 100644
--- a/pkgs/applications/networking/instant-messengers/riot/riot-desktop.nix
+++ b/pkgs/applications/networking/instant-messengers/riot/riot-desktop.nix
@@ -1,18 +1,21 @@
-{ pkgs, stdenv, fetchFromGitHub, makeWrapper, makeDesktopItem, electron_5, riot-web, mkYarnPackage }:
-
+{ stdenv, fetchFromGitHub
+, makeWrapper, makeDesktopItem, mkYarnPackage
+, electron_7, riot-web
+}:
 # Notes for maintainers:
 # * versions of `riot-web` and `riot-desktop` should be kept in sync.
 # * the Yarn dependency expression must be updated with `./update-riot-desktop.sh <git release tag>`
 
 let
   executableName = "riot-desktop";
-  version = "1.5.10";
+  version = "1.6.0";
   riot-web-src = fetchFromGitHub {
     owner = "vector-im";
     repo = "riot-web";
     rev = "v${version}";
-    sha256 = "0yr5f3i24qh9b8hjfalpqxwr0qhs7hax450g83vf06skap1l5i5j";
+    sha256 = "16zm6l4c7vkfdlxh6gdw531k5r4v3mb0h66q41h94dvmj79dz2bj";
   };
+  electron = electron_7;
 
 in mkYarnPackage rec {
   name = "riot-desktop-${version}";
@@ -45,7 +48,7 @@ in mkYarnPackage rec {
     ln -s "${desktopItem}/share/applications" "$out/share/applications"
 
     # executable wrapper
-    makeWrapper '${electron_5}/bin/electron' "$out/bin/${executableName}" \
+    makeWrapper '${electron}/bin/electron' "$out/bin/${executableName}" \
       --add-flags "$out/share/riot/electron"
   '';
 
@@ -69,15 +72,15 @@ in mkYarnPackage rec {
     comment = meta.description;
     categories = "Network;InstantMessaging;Chat;";
     extraEntries = ''
-      StartupWMClass="riot"
+      StartupWMClass=riot
     '';
   };
 
   meta = with stdenv.lib; {
     description = "A feature-rich client for Matrix.org";
-    homepage = https://about.riot.im/;
+    homepage = "https://about.riot.im/";
     license = licenses.asl20;
     maintainers = with maintainers; [ pacien worldofpeace ];
-    inherit (electron_5.meta) platforms;
+    inherit (electron.meta) platforms;
   };
 }
diff --git a/pkgs/applications/networking/instant-messengers/riot/riot-web.nix b/pkgs/applications/networking/instant-messengers/riot/riot-web.nix
index ee86ba658912..3aeb715ac67f 100644
--- a/pkgs/applications/networking/instant-messengers/riot/riot-web.nix
+++ b/pkgs/applications/networking/instant-messengers/riot/riot-web.nix
@@ -12,11 +12,11 @@ let
 
 in stdenv.mkDerivation rec {
   pname = "riot-web";
-  version = "1.5.10";
+  version = "1.6.0";
 
   src = fetchurl {
     url = "https://github.com/vector-im/riot-web/releases/download/v${version}/riot-v${version}.tar.gz";
-    sha256 = "1c11x8903p38c0f9k3ff4pnpb3n7hzs4pj6g65a4cvp6jgg1zfnn";
+    sha256 = "1mm4xk69ya1k3gz6jjhc4njx7b3rp157jmrqsxr5i382zs035ff7";
   };
 
   installPhase = ''
@@ -31,7 +31,7 @@ in stdenv.mkDerivation rec {
 
   meta = {
     description = "A glossy Matrix collaboration client for the web";
-    homepage = http://riot.im/;
+    homepage = "http://riot.im/";
     maintainers = with stdenv.lib.maintainers; [ bachp pacien ma27 ];
     license = stdenv.lib.licenses.asl20;
     platforms = stdenv.lib.platforms.all;
diff --git a/pkgs/applications/networking/instant-messengers/ripcord/default.nix b/pkgs/applications/networking/instant-messengers/ripcord/default.nix
new file mode 100755
index 000000000000..16cf7f5fc779
--- /dev/null
+++ b/pkgs/applications/networking/instant-messengers/ripcord/default.nix
@@ -0,0 +1,69 @@
+{ lib, mkDerivation, fetchurl, makeFontsConf, appimageTools,
+  qtbase, qtsvg, qtmultimedia, qtwebsockets, qtimageformats,
+  autoPatchelfHook, desktop-file-utils, imagemagick, makeWrapper,
+  twemoji-color-font, xorg, libsodium, libopus, libGL, zlib, alsaLib }:
+
+mkDerivation rec {
+  pname = "ripcord";
+  version = "0.4.24";
+
+  src = let
+    appimage = fetchurl {
+      url = "https://cancel.fm/dl/Ripcord-${version}-x86_64.AppImage";
+      sha256 = "0rscmnwxvbdl0vfx1pz7x5gxs9qsjk905zmcad4f330j5l5m227z";
+      name = "${pname}-${version}.AppImage";
+    };
+  in appimageTools.extract {
+    name = "${pname}-${version}";
+    src = appimage;
+  };
+
+  nativeBuildInputs = [ autoPatchelfHook desktop-file-utils imagemagick ];
+  buildInputs = [ libsodium libopus libGL alsaLib ] ++
+                [ qtbase qtsvg qtmultimedia qtwebsockets qtimageformats ] ++
+                (with xorg; [ libX11 libXScrnSaver libXcursor xkeyboardconfig ]);
+
+  fontsConf = makeFontsConf {
+    fontDirectories = [ twemoji-color-font ];
+  };
+
+  installPhase = ''
+    runHook preInstall
+
+    mkdir -p $out
+    cp -r ${src}/{qt.conf,translations,twemoji.ripdb} $out
+
+    for size in 16 32 48 64 72 96 128 192 256 512 1024; do
+      mkdir -p $out/share/icons/hicolor/"$size"x"$size"/apps
+      convert -resize "$size"x"$size" ${src}/Ripcord_Icon.png $out/share/icons/hicolor/"$size"x"$size"/apps/ripcord.png
+    done
+
+    desktop-file-install --dir $out/share/applications \
+      --set-key Exec --set-value ripcord \
+      --set-key Icon --set-value ripcord \
+      --set-key Comment --set-value "${meta.description}" \
+      ${src}/Ripcord.desktop
+    mv $out/share/applications/Ripcord.desktop $out/share/applications/ripcord.desktop
+
+    install -Dm755 ${src}/Ripcord $out/Ripcord
+    patchelf --replace-needed libsodium.so.18 libsodium.so $out/Ripcord
+    makeQtWrapper $out/Ripcord $out/bin/ripcord \
+      --run "cd $out" \
+      --set FONTCONFIG_FILE "${fontsConf}" \
+      --prefix LD_LIBRARY_PATH ":" "${xorg.libXcursor}/lib" \
+      --prefix QT_XKB_CONFIG_ROOT ":" "${xorg.xkeyboardconfig}/share/X11/xkb"
+
+    runHook postInstall
+  '';
+
+  meta = with lib; {
+    description = "Desktop chat client for Slack and Discord";
+    homepage = "https://cancel.fm/ripcord/";
+
+    # See: https://cancel.fm/ripcord/shareware-redistribution/
+    license = licenses.unfreeRedistributable;
+
+    maintainers = with maintainers; [ infinisil ];
+    platforms = [ "x86_64-linux" ];
+  };
+}
diff --git a/pkgs/applications/networking/instant-messengers/salut-a-toi/default.nix b/pkgs/applications/networking/instant-messengers/salut-a-toi/default.nix
index 13c7281aea7c..6b9593a24b7f 100644
--- a/pkgs/applications/networking/instant-messengers/salut-a-toi/default.nix
+++ b/pkgs/applications/networking/instant-messengers/salut-a-toi/default.nix
@@ -51,7 +51,7 @@ in
     '';
 
     meta = with stdenv.lib; {
-      homepage = http://sat.goffi.org/;
+      homepage = "http://sat.goffi.org/";
       description = "A multi-frontend XMPP client";
       platforms = platforms.linux;
       maintainers = [ maintainers.raskin ];
diff --git a/pkgs/applications/networking/instant-messengers/scudcloud/default.nix b/pkgs/applications/networking/instant-messengers/scudcloud/default.nix
index 54959383f08e..b16659ba44cd 100644
--- a/pkgs/applications/networking/instant-messengers/scudcloud/default.nix
+++ b/pkgs/applications/networking/instant-messengers/scudcloud/default.nix
@@ -13,7 +13,7 @@ in python3Packages.buildPythonPackage {
 
   meta = with stdenv.lib; {
     description = "Non-official desktop client for Slack";
-    homepage = https://github.com/raelgc/scudcloud;
+    homepage = "https://github.com/raelgc/scudcloud";
     license = licenses.mit;
     platforms = platforms.linux;
     maintainers = with maintainers; [ volhovm ];
diff --git a/pkgs/applications/networking/instant-messengers/signal-cli/default.nix b/pkgs/applications/networking/instant-messengers/signal-cli/default.nix
index 8471f43c6dd0..a4594a20caf7 100644
--- a/pkgs/applications/networking/instant-messengers/signal-cli/default.nix
+++ b/pkgs/applications/networking/instant-messengers/signal-cli/default.nix
@@ -2,12 +2,12 @@
 
 stdenv.mkDerivation rec {
   pname = "signal-cli";
-  version = "0.6.5";
+  version = "0.6.7";
 
   # Building from source would be preferred, but is much more involved.
   src = fetchurl {
     url = "https://github.com/AsamK/signal-cli/releases/download/v${version}/signal-cli-${version}.tar.gz";
-    sha256 = "082kq8kadxbwzf31fmlq4in714id2irk0hhqsl53vsl3wmv45zvv";
+    sha256 = "13wz2c0n89aglqjfqlma1z4jr5xnp2qlg8cqng3v9axpkkynk996";
   };
 
   buildInputs = lib.optionals stdenv.isLinux [ libmatthew_java dbus dbus_java ];
@@ -45,7 +45,7 @@ stdenv.mkDerivation rec {
   '';
 
   meta = with lib; {
-    homepage = https://github.com/AsamK/signal-cli;
+    homepage = "https://github.com/AsamK/signal-cli";
     description = "Command-line and dbus interface for communicating with the Signal messaging service";
     license = licenses.gpl3;
     maintainers = with maintainers; [ ivan erictapen ];
diff --git a/pkgs/applications/networking/instant-messengers/signal-desktop/default.nix b/pkgs/applications/networking/instant-messengers/signal-desktop/default.nix
index c5921e645f03..4a751bac4ac7 100644
--- a/pkgs/applications/networking/instant-messengers/signal-desktop/default.nix
+++ b/pkgs/applications/networking/instant-messengers/signal-desktop/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, lib, fetchurl, autoPatchelfHook, dpkg, wrapGAppsHook
+{ stdenv, lib, fetchurl, autoPatchelfHook, dpkg, wrapGAppsHook, nixosTests
 , gnome2, gtk3, atk, at-spi2-atk, cairo, pango, gdk-pixbuf, glib, freetype, fontconfig
 , dbus, libX11, xorg, libXi, libXcursor, libXdamage, libXrandr, libXcomposite
 , libXext, libXfixes, libXrender, libXtst, libXScrnSaver, nss, nspr, alsaLib
@@ -23,7 +23,7 @@ let
       else "");
 in stdenv.mkDerivation rec {
   pname = "signal-desktop";
-  version = "1.31.0"; # Please backport all updates to the stable channel.
+  version = "1.33.4"; # Please backport all updates to the stable channel.
   # All releases have a limited lifetime and "expire" 90 days after the release.
   # When releases "expire" the application becomes unusable until an update is
   # applied. The expiration date for the current release can be extracted with:
@@ -33,7 +33,7 @@ in stdenv.mkDerivation rec {
 
   src = fetchurl {
     url = "https://updates.signal.org/desktop/apt/pool/main/s/signal-desktop/signal-desktop_${version}_amd64.deb";
-    sha256 = "19vsv7jv30xvfgq1nr3091b6x4agymy9afpy9r9mxzgn0xfb0ap9";
+    sha256 = "0mcxia2zaflaazfdl1ngpab0dyhwwzbhad7brc6kwhjxydbnmwcd";
   };
 
   nativeBuildInputs = [
@@ -121,13 +121,17 @@ in stdenv.mkDerivation rec {
     autoPatchelf --no-recurse -- $out/lib/Signal/
   '';
 
+  # Tests if the application launches and waits for "Link your phone to Signal Desktop":
+  passthru.tests.application-launch = nixosTests.signal-desktop;
+
   meta = {
     description = "Private, simple, and secure messenger";
     longDescription = ''
       Signal Desktop is an Electron application that links with your
       "Signal Android" or "Signal iOS" app.
     '';
-    homepage    = https://signal.org/;
+    homepage    = "https://signal.org/";
+    changelog   = "https://github.com/signalapp/Signal-Desktop/releases/tag/v${version}";
     license     = lib.licenses.gpl3;
     maintainers = with lib.maintainers; [ ixmatus primeos equirosa ];
     platforms   = [ "x86_64-linux" ];
diff --git a/pkgs/applications/networking/instant-messengers/silc-client/default.nix b/pkgs/applications/networking/instant-messengers/silc-client/default.nix
index 1219440bf833..0c84e1c5c80a 100644
--- a/pkgs/applications/networking/instant-messengers/silc-client/default.nix
+++ b/pkgs/applications/networking/instant-messengers/silc-client/default.nix
@@ -31,7 +31,7 @@ stdenv.mkDerivation {
   buildInputs = [ perl glib ncurses ];
 
   meta = {
-    homepage = http://silcnet.org/;
+    homepage = "http://silcnet.org/";
     description = "Secure Internet Live Conferencing server";
     license = stdenv.lib.licenses.gpl2;
     maintainers = with stdenv.lib.maintainers; [viric];
diff --git a/pkgs/applications/networking/instant-messengers/sky/default.nix b/pkgs/applications/networking/instant-messengers/sky/default.nix
index cdc176be65b0..fe8b251c4048 100644
--- a/pkgs/applications/networking/instant-messengers/sky/default.nix
+++ b/pkgs/applications/networking/instant-messengers/sky/default.nix
@@ -10,7 +10,7 @@
    # Sky is linked to the libjpeg 8 version and checks for the version number in the code.
    libjpeg_original_fix = libjpeg_original.overrideAttrs (oldAttrs: {
     src = fetchurl{
-      url = https://www.ijg.org/files/jpegsrc.v8d.tar.gz;
+      url = "https://www.ijg.org/files/jpegsrc.v8d.tar.gz";
       sha256 = "1cz0dy05mgxqdgjf52p54yxpyy95rgl30cnazdrfmw7hfca9n0h0";
     };
   });
@@ -77,7 +77,7 @@ stdenv.mkDerivation rec {
     longDescription = ''
       Lync & Skype for business on linux
     '';
-    homepage = https://tel.red/;
+    homepage = "https://tel.red/";
     license = licenses.unfree;
     maintainers = [ maintainers.Scriptkiddi ];
     platforms = platforms.unix;
diff --git a/pkgs/applications/networking/instant-messengers/skype-call-recorder/default.nix b/pkgs/applications/networking/instant-messengers/skype-call-recorder/default.nix
index 8093f91feb3e..57d1ffece71a 100644
--- a/pkgs/applications/networking/instant-messengers/skype-call-recorder/default.nix
+++ b/pkgs/applications/networking/instant-messengers/skype-call-recorder/default.nix
@@ -19,7 +19,7 @@ stdenv.mkDerivation {
   NIX_LDFLAGS = "-lvorbis";
 
   meta = {
-    homepage = http://atdot.ch/scr/;
+    homepage = "http://atdot.ch/scr/";
     description = "Open source tool to record your Skype calls on Linux";
     license = stdenv.lib.licenses.gpl2Plus;
     platforms = with stdenv.lib.platforms; linux;
diff --git a/pkgs/applications/networking/instant-messengers/skypeforlinux/default.nix b/pkgs/applications/networking/instant-messengers/skypeforlinux/default.nix
index 500f8f3fe873..0cc8cd848c53 100644
--- a/pkgs/applications/networking/instant-messengers/skypeforlinux/default.nix
+++ b/pkgs/applications/networking/instant-messengers/skypeforlinux/default.nix
@@ -1,13 +1,13 @@
 { stdenv, fetchurl, dpkg
 , alsaLib, atk, cairo, cups, curl, dbus, expat, fontconfig, freetype, gdk-pixbuf, glib, glibc, gnome2, gnome3
-, gtk3, libnotify, libpulseaudio, libsecret, libv4l, nspr, nss, pango, systemd, wrapGAppsHook, xorg
+, gtk3, libappindicator-gtk3, libnotify, libpulseaudio, libsecret, libv4l, nspr, nss, pango, systemd, wrapGAppsHook, xorg
 , at-spi2-atk, libuuid, at-spi2-core }:
 
 let
 
   # Please keep the version x.y.0.z and do not update to x.y.76.z because the
   # source of the latter disappears much faster.
-  version = "8.55.0.141";
+  version = "8.59.0.77";
 
   rpath = stdenv.lib.makeLibraryPath [
     alsaLib
@@ -29,6 +29,7 @@ let
     gnome2.GConf
     gdk-pixbuf
     gtk3
+    libappindicator-gtk3
 
     gnome3.gnome-keyring
 
@@ -61,9 +62,10 @@ let
       fetchurl {
         urls = [
           "https://repo.skype.com/deb/pool/main/s/skypeforlinux/skypeforlinux_${version}_amd64.deb"
+          "https://mirror.cs.uchicago.edu/skype/pool/main/s/skypeforlinux/skypeforlinux_${version}_amd64.deb"
           "https://web.archive.org/web/https://repo.skype.com/deb/pool/main/s/skypeforlinux/skypeforlinux_${version}_amd64.deb"
         ];
-        sha256 = "0yfbxrnf2mjihrsvp0r81kbxh3rfh53y7sbfp3bwqky951a93qis";
+        sha256 = "1cnlwlp84942ywji3x60zvhijavazdxfym3rfzq3ysky28b6mn6i";
       }
     else
       throw "Skype for linux is not supported on ${stdenv.hostPlatform.system}";
@@ -110,7 +112,7 @@ in stdenv.mkDerivation {
 
   meta = with stdenv.lib; {
     description = "Linux client for skype";
-    homepage = https://www.skype.com;
+    homepage = "https://www.skype.com";
     license = licenses.unfree;
     maintainers = with stdenv.lib.maintainers; [ panaeon jraygauthier ];
     platforms = [ "x86_64-linux" ];
diff --git a/pkgs/applications/networking/instant-messengers/slack-term/default.nix b/pkgs/applications/networking/instant-messengers/slack-term/default.nix
index 6271e338a964..c862c253c00a 100644
--- a/pkgs/applications/networking/instant-messengers/slack-term/default.nix
+++ b/pkgs/applications/networking/instant-messengers/slack-term/default.nix
@@ -3,7 +3,7 @@
 buildGoPackage rec {
   # https://github.com/erroneousboat/slack-term
   pname = "slack-term";
-  version = "0.4.1";
+  version = "0.5.0";
 
   goPackagePath = "github.com/erroneousboat/slack-term";
 
@@ -11,12 +11,12 @@ buildGoPackage rec {
     owner = "erroneousboat";
     repo = "slack-term";
     rev = "v${version}";
-    sha256 = "1340bq7h31fxykxbxpn6hv7n2hmjf20f8vg5gan9pjf5jaa6kfza";
+    sha256 = "1fbq7bdhy70hlkklppimgdjamnk0v059pg73xm9ax1f4616ki1m6";
   };
 
   meta = with stdenv.lib; {
     description = "Slack client for your terminal";
-    homepage = https://github.com/erroneousboat/slack-term;
+    homepage = "https://github.com/erroneousboat/slack-term";
     license = licenses.mit;
     maintainers = with maintainers; [ dtzWill ];
   };
diff --git a/pkgs/applications/networking/instant-messengers/slack/dark-theme.nix b/pkgs/applications/networking/instant-messengers/slack/dark-theme.nix
deleted file mode 100644
index 903d8e60d6d5..000000000000
--- a/pkgs/applications/networking/instant-messengers/slack/dark-theme.nix
+++ /dev/null
@@ -1,19 +0,0 @@
-{ stdenv, fetchgit }:
-
-stdenv.mkDerivation rec {
-  rev = "f760176c6e133667ce73aeecba8b0c0eb8822941";
-  version = "2019-09-11";
-  pname = "slack-theme-black";
-
-  src = fetchgit { inherit rev;
-    url = "https://github.com/laCour/slack-night-mode";
-    sha256 = "1kx8nx7mhrabs5wxqgvy86s5smy5hw49gv6yc95yxwx6ymwpgbzj";
-  };
-
-  dontUnpack = true;
-
-  buildCommand = ''
-    mkdir $out
-    cp $src/css/raw/black.css $out/theme.css
-  '';
-}
diff --git a/pkgs/applications/networking/instant-messengers/slack/default.nix b/pkgs/applications/networking/instant-messengers/slack/default.nix
index 32f50b6fd638..9cf436ff18f3 100644
--- a/pkgs/applications/networking/instant-messengers/slack/default.nix
+++ b/pkgs/applications/networking/instant-messengers/slack/default.nix
@@ -1,35 +1,64 @@
-{ theme ? null, stdenv, fetchurl, dpkg, makeWrapper , alsaLib, atk, cairo,
-cups, curl, dbus, expat, fontconfig, freetype, glib , gnome2, gtk3, gdk-pixbuf,
-libappindicator-gtk3, libnotify, libxcb, nspr, nss, pango , systemd, xorg,
-at-spi2-atk, at-spi2-core, libuuid, nodePackages, libpulseaudio, xdg_utils
+{ stdenv
+, fetchurl
+, dpkg
+, makeWrapper
+, nodePackages
+, alsaLib
+, at-spi2-atk
+, at-spi2-core
+, atk
+, cairo
+, cups
+, curl
+, dbus
+, expat
+, fontconfig
+, freetype
+, gdk-pixbuf
+, glib
+, gnome2
+, gtk3
+, libappindicator-gtk3
+, libnotify
+, libpulseaudio
+, libuuid
+, libxcb
+, nspr
+, nss
+, pango
+, systemd
+, xdg_utils
+, xorg
 }:
 
 let
 
-  version = "4.2.0";
+  pname = "slack";
 
   inherit (stdenv.hostPlatform) system;
 
   throwSystem = throw "Unsupported system: ${system}";
 
-  pname = "slack";
-
   sha256 = {
-    x86_64-darwin = "0947a98m7yz4hldjvcqnv9s17dpvlsk9sflc1zc99hf500zck0w1";
-    x86_64-linux = "01b2klhky04fijdqcpfafgdqx2c5nh2fpnzvzgvz10hv7h16cinv";
+    x86_64-darwin = "0z731q00bwljlcmbjwqphyys7skqms1vg87pyi4nsvjmc7kjx7qg";
+    x86_64-linux = "0wrs0i2bqv21ivy8s88khbww28b3gsw4abbbbjc76mqma9b0bajs";
   }.${system} or throwSystem;
 
+  version = {
+    x86_64-darwin = "4.4.2";
+    x86_64-linux = "4.4.2";
+  }.${system} or throwSystem;
 
   meta = with stdenv.lib; {
     description = "Desktop client for Slack";
-    homepage = https://slack.com;
+    homepage = "https://slack.com";
     license = licenses.unfree;
-    maintainers = [ maintainers.mmahut ];
+    maintainers = with maintainers; [ mmahut ];
     platforms = [ "x86_64-darwin" "x86_64-linux" ];
   };
 
   linux = stdenv.mkDerivation rec {
-    inherit pname version meta;
+    inherit pname meta version;
     src = fetchurl {
       url = "https://downloads.slack-edge.com/linux_releases/slack-desktop-${version}-amd64.deb";
       inherit sha256;
@@ -47,23 +76,22 @@ let
       expat
       fontconfig
       freetype
+      gdk-pixbuf
       glib
       gnome2.GConf
-      gdk-pixbuf
       gtk3
-      pango
+      libappindicator-gtk3
       libnotify
+      libpulseaudio
+      libuuid
       libxcb
-      libappindicator-gtk3
       nspr
       nss
+      pango
       stdenv.cc.cc
       systemd
-      libuuid
-      libpulseaudio
-  
-      xorg.libxkbfile
       xorg.libX11
+      xorg.libXScrnSaver
       xorg.libXcomposite
       xorg.libXcursor
       xorg.libXdamage
@@ -73,65 +101,50 @@ let
       xorg.libXrandr
       xorg.libXrender
       xorg.libXtst
-      xorg.libXScrnSaver
+      xorg.libxkbfile
     ] + ":${stdenv.cc.cc.lib}/lib64";
 
     buildInputs = [
       gtk3  # needed for GSETTINGS_SCHEMAS_PATH
     ];
-  
+
     nativeBuildInputs = [ dpkg makeWrapper nodePackages.asar ];
-  
+
     dontUnpack = true;
     dontBuild = true;
     dontPatchELF = true;
-  
+
     installPhase = ''
       # The deb file contains a setuid binary, so 'dpkg -x' doesn't work here
       dpkg --fsys-tarfile $src | tar --extract
       rm -rf usr/share/lintian
-  
+
       mkdir -p $out
       mv usr/* $out
-  
+
       # Otherwise it looks "suspicious"
       chmod -R g-w $out
-  
+
       for file in $(find $out -type f \( -perm /0111 -o -name \*.so\* \) ); do
         patchelf --set-interpreter "$(cat $NIX_CC/nix-support/dynamic-linker)" "$file" || true
         patchelf --set-rpath ${rpath}:$out/lib/slack $file || true
       done
-  
+
       # Replace the broken bin/slack symlink with a startup wrapper
       rm $out/bin/slack
       makeWrapper $out/lib/slack/slack $out/bin/slack \
         --prefix XDG_DATA_DIRS : $GSETTINGS_SCHEMAS_PATH \
         --prefix PATH : ${xdg_utils}/bin
-  
+
       # Fix the desktop link
       substituteInPlace $out/share/applications/slack.desktop \
         --replace /usr/bin/ $out/bin/ \
         --replace /usr/share/ $out/share/
-    '' + stdenv.lib.optionalString (theme != null) ''
-      asar extract $out/lib/slack/resources/app.asar $out/lib/slack/resources/app.asar.unpacked
-      cat <<EOF >> $out/lib/slack/resources/app.asar.unpacked/dist/ssb-interop.bundle.js
-  
-      var fs = require('fs');
-      document.addEventListener('DOMContentLoaded', function() {
-        fs.readFile('${theme}/theme.css', 'utf8', function(err, css) {
-          let s = document.createElement('style');
-          s.type = 'text/css';
-          s.innerHTML = css;
-          document.head.appendChild(s);
-        });
-      });
-      EOF
-      asar pack $out/lib/slack/resources/app.asar.unpacked $out/lib/slack/resources/app.asar
     '';
   };
 
-  darwin = stdenv.mkDerivation {
-    inherit pname version meta;
+  darwin = stdenv.mkDerivation rec {
+    inherit pname meta version;
 
     phases = [ "installPhase" ];
 
diff --git a/pkgs/applications/networking/instant-messengers/slack/update.sh b/pkgs/applications/networking/instant-messengers/slack/update.sh
deleted file mode 100755
index 6a15298c4e7d..000000000000
--- a/pkgs/applications/networking/instant-messengers/slack/update.sh
+++ /dev/null
@@ -1,19 +0,0 @@
-#!/usr/bin/env nix-shell
-#!nix-shell -i bash -p curl common-updater-scripts jq
-
-set -eu -o pipefail
-
-oldVersion="$(nix-instantiate --eval -E "with import ./. {}; lib.getVersion slack-theme-black" | tr -d '"')"
-latestSha="$(curl -L -s https://api.github.com/repos/laCour/slack-night-mode/commits\?sha\=master\&since\=${oldVersion} | jq -r '.[0].sha')"
-
-if [ ! "null" = "${latestSha}" ]; then
-  latestDate="$(curl -L -s https://api.github.com/repos/laCour/slack-night-mode/commits/${latestSha} | jq '.commit.author.date' | sed 's|"\(.*\)T.*|\1|g')"
-  update-source-version slack-theme-black "${latestSha}" --version-key=rev
-  update-source-version slack-theme-black "${latestDate}" --ignore-same-hash
-  nixpkgs="$(git rev-parse --show-toplevel)"
-  default_nix="$nixpkgs/pkgs/applications/networking/instant-messengers/slack/dark-theme.nix"
-  git add "${default_nix}"
-  git commit -m "slack-theme-black: ${oldVersion} -> ${latestDate}"
-else
-  echo "slack-theme-black is already up-to-date"
-fi
diff --git a/pkgs/applications/networking/instant-messengers/stride/default.nix b/pkgs/applications/networking/instant-messengers/stride/default.nix
index 7a9ab4d127c4..895ad30360e9 100644
--- a/pkgs/applications/networking/instant-messengers/stride/default.nix
+++ b/pkgs/applications/networking/instant-messengers/stride/default.nix
@@ -60,7 +60,7 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "Desktop client for Atlassian Stride";
-    homepage = https://www.stride.com/;
+    homepage = "https://www.stride.com/";
     license = licenses.unfree;
     platforms = [ "x86_64-linux" ];
     maintainers = with maintainers; [ puffnfresh ];
diff --git a/pkgs/applications/networking/instant-messengers/swift-im/default.nix b/pkgs/applications/networking/instant-messengers/swift-im/default.nix
index d47b7d00af92..953ce2809c43 100644
--- a/pkgs/applications/networking/instant-messengers/swift-im/default.nix
+++ b/pkgs/applications/networking/instant-messengers/swift-im/default.nix
@@ -1,9 +1,9 @@
-{ stdenv, fetchurl, pkgconfig, qttools, scons
+{ mkDerivation, stdenv, fetchurl, pkgconfig, qttools, scons
 , GConf, avahi, boost, hunspell, libXScrnSaver, libedit, libidn, libnatpmp, libxml2
 , lua, miniupnpc, openssl, qtbase, qtmultimedia, qtsvg, qtwebkit, qtx11extras, zlib
 }:
 
-stdenv.mkDerivation rec {
+mkDerivation rec {
   pname = "swift-im";
   version = "4.0.2";
 
@@ -14,7 +14,7 @@ stdenv.mkDerivation rec {
 
   patches = [ ./qt-5.11.patch ./scons.patch ];
 
-  nativeBuildInputs = [ pkgconfig qttools scons ];
+  nativeBuildInputs = [ pkgconfig qttools scons.py2 ];
 
   buildInputs = [
     GConf avahi boost hunspell libXScrnSaver libedit libidn libnatpmp libxml2
@@ -35,7 +35,7 @@ stdenv.mkDerivation rec {
   installFlags = [ "SWIFT_INSTALLDIR=${placeholder "out"}" ];
 
   meta = with stdenv.lib; {
-    homepage = https://swift.im/;
+    homepage = "https://swift.im/";
     description = "Qt XMPP client";
     license = licenses.gpl3;
     maintainers = with maintainers; [ orivej ];
diff --git a/pkgs/applications/networking/instant-messengers/teams/default.nix b/pkgs/applications/networking/instant-messengers/teams/default.nix
index ef7e3717f728..6b5acd8344a8 100644
--- a/pkgs/applications/networking/instant-messengers/teams/default.nix
+++ b/pkgs/applications/networking/instant-messengers/teams/default.nix
@@ -15,11 +15,11 @@
 
 stdenv.mkDerivation rec {
   pname = "teams";
-  version = "1.3.00.958";
+  version = "1.3.00.5153";
 
   src = fetchurl {
     url = "https://packages.microsoft.com/repos/ms-teams/pool/main/t/teams/teams_${version}_amd64.deb";
-    sha256 = "015awxgbwk4j973jnxj7q3i8csx7wnwpwp5g4jlmn7z8fxwy83d5";
+    sha256 = "13c7fmij0gcg6mrjjj2mhs21q7fzdssscwhihzyrmbmj64cd0a69";
   };
 
   nativeBuildInputs = [ dpkg autoPatchelfHook wrapGAppsHook ];
@@ -52,6 +52,28 @@ stdenv.mkDerivation rec {
     ln -s $out/opt/teams/teams $out/bin/
   '';
 
+  dontAutoPatchelf = true;
+
+  # Includes runtimeDependencies in the RPATH of the included Node modules
+  # so that dynamic loading works. We cannot use directly runtimeDependencies
+  # here, since the libraries from runtimeDependencies are not propagated 
+  # to the dynamically loadable node modules because of a condition in
+  # autoPatchElfHook since *.node modules have Type: DYN (Shared object file) 
+  # instead of EXEC or INTERP it expects.
+  # Fixes: https://github.com/NixOS/nixpkgs/issues/85449
+  postFixup = ''
+    autoPatchelf "$out"
+
+    runtime_rpath="${lib.makeLibraryPath runtimeDependencies}"
+
+    for mod in $(find "$out/opt/teams" -name '*.node'); do
+      mod_rpath="$(patchelf --print-rpath "$mod")"
+
+      echo "Adding runtime dependencies to RPATH of Node module $mod"
+      patchelf --set-rpath "$runtime_rpath:$mod_rpath" "$mod"
+    done;
+  '';
+
   meta = with stdenv.lib; {
     description = "Microsoft Teams";
     homepage = "https://teams.microsoft.com";
diff --git a/pkgs/applications/networking/instant-messengers/teamspeak/client.nix b/pkgs/applications/networking/instant-messengers/teamspeak/client.nix
index c2a9f4be90a2..b9835f45d27e 100644
--- a/pkgs/applications/networking/instant-messengers/teamspeak/client.nix
+++ b/pkgs/applications/networking/instant-messengers/teamspeak/client.nix
@@ -101,10 +101,10 @@ stdenv.mkDerivation rec {
 
   meta = {
     description = "The TeamSpeak voice communication tool";
-    homepage = https://teamspeak.com/;
+    homepage = "https://teamspeak.com/";
     license = {
       fullName = "Teamspeak client license";
-      url = http://sales.teamspeakusa.com/licensing.php;
+      url = "http://sales.teamspeakusa.com/licensing.php";
       free = false;
     };
     maintainers = [ stdenv.lib.maintainers.lhvwb ];
diff --git a/pkgs/applications/networking/instant-messengers/teamspeak/server.nix b/pkgs/applications/networking/instant-messengers/teamspeak/server.nix
index 9c57ac829afb..761d7cfcbd4b 100644
--- a/pkgs/applications/networking/instant-messengers/teamspeak/server.nix
+++ b/pkgs/applications/networking/instant-messengers/teamspeak/server.nix
@@ -1,16 +1,16 @@
-{ stdenv, fetchurl, autoPatchelfHook }:
+{ stdenv, fetchurl, autoPatchelfHook, writeScript }:
 
 let
   arch = if stdenv.is64bit then "amd64" else "x86";
 in stdenv.mkDerivation rec {
   pname = "teamspeak-server";
-  version = "3.10.2";
+  version = "3.12.1";
 
   src = fetchurl {
     url = "https://files.teamspeak-services.com/releases/server/${version}/teamspeak3-server_linux_${arch}-${version}.tar.bz2";
     sha256 = if stdenv.is64bit
-      then "03c717qjlbym02nwy82l6jhrkbidsdm1jv5k8p3c10p6a46jy9nl"
-      else "1ay0lmbv2rw9klz289yg0hhsac83kfzzlbwwhjpi28xndl2lq4bf";
+      then "1dxbnk12ry6arn1p38hpv5jfak55pmfmxkkl7aihn3sp1aizpgyg"
+      else "0nfzx7pbzd95a7v08g29l84sc0lnv9fx8vz3mrmzhs0xqn9gxdkq";
   };
 
   buildInputs = [ stdenv.cc.cc ];
@@ -28,9 +28,32 @@ in stdenv.mkDerivation rec {
     ln -s $out/lib/teamspeak/tsdns/tsdnsserver $out/bin/tsdnsserver
   '';
 
+  passthru.updateScript = writeScript "update-teampeak-server" ''
+    #!/usr/bin/env nix-shell
+    #!nix-shell -i bash -p common-updater-scripts curl gnugrep gnused
+
+    set -eu -o pipefail
+
+    version=$( \
+        curl -s "https://www.teamspeak.de/download/teamspeak-3-amd64-server-linux/" \
+        | grep softwareVersion \
+        | sed -E -e 's/^.*<span itemprop="softwareVersion">([^<]+)<\/span>.*$/\1/' \
+    )
+
+    versionOld=$(nix-instantiate --eval --strict -A "teamspeak_server.version")
+
+    nixFile=pkgs/applications/networking/instant-messengers/teamspeak/server.nix
+
+    update-source-version teamspeak_server "$version" --system=i686-linux
+
+    sed -i -e "s/version = \"$version\";/version = $versionOld;/" "$nixFile"
+
+    update-source-version teamspeak_server "$version" --system=x86_64-linux
+  '';
+
   meta = with stdenv.lib; {
     description = "TeamSpeak voice communication server";
-    homepage = https://teamspeak.com/;
+    homepage = "https://teamspeak.com/";
     license = licenses.unfreeRedistributable;
     platforms = platforms.linux;
     maintainers = with maintainers; [ arobyn gerschtli ];
diff --git a/pkgs/applications/networking/instant-messengers/telegram/kotatogram-desktop/default.nix b/pkgs/applications/networking/instant-messengers/telegram/kotatogram-desktop/default.nix
index 862659fde8d9..87c70464e9b4 100644
--- a/pkgs/applications/networking/instant-messengers/telegram/kotatogram-desktop/default.nix
+++ b/pkgs/applications/networking/instant-messengers/telegram/kotatogram-desktop/default.nix
@@ -1,32 +1,28 @@
 { mkDerivation, lib, fetchFromGitHub, pkg-config, python3, cmake, ninja
-, qtbase, qtimageformats, enchant, xdg_utils, ffmpeg, openalSoft, lzma
-, lz4, xxHash, zlib, minizip, openssl, libtgvoip, range-v3
+, qtbase, qtimageformats, libsForQt5, hunspell, xdg_utils, ffmpeg, openalSoft
+, lzma, lz4, xxHash, zlib, minizip, openssl, libtgvoip, microsoft_gsl, tl-expected
+, range-v3
 }:
 
 with lib;
 
 mkDerivation rec {
   pname = "kotatogram-desktop";
-  version = "1.1.5";
+  version = "1.2";
 
   src = fetchFromGitHub {
     owner = "kotatogram";
     repo = "kotatogram-desktop";
     rev = "k${version}";
-    sha256 = "1j5wn3k1mr2c39szmyzm0pf720jmbllcaj40p2ydx0p3lir1s760";
+    sha256 = "00pdx3cjhrihf7ihhmszcf159jrzn1bcx20vwiiizs5r1qk8l210";
     fetchSubmodules = true;
   };
 
-  postPatch = ''
-    substituteInPlace Telegram/lib_spellcheck/spellcheck/platform/linux/linux_enchant.cpp \
-      --replace '"libenchant-2.so.2"' '"${enchant}/lib/libenchant-2.so.2"'
-  '';
-
   nativeBuildInputs = [ pkg-config python3 cmake ninja ];
 
   buildInputs = [
-    qtbase qtimageformats ffmpeg openalSoft lzma lz4 xxHash
-    zlib minizip openssl enchant libtgvoip range-v3
+    qtbase qtimageformats ffmpeg openalSoft lzma lz4 xxHash libsForQt5.libdbusmenu
+    zlib minizip openssl hunspell libtgvoip microsoft_gsl tl-expected range-v3
   ];
 
   qtWrapperArgs = [
@@ -35,8 +31,8 @@ mkDerivation rec {
 
   cmakeFlags = [
     "-DTDESKTOP_API_TEST=ON"
-    "-DTDESKTOP_DISABLE_GTK_INTEGRATION=ON"
     "-DDESKTOP_APP_USE_PACKAGED_RLOTTIE=OFF"
+    "-DDESKTOP_APP_USE_PACKAGED_VARIANT=OFF"
   ];
 
   meta = {
@@ -48,7 +44,7 @@ mkDerivation rec {
     '';
     license = licenses.gpl3;
     platforms = platforms.linux;
-    homepage = https://kotatogram.github.io;
+    homepage = "https://kotatogram.github.io";
     maintainers = with maintainers; [ ilya-fedin ];
   };
 }
diff --git a/pkgs/applications/networking/instant-messengers/telegram/tdesktop/default.nix b/pkgs/applications/networking/instant-messengers/telegram/tdesktop/default.nix
index 9cd181c591d6..59e2fefb455a 100644
--- a/pkgs/applications/networking/instant-messengers/telegram/tdesktop/default.nix
+++ b/pkgs/applications/networking/instant-messengers/telegram/tdesktop/default.nix
@@ -2,7 +2,7 @@
 , pkgconfig, cmake, ninja, python3, wrapGAppsHook, wrapQtAppsHook
 , qtbase, qtimageformats, gtk3, libsForQt5, enchant2, lz4, xxHash
 , dee, ffmpeg_4, openalSoft, minizip, libopus, alsaLib, libpulseaudio, range-v3
-, tl-expected, microsoft_gsl
+, tl-expected, hunspell
 # TODO: Shouldn't be required:
 , pcre, xorg, utillinux, libselinux, libsepol, epoxy, at-spi2-core, libXtst
 , xdg_utils
@@ -19,12 +19,12 @@ with lib;
 
 mkDerivation rec {
   pname = "telegram-desktop";
-  version = "1.9.14";
+  version = "2.1.2";
 
   # Telegram-Desktop with submodules
   src = fetchurl {
     url = "https://github.com/telegramdesktop/tdesktop/releases/download/v${version}/tdesktop-${version}-full.tar.gz";
-    sha256 = "0jsss4b51ylf4qk58frvh2yap1s3cjf3isnlc273cc0fh5g1skc6";
+    sha256 = "0n387scs5kmc5jrypyxkc9cj4c7nb5761bdb8qxw8j342sm5ai24";
   };
 
   postPatch = ''
@@ -43,7 +43,7 @@ mkDerivation rec {
   buildInputs = [
     qtbase qtimageformats gtk3 libsForQt5.libdbusmenu enchant2 lz4 xxHash
     dee ffmpeg_4 openalSoft minizip libopus alsaLib libpulseaudio range-v3
-    tl-expected microsoft_gsl
+    tl-expected hunspell
     # TODO: Shouldn't be required:
     pcre xorg.libpthreadstubs xorg.libXdmcp utillinux libselinux libsepol epoxy at-spi2-core libXtst
   ];
@@ -55,13 +55,10 @@ mkDerivation rec {
     # TODO: Officiall API credentials for Nixpkgs
     # (see: https://github.com/NixOS/nixpkgs/issues/55271):
     "-DTDESKTOP_API_TEST=ON"
-    "-DDESKTOP_APP_USE_GLIBC_WRAPS=OFF"
-    "-DDESKTOP_APP_USE_PACKAGED=ON"
     "-DDESKTOP_APP_USE_PACKAGED_RLOTTIE=OFF"
     "-DDESKTOP_APP_USE_PACKAGED_VARIANT=OFF"
-    "-DDESKTOP_APP_DISABLE_CRASH_REPORTS=ON"
+    "-DDESKTOP_APP_USE_PACKAGED_GSL=OFF"
     "-DTDESKTOP_DISABLE_REGISTER_CUSTOM_SCHEME=ON"
-    "-DTDESKTOP_DISABLE_DESKTOP_FILE_GENERATION=ON"
     "-DTDESKTOP_USE_PACKAGED_TGVOIP=OFF"
     #"-DDESKTOP_APP_SPECIAL_TARGET=\"\"" # TODO: Error when set to "": Bad special target '""'
     "-DTDESKTOP_LAUNCHER_BASENAME=telegramdesktop" # Note: This is the default
@@ -90,8 +87,7 @@ mkDerivation rec {
       "''${gappsWrapperArgs[@]}" \
       "''${qtWrapperArgs[@]}" \
       --prefix PATH : ${xdg_utils}/bin \
-      --set XDG_RUNTIME_DIR "XDG-RUNTIME-DIR" \
-      --unset QT_QPA_PLATFORMTHEME # From the Arch wrapper
+      --set XDG_RUNTIME_DIR "XDG-RUNTIME-DIR"
     sed -i $out/bin/telegram-desktop \
       -e "s,'XDG-RUNTIME-DIR',\"\''${XDG_RUNTIME_DIR:-/run/user/\$(id --user)}\","
   '';
@@ -104,7 +100,8 @@ mkDerivation rec {
     '';
     license = licenses.gpl3;
     platforms = platforms.linux;
-    homepage = https://desktop.telegram.org/;
+    homepage = "https://desktop.telegram.org/";
+    changelog = "https://github.com/telegramdesktop/tdesktop/releases/tag/v{version}";
     maintainers = with maintainers; [ primeos abbradar ];
   };
 }
diff --git a/pkgs/applications/networking/instant-messengers/telepathy/gabble/default.nix b/pkgs/applications/networking/instant-messengers/telepathy/gabble/default.nix
index a0cc73da46d8..d81af8388aac 100644
--- a/pkgs/applications/networking/instant-messengers/telepathy/gabble/default.nix
+++ b/pkgs/applications/networking/instant-messengers/telepathy/gabble/default.nix
@@ -20,7 +20,7 @@ stdenv.mkDerivation rec {
   doCheck = true;
 
   meta = with stdenv.lib; {
-    homepage = https://telepathy.freedesktop.org/components/telepathy-gabble/;
+    homepage = "https://telepathy.freedesktop.org/components/telepathy-gabble/";
     description = "Jabber/XMPP connection manager for the Telepathy framework";
     license = licenses.lgpl21Plus;
     platforms = stdenv.lib.platforms.gnu ++ stdenv.lib.platforms.linux;
diff --git a/pkgs/applications/networking/instant-messengers/telepathy/haze/default.nix b/pkgs/applications/networking/instant-messengers/telepathy/haze/default.nix
index 769e639314e0..6d4ff62f22a8 100644
--- a/pkgs/applications/networking/instant-messengers/telepathy/haze/default.nix
+++ b/pkgs/applications/networking/instant-messengers/telepathy/haze/default.nix
@@ -17,7 +17,7 @@ stdenv.mkDerivation rec {
     # Patch from Gentoo that helps telepathy-haze build with more
     # recent versions of pidgin.
     (fetchpatch {
-      url = https://raw.githubusercontent.com/gentoo/gentoo/master/net-voip/telepathy-haze/files/telepathy-haze-0.8.0-pidgin-2.10.12-compat.patch;
+      url = "https://raw.githubusercontent.com/gentoo/gentoo/master/net-voip/telepathy-haze/files/telepathy-haze-0.8.0-pidgin-2.10.12-compat.patch";
       sha256 = "0fa1p4n1559qd096w7ya4kvfnc1c98ykarkxzlpkwvzbczwzng3c";
     })
   ];
diff --git a/pkgs/applications/networking/instant-messengers/telepathy/logger/default.nix b/pkgs/applications/networking/instant-messengers/telepathy/logger/default.nix
index af0ca1589e5a..f8e1f1f2c665 100644
--- a/pkgs/applications/networking/instant-messengers/telepathy/logger/default.nix
+++ b/pkgs/applications/networking/instant-messengers/telepathy/logger/default.nix
@@ -28,7 +28,7 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "Logger service for Telepathy framework";
-    homepage = https://telepathy.freedesktop.org/components/telepathy-logger/;
+    homepage = "https://telepathy.freedesktop.org/components/telepathy-logger/";
     license = licenses.lgpl21;
     maintainers = with maintainers; [ jtojnar ];
     platforms = platforms.gnu ++ platforms.linux; # Arbitrary choice
diff --git a/pkgs/applications/networking/instant-messengers/telepathy/mission-control/default.nix b/pkgs/applications/networking/instant-messengers/telepathy/mission-control/default.nix
index ef842275a5de..c590b6a0896d 100644
--- a/pkgs/applications/networking/instant-messengers/telepathy/mission-control/default.nix
+++ b/pkgs/applications/networking/instant-messengers/telepathy/mission-control/default.nix
@@ -1,5 +1,6 @@
 { stdenv
 , fetchurl
+, fetchpatch
 , pkgconfig
 , dconf
 , telepathy-glib
@@ -19,6 +20,16 @@ stdenv.mkDerivation rec {
     sha256 = "00xxv38cfdirnfvgyd56m60j0nkmsv5fz6p2ydyzsychicxl6ssc";
   };
 
+  patches = [
+    # Fix property name (new GLib is stricter)
+    # https://github.com/NixOS/nixpkgs/pull/81626#issuecomment-601494939
+    # https://gitlab.gnome.org/GNOME/polari/-/merge_requests/141
+    (fetchpatch {
+      url = "https://github.com/TelepathyIM/telepathy-mission-control/commit/d8dab08fe8db137c6bbd8bbdc3d9b01d98c48910.patch";
+      sha256 = "Sw+V5QcWQ5zugwTTdkwa3pqV+v5XD0OhH6xI5ymgkOU=";
+    })
+  ];
+
   buildInputs = [
     python3
   ]; # ToDo: optional stuff missing
@@ -45,7 +56,7 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "An account manager and channel dispatcher for the Telepathy framework";
-    homepage = https://telepathy.freedesktop.org/components/telepathy-mission-control/;
+    homepage = "https://telepathy.freedesktop.org/components/telepathy-mission-control/";
     license = licenses.lgpl21;
     maintainers = with maintainers; [ jtojnar ];
     platforms = platforms.unix;
diff --git a/pkgs/applications/networking/instant-messengers/tensor/default.nix b/pkgs/applications/networking/instant-messengers/tensor/default.nix
index 11845ecfb26c..1ea249a8b51b 100644
--- a/pkgs/applications/networking/instant-messengers/tensor/default.nix
+++ b/pkgs/applications/networking/instant-messengers/tensor/default.nix
@@ -1,9 +1,9 @@
-{ stdenv, fetchgit, qtbase, qtquickcontrols, qmake, makeDesktopItem }:
+{ mkDerivation, stdenv, fetchgit, qtbase, qtquickcontrols, qmake, makeDesktopItem }:
 
 # we now have libqmatrixclient so a future version of tensor that supports it
 # should use that
 
-stdenv.mkDerivation rec {
+mkDerivation rec {
   pname = "tensor-git";
   version = "2017-02-21";
 
@@ -46,7 +46,7 @@ stdenv.mkDerivation rec {
   '';
 
   meta = with stdenv.lib; {
-    homepage = https://matrix.org/docs/projects/client/tensor.html;
+    homepage = "https://matrix.org/docs/projects/client/tensor.html";
     description = "Cross-platform Qt5/QML-based Matrix client";
     license = licenses.gpl3;
     maintainers = with maintainers; [ peterhoeg ];
diff --git a/pkgs/applications/networking/instant-messengers/torchat/default.nix b/pkgs/applications/networking/instant-messengers/torchat/default.nix
index edfec97edf8a..8231f481ee0d 100644
--- a/pkgs/applications/networking/instant-messengers/torchat/default.nix
+++ b/pkgs/applications/networking/instant-messengers/torchat/default.nix
@@ -28,7 +28,7 @@ stdenv.mkDerivation rec {
   '';
 
   meta = with stdenv.lib; {
-    homepage = https://github.com/prof7bit/TorChat;
+    homepage = "https://github.com/prof7bit/TorChat";
     description = "Instant messaging application on top of the Tor network and it's location hidden services";
     license = licenses.gpl3;
     maintainers = [ maintainers.phreedom ];
diff --git a/pkgs/applications/networking/instant-messengers/turses/default.nix b/pkgs/applications/networking/instant-messengers/turses/default.nix
index 27977dae15f8..b6017277b0a5 100644
--- a/pkgs/applications/networking/instant-messengers/turses/default.nix
+++ b/pkgs/applications/networking/instant-messengers/turses/default.nix
@@ -45,7 +45,7 @@ buildPythonPackage rec {
   '';
 
   meta = with stdenv.lib; {
-    homepage = https://github.com/louipc/turses;
+    homepage = "https://github.com/louipc/turses";
     description = "A Twitter client for the console";
     license = licenses.gpl3;
     maintainers = with maintainers; [ ];
diff --git a/pkgs/applications/networking/instant-messengers/utox/default.nix b/pkgs/applications/networking/instant-messengers/utox/default.nix
index 5ef0d9162429..b360793e484b 100644
--- a/pkgs/applications/networking/instant-messengers/utox/default.nix
+++ b/pkgs/applications/networking/instant-messengers/utox/default.nix
@@ -35,7 +35,7 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "Lightweight Tox client";
-    homepage = https://github.com/uTox/uTox;
+    homepage = "https://github.com/uTox/uTox";
     license = licenses.gpl3;
     maintainers = with maintainers; [ domenkozar ];
     platforms = platforms.all;
diff --git a/pkgs/applications/networking/instant-messengers/vacuum/default.nix b/pkgs/applications/networking/instant-messengers/vacuum/default.nix
index 923ce3737532..ed320d9679d6 100644
--- a/pkgs/applications/networking/instant-messengers/vacuum/default.nix
+++ b/pkgs/applications/networking/instant-messengers/vacuum/default.nix
@@ -19,7 +19,7 @@ stdenv.mkDerivation {
   ];
 
   # hack: needed to fix build issues in
-  # http://hydra.nixos.org/build/38322959/nixlog/1
+  # https://hydra.nixos.org/build/38322959/nixlog/1
   # should be an upstream issue but it's easy to fix
   NIX_LDFLAGS = "-lz";
 
@@ -36,6 +36,6 @@ stdenv.mkDerivation {
     maintainers = [ maintainers.raskin ];
     platforms = platforms.linux;
     license = licenses.gpl3;
-    homepage = http://www.vacuum-im.org;
+    homepage = "http://www.vacuum-im.org";
   };
 }
diff --git a/pkgs/applications/networking/instant-messengers/viber/default.nix b/pkgs/applications/networking/instant-messengers/viber/default.nix
index acdec1dc99c9..e53b8c7391e8 100644
--- a/pkgs/applications/networking/instant-messengers/viber/default.nix
+++ b/pkgs/applications/networking/instant-messengers/viber/default.nix
@@ -94,7 +94,7 @@ stdenv.mkDerivation {
   dontPatchELF = true;
 
   meta = {
-    homepage = http://www.viber.com;
+    homepage = "http://www.viber.com";
     description = "An instant messaging and Voice over IP (VoIP) app";
     license = stdenv.lib.licenses.unfree;
     platforms = [ "x86_64-linux" ];
diff --git a/pkgs/applications/networking/instant-messengers/vk-messenger/default.nix b/pkgs/applications/networking/instant-messengers/vk-messenger/default.nix
index 165e3e959e0c..bece4e467a35 100644
--- a/pkgs/applications/networking/instant-messengers/vk-messenger/default.nix
+++ b/pkgs/applications/networking/instant-messengers/vk-messenger/default.nix
@@ -3,18 +3,18 @@
 , wrapGAppsHook }:
 
 let
-  version = "4.5.2";
+  version = "5.0.1";
 in stdenv.mkDerivation {
   pname = "vk-messenger";
   inherit version;
   src = {
     i686-linux = fetchurl {
       url = "https://desktop.userapi.com/rpm/master/vk-${version}.i686.rpm";
-      sha256 = "11xsdmvd2diq3m61si87x2c08nap0vakcypm90wjmdjwayg3fdlw";
+      sha256 = "1ji23x13lzbkiqfrrwx1pj6gmms0p58cjmjc0y4g16kqhlxl60v6";
     };
     x86_64-linux = fetchurl {
       url = "https://desktop.userapi.com/rpm/master/vk-${version}.x86_64.rpm";
-      sha256 = "0j65d6mwj6rxczi0p9fsr6jh37jxw3a3h6w67xwgdvibb7lf3gbb";
+      sha256 = "01vvmia2qrxvrvavk9hkkyvfg4pg15m01grwb28884vy4nqw400y";
     };
   }.${stdenv.system} or (throw "Unsupported system: ${stdenv.system}");
 
@@ -46,7 +46,7 @@ in stdenv.mkDerivation {
 
   meta = with stdenv.lib; {
     description = "Simple and Convenient Messaging App for VK";
-    homepage = https://vk.com/messenger;
+    homepage = "https://vk.com/messenger";
     license = licenses.unfree;
     maintainers = [ maintainers.gnidorah ];
     platforms = ["i686-linux" "x86_64-linux"];
diff --git a/pkgs/applications/networking/instant-messengers/wavebox/default.nix b/pkgs/applications/networking/instant-messengers/wavebox/default.nix
index ceb9b4a11403..1cd2df4c7ac1 100644
--- a/pkgs/applications/networking/instant-messengers/wavebox/default.nix
+++ b/pkgs/applications/networking/instant-messengers/wavebox/default.nix
@@ -59,7 +59,7 @@ in stdenv.mkDerivation {
 
   meta = with stdenv.lib; {
     description = "Wavebox messaging application";
-    homepage = https://wavebox.io;
+    homepage = "https://wavebox.io";
     license = licenses.mpl20;
     maintainers = with maintainers; [ rawkode ];
     platforms = ["x86_64-linux"];
diff --git a/pkgs/applications/networking/instant-messengers/wire-desktop/default.nix b/pkgs/applications/networking/instant-messengers/wire-desktop/default.nix
index c04851d586b4..d69f22f32acc 100644
--- a/pkgs/applications/networking/instant-messengers/wire-desktop/default.nix
+++ b/pkgs/applications/networking/instant-messengers/wire-desktop/default.nix
@@ -20,13 +20,13 @@ let
   pname = "wire-desktop";
 
   version = {
-    x86_64-darwin = "3.12.3490";
-    x86_64-linux = "3.12.2916";
+    x86_64-darwin = "3.16.3630";
+    x86_64-linux = "3.16.2923";
   }.${system} or throwSystem;
 
   sha256 = {
-    x86_64-darwin = "0xvhx3r99fl1v1cdqj6sk46kzxv9qi7j754amkhv7knrpmgyp55z";
-    x86_64-linux = "0xx03cpy6kapbjpygwranxjg1a0p8s1xq3cpapvi55rnkbk0qvjw";
+    x86_64-darwin = "1lnjn45bhd36n9xgx6xx9cggwivvkr2s6r4zai2dwg0aac1bywr5";
+    x86_64-linux = "0c8jmlsg2gnxsvly04xj1al80nj52rg4czfdha58sg14x14lyspz";
   }.${system} or throwSystem;
 
   meta = with stdenv.lib; {
@@ -75,7 +75,7 @@ let
       icon = "wire-desktop";
       name = "wire-desktop";
       extraEntries = ''
-        StartupWMClass="Wire"
+        StartupWMClass=Wire
       '';
     };
 
@@ -121,7 +121,7 @@ let
 
     src = fetchurl {
       url = "https://github.com/wireapp/wire-desktop/releases/download/"
-      + "macos%2F${version}/Wire.pkg";
+          + "macos%2F${version}/Wire.pkg";
       inherit sha256;
     };
 
diff --git a/pkgs/applications/networking/instant-messengers/xmpp-client/default.nix b/pkgs/applications/networking/instant-messengers/xmpp-client/default.nix
index 4047eba1fbb5..52cf8e3279a0 100644
--- a/pkgs/applications/networking/instant-messengers/xmpp-client/default.nix
+++ b/pkgs/applications/networking/instant-messengers/xmpp-client/default.nix
@@ -18,7 +18,7 @@ buildGoPackage rec {
 
   meta = with stdenv.lib; {
     description = "An XMPP client with OTR support";
-    homepage = https://github.com/agl/xmpp-client;
+    homepage = "https://github.com/agl/xmpp-client";
     license = licenses.bsd3;
     maintainers = with maintainers; [ codsl ];
   };
diff --git a/pkgs/applications/networking/instant-messengers/zoom-us/default.nix b/pkgs/applications/networking/instant-messengers/zoom-us/default.nix
index d47368a9cb25..360d8b4e1c9d 100644
--- a/pkgs/applications/networking/instant-messengers/zoom-us/default.nix
+++ b/pkgs/applications/networking/instant-messengers/zoom-us/default.nix
@@ -15,11 +15,11 @@ assert pulseaudioSupport -> libpulseaudio != null;
 let
   inherit (stdenv.lib) concatStringsSep makeBinPath optional;
 
-  version = "3.5.361976.0301";
+  version = "5.0.399860.0429";
   srcs = {
     x86_64-linux = fetchurl {
       url = "https://zoom.us/client/${version}/zoom_x86_64.tar.xz";
-      sha256 = "12pqs4pk73d7y9b49vq6f4fryph27k45zm1rjrpijnbi6ln2w993";
+      sha256 = "1jid8rs403b709scz8vpqsi1dxdmssn5426wa3d16p45blnxk16k";
     };
   };
 
diff --git a/pkgs/applications/networking/instant-messengers/zulip/default.nix b/pkgs/applications/networking/instant-messengers/zulip/default.nix
index 33392af766c9..8245f5febc4c 100644
--- a/pkgs/applications/networking/instant-messengers/zulip/default.nix
+++ b/pkgs/applications/networking/instant-messengers/zulip/default.nix
@@ -5,12 +5,12 @@
 
 let
   pname = "zulip";
-  version = "4.0.0";
+  version = "5.0.0";
   name = "${pname}-${version}";
 
   src = fetchurl {
     url = "https://github.com/zulip/zulip-desktop/releases/download/v${version}/Zulip-${version}-x86_64.AppImage";
-    sha256 = "1pni02mb5bvwx3k45vd6ga269ghdl633gjklyslai24rrhp16h9z";
+    sha256 = "0qwlhkzb3lbzk3piyfx8nn827kcafrl3j1nxrn18f8px9gwasinz";
     name="${pname}-${version}.AppImage";
   };
 
@@ -32,7 +32,7 @@ in appimageTools.wrapType2 {
 
   meta = with lib; {
     description = "Desktop client for Zulip Chat";
-    homepage = https://zulipchat.com;
+    homepage = "https://zulipchat.com";
     license = licenses.asl20;
     maintainers = with maintainers; [ jonafato ];
     platforms = [ "x86_64-linux" ];
diff --git a/pkgs/applications/networking/insync/default.nix b/pkgs/applications/networking/insync/default.nix
index 3a2b32f01175..773a07dd6c24 100644
--- a/pkgs/applications/networking/insync/default.nix
+++ b/pkgs/applications/networking/insync/default.nix
@@ -28,7 +28,7 @@ stdenv.mkDerivation rec {
     platforms = ["x86_64-linux"];
     license = stdenv.lib.licenses.unfree;
     maintainers = [ stdenv.lib.maintainers.benley ];
-    homepage = https://www.insynchq.com;
+    homepage = "https://www.insynchq.com";
     description = "Google Drive sync and backup with multiple account support";
     longDescription = ''
      Insync is a commercial application that syncs your Drive files to your
diff --git a/pkgs/applications/networking/ipfs-cluster/default.nix b/pkgs/applications/networking/ipfs-cluster/default.nix
index 76cc393f26a3..f921970175a2 100644
--- a/pkgs/applications/networking/ipfs-cluster/default.nix
+++ b/pkgs/applications/networking/ipfs-cluster/default.nix
@@ -2,21 +2,21 @@
 
 buildGoModule rec {
   pname = "ipfs-cluster";
-  version = "0.11.0";
+  version = "0.12.1";
   rev = "v${version}";
 
-  modSha256 = "03bqwg9nqh7w6j887gzxr2mcn14jc8f07z896b3swg5wzaz1i6hs";
+  modSha256 = "0bn47lcb9plzvl2vqqj7p33ishz6bbqpsgf2i6p34g13bwwpq647";
 
   src = fetchFromGitHub {
     owner = "ipfs";
     repo = "ipfs-cluster";
     inherit rev;
-    sha256 = "0q5lanm2zdwwhdwv05fssb34y4y4dha3dq7x1iaabbf70lpqv6yx";
+    sha256 = "1jh6ynj50jd4w79widaqrgm3h3yz5h03vq0lbsx717a8d9073blh";
   };
 
   meta = with stdenv.lib; {
     description = "Allocate, replicate, and track Pins across a cluster of IPFS daemons";
-    homepage = https://cluster.ipfs.io/;
+    homepage = "https://cluster.ipfs.io/";
     license = licenses.mit;
     platforms = platforms.unix;
     maintainers = with maintainers; [ jglukasik ];
diff --git a/pkgs/applications/networking/ipfs-migrator/default.nix b/pkgs/applications/networking/ipfs-migrator/default.nix
index dc646f9471e1..578ac9b04797 100644
--- a/pkgs/applications/networking/ipfs-migrator/default.nix
+++ b/pkgs/applications/networking/ipfs-migrator/default.nix
@@ -19,7 +19,7 @@ buildGoPackage {
 
   meta = with stdenv.lib; {
     description = "Migration tool for ipfs repositories";
-    homepage = https://ipfs.io/;
+    homepage = "https://ipfs.io/";
     license = licenses.mit;
     platforms = platforms.unix;
     maintainers = with maintainers; [ elitak ];
diff --git a/pkgs/applications/networking/ipfs-migrator/deps.nix b/pkgs/applications/networking/ipfs-migrator/deps.nix
index 1ad1c383c8c6..b4ae5ef827ec 100644
--- a/pkgs/applications/networking/ipfs-migrator/deps.nix
+++ b/pkgs/applications/networking/ipfs-migrator/deps.nix
@@ -3,7 +3,7 @@
     goPackagePath = "github.com/jbenet/goprocess";
     fetch = {
       type = "git";
-      url = https://github.com/jbenet/goprocess;
+      url = "https://github.com/jbenet/goprocess";
       rev = "b497e2f366b8624394fb2e89c10ab607bebdde0b";
       sha256 = "1lnvkzki7vnqn5c4m6bigk0k85haicmg27w903kwg30rdvblm82s";
     };
@@ -12,7 +12,7 @@
     goPackagePath = "github.com/jbenet/go-random";
     fetch = {
       type = "git";
-      url = https://github.com/jbenet/go-random;
+      url = "https://github.com/jbenet/go-random";
       rev = "384f606e91f542a98e779e652eed88051618f0f7";
       sha256 = "0gcshzl9n3apzc0jaxqrjsc038yfrzfyhpdqgbpcnajin83l2msa";
     };
@@ -21,7 +21,7 @@
     goPackagePath = "github.com/jbenet/go-random-files";
     fetch = {
       type = "git";
-      url = https://github.com/jbenet/go-random-files;
+      url = "https://github.com/jbenet/go-random-files";
       rev = "737479700b40b4b50e914e963ce8d9d44603e3c8";
       sha256 = "1klpdc4qkrfy31r7qh00fcz42blswzabmcnry9byd5adhszxj9bw";
     };
@@ -30,7 +30,7 @@
     goPackagePath = "github.com/hashicorp/golang-lru";
     fetch = {
       type = "git";
-      url = https://github.com/hashicorp/golang-lru;
+      url = "https://github.com/hashicorp/golang-lru";
       rev = "20f1fb78b0740ba8c3cb143a61e86ba5c8669768";
       sha256 = "12k2cp2k615fjvfa5hyb9k2alian77wivds8s65diwshwv41939f";
     };
diff --git a/pkgs/applications/networking/ipfs/default.nix b/pkgs/applications/networking/ipfs/default.nix
index db325cf13877..b94fc1addb0b 100644
--- a/pkgs/applications/networking/ipfs/default.nix
+++ b/pkgs/applications/networking/ipfs/default.nix
@@ -2,21 +2,25 @@
 
 buildGoModule rec {
   pname = "ipfs";
-  version = "0.4.22";
+  version = "0.4.23";
   rev = "v${version}";
 
   src = fetchFromGitHub {
     owner = "ipfs";
     repo = "go-ipfs";
     inherit rev;
-    sha256 = "1drwkam2m1qdny51l7ja9vd33jffy8w0z0wbp28ajx4glp0kyra2";
+    sha256 = "19m1bhqf1jghdv2ngdnjdk1kvjcxbkgm1ccdkmkabv4ii43h8jwm";
   };
 
-  modSha256 = "0jbzkifn88myk2vpd390clyl835978vpcfz912y8cnl26s6q677n";
+  postPatch = ''
+    rm -rf test/dependencies
+  '';
+
+  modSha256 = "12m4ind1s8zaa6kssblc28z2cafy20w2jp80kzif39hg5ar9bijm";
 
   meta = with stdenv.lib; {
     description = "A global, versioned, peer-to-peer filesystem";
-    homepage = https://ipfs.io/;
+    homepage = "https://ipfs.io/";
     license = licenses.mit;
     platforms = platforms.unix;
     maintainers = with maintainers; [ fpletz ];
diff --git a/pkgs/applications/networking/ipget/default.nix b/pkgs/applications/networking/ipget/default.nix
index 9f206a8f48f3..6a9bcaf32d22 100644
--- a/pkgs/applications/networking/ipget/default.nix
+++ b/pkgs/applications/networking/ipget/default.nix
@@ -25,7 +25,7 @@ buildGoPackage rec {
 
   meta = with stdenv.lib; {
     description = "Retrieve files over IPFS and save them locally";
-    homepage = https://ipfs.io/;
+    homepage = "https://ipfs.io/";
     license = licenses.mit;
     platforms = platforms.unix;
   };
diff --git a/pkgs/applications/networking/iptraf-ng/default.nix b/pkgs/applications/networking/iptraf-ng/default.nix
index cdece4eb644f..1fc81be240bf 100644
--- a/pkgs/applications/networking/iptraf-ng/default.nix
+++ b/pkgs/applications/networking/iptraf-ng/default.nix
@@ -38,7 +38,7 @@ stdenv.mkDerivation rec {
       of the Linux kernel, so it can be used on a wide variety of supported
       network cards.
     '';
-    homepage = https://fedorahosted.org/iptraf-ng/;
+    homepage = "https://fedorahosted.org/iptraf-ng/";
     license = stdenv.lib.licenses.gpl2;
     platforms = stdenv.lib.platforms.linux;
     maintainers = [ stdenv.lib.maintainers.devhell ];
diff --git a/pkgs/applications/networking/iptraf/default.nix b/pkgs/applications/networking/iptraf/default.nix
index d2d9a67fb4d9..83d9a019e48b 100644
--- a/pkgs/applications/networking/iptraf/default.nix
+++ b/pkgs/applications/networking/iptraf/default.nix
@@ -4,7 +4,7 @@ stdenv.mkDerivation {
   name = "iptraf-3.0.1";
 
   src = fetchurl {
-    url = ftp://iptraf.seul.org/pub/iptraf/iptraf-3.0.1.tar.gz;
+    url = "ftp://iptraf.seul.org/pub/iptraf/iptraf-3.0.1.tar.gz";
     sha256 = "12n059j9iihhpf6spmlaspqzxz3wqan6kkpnhmlj08jdijpnk84m";
   };
 
@@ -24,7 +24,7 @@ stdenv.mkDerivation {
   buildInputs = [ncurses];
 
   meta = {
-    homepage = http://iptraf.seul.org/;
+    homepage = "http://iptraf.seul.org/";
     license = stdenv.lib.licenses.gpl2Plus;
     description = "Console-based network statistics utility for Linux";
     platforms = stdenv.lib.platforms.linux;
diff --git a/pkgs/applications/networking/irc/bip/default.nix b/pkgs/applications/networking/irc/bip/default.nix
index 43ec0910cc2b..af67c224e7d7 100644
--- a/pkgs/applications/networking/irc/bip/default.nix
+++ b/pkgs/applications/networking/irc/bip/default.nix
@@ -41,7 +41,7 @@ stdenv.mkDerivation rec {
 
   meta = {
     description = "An IRC proxy (bouncer)";
-    homepage = http://bip.milkypond.org/;
+    homepage = "http://bip.milkypond.org/";
     license = stdenv.lib.licenses.gpl2;
     downloadPage = "https://projects.duckcorp.org/projects/bip/files";
     platforms = stdenv.lib.platforms.linux;
diff --git a/pkgs/applications/networking/irc/communi/default.nix b/pkgs/applications/networking/irc/communi/default.nix
index 8278f90d321c..6cb6f2c2ef67 100644
--- a/pkgs/applications/networking/irc/communi/default.nix
+++ b/pkgs/applications/networking/irc/communi/default.nix
@@ -40,7 +40,7 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "A simple and elegant cross-platform IRC client";
-    homepage = https://github.com/communi/communi-desktop;
+    homepage = "https://github.com/communi/communi-desktop";
     license = licenses.bsd3;
     maintainers = with maintainers; [ hrdinka ];
     platforms = platforms.all;
diff --git a/pkgs/applications/networking/irc/epic5/default.nix b/pkgs/applications/networking/irc/epic5/default.nix
index 0cf06a1f4522..cb2fa4ae6823 100644
--- a/pkgs/applications/networking/irc/epic5/default.nix
+++ b/pkgs/applications/networking/irc/epic5/default.nix
@@ -30,7 +30,7 @@ stdenv.mkDerivation rec {
   '';
 
   meta = with stdenv.lib; {
-    homepage = http://epicsol.org;
+    homepage = "http://epicsol.org";
     description = "A IRC client that offers a great ircII interface";
     license = licenses.bsd3;
     maintainers = [];
diff --git a/pkgs/applications/networking/irc/glowing-bear/default.nix b/pkgs/applications/networking/irc/glowing-bear/default.nix
index 2d12386bafac..59278dddad1a 100644
--- a/pkgs/applications/networking/irc/glowing-bear/default.nix
+++ b/pkgs/applications/networking/irc/glowing-bear/default.nix
@@ -19,7 +19,7 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "A web client for Weechat";
-    homepage = https://github.com/glowing-bear/glowing-bear;
+    homepage = "https://github.com/glowing-bear/glowing-bear";
     license = licenses.gpl3Plus;
     maintainers = with maintainers; [ delroth ];
     platforms = platforms.unix;
diff --git a/pkgs/applications/networking/irc/hexchat/default.nix b/pkgs/applications/networking/irc/hexchat/default.nix
index 263cf23c17ff..c5b2a9f1b28e 100644
--- a/pkgs/applications/networking/irc/hexchat/default.nix
+++ b/pkgs/applications/networking/irc/hexchat/default.nix
@@ -42,7 +42,7 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "A popular and easy to use graphical IRC (chat) client";
-    homepage = https://hexchat.github.io/;
+    homepage = "https://hexchat.github.io/";
     license = licenses.gpl2;
     platforms = platforms.linux;
     maintainers = with maintainers; [ romildo ];
diff --git a/pkgs/applications/networking/irc/ii/default.nix b/pkgs/applications/networking/irc/ii/default.nix
index 4807f3419d15..163dec194b15 100644
--- a/pkgs/applications/networking/irc/ii/default.nix
+++ b/pkgs/applications/networking/irc/ii/default.nix
@@ -13,7 +13,7 @@ stdenv.mkDerivation rec {
   '';
 
   meta = {
-    homepage = https://tools.suckless.org/ii/;
+    homepage = "https://tools.suckless.org/ii/";
     license = stdenv.lib.licenses.mit;
     description = "Irc it, simple FIFO based irc client";
     platforms = stdenv.lib.platforms.unix;
diff --git a/pkgs/applications/networking/irc/irssi/default.nix b/pkgs/applications/networking/irc/irssi/default.nix
index 1751812d67e8..27b37e78a1a4 100644
--- a/pkgs/applications/networking/irc/irssi/default.nix
+++ b/pkgs/applications/networking/irc/irssi/default.nix
@@ -21,7 +21,7 @@ stdenv.mkDerivation rec {
   ];
 
   meta = {
-    homepage    = https://irssi.org;
+    homepage    = "https://irssi.org";
     description = "A terminal based IRC client";
     platforms   = stdenv.lib.platforms.unix;
     maintainers = with stdenv.lib.maintainers; [ lovek323 ];
diff --git a/pkgs/applications/networking/irc/irssi/fish/default.nix b/pkgs/applications/networking/irc/irssi/fish/default.nix
index aefc48d4a3ee..f1e0e9158ca6 100644
--- a/pkgs/applications/networking/irc/irssi/fish/default.nix
+++ b/pkgs/applications/networking/irc/irssi/fish/default.nix
@@ -4,7 +4,7 @@ stdenv.mkDerivation rec {
   name = "fish-irssi-20130413-e98156bebd";
   
   src = fetchurl {
-    url = https://github.com/falsovsky/FiSH-irssi/tarball/e98156bebd;
+    url = "https://github.com/falsovsky/FiSH-irssi/tarball/e98156bebd";
     name = "${name}.tar.gz";
     sha256 = "1ndr51qrg66h1mfzacwzl1vd6lj39pdc4p4z5iihrj4r2f6gk11a";
   };
@@ -25,7 +25,7 @@ stdenv.mkDerivation rec {
   buildInputs = [ gmp automake autoconf libtool openssl glib ];
   
   meta = {
-    homepage = https://github.com/falsovsky/FiSH-irssi;
+    homepage = "https://github.com/falsovsky/FiSH-irssi";
     license = stdenv.lib.licenses.unfree; # I can't find any mention of license
     maintainers = with stdenv.lib.maintainers; [viric];
   };
diff --git a/pkgs/applications/networking/irc/konversation/default.nix b/pkgs/applications/networking/irc/konversation/default.nix
index 6a58241b89aa..2890deccb800 100644
--- a/pkgs/applications/networking/irc/konversation/default.nix
+++ b/pkgs/applications/networking/irc/konversation/default.nix
@@ -82,6 +82,6 @@ in mkDerivation rec {
     description = "Integrated IRC client for KDE";
     license = with lib.licenses; [ gpl2 ];
     maintainers = with lib.maintainers; [ fridh ];
-    homepage = https://konversation.kde.org;
+    homepage = "https://konversation.kde.org";
   };
 }
diff --git a/pkgs/applications/networking/irc/quassel/default.nix b/pkgs/applications/networking/irc/quassel/default.nix
index f78053bdc37b..86f7793819b0 100644
--- a/pkgs/applications/networking/irc/quassel/default.nix
+++ b/pkgs/applications/networking/irc/quassel/default.nix
@@ -80,7 +80,7 @@ in (if !buildClient then stdenv.mkDerivation else mkDerivation) rec {
     '';
 
   meta = with stdenv.lib; {
-    homepage = https://quassel-irc.org/;
+    homepage = "https://quassel-irc.org/";
     description = "Qt/KDE distributed IRC client suppporting a remote daemon";
     longDescription = ''
       Quassel IRC is a cross-platform, distributed IRC client,
@@ -91,7 +91,7 @@ in (if !buildClient then stdenv.mkDerivation else mkDerivation) rec {
     '';
     license = licenses.gpl3;
     maintainers = with maintainers; [ phreedom ttuegel ];
-    repositories.git = https://github.com/quassel/quassel.git;
+    repositories.git = "https://github.com/quassel/quassel.git";
     inherit (qtbase.meta) platforms;
   };
 }
diff --git a/pkgs/applications/networking/irc/qweechat/default.nix b/pkgs/applications/networking/irc/qweechat/default.nix
index acf030222a1b..27adb2cefc5f 100644
--- a/pkgs/applications/networking/irc/qweechat/default.nix
+++ b/pkgs/applications/networking/irc/qweechat/default.nix
@@ -18,11 +18,11 @@ python27Packages.buildPythonApplication rec {
   '';
 
   propagatedBuildInputs = with python27Packages; [
-     pyside
+     pyside setuptools
   ];
 
   meta = with stdenv.lib; {
-    homepage = https://github.com/weechat/qweechat;
+    homepage = "https://github.com/weechat/qweechat";
     description = "Qt remote GUI for WeeChat";
     license = licenses.gpl3;
     maintainers = with maintainers; [ ramkromberg ];
diff --git a/pkgs/applications/networking/irc/sic/default.nix b/pkgs/applications/networking/irc/sic/default.nix
index 409142955970..69605af2f660 100644
--- a/pkgs/applications/networking/irc/sic/default.nix
+++ b/pkgs/applications/networking/irc/sic/default.nix
@@ -12,7 +12,7 @@ stdenv.mkDerivation rec {
 
   meta = {
     description = "Simple IRC client";
-    homepage = https://tools.suckless.org/sic/;
+    homepage = "https://tools.suckless.org/sic/";
     license = stdenv.lib.licenses.mit;
     platforms = stdenv.lib.platforms.unix;
   };
diff --git a/pkgs/applications/networking/irc/weechat/default.nix b/pkgs/applications/networking/irc/weechat/default.nix
index 96d7b3faaede..4538edd2e760 100644
--- a/pkgs/applications/networking/irc/weechat/default.nix
+++ b/pkgs/applications/networking/irc/weechat/default.nix
@@ -27,12 +27,12 @@ let
   in
     assert lib.all (p: p.enabled -> ! (builtins.elem null p.buildInputs)) plugins;
     stdenv.mkDerivation rec {
-      version = "2.7.1";
+      version = "2.8";
       pname = "weechat";
 
       src = fetchurl {
         url = "https://weechat.org/files/src/weechat-${version}.tar.bz2";
-        sha256 = "0acz41jg7lmipni9z2agfqw4dhmx5hf6k9w4pvr4zih1fhkldva2";
+        sha256 = "0xpzl7985j47rpmly4r833jxd448xpy7chqphaxmhlql2c0gc08z";
       };
 
       outputs = [ "out" "man" ] ++ map (p: p.name) enabledPlugins;
@@ -70,7 +70,7 @@ let
       '';
 
       meta = {
-        homepage = http://www.weechat.org/;
+        homepage = "http://www.weechat.org/";
         description = "A fast, light and extensible chat client";
         longDescription = ''
           You can find more documentation as to how to customize this package
diff --git a/pkgs/applications/networking/irc/weechat/scripts/wee-slack/default.nix b/pkgs/applications/networking/irc/weechat/scripts/wee-slack/default.nix
index 632a485381d0..8df6c8d6124e 100644
--- a/pkgs/applications/networking/irc/weechat/scripts/wee-slack/default.nix
+++ b/pkgs/applications/networking/irc/weechat/scripts/wee-slack/default.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation rec {
   pname = "wee-slack";
-  version = "2.4.0";
+  version = "2.5.0";
 
   src = fetchFromGitHub {
     repo = "wee-slack";
     owner = "wee-slack";
     rev = "v${version}";
-    sha256 = "0h425ln5vv76zv41dccapyfbl8qmmflbpwmrd26knqyj8k24zfpr";
+    sha256 = "0sxgi5fg8qvzqmxy7sdma6v0wj93xwh21av10n8nxvdskacw5dxz";
   };
 
   patches = [
@@ -19,17 +19,23 @@ stdenv.mkDerivation rec {
         paths = with python3Packages; [ websocket_client six ];
       }}/${python3Packages.python.sitePackages}";
     })
+    ./hardcode-json-file-path.patch
   ];
 
+  postPatch = ''
+    substituteInPlace wee_slack.py --subst-var out
+  '';
+
   passthru.scripts = [ "wee_slack.py" ];
 
   installPhase = ''
     mkdir -p $out/share
     cp wee_slack.py $out/share/wee_slack.py
+    install -D -m 0444 weemoji.json $out/share/wee-slack/weemoji.json
   '';
 
   meta = with stdenv.lib; {
-    homepage = https://github.com/wee-slack/wee-slack;
+    homepage = "https://github.com/wee-slack/wee-slack";
     license = licenses.mit;
     maintainers = with maintainers; [ willibutz ];
     description = ''
diff --git a/pkgs/applications/networking/irc/weechat/scripts/wee-slack/hardcode-json-file-path.patch b/pkgs/applications/networking/irc/weechat/scripts/wee-slack/hardcode-json-file-path.patch
new file mode 100644
index 000000000000..7413a9229ce6
--- /dev/null
+++ b/pkgs/applications/networking/irc/weechat/scripts/wee-slack/hardcode-json-file-path.patch
@@ -0,0 +1,12 @@
+--- a/wee_slack.py
++++ b/wee_slack.py
+@@ -4560,8 +4560,7 @@
+ 
+ def load_emoji():
+     try:
+-        DIR = w.info_get('weechat_dir', '')
+-        with open('{}/weemoji.json'.format(DIR), 'r') as ef:
++        with open('@out@/share/wee-slack/weemoji.json', 'r') as ef:
+             emojis = json.loads(ef.read())
+             if 'emoji' in emojis:
+                 print_error('The weemoji.json file is in an old format. Please update it.')
diff --git a/pkgs/applications/networking/irc/weechat/scripts/weechat-autosort/default.nix b/pkgs/applications/networking/irc/weechat/scripts/weechat-autosort/default.nix
index c39b7fe15963..883ed793ced6 100644
--- a/pkgs/applications/networking/irc/weechat/scripts/weechat-autosort/default.nix
+++ b/pkgs/applications/networking/irc/weechat/scripts/weechat-autosort/default.nix
@@ -18,8 +18,8 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "Autosort is a weechat script to automatically or manually keep your buffers sorted";
-    homepage = https://github.com/de-vri-es/weechat-autosort;
+    homepage = "https://github.com/de-vri-es/weechat-autosort";
     license = licenses.gpl3;
-    maintainers = with maintainers; [ ma27 emily ];
+    maintainers = with maintainers; [ emily ];
   };
 }
diff --git a/pkgs/applications/networking/irc/weechat/scripts/weechat-matrix-bridge/default.nix b/pkgs/applications/networking/irc/weechat/scripts/weechat-matrix-bridge/default.nix
index ea5052f37a3f..f1b075e6d082 100644
--- a/pkgs/applications/networking/irc/weechat/scripts/weechat-matrix-bridge/default.nix
+++ b/pkgs/applications/networking/irc/weechat/scripts/weechat-matrix-bridge/default.nix
@@ -38,7 +38,7 @@ stdenv.mkDerivation {
 
   meta = with stdenv.lib; {
     description = "A WeeChat script in Lua that implements the matrix.org chat protocol";
-    homepage = https://github.com/torhve/weechat-matrix-protocol-script;
+    homepage = "https://github.com/torhve/weechat-matrix-protocol-script";
     maintainers = with maintainers; [ ma27 ];
     license = licenses.mit; # see https://github.com/torhve/weechat-matrix-protocol-script/blob/0052e7275ae149dc5241226391c9b1889ecc3c6b/matrix.lua#L53
     platforms = platforms.unix;
diff --git a/pkgs/applications/networking/irc/weechat/scripts/weechat-matrix/default.nix b/pkgs/applications/networking/irc/weechat/scripts/weechat-matrix/default.nix
index 038611ca2898..aca9a9a111d6 100644
--- a/pkgs/applications/networking/irc/weechat/scripts/weechat-matrix/default.nix
+++ b/pkgs/applications/networking/irc/weechat/scripts/weechat-matrix/default.nix
@@ -22,13 +22,13 @@ let
   ]);
 in buildPythonPackage {
   pname = "weechat-matrix";
-  version = "unstable-2020-01-21";
+  version = "0.1.0";
 
   src = fetchFromGitHub {
     owner = "poljar";
     repo = "weechat-matrix";
-    rev = "46640df3e0bfb058e97d8abe723bb88fdf4e5177";
-    sha256 = "1j3l43j741csfxsp1nsc74y6wj2wm86c45iraf167g6p0sdzcq8z";
+    rev = "65a5db7291439b6132e35e8cc09ed901614fabf6";
+    sha256 = "0m3k5vrv5ab1aw1mjd0r8d71anwqzvncvv9v5zx9xp1i188sdm8x";
   };
 
   propagatedBuildInputs = [
@@ -53,11 +53,9 @@ in buildPythonPackage {
     mkdir -p $out/share $out/bin
     cp $src/main.py $out/share/matrix.py
 
-    cp \
-      $src/contrib/matrix_upload \
-      $src/contrib/matrix_decrypt \
-      $src/contrib/matrix_sso_helper \
-      $out/bin/
+    cp $src/contrib/matrix_upload.py $out/bin/matrix_upload
+    cp $src/contrib/matrix_decrypt.py $out/bin/matrix_decrypt
+    cp $src/contrib/matrix_sso_helper.py $out/bin/matrix_sso_helper
     substituteInPlace $out/bin/matrix_upload \
       --replace '/usr/bin/env -S python3' '${scriptPython}/bin/python'
     substituteInPlace $out/bin/matrix_sso_helper \
diff --git a/pkgs/applications/networking/irc/wraith/default.nix b/pkgs/applications/networking/irc/wraith/default.nix
index 996ab72d6f5d..02bccb67bfe1 100644
--- a/pkgs/applications/networking/irc/wraith/default.nix
+++ b/pkgs/applications/networking/irc/wraith/default.nix
@@ -40,7 +40,7 @@ mkDerivation rec {
       The binary will not run when moved onto non-NixOS systems; use patchelf
       to fix its runtime dependenices.
     '';
-    homepage = https://wraith.botpack.net/;
+    homepage = "https://wraith.botpack.net/";
     license = licenses.gpl2Plus;
     maintainers = with maintainers; [ elitak ];
     platforms = platforms.linux;
diff --git a/pkgs/applications/networking/gmailieer/default.nix b/pkgs/applications/networking/lieer/default.nix
index a20728e2199f..fc5214f0d01f 100644
--- a/pkgs/applications/networking/gmailieer/default.nix
+++ b/pkgs/applications/networking/lieer/default.nix
@@ -1,14 +1,14 @@
 { stdenv, fetchFromGitHub, python3Packages }:
 
 python3Packages.buildPythonApplication rec {
-  name = "gmailieer-${version}";
-  version = "1.0";
+  pname = "lieer";
+  version = "1.1";
 
   src = fetchFromGitHub {
     owner = "gauteh";
-    repo = "gmailieer";
+    repo = "lieer";
     rev = "v${version}";
-    sha256 = "1zzylv8xbcrh34bz0s29dawzcyx39lai8y8wk0bl4x75v1jfynvf";
+    sha256 = "19jx3sm925nrzl26km1bxbp6y5gk1mzwadd79vip2jl70b3xk9f8";
   };
 
   propagatedBuildInputs = with python3Packages; [
@@ -27,8 +27,8 @@ python3Packages.buildPythonApplication rec {
       tags in the notmuch database may be pushed back remotely to your
       GMail account.
     '';
-    homepage         = https://github.com/gauteh/gmailieer;
-    repositories.git = https://github.com/gauteh/gmailieer.git;
+    homepage         = "https://lieer.gaute.vetsj.com/";
+    repositories.git = "https://github.com/gauteh/lieer.git";
     license          = licenses.gpl3Plus;
     maintainers      = with maintainers; [ kaiha ];
   };
diff --git a/pkgs/applications/networking/linssid/default.nix b/pkgs/applications/networking/linssid/default.nix
index daddf6adf7e4..f458e03913ba 100644
--- a/pkgs/applications/networking/linssid/default.nix
+++ b/pkgs/applications/networking/linssid/default.nix
@@ -31,7 +31,7 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "Graphical wireless scanning for Linux";
-    homepage = https://sourceforge.net/projects/linssid/;
+    homepage = "https://sourceforge.net/projects/linssid/";
     license = licenses.gpl3;
     platforms = platforms.linux;
     maintainers = [ maintainers.bjornfor ];
diff --git a/pkgs/applications/networking/maestral/default.nix b/pkgs/applications/networking/maestral/default.nix
index 708957bdf015..62be1a4118c0 100644
--- a/pkgs/applications/networking/maestral/default.nix
+++ b/pkgs/applications/networking/maestral/default.nix
@@ -1,24 +1,41 @@
-{ stdenv, lib, python3Packages, fetchFromGitHub
-, withGui ? false, wrapQtAppsHook ? null }:
-
-python3Packages.buildPythonApplication rec {
+{ stdenv
+, lib
+, fetchFromGitHub
+, python3
+, withGui ? false
+, wrapQtAppsHook ? null
+}:
+
+python3.pkgs.buildPythonApplication rec {
   pname = "maestral${lib.optionalString withGui "-gui"}";
-  version = "0.4.2";
+  version = "0.6.3";
+
+  disabled = python3.pkgs.pythonOlder "3.6";
 
   src = fetchFromGitHub {
     owner = "SamSchott";
     repo = "maestral-dropbox";
     rev = "v${version}";
-    sha256 = "0xis0cqfp3wgajwk44dmi2gbfirmz0a0zi25qxdzpdn0z19hp88m";
+    sha256 = "0h1vbx00mps2msdhsab1yz64c8sprwrg38nkqyj86mkb6jkirq92";
   };
 
-  disabled = python3Packages.pythonOlder "3.6";
-
-  propagatedBuildInputs = (with python3Packages; [
-    blinker click dropbox keyring keyrings-alt Pyro4 requests u-msgpack-python watchdog
+  propagatedBuildInputs = with python3.pkgs; [
+    blinker
+    bugsnag
+    click
+    dropbox
+    keyring
+    keyrings-alt
+    lockfile
+    pathspec
+    Pyro5
+    requests
+    u-msgpack-python
+    watchdog
   ] ++ lib.optionals stdenv.isLinux [
-    sdnotify systemd
-  ] ++ lib.optional withGui pyqt5);
+    sdnotify
+    systemd
+  ] ++ lib.optional withGui pyqt5;
 
   nativeBuildInputs = lib.optional withGui wrapQtAppsHook;
 
diff --git a/pkgs/applications/networking/mailreaders/aerc/default.nix b/pkgs/applications/networking/mailreaders/aerc/default.nix
index 0fa30a85d1b6..f53f2244e9f1 100644
--- a/pkgs/applications/networking/mailreaders/aerc/default.nix
+++ b/pkgs/applications/networking/mailreaders/aerc/default.nix
@@ -17,10 +17,8 @@ in buildGoModule rec {
   modSha256 = "127xrah6xxrvc224g5dxn432sagrssx8v7phzapcsdajsnmagq6x";
 
   nativeBuildInputs = [
-    go
     scdoc
     python3.pkgs.wrapPython
-    notmuch
   ];
 
   patches = [
@@ -31,7 +29,7 @@ in buildGoModule rec {
     python3.pkgs.colorama
   ];
 
-  buildInputs = [ python3 perl ];
+  buildInputs = [ python3 notmuch ];
 
   GOFLAGS="-tags=notmuch";
 
@@ -57,7 +55,7 @@ in buildGoModule rec {
 
   meta = with stdenv.lib; {
     description = "aerc is an email client for your terminal";
-    homepage = https://aerc-mail.org/;
+    homepage = "https://aerc-mail.org/";
     maintainers = with maintainers; [ tadeokondrak ];
     license = licenses.mit;
     platforms = platforms.unix;
diff --git a/pkgs/applications/networking/mailreaders/afew/default.nix b/pkgs/applications/networking/mailreaders/afew/default.nix
index 54b3e10b5e29..8b2a6f05c4e5 100644
--- a/pkgs/applications/networking/mailreaders/afew/default.nix
+++ b/pkgs/applications/networking/mailreaders/afew/default.nix
@@ -2,18 +2,22 @@
 
 python3Packages.buildPythonApplication rec {
   pname = "afew";
-  version = "2.0.0";
+  version = "3.0.0";
 
   src = python3Packages.fetchPypi {
     inherit pname version;
-    sha256 = "0j60501nm242idf2ig0h7p6wrg58n5v2p6zfym56v9pbvnbmns0s";
+    sha256 = "18j3xyzchlslcrkycr2i59jg73cb6yh5s7l3qnl6sa7vgxcbhq7c";
   };
 
   nativeBuildInputs = with python3Packages; [ sphinx setuptools_scm ];
 
   propagatedBuildInputs = with python3Packages; [
     python3Packages.setuptools python3Packages.notmuch chardet dkimpy
-  ] ++ stdenv.lib.optional (!python3Packages.isPy3k) subprocess32;
+  ];
+
+  checkInputs = with python3Packages; [
+    freezegun notmuch
+  ];
 
   makeWrapperArgs = [
     ''--prefix PATH ':' "${notmuch}/bin"''
@@ -33,7 +37,7 @@ python3Packages.buildPythonApplication rec {
 
 
   meta = with stdenv.lib; {
-    homepage = https://github.com/afewmail/afew;
+    homepage = "https://github.com/afewmail/afew";
     description = "An initial tagging script for notmuch mail";
     license = licenses.isc;
     maintainers = with maintainers; [ andir flokli ];
diff --git a/pkgs/applications/networking/mailreaders/astroid/default.nix b/pkgs/applications/networking/mailreaders/astroid/default.nix
index 7d62aa43888e..171136ce22ca 100644
--- a/pkgs/applications/networking/mailreaders/astroid/default.nix
+++ b/pkgs/applications/networking/mailreaders/astroid/default.nix
@@ -39,7 +39,7 @@ stdenv.mkDerivation rec {
   '';
 
   meta = with stdenv.lib; {
-    homepage = https://astroidmail.github.io/;
+    homepage = "https://astroidmail.github.io/";
     description = "GTK frontend to the notmuch mail system";
     maintainers = with maintainers; [ bdimcheff SuprDewd ];
     license = licenses.gpl3Plus;
diff --git a/pkgs/applications/networking/mailreaders/balsa/default.nix b/pkgs/applications/networking/mailreaders/balsa/default.nix
index e7c9d50cb9be..04d00a166aa8 100644
--- a/pkgs/applications/networking/mailreaders/balsa/default.nix
+++ b/pkgs/applications/networking/mailreaders/balsa/default.nix
@@ -52,7 +52,7 @@ stdenv.mkDerivation rec {
   enableParallelBuilding = true;
 
   meta = with stdenv.lib; {
-    homepage = http://pawsa.fedorapeople.org/balsa/;
+    homepage = "http://pawsa.fedorapeople.org/balsa/";
     description = "An e-mail client for GNOME";
     license = licenses.gpl2Plus;
     platforms = platforms.unix;
diff --git a/pkgs/applications/networking/mailreaders/claws-mail/default.nix b/pkgs/applications/networking/mailreaders/claws-mail/default.nix
index ffe75eaac7c8..5f5e66597acc 100644
--- a/pkgs/applications/networking/mailreaders/claws-mail/default.nix
+++ b/pkgs/applications/networking/mailreaders/claws-mail/default.nix
@@ -107,6 +107,6 @@ stdenv.mkDerivation rec {
     homepage = "https://www.claws-mail.org/";
     license = licenses.gpl3;
     platforms = platforms.linux;
-    maintainers = with maintainers; [ fpletz globin ];
+    maintainers = with maintainers; [ fpletz globin orivej ];
   };
 }
diff --git a/pkgs/applications/networking/mailreaders/claws-mail/gtk3.nix b/pkgs/applications/networking/mailreaders/claws-mail/gtk3.nix
new file mode 100644
index 000000000000..1e1909e7109a
--- /dev/null
+++ b/pkgs/applications/networking/mailreaders/claws-mail/gtk3.nix
@@ -0,0 +1,121 @@
+{ config, fetchgit, stdenv, wrapGAppsHook, autoreconfHook, bison, flex
+, curl, dbus, dbus-glib, enchant, gtk3, gnutls, gnupg, gpgme
+, libarchive, libcanberra-gtk3, libetpan, libnotify, libsoup, libxml2, networkmanager
+, openldap, perl, pkgconfig, poppler, python, shared-mime-info, webkitgtk
+, glib-networking, gsettings-desktop-schemas, libSM, libytnef, libical
+# Build options
+# TODO: A flag to build the manual.
+# TODO: Plugins that complain about their missing dependencies, even when
+#       provided:
+#         gdata requires libgdata
+#         geolocation requires libchamplain
+, enableLdap ? false
+, enableNetworkManager ? config.networking.networkmanager.enable or false
+, enablePgp ? true
+, enablePluginArchive ? false
+, enablePluginFancy ? true
+, enablePluginNotificationDialogs ? true
+, enablePluginNotificationSounds ? true
+, enablePluginPdf ? false
+, enablePluginPython ? false
+, enablePluginRavatar ? false
+, enablePluginRssyl ? false
+, enablePluginSmime ? false
+, enablePluginSpamassassin ? false
+, enablePluginSpamReport ? false
+, enablePluginVcalendar ? false
+, enableSpellcheck ? false
+}:
+
+with stdenv.lib;
+
+stdenv.mkDerivation rec {
+  pname = "claws-mail-gtk3";
+  version = "3.17.5";
+
+  src = fetchgit {
+    url = "git://git.claws-mail.org/claws.git";
+    rev = "c1e1902323c2b5dfe82144328b7933dc857ef343"; # this commit is "for release 3.17.5"
+    sha256 = "0cqzlzcms6alvsdsbcc06bsdi1h349b16qngn2z1p8fz16x6s6cy";
+  };
+
+  outputs = [ "out" "dev" ];
+
+  patches = [ ./mime.patch ];
+
+  preConfigure = ''
+    # autotools check tries to dlopen libpython as a requirement for the python plugin
+    export LD_LIBRARY_PATH=$LD_LIBRARY_PATH''${LD_LIBRARY_PATH:+:}${python}/lib
+    # generate version without .git
+    [ -e version ] || echo "echo ${version}" > version
+  '';
+
+  postPatch = ''
+    substituteInPlace src/procmime.c \
+        --subst-var-by MIMEROOTDIR ${shared-mime-info}/share
+  '';
+
+  nativeBuildInputs = [ autoreconfHook bison flex pkgconfig wrapGAppsHook python.pkgs.wrapPython ];
+  propagatedBuildInputs = with python.pkgs; [ python ] ++ optionals enablePluginPython [ pygtk pygobject2 ];
+
+  buildInputs =
+    [ curl dbus dbus-glib gtk3 gnutls gsettings-desktop-schemas
+      libetpan perl glib-networking libSM libytnef
+    ]
+    ++ optional enableSpellcheck enchant
+    ++ optionals (enablePgp || enablePluginSmime) [ gnupg gpgme ]
+    ++ optional enablePluginArchive libarchive
+    ++ optional enablePluginNotificationSounds libcanberra-gtk3
+    ++ optional enablePluginNotificationDialogs libnotify
+    ++ optional enablePluginFancy libsoup
+    ++ optional enablePluginRssyl libxml2
+    ++ optional enableNetworkManager networkmanager
+    ++ optional enableLdap openldap
+    ++ optional enablePluginPdf poppler
+    ++ optional enablePluginFancy webkitgtk
+    ++ optional enablePluginVcalendar libical;
+
+  configureFlags =
+    optional (!enableLdap) "--disable-ldap"
+    ++ optional (!enableNetworkManager) "--disable-networkmanager"
+    ++ optionals (!enablePgp) [
+      "--disable-pgpcore-plugin"
+      "--disable-pgpinline-plugin"
+      "--disable-pgpmime-plugin"
+    ]
+    ++ optional (!enablePluginArchive) "--disable-archive-plugin"
+    ++ optional (!enablePluginFancy) "--disable-fancy-plugin"
+    ++ optional (!enablePluginPdf) "--disable-pdf_viewer-plugin"
+    ++ optional (!enablePluginPython) "--disable-python-plugin"
+    ++ optional (!enablePluginRavatar) "--disable-libravatar-plugin"
+    ++ optional (!enablePluginRssyl) "--disable-rssyl-plugin"
+    ++ optional (!enablePluginSmime) "--disable-smime-plugin"
+    ++ optional (!enablePluginSpamassassin) "--disable-spamassassin-plugin"
+    ++ optional (!enablePluginSpamReport) "--disable-spam_report-plugin"
+    ++ optional (!enablePluginVcalendar) "--disable-vcalendar-plugin"
+    ++ optional (!enableSpellcheck) "--disable-enchant";
+
+  enableParallelBuilding = true;
+
+  pythonPath = with python.pkgs; [ pygobject2 pygtk ];
+
+  preFixup = ''
+    buildPythonPath "$out $pythonPath"
+    gappsWrapperArgs+=(--prefix XDG_DATA_DIRS : "${shared-mime-info}/share" --prefix PYTHONPATH : "$program_PYTHONPATH")
+  '';
+
+  postInstall = ''
+    mkdir -p $out/share/applications
+    cp claws-mail.desktop $out/share/applications
+  '';
+
+  NIX_CFLAGS_COMPILE = [ "-Wno-deprecated-declarations" ];
+
+  meta = {
+    description = "The user-friendly, lightweight, and fast email client";
+    homepage = "https://www.claws-mail.org/";
+    license = licenses.gpl3;
+    platforms = platforms.linux;
+    maintainers = with maintainers; [ fpletz globin orivej ];
+  };
+}
diff --git a/pkgs/applications/networking/mailreaders/imapfilter.nix b/pkgs/applications/networking/mailreaders/imapfilter.nix
index 38e4bf5d7105..b677d82dce47 100644
--- a/pkgs/applications/networking/mailreaders/imapfilter.nix
+++ b/pkgs/applications/networking/mailreaders/imapfilter.nix
@@ -10,12 +10,15 @@ stdenv.mkDerivation rec {
     rev = "v${version}";
     sha256 = "0f65sg6hhv6778fxwsz4hvarbm97dsb8jj0mg7a9qs273r35pqck";
   };
+  makeFlags = [
+    "SSLCAFILE=/etc/ssl/certs/ca-bundle.crt"
+    "PREFIX=$(out)"
+  ];
 
-  makeFlagsArray = "PREFIX=$(out)";
   propagatedBuildInputs = [ openssl pcre lua ];
 
   meta = {
-    homepage = https://github.com/lefcha/imapfilter;
+    homepage = "https://github.com/lefcha/imapfilter";
     description = "Mail filtering utility";
     license = stdenv.lib.licenses.mit;
     platforms = stdenv.lib.platforms.unix;
diff --git a/pkgs/applications/networking/mailreaders/lumail/default.nix b/pkgs/applications/networking/mailreaders/lumail/default.nix
index 44b97fb3793c..3dd03c971203 100644
--- a/pkgs/applications/networking/mailreaders/lumail/default.nix
+++ b/pkgs/applications/networking/mailreaders/lumail/default.nix
@@ -74,7 +74,7 @@ stdenv.mkDerivation {
 
   meta = with stdenv.lib; {
     description = "Console-based email client";
-    homepage = https://lumail.org/;
+    homepage = "https://lumail.org/";
     license = licenses.gpl2;
     platforms = platforms.linux;
     maintainers = with maintainers; [orivej];
diff --git a/pkgs/applications/networking/mailreaders/mailcheck/default.nix b/pkgs/applications/networking/mailreaders/mailcheck/default.nix
index ffa3e92d390c..96ce99580fcb 100644
--- a/pkgs/applications/networking/mailreaders/mailcheck/default.nix
+++ b/pkgs/applications/networking/mailreaders/mailcheck/default.nix
@@ -13,7 +13,7 @@ stdenv.mkDerivation rec {
 
   meta = {
     description = "Simple command line tool to check for new messages";
-    homepage    = http://mailcheck.sourceforge.net/;
+    homepage    = "http://mailcheck.sourceforge.net/";
     license     = stdenv.lib.licenses.gpl2;
     maintainers = with stdenv.lib.maintainers; [ kovirobi ];
     platforms   = stdenv.lib.platforms.linux;
diff --git a/pkgs/applications/networking/mailreaders/mailnag/default.nix b/pkgs/applications/networking/mailreaders/mailnag/default.nix
index 4cbaee4488b1..8341cc63092c 100644
--- a/pkgs/applications/networking/mailreaders/mailnag/default.nix
+++ b/pkgs/applications/networking/mailreaders/mailnag/default.nix
@@ -41,7 +41,7 @@ in pythonPackages.buildPythonApplication rec {
 
   meta = with stdenv.lib; {
     description = "An extensible mail notification daemon";
-    homepage = https://github.com/pulb/mailnag;
+    homepage = "https://github.com/pulb/mailnag";
     license = licenses.gpl2;
     platforms = platforms.linux;
     maintainers = with maintainers; [ ];
diff --git a/pkgs/applications/networking/mailreaders/mailpile/default.nix b/pkgs/applications/networking/mailreaders/mailpile/default.nix
index 89231939bfbc..6bd0995623db 100644
--- a/pkgs/applications/networking/mailreaders/mailpile/default.nix
+++ b/pkgs/applications/networking/mailreaders/mailpile/default.nix
@@ -41,7 +41,7 @@ python2Packages.buildPythonApplication rec {
 
   meta = with stdenv.lib; {
     description = "A modern, fast web-mail client with user-friendly encryption and privacy features";
-    homepage = https://www.mailpile.is/;
+    homepage = "https://www.mailpile.is/";
     license = [ licenses.asl20 licenses.agpl3 ];
     platforms = platforms.linux;
     maintainers = [ maintainers.domenkozar ];
diff --git a/pkgs/applications/networking/mailreaders/mblaze/default.nix b/pkgs/applications/networking/mailreaders/mblaze/default.nix
index ba8f272203bc..fc9001e59e32 100644
--- a/pkgs/applications/networking/mailreaders/mblaze/default.nix
+++ b/pkgs/applications/networking/mailreaders/mblaze/default.nix
@@ -1,10 +1,10 @@
-{ stdenv, fetchFromGitHub, fetchpatch, libiconv }:
+{ stdenv, lib, fetchFromGitHub, fetchpatch, libiconv, ruby ? null }:
 
 stdenv.mkDerivation rec {
   pname = "mblaze";
   version = "0.5.1";
 
-  buildInputs = stdenv.lib.optionals stdenv.isDarwin [ libiconv ];
+  buildInputs = [ ruby ] ++ lib.optionals stdenv.isDarwin [ libiconv ];
 
   src = fetchFromGitHub {
     owner = "chneukirchen";
@@ -24,10 +24,12 @@ stdenv.mkDerivation rec {
 
   postInstall = ''
     install -Dm644 -t $out/share/zsh/site-functions contrib/_mblaze
+  '' + lib.optionalString (ruby != null) ''
+    install -Dt $out/bin contrib/msuck contrib/mblow
   '';
 
-  meta = with stdenv.lib; {
-    homepage = https://github.com/chneukirchen/mblaze;
+  meta = with lib; {
+    homepage = "https://github.com/chneukirchen/mblaze";
     description = "Unix utilities to deal with Maildir";
     license = licenses.cc0;
     platforms = platforms.all;
diff --git a/pkgs/applications/networking/mailreaders/mlarchive2maildir/default.nix b/pkgs/applications/networking/mailreaders/mlarchive2maildir/default.nix
index 2fb30e5ae6ad..c7554fc84b08 100644
--- a/pkgs/applications/networking/mailreaders/mlarchive2maildir/default.nix
+++ b/pkgs/applications/networking/mailreaders/mlarchive2maildir/default.nix
@@ -20,7 +20,7 @@ python3.pkgs.buildPythonApplication rec {
   ];
 
   meta = with stdenv.lib; {
-    homepage = https://github.com/flokli/mlarchive2maildir;
+    homepage = "https://github.com/flokli/mlarchive2maildir";
     description = "Imports mail from (pipermail) archives into a maildir";
     license = licenses.mit;
     maintainers = with maintainers; [ andir flokli ];
diff --git a/pkgs/applications/networking/mailreaders/mmh/default.nix b/pkgs/applications/networking/mailreaders/mmh/default.nix
new file mode 100644
index 000000000000..7d6254ed13cc
--- /dev/null
+++ b/pkgs/applications/networking/mailreaders/mmh/default.nix
@@ -0,0 +1,24 @@
+{ stdenv, fetchurl, ncurses, autoreconfHook, flex }:
+let rev = "431604647f89d5aac7b199a7883e98e56e4ccf9e";
+in stdenv.mkDerivation rec {
+  pname = "mmh-unstable";
+  version = "2019-09-08";
+
+  src = fetchurl {
+    url = "http://git.marmaro.de/?p=mmh;a=snapshot;h=${rev};sf=tgz";
+    name = "mmh-${rev}.tgz";
+    sha256 = "1q97p4g3f1q2m567i2dbx7mm7ixw3g91ww2rymwj42cxk9iyizhv";
+  };
+
+  buildInputs = [ ncurses ];
+  nativeBuildInputs = [ autoreconfHook flex ];
+
+  meta = with stdenv.lib; {
+    description = "Set of electronic mail handling programs";
+    homepage = "http://marmaro.de/prog/mmh";
+    license = licenses.bsd3;
+    platforms = platforms.unix;
+    broken = stdenv.isDarwin;
+    maintainers = with maintainers; [ kaction ];
+  };
+}
diff --git a/pkgs/applications/networking/mailreaders/msgviewer/default.nix b/pkgs/applications/networking/mailreaders/msgviewer/default.nix
index fc8c167e9849..3461b3b560f9 100644
--- a/pkgs/applications/networking/mailreaders/msgviewer/default.nix
+++ b/pkgs/applications/networking/mailreaders/msgviewer/default.nix
@@ -30,7 +30,7 @@ in stdenv.mkDerivation {
 
   meta = with stdenv.lib; {
     description = "Viewer for .msg files (MS Outlook)";
-    homepage    = https://www.washington.edu/alpine/;
+    homepage    = "https://www.washington.edu/alpine/";
     license     = licenses.asl20;
     maintainers = with maintainers; [ peterhoeg ];
     platforms   = platforms.all;
diff --git a/pkgs/applications/networking/mailreaders/mutt/default.nix b/pkgs/applications/networking/mailreaders/mutt/default.nix
index 143153d4d9ff..e1eb8863a084 100644
--- a/pkgs/applications/networking/mailreaders/mutt/default.nix
+++ b/pkgs/applications/networking/mailreaders/mutt/default.nix
@@ -27,11 +27,11 @@ with stdenv.lib;
 
 stdenv.mkDerivation rec {
   pname = "mutt";
-  version = "1.13.4";
+  version = "1.14.0";
 
   src = fetchurl {
     url = "http://ftp.mutt.org/pub/mutt/${pname}-${version}.tar.gz";
-    sha256 = "016dzx2c0kr9xgnw4nfzpkn4nvpk56rdlcqhrwa820fq8083yzdm";
+    sha256 = "1y7racrhz06k9mwxw5qspfjfyvbj5fmwai3gsfgrm36k7al84bnz";
   };
 
   patches = optional smimeSupport (fetchpatch {
@@ -88,7 +88,7 @@ stdenv.mkDerivation rec {
 
   meta = {
     description = "A small but very powerful text-based mail client";
-    homepage = http://www.mutt.org;
+    homepage = "http://www.mutt.org";
     license = licenses.gpl2Plus;
     platforms = platforms.unix;
     maintainers = with maintainers; [ the-kenny rnhmjoj ];
diff --git a/pkgs/applications/networking/mailreaders/neomutt/default.nix b/pkgs/applications/networking/mailreaders/neomutt/default.nix
index 274d9d4718e2..ad7b4debd3f2 100644
--- a/pkgs/applications/networking/mailreaders/neomutt/default.nix
+++ b/pkgs/applications/networking/mailreaders/neomutt/default.nix
@@ -1,17 +1,18 @@
 { stdenv, fetchFromGitHub, gettext, makeWrapper, tcl, which, writeScript
 , ncurses, perl , cyrus_sasl, gss, gpgme, kerberos, libidn, libxml2, notmuch, openssl
-, lmdb, libxslt, docbook_xsl, docbook_xml_dtd_42, mailcap, runtimeShell, sqlite
+, lmdb, libxslt, docbook_xsl, docbook_xml_dtd_42, mailcap, runtimeShell, sqlite, zlib
+, glibcLocales
 }:
 
 stdenv.mkDerivation rec {
-  version = "20191207";
+  version = "20200501";
   pname = "neomutt";
 
   src = fetchFromGitHub {
     owner  = "neomutt";
     repo   = "neomutt";
     rev    = version;
-    sha256 = "147yjpqnsbfy01fhsflxlixk0985r91a6bjmqq3cwmf7gka3sihm";
+    sha256 = "1xrs2bagrcg489zp7g39l3rrpgz8n1ji9cbr21wrnasfbhqcsmnx";
   };
 
   buildInputs = [
@@ -21,7 +22,7 @@ stdenv.mkDerivation rec {
   ];
 
   nativeBuildInputs = [
-    docbook_xsl docbook_xml_dtd_42 gettext libxml2 libxslt.bin makeWrapper tcl which
+    docbook_xsl docbook_xml_dtd_42 gettext libxml2 libxslt.bin makeWrapper tcl which zlib
   ];
 
   enableParallelBuilding = true;
@@ -61,6 +62,7 @@ stdenv.mkDerivation rec {
     "--with-mailpath="
     # Look in $PATH at runtime, instead of hardcoding /usr/bin/sendmail
     "ac_cv_path_SENDMAIL=sendmail"
+    "--zlib"
   ];
 
   # Fix missing libidn in mutt;
@@ -74,13 +76,28 @@ stdenv.mkDerivation rec {
 
   doCheck = true;
 
+  preCheck = ''
+    cp -r ${fetchFromGitHub {
+      owner = "neomutt";
+      repo = "neomutt-test-files";
+      rev = "1ee274e9ae1330fb901eb7b8275b3079d7869222";
+      sha256 = "0dhilz4rr7616jh8jcvh50a3rr09in43nsv72mm6f3vfklcqincp";
+    }} $(pwd)/test-files
+    (cd test-files && ./setup.sh)
+
+    export NEOMUTT_TEST_DIR=$(pwd)/test-files
+    export LC_ALL="en_US.UTF-8"
+  '';
+
+  checkInputs = [ glibcLocales ];
   checkTarget = "test";
+  postCheck = "unset NEOMUTT_TEST_DIR";
 
   meta = with stdenv.lib; {
     description = "A small but very powerful text-based mail client";
-    homepage    = http://www.neomutt.org;
+    homepage    = "http://www.neomutt.org";
     license     = licenses.gpl2Plus;
-    maintainers = with maintainers; [ cstrahan erikryb jfrankenau vrthra ];
+    maintainers = with maintainers; [ cstrahan erikryb jfrankenau vrthra ma27 ];
     platforms   = platforms.unix;
   };
 }
diff --git a/pkgs/applications/networking/mailreaders/notbit/default.nix b/pkgs/applications/networking/mailreaders/notbit/default.nix
index 370c4f838870..868037c33c1a 100644
--- a/pkgs/applications/networking/mailreaders/notbit/default.nix
+++ b/pkgs/applications/networking/mailreaders/notbit/default.nix
@@ -21,7 +21,7 @@ stdenv.mkDerivation {
 
   meta = {
     description = "A minimal Bitmessage client";
-    homepage = https://github.com/bpeel/notbit;
+    homepage = "https://github.com/bpeel/notbit";
     license = licenses.mit;
     platforms = platforms.unix;
     maintainers = with maintainers; [ mog ];
diff --git a/pkgs/applications/networking/mailreaders/notmuch-addrlookup/default.nix b/pkgs/applications/networking/mailreaders/notmuch-addrlookup/default.nix
index 86aef5011342..19b90b534efb 100644
--- a/pkgs/applications/networking/mailreaders/notmuch-addrlookup/default.nix
+++ b/pkgs/applications/networking/mailreaders/notmuch-addrlookup/default.nix
@@ -21,7 +21,7 @@ stdenv.mkDerivation {
 
   meta = with stdenv.lib; {
     description = "Address lookup tool for Notmuch in C";
-    homepage = https://github.com/aperezdc/notmuch-addrlookup-c;
+    homepage = "https://github.com/aperezdc/notmuch-addrlookup-c";
     maintainers = with maintainers; [ mog ];
     platforms = platforms.unix;
     license = licenses.mit;
diff --git a/pkgs/applications/networking/mailreaders/notmuch-bower/default.nix b/pkgs/applications/networking/mailreaders/notmuch-bower/default.nix
index d9eae3c9c503..0b2a76cc00f8 100644
--- a/pkgs/applications/networking/mailreaders/notmuch-bower/default.nix
+++ b/pkgs/applications/networking/mailreaders/notmuch-bower/default.nix
@@ -27,7 +27,7 @@ stdenv.mkDerivation rec {
   enableParallelBuilding = true;
 
   meta = with stdenv.lib; {
-    homepage = https://github.com/wangp/bower;
+    homepage = "https://github.com/wangp/bower";
     description = "A curses terminal client for the Notmuch email system";
     maintainers = with maintainers; [ erictapen ];
     license = licenses.gpl3;
diff --git a/pkgs/applications/networking/mailreaders/notmuch/default.nix b/pkgs/applications/networking/mailreaders/notmuch/default.nix
index ac59dc91646e..f6bf60166caf 100644
--- a/pkgs/applications/networking/mailreaders/notmuch/default.nix
+++ b/pkgs/applications/networking/mailreaders/notmuch/default.nix
@@ -1,12 +1,12 @@
 { fetchurl, stdenv
 , pkgconfig, gnupg
 , xapian, gmime, talloc, zlib
-, doxygen, perl
+, doxygen, perl, texinfo
 , pythonPackages
-, bash-completion
 , emacs
 , ruby
 , which, dtach, openssl, bash, gdb, man
+, withEmacs ? true
 }:
 
 with stdenv.lib;
@@ -25,15 +25,19 @@ stdenv.mkDerivation rec {
     sha256 = "0dfwa38vgnxk9cvvpza66szjgp8lir6iz6yy0cry9593lywh9xym";
   };
 
-  nativeBuildInputs = [ pkgconfig ];
+  nativeBuildInputs = [
+    pkgconfig
+    doxygen                   # (optional) api docs
+    pythonPackages.sphinx     # (optional) documentation -> doc/INSTALL
+    texinfo                   # (optional) documentation -> doc/INSTALL
+  ] ++ optional withEmacs [ emacs ];
+
   buildInputs = [
-    gnupg # undefined dependencies
+    gnupg                     # undefined dependencies
     xapian gmime talloc zlib  # dependencies described in INSTALL
-    doxygen perl  # (optional) api docs
-    pythonPackages.sphinx pythonPackages.python  # (optional) documentation -> doc/INSTALL
-    bash-completion  # (optional) dependency to install bash completion
-    emacs  # (optional) to byte compile emacs code, also needed for tests
-    ruby  # (optional) ruby bindings
+    perl
+    pythonPackages.python
+    ruby
   ];
 
   postPatch = ''
@@ -42,13 +46,19 @@ stdenv.mkDerivation rec {
 
     substituteInPlace lib/Makefile.local \
       --replace '-install_name $(libdir)' "-install_name $out/lib"
-
+  '' + optionalString withEmacs ''
     substituteInPlace emacs/notmuch-emacs-mua \
       --replace 'EMACS:-emacs' 'EMACS:-${emacs}/bin/emacs' \
       --replace 'EMACSCLIENT:-emacsclient' 'EMACSCLIENT:-${emacs}/bin/emacsclient'
   '';
 
-  configureFlags = [ "--zshcompletiondir=${placeholder "out"}/share/zsh/site-functions" ];
+  configureFlags = [
+    "--zshcompletiondir=${placeholder "out"}/share/zsh/site-functions"
+    "--bashcompletiondir=${placeholder "out"}/share/bash-completion/completions"
+    "--infodir=${placeholder "info"}/share/info"
+  ] ++ optional (!withEmacs) "--without-emacs"
+    ++ optional (withEmacs) "--emacslispdir=${placeholder "emacs"}/share/emacs/site-lisp"
+    ++ optional (isNull ruby) "--without-ruby";
 
   # Notmuch doesn't use autoconf and consequently doesn't tag --bindir and
   # friends
@@ -56,6 +66,9 @@ stdenv.mkDerivation rec {
   enableParallelBuilding = true;
   makeFlags = [ "V=1" ];
 
+
+  outputs = [ "out" "man" "info" ] ++ stdenv.lib.optional withEmacs "emacs";
+
   preCheck = let
     test-database = fetchurl {
       url = "https://notmuchmail.org/releases/test-databases/database-v1.tar.xz";
@@ -68,16 +81,20 @@ stdenv.mkDerivation rec {
   checkTarget = "test";
   checkInputs = [
     which dtach openssl bash
-    gdb man
+    gdb man emacs
   ];
 
-  installTargets = [ "install" "install-man" ];
+  installTargets = [ "install" "install-man" "install-info" ];
+
+  postInstall = stdenv.lib.optionalString withEmacs ''
+    moveToOutput bin/notmuch-emacs-mua $emacs
+  '';
 
   dontGzipMan = true; # already compressed
 
   meta = {
     description = "Mail indexer";
-    homepage    = https://notmuchmail.org/;
+    homepage    = "https://notmuchmail.org/";
     license     = licenses.gpl3;
     maintainers = with maintainers; [ flokli puckipedia the-kenny ];
     platforms   = platforms.unix;
diff --git a/pkgs/applications/networking/mailreaders/notmuch/mutt.nix b/pkgs/applications/networking/mailreaders/notmuch/mutt.nix
index 7382b97ba811..18264c5c6af4 100644
--- a/pkgs/applications/networking/mailreaders/notmuch/mutt.nix
+++ b/pkgs/applications/networking/mailreaders/notmuch/mutt.nix
@@ -38,7 +38,7 @@ stdenv.mkDerivation rec {
   meta = with lib; {
     inherit version;
     description = "Mutt support for notmuch";
-    homepage    = https://notmuchmail.org/;
+    homepage    = "https://notmuchmail.org/";
     license     = with licenses; gpl3;
     maintainers = with maintainers; [ peterhoeg ];
     platforms   = platforms.unix;
diff --git a/pkgs/applications/networking/mailreaders/sylpheed/default.nix b/pkgs/applications/networking/mailreaders/sylpheed/default.nix
index 8e1f67201207..8f268e67c304 100644
--- a/pkgs/applications/networking/mailreaders/sylpheed/default.nix
+++ b/pkgs/applications/networking/mailreaders/sylpheed/default.nix
@@ -25,7 +25,7 @@ stdenv.mkDerivation rec {
     ++ optional sslSupport "--enable-ssl";
 
   meta = {
-    homepage = http://sylpheed.sraoss.jp/en/;
+    homepage = "http://sylpheed.sraoss.jp/en/";
     description = "Lightweight and user-friendly e-mail client";
     maintainers = with maintainers; [ eelco ];
     platforms = platforms.linux ++ platforms.darwin;
diff --git a/pkgs/applications/networking/mailreaders/thunderbird-bin/default.nix b/pkgs/applications/networking/mailreaders/thunderbird-bin/default.nix
index f46e355cd570..e9217c84fc69 100644
--- a/pkgs/applications/networking/mailreaders/thunderbird-bin/default.nix
+++ b/pkgs/applications/networking/mailreaders/thunderbird-bin/default.nix
@@ -180,10 +180,10 @@ stdenv.mkDerivation {
   };
   meta = with stdenv.lib; {
     description = "Mozilla Thunderbird, a full-featured email client (binary package)";
-    homepage = http://www.mozilla.org/thunderbird/;
+    homepage = "http://www.mozilla.org/thunderbird/";
     license = {
       free = false;
-      url = http://www.mozilla.org/en-US/foundation/trademarks/policy/;
+      url = "http://www.mozilla.org/en-US/foundation/trademarks/policy/";
     };
     maintainers = with stdenv.lib.maintainers; [ ];
     platforms = platforms.linux;
diff --git a/pkgs/applications/networking/mailreaders/thunderbird-bin/release_sources.nix b/pkgs/applications/networking/mailreaders/thunderbird-bin/release_sources.nix
index f8d8c2627fec..39950bd58c5e 100644
--- a/pkgs/applications/networking/mailreaders/thunderbird-bin/release_sources.nix
+++ b/pkgs/applications/networking/mailreaders/thunderbird-bin/release_sources.nix
@@ -1,615 +1,615 @@
 {
-  version = "68.5.0";
+  version = "68.7.0";
   sources = [
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.5.0/linux-x86_64/ar/thunderbird-68.5.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.7.0/linux-x86_64/ar/thunderbird-68.7.0.tar.bz2";
       locale = "ar";
       arch = "linux-x86_64";
-      sha512 = "dc71109c963e9b8e162437e33feec002268b392cba9ebbfb37714aa79e834143641b92488c3c923256b1d0058c92e6502caf4f022b17145d8e0f67fa7d77b7c1";
+      sha512 = "549c2fde5a7da05f1d0da28e6e203fffef5cc7d39073baef204da5ce221fdb12da53da64b29dc84cf4518eaee7394db71cee6e22611d5d86938df1b9b3bf8e0b";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.5.0/linux-x86_64/ast/thunderbird-68.5.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.7.0/linux-x86_64/ast/thunderbird-68.7.0.tar.bz2";
       locale = "ast";
       arch = "linux-x86_64";
-      sha512 = "2768582e13905d162eacb051209a3ff5c7f704ff95efa3339cf8ecdfce3f892e76e79e65d11c4638a8f4529177a7b2efb12d7c6ac308c1d02b93da361bb9cd23";
+      sha512 = "92fa156e6dd72d9c0a6b0b6889e7486d97922cad3d8c8a4e572b048ff5694cd4fcd7f7f91eff718417760b72a50d045e5508befb8404f9343ec73633c8c43040";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.5.0/linux-x86_64/be/thunderbird-68.5.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.7.0/linux-x86_64/be/thunderbird-68.7.0.tar.bz2";
       locale = "be";
       arch = "linux-x86_64";
-      sha512 = "dfb0806383acb8bbe817be30c4ad1ed34f21e68dea71e249226b07fdf4d1226c88690962f228b6d3f5d0205501be2dddf985b9f99b8eae37400362f1a0be1979";
+      sha512 = "1ddce136d33b7eb6065cc1fa02f3e167b76a546308a19edf51f1102e569b259cb2bbd98d720050d48669ae04610cde6c09400ae6a9f467d611f3a5d332dcf203";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.5.0/linux-x86_64/bg/thunderbird-68.5.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.7.0/linux-x86_64/bg/thunderbird-68.7.0.tar.bz2";
       locale = "bg";
       arch = "linux-x86_64";
-      sha512 = "194b1f645ca3b1607283d176e28e07e204abec90a96a85e9f2aeef0c1af8011c7dea3f0dfdc37402719380b26899c83800ecb79da194730e9c3fcfce1685778b";
+      sha512 = "31aeab60348dcb199e3fee7c167eccb8e02e98a62c0a30ad48d2963fda56a1cf25ff71eb9f16bc186db481fa90d795191c6aa29eef33742adab6e2df0c2e5282";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.5.0/linux-x86_64/br/thunderbird-68.5.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.7.0/linux-x86_64/br/thunderbird-68.7.0.tar.bz2";
       locale = "br";
       arch = "linux-x86_64";
-      sha512 = "1b5513ea62c766d8dc7839fb9708dc63ab01e297a146a351d670aff3d6e7d6a842289da5da753fe649ff08a751b0fd0abee7a1fc71f7d0eebef375b72e929973";
+      sha512 = "f1555dbb5e30ad7d9d7468473f042424e9abd159a85325af55fdda74963c54e780f76093d15a2fc23a555b22896c6a76ad4c449846611222b63d13745cb577b7";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.5.0/linux-x86_64/ca/thunderbird-68.5.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.7.0/linux-x86_64/ca/thunderbird-68.7.0.tar.bz2";
       locale = "ca";
       arch = "linux-x86_64";
-      sha512 = "460c3b39881ab764fd7bedb10c27a2df5da6a907058010204d8849b87da42ce48f0038b05d0910b2c7df8339952dd781ea167687706494b92de2d0deebba8b81";
+      sha512 = "44e0a8cb1feda921b6a3afb6ef0f72d2ad3aaf681f908673c015ef43a660914df5a8b61a6d987c3ddb0b6abc6cd778e0ddb07c56c737a74848942e26d4ee45a2";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.5.0/linux-x86_64/cak/thunderbird-68.5.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.7.0/linux-x86_64/cak/thunderbird-68.7.0.tar.bz2";
       locale = "cak";
       arch = "linux-x86_64";
-      sha512 = "f35ea0852f598285d86445d80839db0dac799760607bd83db528196ebaf3a77abf9f185a2b2f1044a7d5c0fd07383e8c0e020dcc7251817d6d3299d6cae63137";
+      sha512 = "e907643f6c7065117fd131d24b452734c229fad3bace6d445de15757ffbed875fdc69dcfc535cbe7b00b38df30c0b69b378b50560382e57fabff166c71d7ea33";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.5.0/linux-x86_64/cs/thunderbird-68.5.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.7.0/linux-x86_64/cs/thunderbird-68.7.0.tar.bz2";
       locale = "cs";
       arch = "linux-x86_64";
-      sha512 = "baac0a55a175fa4e9512c7ff2a82d986af049eadbde9e1136216ce1d5b384c4db3891ab8b5af420dc4a0635ba50a9d4908baed0f3a9f1ca0076596d20d5e15a0";
+      sha512 = "1b65fe735bb61d2dbcd2d23ede39e7770a66feb6f898ec31cb7c198fdf95796d4f42876730fdb993767026c4c315a9be9cb53229cc21a5328ff443bc463ca4c3";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.5.0/linux-x86_64/cy/thunderbird-68.5.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.7.0/linux-x86_64/cy/thunderbird-68.7.0.tar.bz2";
       locale = "cy";
       arch = "linux-x86_64";
-      sha512 = "ef0b065b9d322772ec002d994140b2c9510f80d993c9c00aaa65d3314b9b4b7352ffdda6b84a916326deebfc8a12696d60a62d69f5aa13bbbacfbf9a5ccbe443";
+      sha512 = "77a3beb1ce6e78fb1d5138a7f0021462efb96e7f1d13cae2213670016a4a89dbd4a46bbe0e588ad15957ec71d053643cbd01033d9cdcc4e91b9e0303726abc27";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.5.0/linux-x86_64/da/thunderbird-68.5.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.7.0/linux-x86_64/da/thunderbird-68.7.0.tar.bz2";
       locale = "da";
       arch = "linux-x86_64";
-      sha512 = "1a9e3396d278cf9a02bb0bdc226036fd3cd6c86f47a4d9d00f4ca1031491a068b56c0b501799f75e385295ee50b013753376183b2bba73f0e95ae801507e0232";
+      sha512 = "b9d12257b5b4fae31cb70edf36ff02d48dc56481b37fa3f3a65bacadc38d772e407d7c1382899179299c23d70e55652c1d05f8ada855621a9db5f300b9c983a7";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.5.0/linux-x86_64/de/thunderbird-68.5.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.7.0/linux-x86_64/de/thunderbird-68.7.0.tar.bz2";
       locale = "de";
       arch = "linux-x86_64";
-      sha512 = "7b292fe10c09831c1b21141168aa136da9a2d78750bb5094633d2f58f85f3b4df69b6b638e00f097a1490050cf92f4bcc53cd4bef9a5539bb96cd2812971318d";
+      sha512 = "c84cd6e76e18207ed02209bb333e922e3dc928c0f0ecd0243f4f8024d49c3ad1f4c3268dde921ced90a77cacffcd41eac82beab65d226dedcd07fd7a2f821a00";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.5.0/linux-x86_64/dsb/thunderbird-68.5.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.7.0/linux-x86_64/dsb/thunderbird-68.7.0.tar.bz2";
       locale = "dsb";
       arch = "linux-x86_64";
-      sha512 = "3f26f768e5f400dc19d4069cb034878a3e0df059a5ec90cb70b06f138585ed976f58efb14ec54a3c0aac1e2fb8561c8e198f7a5822a40b37eff93a8e1c9ef3f2";
+      sha512 = "e29bd848258aa5b04eb60391183bead511ad8bdee038994a84982d068312c97b2e490cb5abe3821825101ed313c503c5c679e42d79011aab89bd116af7807276";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.5.0/linux-x86_64/el/thunderbird-68.5.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.7.0/linux-x86_64/el/thunderbird-68.7.0.tar.bz2";
       locale = "el";
       arch = "linux-x86_64";
-      sha512 = "c6847200d45a169ef8a3bae3e2b7d45592d31429a205222e03f9d5365104e92be54dc4b07227b23c07abd425ee5383b5917d34362d4f37667b6f5addc9197514";
+      sha512 = "b203b8cb46f51f5dd176aabfc720eadc41ed081094c8feed87658885025ba4aef422ac19f4b4773976c42c4f8ce38aa80b39bc75f56c42ec59f5313ce4b98111";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.5.0/linux-x86_64/en-GB/thunderbird-68.5.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.7.0/linux-x86_64/en-GB/thunderbird-68.7.0.tar.bz2";
       locale = "en-GB";
       arch = "linux-x86_64";
-      sha512 = "bcc10a9daed5c4e68eb4a582cbfc8aa1c30b0d4cb92a714adbc695bba410e23d2f65e1194c0ed580976cda51d61fb95784b6296be95952aec1a2b51e711434d4";
+      sha512 = "998aaa3ea0dcc387568802f367ea1637806a1dc19929ac8875ab4823c691c84004f62c6450b3c4439b88e017774ecbd4abfa38f72661fd9ce97208fe920060e4";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.5.0/linux-x86_64/en-US/thunderbird-68.5.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.7.0/linux-x86_64/en-US/thunderbird-68.7.0.tar.bz2";
       locale = "en-US";
       arch = "linux-x86_64";
-      sha512 = "9500d9a22bb42a04fd2d7d24ff8fb7a69b205d6f889ab3b301405a22a51da731452fd18ce33c492f0733d72bddf6aa37b4d8899db4418e8e0155f2bb93af6b06";
+      sha512 = "583e9a08aff1d3e4be47e5a9f31b7595109e25a4062a36e8640468a354e29a47f389062db5fa134af6c231af5fb1caaa31368584fa662105100419a64134f0ac";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.5.0/linux-x86_64/es-AR/thunderbird-68.5.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.7.0/linux-x86_64/es-AR/thunderbird-68.7.0.tar.bz2";
       locale = "es-AR";
       arch = "linux-x86_64";
-      sha512 = "b193048a9c1a0d4c08c08cd12ae41c7a9cdfc8dba47c645d593675e08ac68f8158a578e645c8db32b862b0bb7174627534340a62aefa8ab9e38489b8b7687234";
+      sha512 = "d976f3b916430388af3a50f58253cd4ddcaa5adef935b3965c71f38e938a8e3ad28f7ea8d83d4a9e0d0c85d29a1613547a95d4c9c4917159dce06d700e3f8122";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.5.0/linux-x86_64/es-ES/thunderbird-68.5.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.7.0/linux-x86_64/es-ES/thunderbird-68.7.0.tar.bz2";
       locale = "es-ES";
       arch = "linux-x86_64";
-      sha512 = "c1c5cd0b49e388260cc781e4bc7bc46530791467d4241defc31dae35c0ced85d8cc9e63734b0b8898eb23216065f388930d36227bd1484279ce135b20a70f041";
+      sha512 = "e51afeb81b39f6f3e7c501a0d5ca839d87794ed3a7f04ce552175a7f1227fee9667dec917a0c13d509687e31d6d87516bd5580dfe0158a964b13e4c26c82fb52";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.5.0/linux-x86_64/et/thunderbird-68.5.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.7.0/linux-x86_64/et/thunderbird-68.7.0.tar.bz2";
       locale = "et";
       arch = "linux-x86_64";
-      sha512 = "9cb03aa0214d8e8a0c0786b95d5716a761bb9b2f1fb430b552f09ad3942a277e0117d7b2d95cabc01fb63dfc7956aeabbc522d38515371af7e3a52b8514a32d8";
+      sha512 = "60872a5306f154af3e2b9e58dfecf6135927464c92a3a6cac7c44fb934cc074eefeef6bbb6242e7403aaad3e1fb850d475efb07aaa80a07043f213960b92bd3b";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.5.0/linux-x86_64/eu/thunderbird-68.5.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.7.0/linux-x86_64/eu/thunderbird-68.7.0.tar.bz2";
       locale = "eu";
       arch = "linux-x86_64";
-      sha512 = "3c1da2c13f0b5ed58a1b11fcac24bb3ded8f1fd5dbb23fb8eaac529e5595bcca6adcfee0effa4c4e8a78e85d53b062113022e8e34ca936dc99cda5720a859b39";
+      sha512 = "5f774a38904b5881d0a5bdf0ddad71fa7f85db82daf7879de54d337e8dae17021267b1a289676a11daf1e96572f2734f74a29327f23636e8b38aed084b874bd7";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.5.0/linux-x86_64/fi/thunderbird-68.5.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.7.0/linux-x86_64/fi/thunderbird-68.7.0.tar.bz2";
       locale = "fi";
       arch = "linux-x86_64";
-      sha512 = "1d04c56fd080a52dc2c399339369ab54a7650ddd9d4f473b6ae40445c2889e05eb25c635d7add28e779df3c851fc9826c416419be22691c3424bd8ad01ab23d1";
+      sha512 = "0d977cbd85d7f1360e985844cc8ee433414abc3d10b8a33b2fbb9a03fdddcf3a91018edc12a12d96cc680d2c119e0c020549bd40cc10db9eba4188805e40dea8";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.5.0/linux-x86_64/fr/thunderbird-68.5.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.7.0/linux-x86_64/fr/thunderbird-68.7.0.tar.bz2";
       locale = "fr";
       arch = "linux-x86_64";
-      sha512 = "a64c2a4c2f7da481995be93d03b6442a79c6a8ebeae3c2e1bd0efd8256f400bec3a416348ebee1753edd8a5911a80aa81843651e39a718607b3085494589210e";
+      sha512 = "dc6d20875579d8e788a236885859faee3ca61d83aa051a48bfe18c484afec986353c1493e7e68181a83fea7a42ee62c29d3f71cc053873743959513dddf6e8ce";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.5.0/linux-x86_64/fy-NL/thunderbird-68.5.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.7.0/linux-x86_64/fy-NL/thunderbird-68.7.0.tar.bz2";
       locale = "fy-NL";
       arch = "linux-x86_64";
-      sha512 = "4e51df5766540356dc86414063c98f47aaca94a57d2449c05c677513ce4477533638eb34b234696431b8beb4d241b0eb97db08cf9e27da891e95965c16ef21a3";
+      sha512 = "add2c509cb15cebc5dc77957c44e26a80ee52eda82f395308303216ebf14d13c09338f7bee14bad46ad0ffa8187008e7f4cc101c712029ff15b3ce14904c0a69";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.5.0/linux-x86_64/ga-IE/thunderbird-68.5.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.7.0/linux-x86_64/ga-IE/thunderbird-68.7.0.tar.bz2";
       locale = "ga-IE";
       arch = "linux-x86_64";
-      sha512 = "ec4f2667daeff8305feb8ac64304f42fbcda6b4c93a8bdfb1f4b45f1fc40163049f6a887f7208b41c49a21a5d94f06adf2f4446e784b8e2822c9f997d783eff2";
+      sha512 = "d1771c8282253a80ed62dca8f49797796f202da66e2a607d27dee89a1a8fe556dda440bc03d441b8b63bf732cd9c0960ebf9b9cc047de9c07e901a1051dfc94b";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.5.0/linux-x86_64/gd/thunderbird-68.5.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.7.0/linux-x86_64/gd/thunderbird-68.7.0.tar.bz2";
       locale = "gd";
       arch = "linux-x86_64";
-      sha512 = "09076ac19ec28a790b84c584856ffb60cbcb0db11fe52f1bd307515762fccf79e158a8805c6743eff287a4b25978f94c8ffcaf655b414fd267cd9db321ccbc41";
+      sha512 = "ea0f6d6287ef4e771c49b4891a4d9dff8b9766e444087456448e9ebe32c17e41d5cd9c9a17747250c393e389720a6ecb3bc6df98dc5c81f26504fc9cd6ea3e03";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.5.0/linux-x86_64/gl/thunderbird-68.5.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.7.0/linux-x86_64/gl/thunderbird-68.7.0.tar.bz2";
       locale = "gl";
       arch = "linux-x86_64";
-      sha512 = "ad697320ba8f4e5a04a4e201e04490398cc09152b1cb1a31e325c06a30d8ca6f7209c35c9d9263e6087db41b4502e69c9ad6c35183872312dcde215ab1ba3e90";
+      sha512 = "487af69af4e9844a97d72e14a9de8f8aaf8f45efee6f72ad0d5b310019d6fe73c74288b3e4c7d2a83f6e30cb5b3fbeab2d2200d406814e6e25936ccefdbb5f14";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.5.0/linux-x86_64/he/thunderbird-68.5.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.7.0/linux-x86_64/he/thunderbird-68.7.0.tar.bz2";
       locale = "he";
       arch = "linux-x86_64";
-      sha512 = "7b367bd45c876e20a22e71b276d9ae9b7aec5fc58574647a5b8f99bdb52602eb41541f3397eea54a7395c5374a26277f1a312edb49c95eedfdc9ae06a6f5b9d3";
+      sha512 = "13f43a849b765ed9743947c9e03fe9cb7bffcf120446ec80e8622ae1ecc7994497617464e7597a1e883520598f5de2404e2901b8d30cc91fad78dfe58763da20";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.5.0/linux-x86_64/hr/thunderbird-68.5.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.7.0/linux-x86_64/hr/thunderbird-68.7.0.tar.bz2";
       locale = "hr";
       arch = "linux-x86_64";
-      sha512 = "8f8fc6fab45e45ee426426a28fd00deb52110f68f2aa29037db120fa81afd802681aabb1f390ab62e2f067ac178eaf7f2b1d4f0c4ac70492ce45ef1cd2545a92";
+      sha512 = "bbcb86e67a1975920a3e0fd4298b817103fbf88eea05e822eeb89f60f4690164c90940e32082cbcc19fb9222f53c30b32c39eb041a768b1f8cdf61ae866abd13";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.5.0/linux-x86_64/hsb/thunderbird-68.5.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.7.0/linux-x86_64/hsb/thunderbird-68.7.0.tar.bz2";
       locale = "hsb";
       arch = "linux-x86_64";
-      sha512 = "870c925b327ff575b1cb6819864c5bb70b5531871e04a69ec3a456f83cd207bb2cd45defb4722f03586bb5e6569fe3d7e2c6e7937127269e9018a41039b6d83a";
+      sha512 = "23c9d885024b178a37de1f968def6e338fb1e44d2414f01d6b8757e3be082ab4b5950ca6bfb0cfb93093ebcf57d061cfeb2c7c8c46ac56274ff495b83a7754e7";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.5.0/linux-x86_64/hu/thunderbird-68.5.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.7.0/linux-x86_64/hu/thunderbird-68.7.0.tar.bz2";
       locale = "hu";
       arch = "linux-x86_64";
-      sha512 = "3bacd70e1bf4c07d1c625e835296d52d353546950178a92ad4ff1d29168b78928f985b3db99c7b5587aeb5a51e54c9f4cb5f0cf354df3ea853e8147ff969c288";
+      sha512 = "8076d47c0b15fb565ecda807c789d5eba41b1209df356fe2184d4550a115b7ea986bb51fb6e9e8a4a279ed6025b7acb8f5c7ca88e5ccd72e4556fdaaf95619fc";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.5.0/linux-x86_64/hy-AM/thunderbird-68.5.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.7.0/linux-x86_64/hy-AM/thunderbird-68.7.0.tar.bz2";
       locale = "hy-AM";
       arch = "linux-x86_64";
-      sha512 = "46b9728709dd7866d6233e20c949dacccde3f62fce1558d2baadb87b94438833faf4d93e9449b0a5cddfbef8c3c9967258c606445c1fbf13aa74d776f61d844f";
+      sha512 = "825f0066a329fc3e35c6a2c9038a28c1e673b93767a020a6f4297dff5b769882d6550eb2cd293b232123223fbbb0f0e0d54893c98ae9f2e35072071a26171967";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.5.0/linux-x86_64/id/thunderbird-68.5.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.7.0/linux-x86_64/id/thunderbird-68.7.0.tar.bz2";
       locale = "id";
       arch = "linux-x86_64";
-      sha512 = "11889847cd84dec9132eaa768251fe41dfcb7cb4682cb5c34160142791f75512b74b79d1caa2ce8cf205e521a244b168f89760782dcf1b453793122414903428";
+      sha512 = "253cc87eee92b10d9b74e7885e43d5d9b146694bed63ebbb1b5e63730b18feeef53de4581ae824ded77a5770c45fce8b46d90621212d4b0e1ab32ba5fc7df1b3";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.5.0/linux-x86_64/is/thunderbird-68.5.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.7.0/linux-x86_64/is/thunderbird-68.7.0.tar.bz2";
       locale = "is";
       arch = "linux-x86_64";
-      sha512 = "e68fa0a96283013df42afa1fc7889d9dbfc906e508399d7dab6131b885ac73e5558c7acab1a5e8c13c6252e1612d43a1bc503b570c6f978c0460b121f2f37112";
+      sha512 = "0e0784865fa1f0b57f5287674c94993263a03b8876fa6a053cb9bd52cef89a93a07dace1d2425ad669656ebc86a083e37faa456ee52481844e8e8e7fe87f3c85";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.5.0/linux-x86_64/it/thunderbird-68.5.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.7.0/linux-x86_64/it/thunderbird-68.7.0.tar.bz2";
       locale = "it";
       arch = "linux-x86_64";
-      sha512 = "a55f5664274caabc43d64ac1abaf04f159c2b76c8389ecc00dcd213430d8c80836fe149bf4449cccc53184f2ded1ebcb85f8347de099aee47c32c899c5184a6c";
+      sha512 = "0eca59d5adf138f2be6b9c2cd11e51252e550b711f3f6584e6971ec3564630eebb7f1774dfed4f79c6b38f3218420825300bb447b0bddd0e16379aa787edd0f8";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.5.0/linux-x86_64/ja/thunderbird-68.5.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.7.0/linux-x86_64/ja/thunderbird-68.7.0.tar.bz2";
       locale = "ja";
       arch = "linux-x86_64";
-      sha512 = "b3fb1bfaeb1509ee3392b11e18a2f80b6a84165e6f01c6caeb47f4b1e9dd8733d88ef724497f603352119412d9b5f88d7d37b21ccb1802e4f3930c6f499363e2";
+      sha512 = "6a112e7ae24616115f6b5dadc72bd30d8dd046b8df16ebae1d609199d9467259f83b354659a1358d70d2e1ad8c52e71db9991f95aff6f2864649d539b9f0f139";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.5.0/linux-x86_64/ka/thunderbird-68.5.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.7.0/linux-x86_64/ka/thunderbird-68.7.0.tar.bz2";
       locale = "ka";
       arch = "linux-x86_64";
-      sha512 = "1cf0b21bd0c1742a018675b8af830be7de163e567a2691b5c95cf91af9753b23d431ad5b67738d690220d1d8a57da7990cb01f89917f7c8ddad80b4ab056a83a";
+      sha512 = "e2c71035f910648cc83d92af69bd96f3a7668be2ac4ddfcd40c97762a1fa4e94c7d67b9ff588b27783ff943330ee07940fe0f8bf1671dfd87dd34a23b78b55cf";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.5.0/linux-x86_64/kab/thunderbird-68.5.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.7.0/linux-x86_64/kab/thunderbird-68.7.0.tar.bz2";
       locale = "kab";
       arch = "linux-x86_64";
-      sha512 = "8decdb91a1241f4d9495202965986d78598f5e8be603ed9c28bbd2a8cb405ce96a1206f1ade35a11e2f161bffbd8a034fd13b15abd16f4ec5a05442a6194fd1e";
+      sha512 = "4e1a72147657fc0706f3cd4c4511fc22949fdb5e90e5d17a080b5c814240451d030ccb4c287ec6901d1dfd8a7ebfd74d59e617ca73530fd20c0b4fad539f9154";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.5.0/linux-x86_64/kk/thunderbird-68.5.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.7.0/linux-x86_64/kk/thunderbird-68.7.0.tar.bz2";
       locale = "kk";
       arch = "linux-x86_64";
-      sha512 = "7a7e4d2c6dca6455c81456bb5a8eb3c8a085458ed9253c4a91b22a8cde9892fbba624be89c7ab1fea5875d902fa1198cf796bb309c3b6bd597bc05013d3f4687";
+      sha512 = "61cbaa5aa674a4b6a34869f271d93234d874fdf49231b0ebf3c882863b294a0e2e0447bc81c8980c7f27c5dda4e8c29ace091c7097870d4109aa1f4718379099";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.5.0/linux-x86_64/ko/thunderbird-68.5.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.7.0/linux-x86_64/ko/thunderbird-68.7.0.tar.bz2";
       locale = "ko";
       arch = "linux-x86_64";
-      sha512 = "cb037d1ab8dde1fcd61dfd446aa7587c7dcb24d239485e3b3c63db49097eb91bdc59fa9048b8871ce17da6b33bb0490e9f7a8f29f5f59a623f4eca522a04c287";
+      sha512 = "b2d3be58c8af63b3a94888e8365cd7253858733686ee30776c61ccbb8e05db57882158ad3a9aa5af6e319c875e870bb52dae9dd8c834ea5643e811dd948b6fd2";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.5.0/linux-x86_64/lt/thunderbird-68.5.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.7.0/linux-x86_64/lt/thunderbird-68.7.0.tar.bz2";
       locale = "lt";
       arch = "linux-x86_64";
-      sha512 = "898ad8b33435bafc361861a19887fa423eb2000acff87862543e4051722e1e1b4d6606eae057647bf7bee366296bfe5567ac1e7002fd62d28515a4d57c2466ad";
+      sha512 = "e878eefffd3ada9d49c3a692fe1a968159d8fd23ec8660cb71ce8019034e10c905f1acb79c6122384c7b18f3da3d1e6b91e31807c9d88ae799175fae2ef18005";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.5.0/linux-x86_64/ms/thunderbird-68.5.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.7.0/linux-x86_64/ms/thunderbird-68.7.0.tar.bz2";
       locale = "ms";
       arch = "linux-x86_64";
-      sha512 = "c08d8ec6ff837eb03dc41fa5e8d9e7d8a142df489f47698f372808c0ddea88d1313abef999c00a0d4aaa6e0d5d4564845b001454d85ea8990cec072fea689e28";
+      sha512 = "1d6094b7ea3fbdd40d278a60684b2e2357c1608e3403037a761038460dd1c89149f3f010a9f93d795f3f408acb81c3b6fa2b5ce206f5550352db6391895fb0f3";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.5.0/linux-x86_64/nb-NO/thunderbird-68.5.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.7.0/linux-x86_64/nb-NO/thunderbird-68.7.0.tar.bz2";
       locale = "nb-NO";
       arch = "linux-x86_64";
-      sha512 = "9e34bea73e2514f2c76a08a79752977d12c42726408be0d5d39405c2edd56f826ad453fdb1e20c4f8840070715fc0eb1211135e8c9b1f3ecac6c0e99ec0be029";
+      sha512 = "0deb1e4fb220c9b17bd68ddec7bf4569ee8425528a6586f5cdadd17f7c1948f933070700d36d7c6cc9442c172d6bb302d2681716abac131c9777d8b57d4f0a4c";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.5.0/linux-x86_64/nl/thunderbird-68.5.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.7.0/linux-x86_64/nl/thunderbird-68.7.0.tar.bz2";
       locale = "nl";
       arch = "linux-x86_64";
-      sha512 = "3bd89bc0528d49a79ca93dcc6842f06102fd0799164d717ef7aeb15f283b44a7236148bd7a746ea7d713cf41b2bed7a5b7e66017b46b3398e4b6f035c7933a14";
+      sha512 = "24c5100339da2ea1df96d515c1529f02b0132385e141520d7a2c94d194ca71a634310eb26f3a88ea0cd6a8ad0a56f33ce5055bce19c68e3465037afe33a85550";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.5.0/linux-x86_64/nn-NO/thunderbird-68.5.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.7.0/linux-x86_64/nn-NO/thunderbird-68.7.0.tar.bz2";
       locale = "nn-NO";
       arch = "linux-x86_64";
-      sha512 = "0cc4b9ac7dab3e879f6a691546fb414c4b43de166c5deb018634fe8d6583bff378d60937be4c8c30a1ffe68f5d715bb67414fa7359e061c766426666bdbbabc9";
+      sha512 = "525675451d274d17d3b5dbd1d3b75d3475b3c29f32b5d0813c71d5cff6c8002f35038ee7801c245d0b2cefa596ba4288c4287a6fed66905b6497591cca96be61";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.5.0/linux-x86_64/pl/thunderbird-68.5.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.7.0/linux-x86_64/pl/thunderbird-68.7.0.tar.bz2";
       locale = "pl";
       arch = "linux-x86_64";
-      sha512 = "48ceb0fe27e9dff3c09aaf05276aaa7c9c0d2d643236bf69af03974cd514bdd0d3bc816151887d3247907bb67853ed840e486e6f1bc721ac7283ea193152b723";
+      sha512 = "3ef251ebd90637c11cb64f00f429611a2621fc5841e91fa51d7a3ba97d1244ddcf383c8b0011abb009935a59bab58a3bba52e3c4db05483b28c400dbd500ba42";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.5.0/linux-x86_64/pt-BR/thunderbird-68.5.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.7.0/linux-x86_64/pt-BR/thunderbird-68.7.0.tar.bz2";
       locale = "pt-BR";
       arch = "linux-x86_64";
-      sha512 = "77a272f0553e2981d156b5c928a159ef754ca2220e8e48a06a6bd53bc67b6965a202e06ee98d15bd8d2f5fabc9768ea744eed8d88009f194b8a3f0097eb2b194";
+      sha512 = "fe80b879e307d6ca192bae16e13df892bc837e0e216562c4a4ddf7ae3c526e2967cdf8f8291e53a450f70759025303b2195f7e2acf683cca9d8620a00d8ed69f";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.5.0/linux-x86_64/pt-PT/thunderbird-68.5.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.7.0/linux-x86_64/pt-PT/thunderbird-68.7.0.tar.bz2";
       locale = "pt-PT";
       arch = "linux-x86_64";
-      sha512 = "bdbc148ab52ea519e2e5dc07655ffb687154a93420ac3d9b320349102436214ee26e558d94f4c8bcad1a94d611e7222f28c660e425385f3598c369332710066d";
+      sha512 = "437e5390889424f126a1a229bf8c66881ac4a98d300f6308e242c5f2386d443c1977c52f78fe9e2b620952d181c14c35692718ff447d267c000e1ccc8cdafd5d";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.5.0/linux-x86_64/rm/thunderbird-68.5.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.7.0/linux-x86_64/rm/thunderbird-68.7.0.tar.bz2";
       locale = "rm";
       arch = "linux-x86_64";
-      sha512 = "de01b86deacf5af7b44112147cbb13057137a70c77e4f3f0fd7b6f2286da3cfff14d11bed3d2e2501db51dae336e3fdeea0fca60b5af92b13de78d9dee98d46e";
+      sha512 = "d76f9f0e992da2e28e69b20a1ae532c8e98415825d41ee5716c34639abd1a3bb456d8645a108d17423bfac848f8e8a340358ccfc2635794cc703764d6f8de0a9";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.5.0/linux-x86_64/ro/thunderbird-68.5.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.7.0/linux-x86_64/ro/thunderbird-68.7.0.tar.bz2";
       locale = "ro";
       arch = "linux-x86_64";
-      sha512 = "03a9eae26c2b1d989d8f74b8bbe5237265f89c6632568be7282e1e9253fad3062502e1d64402f3fb57b1755a2b52be0fad65c0a099aa55affd623b594083f303";
+      sha512 = "0485cdcdf247ed4bd67420fe7919f7f9d845e3c369c80960d92e448c48e3ce7e55c03ddbce16aed6de84da70a5e7610d8be5f55c5f53dc4568ac712b92a7153c";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.5.0/linux-x86_64/ru/thunderbird-68.5.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.7.0/linux-x86_64/ru/thunderbird-68.7.0.tar.bz2";
       locale = "ru";
       arch = "linux-x86_64";
-      sha512 = "a80a5cf3d34eb4e231c67182a17401783c75c5ccb0911fcc61a1cac8e007fca4e67004de02d9d10c5442dc2ad90837b6da562f37468dfbb84eef45981a6520aa";
+      sha512 = "96b28866dd1e4b68846cd88adee09e4edb60af8d506f42838f3f5f1dadd59ef5339e8c331b2a8b6ed0d1ff482ed48d83861b9db174b28dce5ce90b619b3a237d";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.5.0/linux-x86_64/si/thunderbird-68.5.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.7.0/linux-x86_64/si/thunderbird-68.7.0.tar.bz2";
       locale = "si";
       arch = "linux-x86_64";
-      sha512 = "8cfaa054258a2b83fd140702bc59c3723495ff090f2dda06830d70548c425d47522cf574bbc9328887ba7621e3bb55e17bedcd314e54d5787d6ab9d00fd836ef";
+      sha512 = "0ea525527ab09277fce4202f488778d838090d2d59fcb2f049b1869ff0a6d50f54eb22449dbd1063aa6b15d5e559dc119e36dbf97d8a7bbf22e9ac4971393a1e";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.5.0/linux-x86_64/sk/thunderbird-68.5.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.7.0/linux-x86_64/sk/thunderbird-68.7.0.tar.bz2";
       locale = "sk";
       arch = "linux-x86_64";
-      sha512 = "c625263588f5b83e844c549aa182b996e7f99f3a2838c558d5a88ebfcb1cca966233c6f8f843c44651c001236d147d16b6ed3e26470c4d5c1b0b24c89472a46d";
+      sha512 = "26280b266d2a7956321854ec57737d8cd4ff6ecc938ca07304431e6f351f73ea43e2213e28797d0bc994e0174da41108421a957054a00adca97cc630c107e4b9";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.5.0/linux-x86_64/sl/thunderbird-68.5.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.7.0/linux-x86_64/sl/thunderbird-68.7.0.tar.bz2";
       locale = "sl";
       arch = "linux-x86_64";
-      sha512 = "9654edc706571afe5e1ccc54b1ca0a0b7d9dd800278d0ddeaebfd483334353d87e1b2ee99da0e6242fa81e4778d3d10573db48462d8f681dc9ae68814c4e7be8";
+      sha512 = "3cf380bb8bab8917e3643eaa337e8382e73802d725ca6134e73fc9d991d9e137b6681fb2aaa86aa83cf6766c3f536406298a4962b97175cf63bbf81142b75618";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.5.0/linux-x86_64/sq/thunderbird-68.5.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.7.0/linux-x86_64/sq/thunderbird-68.7.0.tar.bz2";
       locale = "sq";
       arch = "linux-x86_64";
-      sha512 = "d994da857c1e7c40c9df313f8135583885e728e93b80e0cdb0090bec49ddcf681b318a69dd553404f36c6ada6ecd4c70f4b7325ba092d700b60697941e855535";
+      sha512 = "daeeb1a66f65e2da8ef2a6e3c59eb07bc341bebd19a79cce606d787d16f674e2d52decb17ae12125a7df78ecdb7c7a693644b17aa726ce1fd424fd30bb05ae43";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.5.0/linux-x86_64/sr/thunderbird-68.5.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.7.0/linux-x86_64/sr/thunderbird-68.7.0.tar.bz2";
       locale = "sr";
       arch = "linux-x86_64";
-      sha512 = "d45178698af58c9496340739b658c3974c4f8ff1386c862bc5032598f7079193321a0752d01e8da74890069ed549285925529fbf84f10738c870ba6d0d1c6f19";
+      sha512 = "01a71c036d95587adb010cdd0f0641c4559af557c3596b16e43d11accddf64290d06ed5b35ab8d0b640b9242157b04a899ded266a47ad7bf2a07e3b923bc6fb7";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.5.0/linux-x86_64/sv-SE/thunderbird-68.5.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.7.0/linux-x86_64/sv-SE/thunderbird-68.7.0.tar.bz2";
       locale = "sv-SE";
       arch = "linux-x86_64";
-      sha512 = "c79f1beb35445674b5c73914aa6379e415af42f90ae15afed18a748f5d7867be2ff6ade3e7ebee639954e65e5cc3d0abce158cf5cc0bf8740367f84067890751";
+      sha512 = "28abf6b95fc03abd0f8d5008a1a3ba5b46138a616750b20e8f7be08fc2307cc75ef0e1ac3b8e29e37542553de502d07c092a771cc94c9b794da6a5bd268e3c6e";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.5.0/linux-x86_64/tr/thunderbird-68.5.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.7.0/linux-x86_64/tr/thunderbird-68.7.0.tar.bz2";
       locale = "tr";
       arch = "linux-x86_64";
-      sha512 = "a8d294506c9b255a6af29aa6df09bc87242db91b7d9e415a4f173564dc65f22cb3cc093a2e5b7c9b519aaacfdff99d855c00963bf3370cc8c4c8f0f8bc6b0328";
+      sha512 = "a7cb235bf1db3dfc5f7bed0fb92c327fedeb2f319c602bc13727b3c452305345a053405f77895611d294578a96eb8dfe7c7e9f008c531fa2acddfc81679391b6";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.5.0/linux-x86_64/uk/thunderbird-68.5.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.7.0/linux-x86_64/uk/thunderbird-68.7.0.tar.bz2";
       locale = "uk";
       arch = "linux-x86_64";
-      sha512 = "4c889e12d7855c5e57c01d894708577485d2ec0a50634160a682e517823780efe45968e1f2bfbc72f60fa5c690aad9d9bf9ff14686cff7f4696ca5704565f20d";
+      sha512 = "0fd2ea32ce4ef03150db5234561546f45724e399fb12967a4ecde42149a81f4609505bd1da5cf85ae745e71768b93738c2885c4c7ace9b7b0063d6ace566bbb5";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.5.0/linux-x86_64/uz/thunderbird-68.5.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.7.0/linux-x86_64/uz/thunderbird-68.7.0.tar.bz2";
       locale = "uz";
       arch = "linux-x86_64";
-      sha512 = "6a8253b9c1d9f07d932bf097c12d106c8b5993eacc4560ea3e7c55d58b754cc7ea09c0e86ce8937d14b400d6a095cd26c6794633243c4b53d7ece8bf9c1118f3";
+      sha512 = "4394e70e02ef67428b74af0b1d35ea06964b71a23d5a0d73afa2e6fdbe8d23286abde651b17a48a2353a1ac762d5a8b169f8e699a79644f00340b05e204f05c8";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.5.0/linux-x86_64/vi/thunderbird-68.5.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.7.0/linux-x86_64/vi/thunderbird-68.7.0.tar.bz2";
       locale = "vi";
       arch = "linux-x86_64";
-      sha512 = "ae4e2c35bc0a31422b5a2befa3b8bcd4835c535f6690a4ea11b21f0b3c33e38c2ff707ab70ac5aaec5153c4b38d44e67375aaf66b27af3b0316af35b9b5fa22b";
+      sha512 = "e1eeb7b46a9ece66fc40d2d58d2781fea4cca320a97b6cfeddd02f3f6907b44539f4400390467a794cbadde50c8ffe350fb08d8012f207db60d36a61d205a368";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.5.0/linux-x86_64/zh-CN/thunderbird-68.5.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.7.0/linux-x86_64/zh-CN/thunderbird-68.7.0.tar.bz2";
       locale = "zh-CN";
       arch = "linux-x86_64";
-      sha512 = "da4aa6e899ac51ffb94674248d11d7ce072c27b9bd1aa4a5bf79c48e16d5b437b838f2b7f709e56fceba338ad9172252ae82c283bb88bb41a73fec1f876fc24a";
+      sha512 = "ab6839f46e41c14fbc588a59044496feb3e8a35aaaa1f0777212636e9b4dc5a6640b34a3f1e833239d5597f468960a947c0591373938306dd8bedd6c6e13283e";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.5.0/linux-x86_64/zh-TW/thunderbird-68.5.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.7.0/linux-x86_64/zh-TW/thunderbird-68.7.0.tar.bz2";
       locale = "zh-TW";
       arch = "linux-x86_64";
-      sha512 = "47244d490e02d5d784e81b3641126b38307128d4d95096fce05717c8535318a0cd1567f20bd19b13922cf6c89ba3042350a8870360a25003a87d6ba6e3e0bccc";
+      sha512 = "4923f6c790335820811bad56494d24a5899c1586ab2344b3e2fc81a91651d9de5b378ec6ac0ec68597ee83a8dc0f24ef084a41bfcd98dbde128cf4831646db70";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.5.0/linux-i686/ar/thunderbird-68.5.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.7.0/linux-i686/ar/thunderbird-68.7.0.tar.bz2";
       locale = "ar";
       arch = "linux-i686";
-      sha512 = "6c9adce3d5e14ba5748dd8f60bafd72c5d910926de91810da7fbddb7054da822b79a79679b72125c483889383f19aa8a928d949de8785972a7067b0d23921072";
+      sha512 = "91b19e61a360062d71e090d7eb8dd78b1ff73fd3e7733573ff1ce6ef4e98c13fb297c219fda8c43c9d80299625ea8bf9566e25a5546f28d010737a399488f3fd";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.5.0/linux-i686/ast/thunderbird-68.5.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.7.0/linux-i686/ast/thunderbird-68.7.0.tar.bz2";
       locale = "ast";
       arch = "linux-i686";
-      sha512 = "ff0090a6370069ff7668d650d16f3d9d24fa2325c46aecf9a3b8fc536e1138793e751fc524b63a5dec3e07c10aa77dcf09d066d9137aed1f35dcce1eb9c368e3";
+      sha512 = "2edcc3b6d7c51c79b1539fe8fa4da53003af0379727ed658ca7523d608c96c251e8be6fea004098609d5b854ebfe6cc8b81830f8e1d359386edd2593f3eff6c7";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.5.0/linux-i686/be/thunderbird-68.5.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.7.0/linux-i686/be/thunderbird-68.7.0.tar.bz2";
       locale = "be";
       arch = "linux-i686";
-      sha512 = "751527c55d73080fec112af6cd3f6161d848979b9b9f12f8cae4f4e28c2906f7aba5f6f2b02ad192f67f7b3b8713fbcaeba8960c53bc5bf1a9259e33f555fb94";
+      sha512 = "84a76ba8031d25f6b097f66e4b0c74359ac313f25016c3b82e547d8e973814d8398697572014590f23ea094aad7941c13cb4130b618a776f6c4973356cccb30a";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.5.0/linux-i686/bg/thunderbird-68.5.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.7.0/linux-i686/bg/thunderbird-68.7.0.tar.bz2";
       locale = "bg";
       arch = "linux-i686";
-      sha512 = "8b10b496a27a6bbe22e443213f69b0e3fdcb9bfd7fecbd509fc771ef1a22a66586febca2b303cb1a526b739ab303283086f14b314cd545fdd5f13bedb6d23fcb";
+      sha512 = "b489ff67e47eb1d431f5b2f59f0d6b8cfcded889e167cea3a2d602057264a402769e44191ac015e15930faacf7acd9f1fccb87abbd438e3629db7b795b8fe43d";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.5.0/linux-i686/br/thunderbird-68.5.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.7.0/linux-i686/br/thunderbird-68.7.0.tar.bz2";
       locale = "br";
       arch = "linux-i686";
-      sha512 = "46ffb59df042c028366ae64c58c41a65c92d7aa4e50c24ebabe8141b2e78fdc6dbb5634574c7759ff0fd067cfe0ac7c9570bcd006d4c828a7dbdd00555178647";
+      sha512 = "3ffa33885f86bbf13f4c2a2bb15b864aec851b5558eba88e7a64e8b8b111169bf4e163e590491702465ec8436274ee72dd140a0bda2c9ba39754145de5501388";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.5.0/linux-i686/ca/thunderbird-68.5.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.7.0/linux-i686/ca/thunderbird-68.7.0.tar.bz2";
       locale = "ca";
       arch = "linux-i686";
-      sha512 = "98bcdfdec73eba43ac67c571ecdda4622040b300b560f227ced55a197384d3462b89e844dca1fd310da7c326099fc072eb42adcc14d9519b8bb6b44647abd70c";
+      sha512 = "fad5eeda16877f0bfa5edfec10fd8fe5baf16a112aaf56c908c718159b0bb6b72ac314b93584536ca369d054059612fbf86c396d076158b6efc7a9d9cd2fff93";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.5.0/linux-i686/cak/thunderbird-68.5.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.7.0/linux-i686/cak/thunderbird-68.7.0.tar.bz2";
       locale = "cak";
       arch = "linux-i686";
-      sha512 = "ca042a34871f95c82011e36ee700ebc60a3594229093ea2a38b28e6eeb6751c143227b9fc2dedac62608f42ffafe96aba4c600cd1e599794f2215adfa07e0270";
+      sha512 = "f4a0605533cfd5b0806c8412514de4478c520f52903a07c809df136b443ff0734be917444cec2d4c73301d0821d77e585c96bf314ab17deec4b4bd5036e83a97";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.5.0/linux-i686/cs/thunderbird-68.5.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.7.0/linux-i686/cs/thunderbird-68.7.0.tar.bz2";
       locale = "cs";
       arch = "linux-i686";
-      sha512 = "ab121a73e77c9976e1cc4373340fce96abd419d387775e31da07bb9b4293e70fb6b753cf9904f3ab44f330b911664327e0d5d187dad8e2b46f702b112737bc79";
+      sha512 = "319f3a63a352a2f7831bb6d2d046d238db4c136cdc256934ac19fd4e8421344c98b4900c57a12f49af77d1844ffc8e8c7129c4ab9557d590affd59aaa0229ba4";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.5.0/linux-i686/cy/thunderbird-68.5.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.7.0/linux-i686/cy/thunderbird-68.7.0.tar.bz2";
       locale = "cy";
       arch = "linux-i686";
-      sha512 = "8c82689dfd9602a05b3daed5c778a29b755ac09d191765961c1e113f65dc398400bea7e32b8cdbf83b4ec02f13f473dcca759591a508d7f8d5c642db334cce33";
+      sha512 = "4aa1974543b568168d06ec8c0004127cabab481fa798a67878a9bd5c1955d98d14d770383ef5e6af35dadc106fb20da46a1744a7156b3bfc582e416a32df1673";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.5.0/linux-i686/da/thunderbird-68.5.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.7.0/linux-i686/da/thunderbird-68.7.0.tar.bz2";
       locale = "da";
       arch = "linux-i686";
-      sha512 = "9d23be92c0574ae9dbbf27058fac97a92657bebff46ed9889c7987469e9a376c4800027aa371a039e294ad5be29d650b4d11e64c0130476638d87638e4db57ed";
+      sha512 = "c587a13d45f5a5e94108252d8dc98548583ac7f27b35f3fc28100df0a15f696c04c68a4f786d7b9c3ee461db6120c14aef2b6ee14cfcabbe855f16ed00660861";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.5.0/linux-i686/de/thunderbird-68.5.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.7.0/linux-i686/de/thunderbird-68.7.0.tar.bz2";
       locale = "de";
       arch = "linux-i686";
-      sha512 = "1f7d247455dd540e81fa15d201491415e691ea6b66df9cf36716316625decb541d2046ac8aef5efd5435d5be4e1c44bc3dc8db9eb2023b5cff1446d678a764fe";
+      sha512 = "5c425faa2c44d30b695ce6713b59e5720bbd8294aea20d1c7431f26173da0f6ca85b1cdb9f178e54ff670e109bc6c30abf21110df0c7029b5d5a01373c8b1510";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.5.0/linux-i686/dsb/thunderbird-68.5.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.7.0/linux-i686/dsb/thunderbird-68.7.0.tar.bz2";
       locale = "dsb";
       arch = "linux-i686";
-      sha512 = "350b7378ba5b732e52af1234ce005c0ca0a5ffb286d4599c0f931dcf2c912740ea81bf6aa20c14960485be1360d1b9825ccb63c261836b389ac96088f3f77344";
+      sha512 = "6ad04e1e43d0a7e4821c584a78b476262e77aa5f6c7d170806eb02d74b0d831f53e66568917837d11c11cb5ed19b796c23ba6d496573ca1da7029fb1eedbad9f";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.5.0/linux-i686/el/thunderbird-68.5.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.7.0/linux-i686/el/thunderbird-68.7.0.tar.bz2";
       locale = "el";
       arch = "linux-i686";
-      sha512 = "510ff7b9d4549b9daefd69f25ad92d97ae516f5f2d0bddf459d11c260ba11d6c4cb2574bf81c08cb4d8c720c7c8164355fc1c3bf5055e99ec31ea85cfb677f0b";
+      sha512 = "e9c7d89bbc736527ea9918151886705fec533969582ff37fe8e1acec3b6c1938fb33da4285c02ea92c2a87df1c6700c9c2223ca391ba342eb2e4e1fad8e06f8f";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.5.0/linux-i686/en-GB/thunderbird-68.5.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.7.0/linux-i686/en-GB/thunderbird-68.7.0.tar.bz2";
       locale = "en-GB";
       arch = "linux-i686";
-      sha512 = "71cd61ffb1546dd8085c976d77c51d6231ad39afe9844d69ed697aa76e4c515780c264fdf2cc3644c9a22156054cbfad355b936f891465723ced665b14460604";
+      sha512 = "ead179d699feabcf14373aa4e02ec96f52e96f8a1413294f690d70608f2cf83fdfbccd1031f0430a0f3805bb230943d8aea269195d0f092334040d0c092cf9b7";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.5.0/linux-i686/en-US/thunderbird-68.5.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.7.0/linux-i686/en-US/thunderbird-68.7.0.tar.bz2";
       locale = "en-US";
       arch = "linux-i686";
-      sha512 = "dd2dbad0087646a87faac120d616d4b7a07f30fbbd95f657cf5ce4c08714c013522a1e05a55fb0a4f23302b02b63935b06e15e4c05f83fee18a0f482bccfaf79";
+      sha512 = "18309ddef56d0e7e50f3b5895e1c21c206b432da141c7517f9220686ada6523f7b0181e98a6722205bfe09d9023c4d2beeeb11ad60a7b6ec4242441bd60afcd0";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.5.0/linux-i686/es-AR/thunderbird-68.5.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.7.0/linux-i686/es-AR/thunderbird-68.7.0.tar.bz2";
       locale = "es-AR";
       arch = "linux-i686";
-      sha512 = "dff461bfcf287a7fa38826a2b8f629913b1816d631b122042673677eed1636370ff50112ba0316047af0be4ffa869924c842ec17155ee422d52d40d2f7769184";
+      sha512 = "d0a1ce2264c3663a529df667f800bb7e7ae446e09a5b0b09934e00ca18e523baca3943edf1bc2e3269a1b41399a47bd989b487e8650a0ce9a66b94b8bcb37726";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.5.0/linux-i686/es-ES/thunderbird-68.5.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.7.0/linux-i686/es-ES/thunderbird-68.7.0.tar.bz2";
       locale = "es-ES";
       arch = "linux-i686";
-      sha512 = "381f9d0aa2695a0acca17bfde5e3845a59ce233736ea49d24e7cdeecd557b6d7ca4544b709f80f6454bd518132f9d7bd0b85cd76d053107f6dd4eeb4fa30b4c5";
+      sha512 = "5dc04a48b1997e0291265533351818b1912d73b9b002c8978f729006f7b406c03c27edf736a99d898ad9cb8328b40d732b27ca51e3f621740146b81968f87d8d";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.5.0/linux-i686/et/thunderbird-68.5.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.7.0/linux-i686/et/thunderbird-68.7.0.tar.bz2";
       locale = "et";
       arch = "linux-i686";
-      sha512 = "976f673e2ca991204df9134c8b3b1bbac00470b6bb5c20bb6ae5f886d611d250a509162f332e33523ef0cb103b70461dde8137449cf565d1be0f2ff0c08075a8";
+      sha512 = "8fdb9911b0da646fca7256fc0e004530339f6631fe3a91e1c0857b52d3d7f786a6fb8bf83cfea9e3c4e0faf6093d0b3afcd46a0dd1ce5c1357a40ff217393d6b";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.5.0/linux-i686/eu/thunderbird-68.5.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.7.0/linux-i686/eu/thunderbird-68.7.0.tar.bz2";
       locale = "eu";
       arch = "linux-i686";
-      sha512 = "8ecc9b36630e67dd2a7505103c2f2574fa1e27f6e7719d4b47e06359b8a41f2b7d97c88adc47acb6ce67205d15ec292570fb580166d963b1dd4a5bb0934c18eb";
+      sha512 = "788cee146a94621d373e8d815daef246d58b46ab1e935b01dee3955fe695af43e7a482f287d611e98a376b137b5bcd5b92baed5ab322a39ef30d8815abff6640";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.5.0/linux-i686/fi/thunderbird-68.5.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.7.0/linux-i686/fi/thunderbird-68.7.0.tar.bz2";
       locale = "fi";
       arch = "linux-i686";
-      sha512 = "54ef27d97d3712dab4616fa8a5d14392f39962bcf5113718d6de2f0fb8c6f801100c4e9d48f3129675ebbe7dc213486181ba28b96db56d4a23cc4e56ae68e276";
+      sha512 = "b65e042905882d1c7fbc88bffb512b32fc91475b99c3b1bf6a4e10ed355f9bb3223a3c709273b0ad84c30ad3c6c405c07cb3e04eeb8a4938ec22bae3af4dfbe5";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.5.0/linux-i686/fr/thunderbird-68.5.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.7.0/linux-i686/fr/thunderbird-68.7.0.tar.bz2";
       locale = "fr";
       arch = "linux-i686";
-      sha512 = "becdddb3c175a2930bafb48a47227d8046c330ac22540662cc310bd734f89d09a693e1f355d49d00837ec9af43755c1eb7ea206e87cf550c25786086d1af5b1d";
+      sha512 = "a85af36139d6f7ab6028acaba61a8dd47c2fd6ef9114b5ae8783c78c85e16c606d72b05c15a299d1a0beb518301aeb65d3493d518b270bfb97f22c88d23bbc0a";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.5.0/linux-i686/fy-NL/thunderbird-68.5.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.7.0/linux-i686/fy-NL/thunderbird-68.7.0.tar.bz2";
       locale = "fy-NL";
       arch = "linux-i686";
-      sha512 = "dc6d3c3ce455b315fdfc1dda46b79f9ae506af0c17d46b2d2d54a7e0f1f5281619acc861b73bd6caa23e2eedef88f0e7e9c279931584e3f4a1ddb1ba87c9d3d2";
+      sha512 = "60cc189b7eedc72327d3fce18809403014cc6b2c4dc53617cc8cd589dade6be25ade584416f9be18830f3c7a6060fad3e19bb930a591f17fdb3437b4597f48a6";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.5.0/linux-i686/ga-IE/thunderbird-68.5.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.7.0/linux-i686/ga-IE/thunderbird-68.7.0.tar.bz2";
       locale = "ga-IE";
       arch = "linux-i686";
-      sha512 = "875529e87597870478e2552f06677cbff98226efdac4fc3de007662e7c0b1d575888f2bb3f23d5f5b14191793f54361d8950c041b2b82ddea5a0283b7c98b26e";
+      sha512 = "95b337d681a5292c0343bb545232b666268e5fbea0afd6b96122ff00e504da0a5628126a11495ba54d4e8500615d35b34de13851ad43f180bd9b5b1f584c7ec9";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.5.0/linux-i686/gd/thunderbird-68.5.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.7.0/linux-i686/gd/thunderbird-68.7.0.tar.bz2";
       locale = "gd";
       arch = "linux-i686";
-      sha512 = "47b7f5aea26aedaa3ba0ca52f53f86a339b51520d4f9150711cb37c72e6dbd2f1e0872d3eae8a9ddf821d3102025f82bdea7da5a9b077e817a80b31d345ed8b8";
+      sha512 = "483a1bcc1a0066a962ed91c8f4c6f948623e3555d2977c593a473c5c08e12baf05fc4c043ef5db1fc839fb9f550764abe457f2d33e23ffc748ea6aa50d675101";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.5.0/linux-i686/gl/thunderbird-68.5.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.7.0/linux-i686/gl/thunderbird-68.7.0.tar.bz2";
       locale = "gl";
       arch = "linux-i686";
-      sha512 = "22e9ab419e7a80e498c459a89ac3cf39451dc95fda545ec9a0c74067d971b9f66457a6948918fb2cfd3e43a471b0f23e54bc880298813111f4cc77c5a99708fc";
+      sha512 = "0a88fc59510fa06757dd1b6994be0ceb8a0ad2cd1246077838756a0d65d6c01a64f8c48fc8ac87690686bdfea8c7d0b44e5fd96feca4c3aa59d6fb43eaeed3f2";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.5.0/linux-i686/he/thunderbird-68.5.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.7.0/linux-i686/he/thunderbird-68.7.0.tar.bz2";
       locale = "he";
       arch = "linux-i686";
-      sha512 = "7494ec5b2315748379a4b476add35cd6ce7f4afdd90a8503efd41188af189aa06b01345f21e5808720e2aeadc6729f7e65d4c5e16b5f301f04cf2646373a4712";
+      sha512 = "9c2ae42cf2d43e4ae9d0dad829871b44321b2cf49cde1f17568f96c4d6a69793d78c9b7a72cb29b71c108718906ab749f006f7c727d6f3892efa3d56d0852449";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.5.0/linux-i686/hr/thunderbird-68.5.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.7.0/linux-i686/hr/thunderbird-68.7.0.tar.bz2";
       locale = "hr";
       arch = "linux-i686";
-      sha512 = "e586ff015da79b357f5b3218a65ad13e861d5e73c32f6cf990aa100ca76c2f3519feb6592826271a9ffed3f3d51f40db373c2931c2dae169454710c7b5e36c07";
+      sha512 = "9e9a949fe54c23a0f73bcb05a4fe2b212c6701cbd1d68ae10dba2b62de07fcc5dad5210de0ec3c3f684f06828f8fd1c420712396e5132da6053de42f319d6454";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.5.0/linux-i686/hsb/thunderbird-68.5.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.7.0/linux-i686/hsb/thunderbird-68.7.0.tar.bz2";
       locale = "hsb";
       arch = "linux-i686";
-      sha512 = "261970ba0021e09d4356284e52a8336db7448269a76714448ab5dc4f77dc91be8f2f8185915f4e1392912ca0464f4f699c754fdc2fe8080b1f68a3d210d085d6";
+      sha512 = "0d3c5ca3ce6a9becaad63b2d7bf3e1d4491cad18201e1ddb634ad80d4d9d9d26c95b02034888f24ce50c5390b1197fe3bbd69525bcffd5192d95ed35203515de";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.5.0/linux-i686/hu/thunderbird-68.5.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.7.0/linux-i686/hu/thunderbird-68.7.0.tar.bz2";
       locale = "hu";
       arch = "linux-i686";
-      sha512 = "ce329a1900b7ce6093e06d522e141b228090f20f3917e9c154a4ee95611316bc1117224f2bfe5fd0add40a5b31ba39fc87fccba4d28edea83d0be05df7b87e70";
+      sha512 = "4519acbc2d00cb1f97d73f17b37db4625fd16f7f25e628d5309bdddee2012feb2133ce599bc69eabb22a18f015a00c8e98d6804140ea1ae41d66f59164355f32";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.5.0/linux-i686/hy-AM/thunderbird-68.5.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.7.0/linux-i686/hy-AM/thunderbird-68.7.0.tar.bz2";
       locale = "hy-AM";
       arch = "linux-i686";
-      sha512 = "756d4675e03753d1b3398b665247301997200e5f53215f9eabd17acb7502f282a1a5be3ea098ef8db4941ce7fd1a57165344c3036b786d3857b08b6613ba4088";
+      sha512 = "f60cca5cef19516a5c6e4b22962567c0c0d22035ee7583b0d93a4db0db7f625ed0cfaddc78f56621371d0a8b6341948cbf9171debe81c222d170af2c759eef36";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.5.0/linux-i686/id/thunderbird-68.5.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.7.0/linux-i686/id/thunderbird-68.7.0.tar.bz2";
       locale = "id";
       arch = "linux-i686";
-      sha512 = "61538042a75ab0d987fc9289fa1f6e7bc74ab67cda7c78ab34ed72894f6bf3cb3cd05e0a5519b44348d050319c137113508d6f8b4845d0fcc668560acea74eb9";
+      sha512 = "75adaedcce7dae3998a063794552d3e5fd69e037422e44fafcc7871a05cabcb592c9ddb637c1f7b0639e03f6d0d99b262679087df2d6806fe2a202121cdb5563";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.5.0/linux-i686/is/thunderbird-68.5.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.7.0/linux-i686/is/thunderbird-68.7.0.tar.bz2";
       locale = "is";
       arch = "linux-i686";
-      sha512 = "c292cf7d04f84f6819950115f4d821f0212d87b6a8587468bb4c3c8978a98decf7dcf6e00d8db6bc557cd5e3e0621814caad65d5b86c645d82e670929d2da525";
+      sha512 = "b80488a594bebecaa139a2bbac76e3daa0d3a9f3257cfdc2f6954f8cbf427c3b3ec1db3d1f55b9c5e8c37242778e53904b92adff1cb7e1907142008e69607ee8";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.5.0/linux-i686/it/thunderbird-68.5.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.7.0/linux-i686/it/thunderbird-68.7.0.tar.bz2";
       locale = "it";
       arch = "linux-i686";
-      sha512 = "950f886bd49b8b90e8c26dd52352e13020ae752c0581d15666a512265270c39a406b2421832e3eb25eede3ff5a6129287f9c7f6849a99ba907190f257615a79c";
+      sha512 = "c8a0f75f6467f6428103c98e97afce1690a0d986ea6466dbfbaa2eba2853d8f7a1e65c568d10884d6d4412fcbab39e8743d3e3233ac16f69ab57a5f698c3ac5c";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.5.0/linux-i686/ja/thunderbird-68.5.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.7.0/linux-i686/ja/thunderbird-68.7.0.tar.bz2";
       locale = "ja";
       arch = "linux-i686";
-      sha512 = "9902c298bf470ef71d1d00372caf3d99a16ca61ca4ae448c838c936e6ddee674a2ca6359989c852d6de41ab550a7fdca9db829951740324eeda8dbb84fb51705";
+      sha512 = "b1abc4fb9e7af1695ca2a4fe88d2198876212923ae10977b0caedffc96dadd891fe6068fd8d53c7cb7667854523197d1378791fb71c12eb817dd9b6e338eb3a3";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.5.0/linux-i686/ka/thunderbird-68.5.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.7.0/linux-i686/ka/thunderbird-68.7.0.tar.bz2";
       locale = "ka";
       arch = "linux-i686";
-      sha512 = "123cead4f30751e8422821690a436796d1b915e38c1b03aac8c2bb339df7f2d69d6794f4261971f73595add6db6a9887d0e5d4f0699459baeeec46cc687f1efa";
+      sha512 = "11e56137a0e5f9f6cc4b24e02861e6ee4c451280076e9efc46e1f28066862b3bd494ff7388f6be736be3dcf6412c5dbd141546dd37d6351aed54790deff841f9";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.5.0/linux-i686/kab/thunderbird-68.5.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.7.0/linux-i686/kab/thunderbird-68.7.0.tar.bz2";
       locale = "kab";
       arch = "linux-i686";
-      sha512 = "c9d3a9d368b8db85f7c6c83ff64bb5b3ab37faab2b2cdf29d23b444dc42ef394a951d3dc4c164eed3c5c278f12c9d42ef8a5f7abcc320ed6b6e181ec540873d9";
+      sha512 = "b930bd22990497a66cc9aff96f0c9bbfae4396fd9b4397893db9c72b59b602b45f6ab7388b8899890e151bf8dd1e0b788d668cdad607f4326794825508d36ebd";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.5.0/linux-i686/kk/thunderbird-68.5.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.7.0/linux-i686/kk/thunderbird-68.7.0.tar.bz2";
       locale = "kk";
       arch = "linux-i686";
-      sha512 = "2f3ba44e31fcacadf517de3d7e3c108335a75de4d54023de296d9329bba8cbb90d5989093e2d6afdfc8c7d2ce71db9e4bdfd72ff57d13bae281406cdb31a5670";
+      sha512 = "17b7ec790013cdbad015d3045ec8d4c5ee6d92b1ea9be18e2b9a5d7776f53c7b621193e7dec418f86be25e3d876e4a9cf9c8ceef0cac4051461afc1a51498353";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.5.0/linux-i686/ko/thunderbird-68.5.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.7.0/linux-i686/ko/thunderbird-68.7.0.tar.bz2";
       locale = "ko";
       arch = "linux-i686";
-      sha512 = "8a8bf9ad7f9f2d7132d8f8635ef9e924c1f488ca9963157ab2b40230a63c48de9223cd3076489a7249894c2bb9a369dc7b80a09c05387fbb93906a562868a96e";
+      sha512 = "1030a289a2e0793553ec3bfa8ac1b3ff3bfac3766318f5ffd9e6eff1979481b327a90a2207a5c16ca33719675c65e20d58ea8074fbd5fe9877fd334114e9b5f2";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.5.0/linux-i686/lt/thunderbird-68.5.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.7.0/linux-i686/lt/thunderbird-68.7.0.tar.bz2";
       locale = "lt";
       arch = "linux-i686";
-      sha512 = "79967b8b49ba9cc63fe379fa16395962e9fee3704c9513222934ff7bc6f89e3ea2dcae37f1f74c30bef962ddda450cac5fb9f9d0d6fdf65492aa8246f0334a02";
+      sha512 = "e433d8933c1d4a41e70ae2a8bdb6f1a502d478aad1308e1f0e8489149371893deea61fe8339717eb22996d844a5a6bbef916ec6c468a57cfbb7a54751bee2408";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.5.0/linux-i686/ms/thunderbird-68.5.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.7.0/linux-i686/ms/thunderbird-68.7.0.tar.bz2";
       locale = "ms";
       arch = "linux-i686";
-      sha512 = "5f4c7d1a015aee2ab55a7387a621a793bd8c006740e2e97b2a0237c6947841cfe5cdc13a184614df58a082b0ab90fc581d84a31f98f0ef8c782a61326f027b1d";
+      sha512 = "31343703e214decf4f25d724507dc706cb6c47d6247989cc2019841175099a0c328fca562fbd257f0003ec6a6fc8cdcd632c141de13e910a6a7b9c75733998bb";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.5.0/linux-i686/nb-NO/thunderbird-68.5.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.7.0/linux-i686/nb-NO/thunderbird-68.7.0.tar.bz2";
       locale = "nb-NO";
       arch = "linux-i686";
-      sha512 = "60679df9cc0898513b343955d8e99362ea106599f98ddf238c694c7b35e4a260b3fa3b8a80a438d3a9891bfe4f1fee504d868e293f9c9eadf8d9042c280d7f08";
+      sha512 = "e79708c309dd16d23bba5bc0e29a4f5b426a7dcb7dcd56b86c40875abd0d7fa532d9ca8c8b5019552fa0d07e5c4686a66f0a4173e2fdbf8865d3921c8b29f327";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.5.0/linux-i686/nl/thunderbird-68.5.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.7.0/linux-i686/nl/thunderbird-68.7.0.tar.bz2";
       locale = "nl";
       arch = "linux-i686";
-      sha512 = "ddc26e850a055a532107f7f6d329fc4385b0fbd68eea382574b8a3f2510d0b4c75587696b1994adc710ce286ddf41bc44f80cb42c8011171dcf813a4e3a992f1";
+      sha512 = "8c268bbe04c30a3dbef069add7b6e47fc576a60d0709020d0aee03b0be634f0fbfd4928489fe7b984a8c54fb1ad9ae951b9dd0c0ba04483b35a242bbbe3bbc19";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.5.0/linux-i686/nn-NO/thunderbird-68.5.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.7.0/linux-i686/nn-NO/thunderbird-68.7.0.tar.bz2";
       locale = "nn-NO";
       arch = "linux-i686";
-      sha512 = "0ebef3051ad541cb042ca3512c145bf46b5807990b3643d42d3d21f4c9c01fdb69872967381ce9790c70e59948dd991d83286bf41404312e62074d814d70a1fa";
+      sha512 = "9c73e09e4680f3c258e7d25691dffaf805ca6946335c9c30ef091a739d7f87e0f36f5328875ceb2b7f0f2cee2bf16fe1401411f11f4e5e45ca86837c4e207d79";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.5.0/linux-i686/pl/thunderbird-68.5.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.7.0/linux-i686/pl/thunderbird-68.7.0.tar.bz2";
       locale = "pl";
       arch = "linux-i686";
-      sha512 = "3fab9ea4cf7c2e9ae5bb30059a2cd96c9cab281c87600927dba3b7a932e434f56c7359cc05e8f5c568232d53ba68fcf7d0164b59021a9ac2e502415129abc38e";
+      sha512 = "6dcb19a95e0bd8dd783a420c3f06e0980c5706c065397d4ee424969bd84daf783752d55153808df5811f656d28adeb15f826b1d4f2b9e356846c6b1c01b89a04";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.5.0/linux-i686/pt-BR/thunderbird-68.5.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.7.0/linux-i686/pt-BR/thunderbird-68.7.0.tar.bz2";
       locale = "pt-BR";
       arch = "linux-i686";
-      sha512 = "7e5c5e2a1d5e8c940cdbb43fc394c75b97b5c1a3898e93647473b2dc751ac020225ba14ae812ddc1b0585fd4f6df747053d443d6538b21f96c7f8aab38521f37";
+      sha512 = "99deb6fe54bf1f9bb1858f2c454e44246b34bca6aaeb5322db57d048acdea5de853d439d4f079c3e2587174364ecb05861cac461a34dfba495eb747bb8fc98ac";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.5.0/linux-i686/pt-PT/thunderbird-68.5.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.7.0/linux-i686/pt-PT/thunderbird-68.7.0.tar.bz2";
       locale = "pt-PT";
       arch = "linux-i686";
-      sha512 = "a02fe6bad1dc6479df27ebe62a13ef2dc0a8f52bead42e65bee89e76bfa117c975fe1db612d0a577f7d8de84bb3ee82f27a3af247675721e4cb2e54467ff300a";
+      sha512 = "fd0fe715c0e816e6a92b9cb6a2afea50952851161cdd217f764cdafdc529f7cf0c5a6913546b81fc1d9532de74eecf13517c6eb8380ab5f920487df4c26d331b";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.5.0/linux-i686/rm/thunderbird-68.5.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.7.0/linux-i686/rm/thunderbird-68.7.0.tar.bz2";
       locale = "rm";
       arch = "linux-i686";
-      sha512 = "56967ecc02e1cfa91d9c942d31e5ce1c3f16319732344aee385acd0f0f40882e65f02e2134bd53483c5459039982eb261b8d0b97aed5388fdb2754f58d2eb80f";
+      sha512 = "5ff0306c7c6f88976f3080d34690e4607a74730509f9f43a0ba56fb9e5b9cdea8e85a4137333c150110fa110ab6d98cbbf265ea07ca439f199841a82af500152";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.5.0/linux-i686/ro/thunderbird-68.5.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.7.0/linux-i686/ro/thunderbird-68.7.0.tar.bz2";
       locale = "ro";
       arch = "linux-i686";
-      sha512 = "20b6bc1e4fd8a595e42e468d94216aa0502aadb7de9cecd1a6da1fb14fc6008976551467ceb1e258fc87f98f4cfc485d91697817525a9a4ddb65626ccf6d989c";
+      sha512 = "9240e285135f27f82402cd0d3374f28d293a29c904a503297014802554e8257bf95c8d0cbcf18841c44d1012e0d3d8067ab24186317cb4f42f96dfeeb65255b9";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.5.0/linux-i686/ru/thunderbird-68.5.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.7.0/linux-i686/ru/thunderbird-68.7.0.tar.bz2";
       locale = "ru";
       arch = "linux-i686";
-      sha512 = "325649a3cb72ac2c3d8ef01caaf00123a2ffd5772ced16271cef8c08408e8828c9d96ca8ea81ca594f669b936b68f941d35adc1f00268447c782efca186a4a36";
+      sha512 = "0c90806ecfe1e4b2e4d17ba01a5945bf5c0d3a0e7b5caaecd36456286f5a1ea597b743743acfbaef585cdc4bada86e6f194608ebe9dd2308f24d093fbba49fa5";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.5.0/linux-i686/si/thunderbird-68.5.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.7.0/linux-i686/si/thunderbird-68.7.0.tar.bz2";
       locale = "si";
       arch = "linux-i686";
-      sha512 = "164e0588d563b49a5652a97f21eaf513cbbf9af7ff97f93446f7ab99800d0cbcb61714e72e53feccb407992386a02715413c26c70ca46c45dd15ca7357e185a2";
+      sha512 = "a10ab6a050df683057d4532c0c1ebfbed80de96f6831ae60e53f4e4fe95a342ce97b545c7a658fa092a7b9d4c2196f4bb296e4af9b0c7e4183f112ab50b464e6";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.5.0/linux-i686/sk/thunderbird-68.5.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.7.0/linux-i686/sk/thunderbird-68.7.0.tar.bz2";
       locale = "sk";
       arch = "linux-i686";
-      sha512 = "fc2e7881caed0943f773a687653e2fc301ace20f59e7afb1074350cda33a1f18998789410c10d1f0aa9cb4ceae7268ab251efd7b5ca02a6949da6b613cd88780";
+      sha512 = "1aa04c5702a89099645616f7aee86a507cc5c54f3a62696eaef17d6ca161ded644285d77782ff940c2ab128d2ff9f4c5b385999da9de678837ecf91d00f88f16";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.5.0/linux-i686/sl/thunderbird-68.5.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.7.0/linux-i686/sl/thunderbird-68.7.0.tar.bz2";
       locale = "sl";
       arch = "linux-i686";
-      sha512 = "4dd57628b1d8c4518b889424f457c8f3b83bfbf6aca2cb9be403fe97020c25d4ef95e5d473c5d2be67a9caf184aa657c6c13a549cc3b7a2e5e29199c990cda8d";
+      sha512 = "afacff8423baa933c6e4b2282fc112636876dd97e607e9a63675fc5232907bf7b06dc50e1377aeedd3cc56dded6f3d71b47aa774dbea12217f6243c6182a2bf8";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.5.0/linux-i686/sq/thunderbird-68.5.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.7.0/linux-i686/sq/thunderbird-68.7.0.tar.bz2";
       locale = "sq";
       arch = "linux-i686";
-      sha512 = "3cda84132453a2802738145fe38c9a36db162842bda1a1c2a125a1f8c4cfc6af2bbd4c629804e539f260af8964c34f5af77965d755ea0f327f7765cb43c525d2";
+      sha512 = "6036f12337b129025c34906b8df0663ae210294d3914cceb9f97be907f058e9eaeafad2aa2e2c2ee79f83be3659a242ab2135cf7f240b34eee24dcf555aef40f";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.5.0/linux-i686/sr/thunderbird-68.5.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.7.0/linux-i686/sr/thunderbird-68.7.0.tar.bz2";
       locale = "sr";
       arch = "linux-i686";
-      sha512 = "6d1a2da487b616716c680619528f9b70fc5ca9c4c34e3e66841ace9254cddae6fa63396bcb8dec6d961a29f0dc14aefc660e96f90a82c7801a1acb7b21275fe1";
+      sha512 = "c48be7ba5b42ebd244c59a6188be08236974fabdf7cc30f3473add6b215c6c7ea80fd4ad4d739d7e62fe2f1043afb288d2a6f7e838bf0e17fcc68b5340806e45";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.5.0/linux-i686/sv-SE/thunderbird-68.5.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.7.0/linux-i686/sv-SE/thunderbird-68.7.0.tar.bz2";
       locale = "sv-SE";
       arch = "linux-i686";
-      sha512 = "c2b3901a02f01123460816c566f62374ee954e18c411868059211d97d88b8d59c2452eb0fe1ecc940473b68f983dfb64f276a1f167178fba0d79a03235ac2758";
+      sha512 = "c943304a7f40e715d1fb1194ba7f306538b917788306f02be10a86e1d01baf091b1bc58b417aad7775fba58cf90ddd8412a56cfbcf2f12e4f7581be34c328205";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.5.0/linux-i686/tr/thunderbird-68.5.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.7.0/linux-i686/tr/thunderbird-68.7.0.tar.bz2";
       locale = "tr";
       arch = "linux-i686";
-      sha512 = "bdcfc20888bd896abdb2dd52ae5d4497a5a9706c01ae0193548707d326b74eb5af448db5d0e9e647c976024560e091305bc6d074ca8181886e27a2e201446204";
+      sha512 = "53d5c9d7db4a44ea3858c55377c0ab8f8d359440f86634a0ff5eefdaf0553dd2c7a9ca66112a2cd4fe3a8e6094cf9c1f16fe01119ab11f1a039f471fcba37609";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.5.0/linux-i686/uk/thunderbird-68.5.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.7.0/linux-i686/uk/thunderbird-68.7.0.tar.bz2";
       locale = "uk";
       arch = "linux-i686";
-      sha512 = "e71a965b6d3c7f90b97361435027af0b0fe194233500f127b2b9c75fbc2cd2c4ecf4228b537081a8ef61131e97e09b348198d3f59db7587a2e40a75b0e90686e";
+      sha512 = "8204e0ca96902f16b92a6e02c09a788362359af3a6566f8246055727d5a74736d0b9f8570a4671a1f69233a993e25676c730001dfef9a92d034edcb8b12a5f7f";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.5.0/linux-i686/uz/thunderbird-68.5.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.7.0/linux-i686/uz/thunderbird-68.7.0.tar.bz2";
       locale = "uz";
       arch = "linux-i686";
-      sha512 = "305c74f94e10565923073d157dbc6c62d03e6c1f5291cad5a0fcddf5cd158e99f8fd88b84c4c0e4a352139339398c80f84abebf486503030fa5a0dd4ac1d02ea";
+      sha512 = "496d82507602cff8e48f43b9c63a696d24020b804ffda45f2027103c5f3768543db0f03051ef062e0076c16b78b31759f7d4a4878a45e7dfac1cc0e4e9d046cb";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.5.0/linux-i686/vi/thunderbird-68.5.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.7.0/linux-i686/vi/thunderbird-68.7.0.tar.bz2";
       locale = "vi";
       arch = "linux-i686";
-      sha512 = "5578e325a16c94acae412ba403abbd7920b2b78e8e469c16175d27e44bebcd257dcf9c5e4454276422ebbc7797049f927e0a131be54aa11ceac1878fa1ac6c13";
+      sha512 = "f360794ecb21ed3f90552797269ab6e89024591903eb53dcf6216b25bb4dbcdf94c2526672b94ba979717f90cce5bfb6329efb3b5a2b9bec7c3d4d06d339ac9e";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.5.0/linux-i686/zh-CN/thunderbird-68.5.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.7.0/linux-i686/zh-CN/thunderbird-68.7.0.tar.bz2";
       locale = "zh-CN";
       arch = "linux-i686";
-      sha512 = "a8f2a25bac4b312d2c61bf3e6a7fae6a98fb6ed43682005881157809083dbb1939afd6200b67236b3087148622978f5616d554202f586ffd60b5dadb65dad433";
+      sha512 = "ec7274b2870206647fd853c30db4e30b3856896ce9c89d5d825363e9d4327d23a230c899abbb740036a8e060f1532007ba5936af010feea85318bdeb18f29e0d";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.5.0/linux-i686/zh-TW/thunderbird-68.5.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.7.0/linux-i686/zh-TW/thunderbird-68.7.0.tar.bz2";
       locale = "zh-TW";
       arch = "linux-i686";
-      sha512 = "9b463179ef67102ba10d440071b10a7e075c586c72cc352b2af05db9b048b46819a913547f5d0e0ca3a5c2e26110515d4a87db36f9765b59f64fd58f76662785";
+      sha512 = "f0fb6deda0813516753386ae69ddb7b6dce95ce89c6dfba3ba5828d80d9fe92e3eaf014e89ab56c4548d39932bbfe12d4b9c6c8ff66b77a9ebe4f7476a9f6be9";
     }
     ];
 }
diff --git a/pkgs/applications/networking/mailreaders/thunderbird/default.nix b/pkgs/applications/networking/mailreaders/thunderbird/default.nix
index 8d4fa98ef729..19c572af2795 100644
--- a/pkgs/applications/networking/mailreaders/thunderbird/default.nix
+++ b/pkgs/applications/networking/mailreaders/thunderbird/default.nix
@@ -72,13 +72,13 @@ assert waylandSupport -> gtk3Support == true;
 
 stdenv.mkDerivation rec {
   pname = "thunderbird";
-  version = "68.5.0";
+  version = "68.7.0";
 
   src = fetchurl {
     url =
       "mirror://mozilla/thunderbird/releases/${version}/source/thunderbird-${version}.source.tar.xz";
     sha512 =
-      "15hi1193z6gp05dx6pqakxydyrxzls4xhfpvrk5qg458gxhdfj4qbgb33mcf944g7vf2hk5mk6nbgmdxlb9svw1n72ym2adyaca6n5v";
+      "0glskn3djf739v2dphs663a2lfg5b0lbk1vlwwbzwfj9wfshvk7l07ijp84143bamvgb0lhhh0c9zx4gy5jj3x1j4196m3s1c1n7rzs";
   };
 
   nativeBuildInputs = [
@@ -191,7 +191,7 @@ stdenv.mkDerivation rec {
           lib.getVersion stdenv.cc.cc
         } -isystem ${stdenv.cc.cc}/include/c++/${
           lib.getVersion stdenv.cc.cc
-        }/$(cc -dumpmachine)"
+        }/${stdenv.hostPlatform.config}"
       } \
       $NIX_CFLAGS_COMPILE"
 
diff --git a/pkgs/applications/networking/modem-manager-gui/default.nix b/pkgs/applications/networking/modem-manager-gui/default.nix
index bfd177cda7a1..e8b7645db872 100644
--- a/pkgs/applications/networking/modem-manager-gui/default.nix
+++ b/pkgs/applications/networking/modem-manager-gui/default.nix
@@ -2,6 +2,7 @@
 , pkgconfig
 , python3
 , fetchhg
+, fetchpatch
 , gtk3
 , glib
 , gdbm
@@ -20,11 +21,19 @@ stdenv.mkDerivation rec {
   version = "0.0.19.1";
 
   src = fetchhg {
-    url = https://linuxonly@bitbucket.org/linuxonly/modem-manager-gui;
+    url = "https://linuxonly@bitbucket.org/linuxonly/modem-manager-gui";
     rev = "version ${version}";
     sha256 = "11iibh36567814h2bz41sa1072b86p1l13xyj670pwkh9k8kw8fd";
   };
 
+  patches = [
+    # Fix docs build
+    (fetchpatch {
+      url = "https://bitbucket.org/linuxonly/modem-manager-gui/commits/68fb09c12413b7de9b7477cbf4241c3527568325/raw";
+      sha256 = "58XIT/RTZ9sjUK2e47h+SqpRWhQ2vbKb2h9MKiHNdgw=";
+    })
+  ];
+
   nativeBuildInputs = [
     pkgconfig
     python3
@@ -55,7 +64,7 @@ stdenv.mkDerivation rec {
       functions. You can check balance of your SIM card, send or receive SMS
       messages, control mobile traffic consumption and more.
     '';
-    homepage = https://linuxonly.ru/page/modem-manager-gui;
+    homepage = "https://linuxonly.ru/page/modem-manager-gui";
     license = licenses.gpl3;
     maintainers = with maintainers; [ ahuzik ];
     platforms = platforms.linux;
diff --git a/pkgs/applications/networking/mpop/default.nix b/pkgs/applications/networking/mpop/default.nix
index dce1934febf4..8a0980286df9 100644
--- a/pkgs/applications/networking/mpop/default.nix
+++ b/pkgs/applications/networking/mpop/default.nix
@@ -4,11 +4,11 @@ with stdenv.lib;
 
 stdenv.mkDerivation rec {
   pname = "mpop";
-  version = "1.4.7";
+  version = "1.4.9";
 
   src = fetchurl {
     url = "https://marlam.de/${pname}/releases/${pname}-${version}.tar.xz";
-    sha256 = "0c6n5afn9pr4p7gxkv462lysrw52w9fhvavzm99c78dcp9dj5xnk";
+    sha256 = "0hinmyd4lipy9wi3grwm72vv6xrpf4m08i9g9nlxzxnwfanw885q";
   };
 
   nativeBuildInputs = [ pkgconfig ];
@@ -19,7 +19,7 @@ stdenv.mkDerivation rec {
 
   meta = {
       description = "POP3 mail retrieval agent";
-      homepage = https://marlam.de/mpop;
+      homepage = "https://marlam.de/mpop";
       license = licenses.gpl3Plus;
       platforms = platforms.unix;
     };
diff --git a/pkgs/applications/networking/msmtp/default.nix b/pkgs/applications/networking/msmtp/default.nix
index 486b34ecb308..9e990dcdf33d 100644
--- a/pkgs/applications/networking/msmtp/default.nix
+++ b/pkgs/applications/networking/msmtp/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, lib, fetchurl, autoreconfHook, pkgconfig
+{ stdenv, lib, fetchurl, autoreconfHook, pkgconfig, texinfo
 , netcat-gnu, gnutls, gsasl, libidn2, Security
 , withKeyring ? true, libsecret ? null
 , systemd ? null }:
@@ -9,11 +9,11 @@ let
 
 in stdenv.mkDerivation rec {
   pname = "msmtp";
-  version = "1.8.7";
+  version = "1.8.10";
 
   src = fetchurl {
     url = "https://marlam.de/${pname}/releases/${pname}-${version}.tar.xz";
-    sha256 = "1waiiksa57byb7gvx1zmh6srvl6r8rvwqklk0slb3iaf4kfbqlws";
+    sha256 = "041g921rdjiv8bapp61gp4rylq8cckfkcwzyh8bs7xwxs4wpzfna";
   };
 
   patches = [
@@ -24,7 +24,7 @@ in stdenv.mkDerivation rec {
     ++ stdenv.lib.optional stdenv.isDarwin Security
     ++ stdenv.lib.optional withKeyring libsecret;
 
-  nativeBuildInputs = [ autoreconfHook pkgconfig ];
+  nativeBuildInputs = [ autoreconfHook pkgconfig texinfo ];
 
   configureFlags =
     [ "--sysconfdir=/etc" ] ++ stdenv.lib.optional stdenv.isDarwin [ "--with-macosx-keyring" ];
@@ -51,7 +51,7 @@ in stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "Simple and easy to use SMTP client with excellent sendmail compatibility";
-    homepage = https://marlam.de/msmtp/;
+    homepage = "https://marlam.de/msmtp/";
     license = licenses.gpl3Plus;
     maintainers = with maintainers; [ peterhoeg ];
     platforms = platforms.unix;
diff --git a/pkgs/applications/networking/mullvad-vpn/default.nix b/pkgs/applications/networking/mullvad-vpn/default.nix
index d673c75764a3..1e25b01259d0 100644
--- a/pkgs/applications/networking/mullvad-vpn/default.nix
+++ b/pkgs/applications/networking/mullvad-vpn/default.nix
@@ -1,7 +1,7 @@
 { stdenv, makeWrapper, fetchurl, dpkg
 , alsaLib, atk, cairo, cups, dbus, expat, fontconfig, freetype
 , gdk-pixbuf, glib, gnome2, pango, nspr, nss, gtk3
-, xorg, autoPatchelfHook, systemd, libnotify
+, xorg, autoPatchelfHook, systemd, libnotify, libappindicator
 }:
 
 let deps = [
@@ -18,6 +18,7 @@ let deps = [
     gnome2.GConf
     pango
     gtk3
+    libappindicator
     libnotify
     xorg.libX11
     xorg.libXScrnSaver
@@ -40,11 +41,11 @@ in
 
 stdenv.mkDerivation rec {
   pname = "mullvad-vpn";
-  version = "2020.2";
+  version = "2020.3";
 
   src = fetchurl {
     url = "https://www.mullvad.net/media/app/MullvadVPN-${version}_amd64.deb";
-    sha256 = "4f5970714684a86fba44b742d77f9bbe1147a111330e487d160d9844f34ae3d5";
+    sha256 = "fac3896db78cc2ddac81abec8bc0aa324e66b453126ed35a501e422ce64b1362";
   };
 
   nativeBuildInputs = [
@@ -59,7 +60,7 @@ stdenv.mkDerivation rec {
 
   unpackPhase = "dpkg-deb -x $src .";
 
-  runtimeDependencies = [ systemd.lib libnotify ];
+  runtimeDependencies = [ systemd.lib libnotify libappindicator ];
 
   installPhase = ''
     runHook preInstall
@@ -74,6 +75,7 @@ stdenv.mkDerivation rec {
 
     ln -s $out/share/mullvad/mullvad-{gui,vpn} $out/bin/
     ln -s $out/share/mullvad/resources/mullvad-daemon $out/bin/mullvad-daemon
+    ln -sf $out/share/mullvad/resources/mullvad-problem-report $out/bin/mullvad-problem-report
 
     runHook postInstall
   '';
@@ -84,7 +86,7 @@ stdenv.mkDerivation rec {
     changelog = "https://github.com/mullvad/mullvadvpn-app/blob/${version}/CHANGELOG.md";
     license = licenses.gpl3;
     platforms = [ "x86_64-linux" ];
-    maintainers = with maintainers ;[ filalex77 xfix ];
+    maintainers = with maintainers; [ filalex77 ];
   };
 
 }
diff --git a/pkgs/applications/networking/mumble/default.nix b/pkgs/applications/networking/mumble/default.nix
index da7c5d4af741..633d6e63dce9 100644
--- a/pkgs/applications/networking/mumble/default.nix
+++ b/pkgs/applications/networking/mumble/default.nix
@@ -6,6 +6,7 @@
 , speechdSupport ? false, speechd ? null
 , pulseSupport ? false, libpulseaudio ? null
 , iceSupport ? false, zeroc-ice ? null
+, nixosTests
 }:
 
 assert jackSupport -> libjack2 != null;
@@ -20,7 +21,6 @@ let
     version = source.version;
 
     patches = (source.patches or [])
-      ++ optional jackSupport ./mumble-jack-support.patch
       ++ [ ./fix-rnnoise-argument.patch ];
 
     nativeBuildInputs = [ pkgconfig python qt5.qmake ]
@@ -64,6 +64,8 @@ let
 
     enableParallelBuilding = true;
 
+    passthru.tests.connectivity = nixosTests.mumble;
+
     meta = {
       description = "Low-latency, high quality voice chat software";
       homepage = "https://mumble.info";
diff --git a/pkgs/applications/networking/mumble/mumble-jack-support.patch b/pkgs/applications/networking/mumble/mumble-jack-support.patch
deleted file mode 100644
index 7c18a33193df..000000000000
--- a/pkgs/applications/networking/mumble/mumble-jack-support.patch
+++ /dev/null
@@ -1,457 +0,0 @@
-The patch was created by Filipe Coelho (falkTX) of the KXStudio
-project. http://kxstudio.sourceforge.net
-
-diff -U 3 -H -d -r -N -- mumble-1.2.2.orig/src/mumble/JackAudio.cpp mumble-1.2.2/src/mumble/JackAudio.cpp
---- mumble-1.2.2.orig/src/mumble/JackAudio.cpp	1970-01-01 01:00:00.000000000 +0100
-+++ mumble-1.2.2/src/mumble/JackAudio.cpp	2011-01-26 06:02:00.000000000 +0000
-@@ -0,0 +1,314 @@
-+/* Copyright (C) 2011, Benjamin Jemlich <pcgod@users.sourceforge.net>
-+   Copyright (C) 2011, Filipe Coelho <falktx@gmail.com>
-+
-+   All rights reserved.
-+
-+   Redistribution and use in source and binary forms, with or without
-+   modification, are permitted provided that the following conditions
-+   are met:
-+
-+   - Redistributions of source code must retain the above copyright notice,
-+     this list of conditions and the following disclaimer.
-+   - Redistributions in binary form must reproduce the above copyright notice,
-+     this list of conditions and the following disclaimer in the documentation
-+     and/or other materials provided with the distribution.
-+   - Neither the name of the Mumble Developers nor the names of its
-+     contributors may be used to endorse or promote products derived from this
-+     software without specific prior written permission.
-+
-+   THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
-+   ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
-+   LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
-+   A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE FOUNDATION OR
-+   CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
-+   EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
-+   PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
-+   PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
-+   LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
-+   NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
-+   SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-+*/
-+
-+#include "JackAudio.h"
-+#include "User.h"
-+#include "Global.h"
-+#include "MainWindow.h"
-+#include "Timer.h"
-+
-+#include <cstring>
-+
-+static JackAudioSystem *jasys = NULL;
-+
-+class JackAudioInputRegistrar : public AudioInputRegistrar {
-+        public:
-+                JackAudioInputRegistrar();
-+                virtual AudioInput *create();
-+                virtual const QList<audioDevice> getDeviceChoices();
-+                virtual void setDeviceChoice(const QVariant &, Settings &);
-+                virtual bool canEcho(const QString &) const;
-+};
-+
-+class JackAudioOutputRegistrar : public AudioOutputRegistrar {
-+        public:
-+                JackAudioOutputRegistrar();
-+                virtual AudioOutput *create();
-+                virtual const QList<audioDevice> getDeviceChoices();
-+                virtual void setDeviceChoice(const QVariant &, Settings &);
-+};
-+
-+class JackAudioInit : public DeferInit {
-+        public:
-+                JackAudioInputRegistrar *airJackAudio;
-+                JackAudioOutputRegistrar *aorJackAudio;
-+                void initialize() {
-+                        jasys = new JackAudioSystem();
-+                        jasys->init_jack();
-+                        jasys->qmWait.lock();
-+                        jasys->qwcWait.wait(&jasys->qmWait, 1000);
-+                        jasys->qmWait.unlock();
-+                        if (jasys->bJackIsGood) {
-+                                airJackAudio = new JackAudioInputRegistrar();
-+                                aorJackAudio = new JackAudioOutputRegistrar();
-+                        } else {
-+                                airJackAudio = NULL;
-+                                aorJackAudio = NULL;
-+                                delete jasys;
-+                                jasys = NULL;
-+                        }
-+                };
-+                void destroy() {
-+                        if (airJackAudio)
-+                                delete airJackAudio;
-+                        if (aorJackAudio)
-+                                delete aorJackAudio;
-+                        if (jasys) {
-+                                jasys->close_jack();
-+                                delete jasys;
-+                                jasys = NULL;
-+                        }
-+                };
-+};
-+
-+static JackAudioInit jackinit; //unused
-+
-+JackAudioSystem::JackAudioSystem() {
-+        bJackIsGood = false;
-+        iSampleRate = 0;
-+}
-+
-+JackAudioSystem::~JackAudioSystem() {
-+}
-+
-+void JackAudioSystem::init_jack()
-+{
-+        client = jack_client_open("mumble", JackNullOption, 0);
-+
-+        if (client) {
-+                in_port = jack_port_register(client, "input", JACK_DEFAULT_AUDIO_TYPE, JackPortIsInput, 0);
-+                out_port = jack_port_register(client, "output", JACK_DEFAULT_AUDIO_TYPE, JackPortIsOutput, 0);
-+                jack_set_process_callback(client, process_callback, this);
-+                jack_set_sample_rate_callback(client, srate_callback, this);
-+                jack_on_shutdown(client, shutdown_callback, this);
-+
-+                iSampleRate = jack_get_sample_rate(client);
-+
-+                if (jack_activate(client) || in_port == NULL || out_port == NULL) {
-+                    client = NULL;
-+                    return;
-+                }
-+
-+                int port_flags;
-+                unsigned i = -1;
-+                const char** ports = jack_get_ports(client, 0, 0, JackPortIsPhysical);
-+
-+                if (ports) {
-+                    while (ports[++i])
-+                    {
-+                        jack_port_t* port = jack_port_by_name(client, ports[i]);
-+                        port_flags = jack_port_flags(port);
-+
-+                        if (port_flags & (JackPortIsPhysical|JackPortIsOutput) && strstr(jack_port_type(port), "audio")) {
-+                            jack_connect(client, ports[i], jack_port_name(in_port));
-+                        }
-+                        if (port_flags & (JackPortIsPhysical|JackPortIsInput) && strstr(jack_port_type(port), "audio")) {
-+                            jack_connect(client, jack_port_name(out_port), ports[i]);
-+                        }
-+                    }
-+                }
-+
-+                jack_free(ports);
-+
-+                // If we made it this far, then everything is okay
-+                qhInput.insert(QString(), tr("Hardware Ports"));
-+                qhOutput.insert(QString(), tr("Hardware Ports"));
-+                bJackIsGood = true;
-+
-+            } else {
-+                bJackIsGood = false;
-+                client = NULL;
-+            }
-+}
-+
-+void JackAudioSystem::close_jack()
-+{
-+        if (client) {
-+                jack_deactivate(client);
-+                jack_client_close(client);
-+                client = NULL;
-+        }
-+}
-+
-+int JackAudioSystem::process_callback(jack_nframes_t nframes, void *arg)
-+{
-+        JackAudioSystem *jas = (JackAudioSystem*)arg;
-+
-+        if (jas && jas->bJackIsGood) {
-+                AudioInputPtr ai = g.ai;
-+                AudioOutputPtr ao = g.ao;
-+                JackAudioInput *jai = (JackAudioInput*)(ai.get());
-+                JackAudioOutput *jao = (JackAudioOutput*)(ao.get());
-+
-+                if (jai && jai->bRunning && jai->iMicChannels > 0 && !jai->isFinished()) {
-+                        void* input = jack_port_get_buffer(jas->in_port, nframes);
-+                        if ((float*)input != 0)
-+                            jai->addMic(input, nframes);
-+                }
-+
-+                if (jao && jao->bRunning && jao->iChannels > 0 && !jao->isFinished()) {
-+                        jack_default_audio_sample_t* output = (jack_default_audio_sample_t*)jack_port_get_buffer(jas->out_port, nframes);
-+                        memset(output, 0, sizeof(jack_default_audio_sample_t)*nframes); //TEST
-+                        jao->mix(output, nframes);
-+                }
-+        }
-+
-+        return 0;
-+}
-+
-+int JackAudioSystem::srate_callback(jack_nframes_t frames, void *arg)
-+{
-+        JackAudioSystem *jas = (JackAudioSystem*)arg;
-+        jas->iSampleRate = frames;
-+        return 0;
-+}
-+
-+void JackAudioSystem::shutdown_callback(void *arg)
-+{
-+        JackAudioSystem *jas = (JackAudioSystem*)arg;
-+        jas->bJackIsGood = false;
-+}
-+
-+JackAudioInputRegistrar::JackAudioInputRegistrar() : AudioInputRegistrar(QLatin1String("JACK"), 10) {
-+}
-+
-+AudioInput *JackAudioInputRegistrar::create() {
-+        return new JackAudioInput();
-+}
-+
-+const QList<audioDevice> JackAudioInputRegistrar::getDeviceChoices() {
-+        QList<audioDevice> qlReturn;
-+
-+        QStringList qlInputDevs = jasys->qhInput.keys();
-+        qSort(qlInputDevs);
-+
-+        foreach(const QString &dev, qlInputDevs) {
-+                qlReturn << audioDevice(jasys->qhInput.value(dev), dev);
-+        }
-+
-+        return qlReturn;
-+}
-+
-+void JackAudioInputRegistrar::setDeviceChoice(const QVariant &choice, Settings &s) {
-+        Q_UNUSED(choice);
-+        Q_UNUSED(s);
-+}
-+
-+bool JackAudioInputRegistrar::canEcho(const QString &osys) const {
-+        Q_UNUSED(osys);
-+        return false;
-+}
-+
-+JackAudioOutputRegistrar::JackAudioOutputRegistrar() : AudioOutputRegistrar(QLatin1String("JACK"), 10) {
-+}
-+
-+AudioOutput *JackAudioOutputRegistrar::create() {
-+        return new JackAudioOutput();
-+}
-+
-+const QList<audioDevice> JackAudioOutputRegistrar::getDeviceChoices() {
-+        QList<audioDevice> qlReturn;
-+
-+        QStringList qlOutputDevs = jasys->qhOutput.keys();
-+        qSort(qlOutputDevs);
-+
-+        foreach(const QString &dev, qlOutputDevs) {
-+                qlReturn << audioDevice(jasys->qhOutput.value(dev), dev);
-+        }
-+
-+        return qlReturn;
-+}
-+
-+void JackAudioOutputRegistrar::setDeviceChoice(const QVariant &choice, Settings &s) {
-+        Q_UNUSED(choice);
-+        Q_UNUSED(s);
-+}
-+
-+JackAudioInput::JackAudioInput() {
-+        bRunning = true;
-+        iMicChannels = 0;
-+};
-+
-+JackAudioInput::~JackAudioInput() {
-+        bRunning = false;
-+        iMicChannels = 0;
-+        qmMutex.lock();
-+        qwcWait.wakeAll();
-+        qmMutex.unlock();
-+        wait();
-+}
-+
-+void JackAudioInput::run() {
-+        if (jasys && jasys->bJackIsGood) {
-+            iMicFreq = jasys->iSampleRate;
-+            iMicChannels = 1;
-+            eMicFormat = SampleFloat;
-+            initializeMixer();
-+        }
-+
-+        qmMutex.lock();
-+        while (bRunning)
-+                qwcWait.wait(&qmMutex);
-+        qmMutex.unlock();
-+}
-+
-+JackAudioOutput::JackAudioOutput() {
-+        bRunning = true;
-+        iChannels = 0;
-+}
-+
-+JackAudioOutput::~JackAudioOutput() {
-+        bRunning = false;
-+        iChannels = 0;
-+        qmMutex.lock();
-+        qwcWait.wakeAll();
-+        qmMutex.unlock();
-+        wait();
-+}
-+
-+void JackAudioOutput::run() {
-+        if (jasys && jasys->bJackIsGood) {
-+            unsigned int chanmasks[32];
-+
-+            chanmasks[0] = SPEAKER_FRONT_LEFT;
-+            chanmasks[1] = SPEAKER_FRONT_RIGHT;
-+
-+            eSampleFormat = SampleFloat;
-+            iMixerFreq = jasys->iSampleRate;
-+            iChannels = 1;
-+            initializeMixer(chanmasks);
-+        }
-+
-+        qmMutex.lock();
-+        while (bRunning)
-+                qwcWait.wait(&qmMutex);
-+        qmMutex.unlock();
-+}
-diff -U 3 -H -d -r -N -- mumble-1.2.2.orig/src/mumble/JackAudio.h mumble-1.2.2/src/mumble/JackAudio.h
---- mumble-1.2.2.orig/src/mumble/JackAudio.h	1970-01-01 01:00:00.000000000 +0100
-+++ mumble-1.2.2/src/mumble/JackAudio.h	2011-01-26 06:03:58.000000000 +0000
-@@ -0,0 +1,97 @@
-+/* Copyright (C) 2011, Benjamin Jemlich <pcgod@users.sourceforge.net>
-+   Copyright (C) 2011, Filipe Coelho <falktx@gmail.com>
-+
-+   All rights reserved.
-+
-+   Redistribution and use in source and binary forms, with or without
-+   modification, are permitted provided that the following conditions
-+   are met:
-+
-+   - Redistributions of source code must retain the above copyright notice,
-+     this list of conditions and the following disclaimer.
-+   - Redistributions in binary form must reproduce the above copyright notice,
-+     this list of conditions and the following disclaimer in the documentation
-+     and/or other materials provided with the distribution.
-+   - Neither the name of the Mumble Developers nor the names of its
-+     contributors may be used to endorse or promote products derived from this
-+     software without specific prior written permission.
-+
-+   THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
-+   ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
-+   LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
-+   A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE FOUNDATION OR
-+   CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
-+   EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
-+   PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
-+   PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
-+   LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
-+   NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
-+   SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-+*/
-+
-+#ifndef _JACKAUDIO_H
-+#define _JACKAUDIO_H
-+
-+#include "AudioInput.h"
-+#include "AudioOutput.h"
-+#include <jack/jack.h>
-+
-+class JackAudioOutput;
-+class JackAudioInput;
-+
-+class JackAudioSystem : public QObject {
-+        private:
-+                Q_OBJECT
-+                Q_DISABLE_COPY(JackAudioSystem)
-+        protected:
-+                jack_client_t* client;
-+                jack_port_t* in_port;
-+                jack_port_t* out_port;
-+
-+                static int process_callback(jack_nframes_t nframes, void *arg);
-+                static int srate_callback(jack_nframes_t frames, void *arg);
-+                static void shutdown_callback(void *arg);
-+        public:
-+                QHash<QString, QString> qhInput;
-+                QHash<QString, QString> qhOutput;
-+                bool bJackIsGood;
-+                int iSampleRate;
-+                QMutex qmWait;
-+                QWaitCondition qwcWait;
-+
-+                void init_jack();
-+                void close_jack();
-+
-+                JackAudioSystem();
-+                ~JackAudioSystem();
-+};
-+
-+class JackAudioInput : public AudioInput {
-+                friend class JackAudioSystem;
-+        private:
-+                Q_OBJECT
-+                Q_DISABLE_COPY(JackAudioInput)
-+        protected:
-+                QMutex qmMutex;
-+                QWaitCondition qwcWait;
-+        public:
-+                JackAudioInput();
-+                ~JackAudioInput();
-+                void run();
-+};
-+
-+class JackAudioOutput : public AudioOutput {
-+                friend class JackAudioSystem;
-+        private:
-+                Q_OBJECT
-+                Q_DISABLE_COPY(JackAudioOutput)
-+        protected:
-+                QMutex qmMutex;
-+                QWaitCondition qwcWait;
-+        public:
-+                JackAudioOutput();
-+                ~JackAudioOutput();
-+                void run();
-+};
-+
-+#endif
-diff -U 3 -H -d -r -N -- mumble-1.2.2.orig/src/mumble/mumble.pro mumble-1.2.2/src/mumble/mumble.pro
---- mumble-1.2.2.orig/src/mumble/mumble.pro	2010-02-09 16:34:51.000000000 +0000
-+++ mumble-1.2.2/src/mumble/mumble.pro	2011-01-26 01:45:55.000000000 +0000
-@@ -93,11 +93,17 @@
- unix {
-   HAVE_PULSEAUDIO=$$system(pkg-config --modversion --silence-errors libpulse)
-   HAVE_PORTAUDIO=$$system(pkg-config --modversion --silence-errors portaudio-2.0)
-+  HAVE_JACKAUDIO=$$system(pkg-config --modversion --silence-errors jack)
- 
-   !isEmpty(HAVE_PORTAUDIO):!CONFIG(no-portaudio) {
-     CONFIG *= portaudio
-   }
- 
-+  !isEmpty(HAVE_JACKAUDIO):!CONFIG(no-jackaudio) {
-+    CONFIG -= portaudio
-+    CONFIG *= jackaudio
-+  }
-+
-   !isEmpty(HAVE_PULSEAUDIO):!CONFIG(no-pulseaudio) {
-     CONFIG -= portaudio
-     CONFIG *= pulseaudio
-@@ -110,6 +116,13 @@
-     QMAKE_CXXFLAGS_DEBUG *= -I../../speex/include -I../../speexbuild
-   }
- 
-+  jackaudio {
-+        DEFINES *= USE_JACKAUDIO
-+        PKGCONFIG *= jack
-+        HEADERS *= JackAudio.h
-+        SOURCES *= JackAudio.cpp
-+  }
-+
-   CONFIG *= link_pkgconfig
- 
-   PKGCONFIG *= openssl sndfile
diff --git a/pkgs/applications/networking/ndppd/default.nix b/pkgs/applications/networking/ndppd/default.nix
index 42950f23a843..931453624811 100644
--- a/pkgs/applications/networking/ndppd/default.nix
+++ b/pkgs/applications/networking/ndppd/default.nix
@@ -26,7 +26,7 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "A daemon that proxies NDP (Neighbor Discovery Protocol) messages between interfaces";
-    homepage = https://github.com/DanielAdolfsson/ndppd;
+    homepage = "https://github.com/DanielAdolfsson/ndppd";
     license = licenses.gpl3;
     platforms = platforms.linux;
     maintainers = with maintainers; [ fadenb globin ];
diff --git a/pkgs/applications/networking/netperf/default.nix b/pkgs/applications/networking/netperf/default.nix
index c2a84971bc29..c2e51ee743b5 100644
--- a/pkgs/applications/networking/netperf/default.nix
+++ b/pkgs/applications/networking/netperf/default.nix
@@ -21,7 +21,7 @@ stdenv.mkDerivation {
 
   meta = {
     description = "Benchmark to measure the performance of many different types of networking";
-    homepage = http://www.netperf.org/netperf/;
+    homepage = "http://www.netperf.org/netperf/";
     license = "Hewlett-Packard BSD-like license";
 
     platforms = stdenv.lib.platforms.linux;
diff --git a/pkgs/applications/networking/newsreaders/liferea/default.nix b/pkgs/applications/networking/newsreaders/liferea/default.nix
index 6352922e33e9..f1e8905089c9 100644
--- a/pkgs/applications/networking/newsreaders/liferea/default.nix
+++ b/pkgs/applications/networking/newsreaders/liferea/default.nix
@@ -32,7 +32,7 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "A GTK-based news feed aggregator";
-    homepage = http://lzone.de/liferea/;
+    homepage = "http://lzone.de/liferea/";
     license = licenses.gpl2Plus;
     maintainers = with maintainers; [ vcunat romildo ];
     platforms = platforms.linux;
diff --git a/pkgs/applications/networking/newsreaders/pan/default.nix b/pkgs/applications/networking/newsreaders/pan/default.nix
index f50d9516167a..454e19fd8974 100644
--- a/pkgs/applications/networking/newsreaders/pan/default.nix
+++ b/pkgs/applications/networking/newsreaders/pan/default.nix
@@ -39,7 +39,7 @@ stdenv.mkDerivation {
 
   meta = {
     description = "A GTK-based Usenet newsreader good at both text and binaries";
-    homepage = http://pan.rebelbase.com/;
+    homepage = "http://pan.rebelbase.com/";
     maintainers = [ stdenv.lib.maintainers.eelco ];
     platforms = stdenv.lib.platforms.linux;
   };
diff --git a/pkgs/applications/networking/newsreaders/quiterss/default.nix b/pkgs/applications/networking/newsreaders/quiterss/default.nix
index 2333d47d8202..1cc4be8cb27a 100644
--- a/pkgs/applications/networking/newsreaders/quiterss/default.nix
+++ b/pkgs/applications/networking/newsreaders/quiterss/default.nix
@@ -1,19 +1,19 @@
-{ stdenv, fetchFromGitHub, qmake, pkgconfig, wrapQtAppsHook
+{ stdenv, fetchFromGitHub, qmake, pkg-config, wrapQtAppsHook
 , qtbase, qttools, qtwebkit, sqlite
 }:
 
 stdenv.mkDerivation rec {
   pname = "quiterss";
-  version = "0.19.3";
+  version = "0.19.4";
 
   src = fetchFromGitHub {
     owner = "QuiteRSS";
     repo = "quiterss";
     rev = version;
-    sha256 = "06m5mhzxvv8q2adaqcrar3sx2c1hc89h2i0qfjxmirfc5z67hdw2";
+    sha256 = "1cgvl67vhn5y7bj5gbjbgk26bhb0196bgrgsp3r5fmrislarj8s6";
   };
 
-  nativeBuildInputs = [ qmake pkgconfig wrapQtAppsHook ];
+  nativeBuildInputs = [ qmake pkg-config wrapQtAppsHook ];
   buildInputs = [ qtbase qttools qtwebkit sqlite.dev ];
 
   meta = with stdenv.lib; {
@@ -22,7 +22,8 @@ stdenv.mkDerivation rec {
       QuiteRSS is a open-source cross-platform RSS/Atom news feeds reader
       written on Qt/C++
     '';
-    homepage = https://quiterss.org;
+    homepage = "https://quiterss.org";
+    changelog = "https://github.com/QuiteRSS/quiterss/blob/${version}/CHANGELOG";
     license = licenses.gpl3;
     platforms = platforms.linux;
     maintainers = with maintainers; [ primeos ];
diff --git a/pkgs/applications/networking/newsreaders/slrn/default.nix b/pkgs/applications/networking/newsreaders/slrn/default.nix
index e8fff0deddf1..1cc9c39c991d 100644
--- a/pkgs/applications/networking/newsreaders/slrn/default.nix
+++ b/pkgs/applications/networking/newsreaders/slrn/default.nix
@@ -26,7 +26,7 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "The slrn (S-Lang read news) newsreader";
-    homepage = http://slrn.sourceforge.net/index.html;
+    homepage = "http://slrn.sourceforge.net/index.html";
     maintainers = with maintainers; [ ehmry ];
     license = licenses.gpl2;
     platforms = with platforms; linux;
diff --git a/pkgs/applications/networking/nextcloud-client/default.nix b/pkgs/applications/networking/nextcloud-client/default.nix
index 53d073caee47..2560bc806eac 100644
--- a/pkgs/applications/networking/nextcloud-client/default.nix
+++ b/pkgs/applications/networking/nextcloud-client/default.nix
@@ -17,13 +17,13 @@
 
 mkDerivation rec {
   pname = "nextcloud-client";
-  version = "2.6.3";
+  version = "2.6.4";
 
   src = fetchFromGitHub {
     owner = "nextcloud";
     repo = "desktop";
     rev = "v${version}";
-    sha256 = "17w1bx305w656jkiv55lwncxwdly8rf2dsisqw3c9bc7vz19l6p8";
+    sha256 = "1wr57qwcjfzbpb4p0ybfjpw2hhwp91yrk2n3ywrqywcvjj38jg1q";
   };
 
   patches = [
@@ -58,7 +58,7 @@ mkDerivation rec {
 
   meta = with lib; {
     description = "Nextcloud themed desktop client";
-    homepage = https://nextcloud.com;
+    homepage = "https://nextcloud.com";
     license = licenses.gpl2;
     maintainers = with maintainers; [ caugner ma27 ];
     platforms = platforms.linux;
diff --git a/pkgs/applications/networking/nload/default.nix b/pkgs/applications/networking/nload/default.nix
index 16cc0e3d50a2..85a39f7e656a 100644
--- a/pkgs/applications/networking/nload/default.nix
+++ b/pkgs/applications/networking/nload/default.nix
@@ -32,7 +32,7 @@ stdenv.mkDerivation rec {
       using two graphs and provides additional info like total amount of
       transfered data and min/max network usage.
     '';
-    homepage = http://www.roland-riegel.de/nload/index.html;
+    homepage = "http://www.roland-riegel.de/nload/index.html";
     license = stdenv.lib.licenses.gpl2;
     platforms = stdenv.lib.platforms.linux;
     maintainers = [ stdenv.lib.maintainers.devhell ];
diff --git a/pkgs/applications/networking/nntp-proxy/default.nix b/pkgs/applications/networking/nntp-proxy/default.nix
index 96bdc0b1dfa4..3986f2b67cb2 100644
--- a/pkgs/applications/networking/nntp-proxy/default.nix
+++ b/pkgs/applications/networking/nntp-proxy/default.nix
@@ -25,7 +25,7 @@ stdenv.mkDerivation {
 
   meta = {
     description = "Simple NNTP proxy with SSL support";
-    homepage = https://github.com/nieluj/nntp-proxy;
+    homepage = "https://github.com/nieluj/nntp-proxy";
     license = stdenv.lib.licenses.gpl2Plus;
     maintainers = [ stdenv.lib.maintainers.fadenb ];
     platforms = stdenv.lib.platforms.all;
diff --git a/pkgs/applications/networking/nym/default.nix b/pkgs/applications/networking/nym/default.nix
new file mode 100644
index 000000000000..6bb86c016ba3
--- /dev/null
+++ b/pkgs/applications/networking/nym/default.nix
@@ -0,0 +1,54 @@
+{ lib
+, rustPlatform
+, fetchFromGitHub
+, pkgconfig
+, openssl
+, libredirect
+, writeText
+}:
+
+rustPlatform.buildRustPackage rec {
+  pname = "nym";
+  version = "0.6.0";
+
+  src = fetchFromGitHub {
+    owner = "nymtech";
+    repo = "nym";
+    rev = "v${version}";
+    sha256 = "1q9i24mzys6a9kp9n0bnxr3iwzblabmc6iif3ah75gffyf0cipk4";
+  };
+
+  cargoSha256 = "0qas544bs4wyllvqf2r5mvqxs1nviwcvxa3rzq10dvjyjm1xyh3k";
+
+  nativeBuildInputs = [ pkgconfig ];
+
+  buildInputs = [ openssl ];
+
+  /*
+  Nym's test presence::converting_mixnode_presence_into_topology_mixnode::it_returns_resolved_ip_on_resolvable_hostname tries to resolve nymtech.net.
+  Since there is no external DNS resolution available in the build sandbox, we point cargo and its children (that's what we remove the 'unsetenv' call for) to a hosts file in which we statically resolve nymtech.net.
+  */
+  preCheck = ''
+    export LD_PRELOAD=${libredirect.overrideAttrs (drv: {
+      postPatch = "sed -i -e /unsetenv/d libredirect.c";
+    })}/lib/libredirect.so
+    export NIX_REDIRECTS=/etc/hosts=${writeText "nym_resolve_test_hosts" "127.0.0.1 nymtech.net"}
+  '';
+
+  postCheck = "unset NIX_REDIRECTS LD_PRELOAD";
+
+
+  passthru.updateScript = ./update.sh;
+
+  meta = with lib; {
+    description = "A mixnet providing IP-level privacy";
+    longDescription = ''
+      Nym routes IP packets through other participating nodes to hide their source and destination.
+      In contrast with Tor, it prevents timing attacks at the cost of latency.
+    '';
+    homepage = "https://nymtech.net";
+    license = licenses.asl20;
+    maintainers = [ maintainers.ehmry ];
+    platforms = with platforms; intersectLists (linux ++ darwin) (x86 ++ x86_64); # see https://github.com/nymtech/nym/issues/179 for architectures
+  };
+}
diff --git a/pkgs/applications/networking/nym/update.sh b/pkgs/applications/networking/nym/update.sh
new file mode 100755
index 000000000000..0c65521c7f80
--- /dev/null
+++ b/pkgs/applications/networking/nym/update.sh
@@ -0,0 +1,37 @@
+#!/usr/bin/env nix-shell
+#!nix-shell -i bash -p curl jq nix-prefetch
+
+# adapted from rust-analyzer
+
+set -euo pipefail
+cd "$(dirname "$0")"
+nixpkgs=../../../..
+
+owner=$(sed -nE 's/.*\bowner = "(.*)".*/\1/p' ./default.nix)
+repo=$(sed -nE 's/.*\brepo = "(.*)".*/\1/p' ./default.nix)
+rev=$(
+    curl -s "https://api.github.com/repos/$owner/$repo/releases" |
+    jq 'map(select(.prerelease | not)) | .[0].tag_name' --raw-output
+)
+version=${rev:1}
+old_version=$(sed -nE 's/.*\bversion = "(.*)".*/\1/p' ./default.nix)
+if grep -q 'cargoSha256 = ""' ./default.nix; then
+    old_version='broken'
+fi
+if [[ "$version" == "$old_version" ]]; then
+    echo "Up to date: $version"
+    exit
+fi
+echo "$old_version -> $version"
+
+sha256=$(nix-prefetch -f "$nixpkgs" nym.src --rev "$rev")
+# Clear cargoSha256 to avoid inconsistency.
+sed -e "s/version = \".*\"/version = \"$version\"/" \
+    -e "s/sha256 = \".*\"/sha256 = \"$sha256\"/" \
+    -e "s/cargoSha256 = \".*\"/cargoSha256 = \"\"/" \
+    --in-place ./default.nix
+
+echo "Prebuilding for cargoSha256"
+cargo_sha256=$(nix-prefetch "{ sha256 }: (import $nixpkgs {}).nym.cargoDeps.overrideAttrs (_: { outputHash = sha256; })")
+sed "s/cargoSha256 = \".*\"/cargoSha256 = \"$cargo_sha256\"/" \
+    --in-place ./default.nix
diff --git a/pkgs/applications/networking/offrss/default.nix b/pkgs/applications/networking/offrss/default.nix
index d91bfbae501d..679e966373b6 100644
--- a/pkgs/applications/networking/offrss/default.nix
+++ b/pkgs/applications/networking/offrss/default.nix
@@ -22,12 +22,12 @@ stdenv.mkDerivation {
   '';
 
   src = fetchurl {
-    url = http://vicerveza.homeunix.net/~viric/soft/offrss/offrss-1.3.tar.gz;
+    url = "http://vicerveza.homeunix.net/~viric/soft/offrss/offrss-1.3.tar.gz";
     sha256 = "1akw1x84jj2m9z60cvlvmz21qwlaywmw18pl7lgp3bj5nw6250p6";
   };
 
   meta = {
-    homepage = http://vicerveza.homeunix.net/~viric/cgi-bin/offrss;
+    homepage = "http://vicerveza.homeunix.net/~viric/cgi-bin/offrss";
     description = "Offline RSS/Atom reader";
     license="AGPLv3+";
     maintainers = with stdenv.lib.maintainers; [viric];
diff --git a/pkgs/applications/networking/onionshare/default.nix b/pkgs/applications/networking/onionshare/default.nix
new file mode 100644
index 000000000000..77d08692f625
--- /dev/null
+++ b/pkgs/applications/networking/onionshare/default.nix
@@ -0,0 +1,113 @@
+{
+  lib,
+  buildPythonApplication,
+  stdenv,
+  substituteAll,
+  fetchFromGitHub,
+  isPy3k,
+  flask,
+  flask-httpauth,
+  stem,
+  pyqt5,
+  pycrypto,
+  pysocks,
+  pytest,
+  qt5,
+  requests,
+  tor,
+  obfs4,
+}:
+
+let
+  version = "2.2";
+  src = fetchFromGitHub {
+    owner = "micahflee";
+    repo = "onionshare";
+    rev = "v${version}";
+    sha256 = "0m8ygxcyp3nfzzhxs2dfnpqwh1vx0aws44lszpnnczz4fks3a5j4";
+  };
+  meta = with lib; {
+    description = "Securely and anonymously send and receive files";
+    longDescription = ''
+    OnionShare is an open source tool for securely and anonymously sending
+    and receiving files using Tor onion services. It works by starting a web
+    server directly on your computer and making it accessible as an
+    unguessable Tor web address that others can load in Tor Browser to
+    download files from you, or upload files to you. It doesn't require
+    setting up a separate server, using a third party file-sharing service,
+    or even logging into an account.
+
+    Unlike services like email, Google Drive, DropBox, WeTransfer, or nearly
+    any other way people typically send files to each other, when you use
+    OnionShare you don't give any companies access to the files that you're
+    sharing. So long as you share the unguessable web address in a secure way
+    (like pasting it in an encrypted messaging app), no one but you and the
+    person you're sharing with can access the files.
+    '';
+
+    homepage = "https://onionshare.org/";
+
+    license = licenses.gpl3Plus;
+    maintainers = with maintainers; [ lourkeur ];
+  };
+
+  common = buildPythonApplication {
+    pname = "onionshare-common";
+    inherit version meta src;
+
+    disable = !isPy3k;
+    propagatedBuildInputs = [
+      flask
+      flask-httpauth
+      stem
+      pyqt5
+      pycrypto
+      pysocks
+      requests
+    ];
+    buildInputs = [
+      tor
+      obfs4
+    ];
+
+    patches = [
+      (substituteAll {
+        src = ./fix-paths.patch;
+        inherit tor obfs4;
+        inherit (tor) geoip;
+      })
+    ];
+    postPatch = "substituteInPlace onionshare/common.py --subst-var-by common $out";
+
+    doCheck = false;
+  };
+in
+{
+  onionshare = stdenv.mkDerivation {
+    pname = "onionshare";
+    inherit version meta;
+
+    dontUnpack = true;
+
+    inherit common;
+    installPhase = ''
+      mkdir -p $out/bin
+      cp $common/bin/onionshare -t $out/bin
+    '';
+  };
+  onionshare-gui = stdenv.mkDerivation {
+    pname = "onionshare-gui";
+    inherit version meta;
+
+    nativeBuildInputs = [ qt5.wrapQtAppsHook ];
+
+    dontUnpack = true;
+
+    inherit common;
+    installPhase = ''
+      mkdir -p $out/bin
+      cp $common/bin/onionshare-gui -t $out/bin
+      wrapQtApp $out/bin/onionshare-gui
+    '';
+  };
+}
diff --git a/pkgs/applications/networking/onionshare/fix-paths.patch b/pkgs/applications/networking/onionshare/fix-paths.patch
new file mode 100644
index 000000000000..ddd0c75334bb
--- /dev/null
+++ b/pkgs/applications/networking/onionshare/fix-paths.patch
@@ -0,0 +1,134 @@
+diff --git a/onionshare/common.py b/onionshare/common.py
+index 3373462..7fd245b 100644
+--- a/onionshare/common.py
++++ b/onionshare/common.py
+@@ -87,66 +87,16 @@ class Common(object):
+                 ),
+                 "share",
+             )
+-            if not os.path.exists(prefix):
+-                # While running tests during stdeb bdist_deb, look 3 directories up for the share folder
+-                prefix = os.path.join(
+-                    os.path.dirname(
+-                        os.path.dirname(os.path.dirname(os.path.dirname(prefix)))
+-                    ),
+-                    "share",
+-                )
+-
+-        elif self.platform == "BSD" or self.platform == "Linux":
+-            # Assume OnionShare is installed systemwide in Linux, since we're not running in dev mode
+-            prefix = os.path.join(sys.prefix, "share/onionshare")
+-
+-        elif getattr(sys, "frozen", False):
+-            # Check if app is "frozen"
+-            # https://pythonhosted.org/PyInstaller/#run-time-information
+-            if self.platform == "Darwin":
+-                prefix = os.path.join(sys._MEIPASS, "share")
+-            elif self.platform == "Windows":
+-                prefix = os.path.join(os.path.dirname(sys.executable), "share")
++        else:
++            prefix = "@common@/share/onionshare"
+
+         return os.path.join(prefix, filename)
+
+     def get_tor_paths(self):
+-        if self.platform == "Linux":
+-            tor_path = "/usr/bin/tor"
+-            tor_geo_ip_file_path = "/usr/share/tor/geoip"
+-            tor_geo_ipv6_file_path = "/usr/share/tor/geoip6"
+-            obfs4proxy_file_path = "/usr/bin/obfs4proxy"
+-        elif self.platform == "Windows":
+-            base_path = os.path.join(
+-                os.path.dirname(os.path.dirname(self.get_resource_path(""))), "tor"
+-            )
+-            tor_path = os.path.join(os.path.join(base_path, "Tor"), "tor.exe")
+-            obfs4proxy_file_path = os.path.join(
+-                os.path.join(base_path, "Tor"), "obfs4proxy.exe"
+-            )
+-            tor_geo_ip_file_path = os.path.join(
+-                os.path.join(os.path.join(base_path, "Data"), "Tor"), "geoip"
+-            )
+-            tor_geo_ipv6_file_path = os.path.join(
+-                os.path.join(os.path.join(base_path, "Data"), "Tor"), "geoip6"
+-            )
+-        elif self.platform == "Darwin":
+-            base_path = os.path.dirname(
+-                os.path.dirname(os.path.dirname(self.get_resource_path("")))
+-            )
+-            tor_path = os.path.join(base_path, "Resources", "Tor", "tor")
+-            tor_geo_ip_file_path = os.path.join(base_path, "Resources", "Tor", "geoip")
+-            tor_geo_ipv6_file_path = os.path.join(
+-                base_path, "Resources", "Tor", "geoip6"
+-            )
+-            obfs4proxy_file_path = os.path.join(
+-                base_path, "Resources", "Tor", "obfs4proxy"
+-            )
+-        elif self.platform == "BSD":
+-            tor_path = "/usr/local/bin/tor"
+-            tor_geo_ip_file_path = "/usr/local/share/tor/geoip"
+-            tor_geo_ipv6_file_path = "/usr/local/share/tor/geoip6"
+-            obfs4proxy_file_path = "/usr/local/bin/obfs4proxy"
++        tor_path = "@tor@/bin/tor"
++        tor_geo_ip_file_path = "@geoip@/share/tor/geoip"
++        tor_geo_ipv6_file_path = "@geoip@/share/tor/geoip6"
++        obfs4proxy_file_path = "@obfs4@/bin/obfs4proxy"
+
+         return (
+             tor_path,
+diff --git a/setup.py b/setup.py
+index 9af72fc..53ca47b 100644
+--- a/setup.py
++++ b/setup.py
+@@ -70,41 +70,41 @@ classifiers = [
+ ]
+ data_files = [
+     (
+-        os.path.join(sys.prefix, "share/applications"),
++        "share/applications",
+         ["install/org.onionshare.OnionShare.desktop"],
+     ),
+     (
+-        os.path.join(sys.prefix, "share/icons/hicolor/scalable/apps"),
++        "share/icons/hicolor/scalable/apps",
+         ["install/org.onionshare.OnionShare.svg"],
+     ),
+     (
+-        os.path.join(sys.prefix, "share/metainfo"),
++        "share/metainfo",
+         ["install/org.onionshare.OnionShare.appdata.xml"],
+     ),
+-    (os.path.join(sys.prefix, "share/onionshare"), file_list("share")),
+-    (os.path.join(sys.prefix, "share/onionshare/images"), file_list("share/images")),
+-    (os.path.join(sys.prefix, "share/onionshare/locale"), file_list("share/locale")),
++    ( "share/onionshare", file_list("share")),
++    ( "share/onionshare/images", file_list("share/images")),
++    ( "share/onionshare/locale", file_list("share/locale")),
+     (
+-        os.path.join(sys.prefix, "share/onionshare/templates"),
++        "share/onionshare/templates",
+         file_list("share/templates"),
+     ),
+     (
+-        os.path.join(sys.prefix, "share/onionshare/static/css"),
++        "share/onionshare/static/css",
+         file_list("share/static/css"),
+     ),
+     (
+-        os.path.join(sys.prefix, "share/onionshare/static/img"),
++        "share/onionshare/static/img",
+         file_list("share/static/img"),
+     ),
+     (
+-        os.path.join(sys.prefix, "share/onionshare/static/js"),
++        "share/onionshare/static/js",
+         file_list("share/static/js"),
+     ),
+ ]
+ if not platform.system().endswith("BSD") and platform.system() != "DragonFly":
+     data_files.append(
+         (
+-            "/usr/share/nautilus-python/extensions/",
++            "share/nautilus-python/extensions/",
+             ["install/scripts/onionshare-nautilus.py"],
+         )
+     )
diff --git a/pkgs/applications/networking/ostinato/default.nix b/pkgs/applications/networking/ostinato/default.nix
index 3f48601d96f5..aa9d94ad5b6e 100644
--- a/pkgs/applications/networking/ostinato/default.nix
+++ b/pkgs/applications/networking/ostinato/default.nix
@@ -60,7 +60,7 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "A packet traffic generator and analyzer";
-    homepage    = https://ostinato.org;
+    homepage    = "https://ostinato.org";
     license     = licenses.gpl3;
     maintainers = with maintainers; [ rick68 ];
     platforms   = with platforms; linux ++ darwin ++ cygwin;
diff --git a/pkgs/applications/networking/owamp/default.nix b/pkgs/applications/networking/owamp/default.nix
index 4dad5f4d6bdf..3608ef982a9b 100644
--- a/pkgs/applications/networking/owamp/default.nix
+++ b/pkgs/applications/networking/owamp/default.nix
@@ -19,7 +19,7 @@ stdenv.mkDerivation rec {
   '';
 
   meta = with stdenv.lib; {
-    homepage = http://software.internet2.edu/owamp/;
+    homepage = "http://software.internet2.edu/owamp/";
     description = ''A tool for performing one-way active measurements'';
     platforms = platforms.linux;
     maintainers = [maintainers.teto];
diff --git a/pkgs/applications/networking/owncloud-client/default.nix b/pkgs/applications/networking/owncloud-client/default.nix
index 998944838e8e..3fc9fedc4138 100644
--- a/pkgs/applications/networking/owncloud-client/default.nix
+++ b/pkgs/applications/networking/owncloud-client/default.nix
@@ -21,7 +21,7 @@ mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "Synchronise your ownCloud with your computer using this desktop client";
-    homepage = https://owncloud.org;
+    homepage = "https://owncloud.org";
     maintainers = [ maintainers.qknight ];
     platforms = platforms.unix;
     license = licenses.gpl2Plus;
diff --git a/pkgs/applications/networking/p2p/deluge/default.nix b/pkgs/applications/networking/p2p/deluge/1/default.nix
index 63218f1c2ffc..cafba65c788b 100644
--- a/pkgs/applications/networking/p2p/deluge/default.nix
+++ b/pkgs/applications/networking/p2p/deluge/1/default.nix
@@ -32,7 +32,7 @@ pythonPackages.buildPythonPackage rec {
   '';
 
   meta = with stdenv.lib; {
-    homepage = https://deluge-torrent.org;
+    homepage = "https://deluge-torrent.org";
     description = "Torrent client";
     license = licenses.gpl3Plus;
     maintainers = with maintainers; [ domenkozar ebzzry ];
diff --git a/pkgs/applications/networking/p2p/deluge/2/default.nix b/pkgs/applications/networking/p2p/deluge/2/default.nix
new file mode 100644
index 000000000000..755ef4cc33b5
--- /dev/null
+++ b/pkgs/applications/networking/p2p/deluge/2/default.nix
@@ -0,0 +1,44 @@
+{ stdenv, fetchurl, intltool, libtorrentRasterbar, pythonPackages
+, gtk3, gobject-introspection, librsvg, wrapGAppsHook }:
+
+pythonPackages.buildPythonPackage rec {
+  pname = "deluge";
+  version = "2.0.3";
+
+  src = fetchurl {
+    url = "http://download.deluge-torrent.org/source/2.0/${pname}-${version}.tar.xz";
+    sha256 = "14d8kn2pvr1qv8mwqrxmj85jycr73vwfqz12hzag0ararbkfhyky";
+  };
+
+  propagatedBuildInputs = with pythonPackages; [
+    twisted Mako chardet pyxdg pyopenssl service-identity
+    libtorrentRasterbar.dev libtorrentRasterbar.python setuptools
+    setproctitle pillow rencode six zope_interface
+    dbus-python pygobject3 pycairo
+    gtk3 gobject-introspection librsvg
+  ];
+
+  nativeBuildInputs = [ intltool wrapGAppsHook ];
+
+  checkInputs = with pythonPackages; [
+    pytest /* pytest-twisted */ pytestcov mock
+    mccabe pylint
+  ];
+
+  doCheck = false; # until pytest-twisted is packaged
+
+  postInstall = ''
+     mkdir -p $out/share/applications
+     cp -R deluge/ui/data/pixmaps $out/share/
+     cp -R deluge/ui/data/icons $out/share/
+     cp deluge/ui/data/share/applications/deluge.desktop $out/share/applications
+  '';
+
+  meta = with stdenv.lib; {
+    homepage = "https://deluge-torrent.org";
+    description = "Torrent client";
+    license = licenses.gpl3Plus;
+    maintainers = with maintainers; [ domenkozar ebzzry ];
+    platforms = platforms.all;
+  };
+}
diff --git a/pkgs/applications/networking/p2p/eiskaltdcpp/default.nix b/pkgs/applications/networking/p2p/eiskaltdcpp/default.nix
index 2692e5360cec..9355bfa5b8d9 100644
--- a/pkgs/applications/networking/p2p/eiskaltdcpp/default.nix
+++ b/pkgs/applications/networking/p2p/eiskaltdcpp/default.nix
@@ -58,7 +58,7 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "A cross-platform program that uses the Direct Connect and ADC protocols";
-    homepage = https://github.com/eiskaltdcpp/eiskaltdcpp;
+    homepage = "https://github.com/eiskaltdcpp/eiskaltdcpp";
     license = licenses.gpl3Plus;
     platforms = platforms.linux;
   };
diff --git a/pkgs/applications/networking/p2p/freenet/default.nix b/pkgs/applications/networking/p2p/freenet/default.nix
index 244352884883..017f059ff6c3 100644
--- a/pkgs/applications/networking/p2p/freenet/default.nix
+++ b/pkgs/applications/networking/p2p/freenet/default.nix
@@ -2,7 +2,7 @@
 
 let
   freenet_ext = fetchurl {
-    url = https://downloads.freenetproject.org/latest/freenet-ext.jar;
+    url = "https://downloads.freenetproject.org/latest/freenet-ext.jar";
     sha256 = "17ypljdvazgx2z6hhswny1lxfrknysz3x6igx8vl3xgdpvbb7wij";
   };
 
@@ -12,7 +12,7 @@ let
     sha256 = "0abmhg2h44g8c5p7skzqwfxj8xwcjh9vs84mc0hr78k1am0633jk";
   };
   seednodes = fetchurl {
-    url = https://downloads.freenetproject.org/alpha/opennet/seednodes.fref;
+    url = "https://downloads.freenetproject.org/alpha/opennet/seednodes.fref";
     sha256 = "08awwr8n80b4cdzzb3y8hf2fzkr1f2ly4nlq779d6pvi5jymqdvv";
   };
   version = "build01475";
@@ -72,7 +72,7 @@ in stdenv.mkDerivation {
 
   meta = {
     description = "Decentralised and censorship-resistant network";
-    homepage = https://freenetproject.org/;
+    homepage = "https://freenetproject.org/";
     license = stdenv.lib.licenses.gpl2Plus;
     maintainers = [ stdenv.lib.maintainers.doublec ];
     platforms = with stdenv.lib.platforms; linux;
diff --git a/pkgs/applications/networking/p2p/frostwire/default.nix b/pkgs/applications/networking/p2p/frostwire/default.nix
index 0449540eaff1..65e2165f64ee 100644
--- a/pkgs/applications/networking/p2p/frostwire/default.nix
+++ b/pkgs/applications/networking/p2p/frostwire/default.nix
@@ -85,7 +85,7 @@ in stdenv.mkDerivation {
   '';
 
   meta = with stdenv.lib; {
-    homepage = https://www.frostwire.com/;
+    homepage = "https://www.frostwire.com/";
     description = "BitTorrent Client and Cloud File Downloader";
     license = licenses.gpl2;
     maintainers = with maintainers; [ gavin ];
diff --git a/pkgs/applications/networking/p2p/frostwire/frostwire-bin.nix b/pkgs/applications/networking/p2p/frostwire/frostwire-bin.nix
index 29961e9077f0..39ab0ee0efa9 100644
--- a/pkgs/applications/networking/p2p/frostwire/frostwire-bin.nix
+++ b/pkgs/applications/networking/p2p/frostwire/frostwire-bin.nix
@@ -3,12 +3,12 @@
 with stdenv.lib;
 
 stdenv.mkDerivation rec {
-  version = "6.8.3";
+  version = "6.8.4";
   pname = "frostwire";
 
   src = fetchurl {
     url = "https://dl.frostwire.com/frostwire/${version}/frostwire-${version}.amd64.tar.gz";
-    sha256 = "1fnrr96jmak2rf54cc0chbm7ls5rfav78vhw98sa7zy544l2sn88";
+    sha256 = "1qs0r5621ihb9sj4sqpmxj9smwf8a8k3n1qx2i0sz65qhjfc90zz";
   };
 
   nativeBuildInputs = [ makeWrapper ];
@@ -22,7 +22,7 @@ stdenv.mkDerivation rec {
   '';
 
   meta = with stdenv.lib; {
-    homepage = https://www.frostwire.com/;
+    homepage = "https://www.frostwire.com/";
     description = "BitTorrent Client and Cloud File Downloader";
     license = licenses.gpl2;
     maintainers = with maintainers; [ gavin ];
diff --git a/pkgs/applications/networking/p2p/gnunet/default.nix b/pkgs/applications/networking/p2p/gnunet/default.nix
index e4b306453a41..5abee0108ec3 100644
--- a/pkgs/applications/networking/p2p/gnunet/default.nix
+++ b/pkgs/applications/networking/p2p/gnunet/default.nix
@@ -64,7 +64,7 @@ stdenv.mkDerivation rec {
       network are rewarded with better service.
     '';
 
-    homepage = https://gnunet.org/;
+    homepage = "https://gnunet.org/";
     license = licenses.agpl3Plus;
     maintainers = with maintainers; [ vrthra ];
     platforms = platforms.gnu ++ platforms.linux;
diff --git a/pkgs/applications/networking/p2p/gnunet/git.nix b/pkgs/applications/networking/p2p/gnunet/git.nix
index e8f209239bfe..b3d455599bf0 100644
--- a/pkgs/applications/networking/p2p/gnunet/git.nix
+++ b/pkgs/applications/networking/p2p/gnunet/git.nix
@@ -11,7 +11,7 @@ stdenv.mkDerivation {
   name = "gnunet-git-${rev}";
 
   src = fetchgit {
-    url =  https://gnunet.org/git/gnunet.git;
+    url =  "https://gnunet.org/git/gnunet.git";
     inherit rev;
     sha256 = "0gbw920m9v4b3425c0d1h7drgl2m1fni1bwjn4fwqnyz7kdqzsgl";
   };
@@ -82,7 +82,7 @@ stdenv.mkDerivation {
       network are rewarded with better service.
     '';
 
-    homepage = https://gnunet.org/;
+    homepage = "https://gnunet.org/";
 
     license = licenses.agpl3Plus;
 
diff --git a/pkgs/applications/networking/p2p/ktorrent/default.nix b/pkgs/applications/networking/p2p/ktorrent/default.nix
index e38378d09b32..19be24bd1b18 100644
--- a/pkgs/applications/networking/p2p/ktorrent/default.nix
+++ b/pkgs/applications/networking/p2p/ktorrent/default.nix
@@ -26,7 +26,7 @@ mkDerivation rec {
 
   meta = with lib; {
     description = "KDE integrated BtTorrent client";
-    homepage    = https://www.kde.org/applications/internet/ktorrent/;
+    homepage    = "https://www.kde.org/applications/internet/ktorrent/";
     license = licenses.gpl2;
     maintainers = with maintainers; [ eelco ];
     platforms   = platforms.linux;
diff --git a/pkgs/applications/networking/p2p/magnetico/default.nix b/pkgs/applications/networking/p2p/magnetico/default.nix
index 94720f35504b..da7713d7bc62 100644
--- a/pkgs/applications/networking/p2p/magnetico/default.nix
+++ b/pkgs/applications/networking/p2p/magnetico/default.nix
@@ -2,18 +2,18 @@
 
 buildGoModule rec {
   pname = "magnetico";
-  version = "0.9.0";
+  version = "0.11.0";
 
   src = fetchFromGitHub {
     owner  = "boramalper";
     repo   = "magnetico";
     rev    = "v${version}";
-    sha256 = "1flw7r8igc0hhm288p67lpy9aj1fnywva5b28yfknpw8g97c9r5x";
+    sha256 = "1622xcl5v67lrnkjwbg7g5b5ikrawx7p91jxbj3ixc1za2f3a3fn";
   };
 
-  modSha256 = "1h9fij8mxlxfw7kxix00n10fkhkvmf8529fxbk1n30cxc1bs2szf";
+  modSha256 = "193n323xaypm9xkpray68nqcgyf141x8qzpxzwjnrmsgfz8p6wgk";
 
-  buildInputs = [ go-bindata ];
+  nativeBuildInputs = [ go-bindata ];
   buildPhase = ''
     make magneticow magneticod
   '';
@@ -25,7 +25,7 @@ buildGoModule rec {
 
   meta = with lib; {
     description  = "Autonomous (self-hosted) BitTorrent DHT search engine suite.";
-    homepage     = https://github.com/boramalper/magnetico;
+    homepage     = "https://github.com/boramalper/magnetico";
     license      = licenses.agpl3;
     badPlatforms = platforms.darwin;
     maintainers  = with maintainers; [ rnhmjoj ];
diff --git a/pkgs/applications/networking/p2p/mldonkey/default.nix b/pkgs/applications/networking/p2p/mldonkey/default.nix
index 0ead4b7e3ec4..786ba434b928 100644
--- a/pkgs/applications/networking/p2p/mldonkey/default.nix
+++ b/pkgs/applications/networking/p2p/mldonkey/default.nix
@@ -4,7 +4,7 @@ stdenv.mkDerivation ({
   name = "mldonkey-3.1.6";
 
   src = fetchurl {
-    url = https://github.com/ygrek/mldonkey/releases/download/release-3-1-6/mldonkey-3.1.6.tar.bz2;
+    url = "https://github.com/ygrek/mldonkey/releases/download/release-3-1-6/mldonkey-3.1.6.tar.bz2";
     sha256 = "0g84islkj72ymp0zzppcj9n4r21h0vlghnq87hv2wg580mybadhv";
   };
 
@@ -19,7 +19,7 @@ stdenv.mkDerivation ({
 
   meta = {
     description = "Client for many p2p networks, with multiple frontends";
-    homepage = http://mldonkey.sourceforge.net/;
+    homepage = "http://mldonkey.sourceforge.net/";
     license = stdenv.lib.licenses.gpl2;
     platforms = stdenv.lib.platforms.unix;
   };
diff --git a/pkgs/applications/networking/p2p/ncdc/default.nix b/pkgs/applications/networking/p2p/ncdc/default.nix
index b28074a2fd6e..c956f26b1165 100644
--- a/pkgs/applications/networking/p2p/ncdc/default.nix
+++ b/pkgs/applications/networking/p2p/ncdc/default.nix
@@ -14,7 +14,7 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "Modern and lightweight direct connect client with a friendly ncurses interface";
-    homepage = https://dev.yorhel.nl/ncdc;
+    homepage = "https://dev.yorhel.nl/ncdc";
     license = licenses.mit;
     platforms = platforms.linux; # arbitrary
     maintainers = with maintainers; [ ehmry ];
diff --git a/pkgs/applications/networking/p2p/opentracker/default.nix b/pkgs/applications/networking/p2p/opentracker/default.nix
index 46c482818f8b..ed44ff24fecf 100644
--- a/pkgs/applications/networking/p2p/opentracker/default.nix
+++ b/pkgs/applications/networking/p2p/opentracker/default.nix
@@ -19,7 +19,7 @@ stdenv.mkDerivation {
   '';
 
   meta = with stdenv.lib; {
-    homepage = https://erdgeist.org/arts/software/opentracker/;
+    homepage = "https://erdgeist.org/arts/software/opentracker/";
     license = licenses.beerware;
     platforms = platforms.linux;
     description = "Bittorrent tracker project which aims for minimal resource usage and is intended to run at your wlan router.";
diff --git a/pkgs/applications/networking/p2p/qbittorrent/default.nix b/pkgs/applications/networking/p2p/qbittorrent/default.nix
index 8ab83c8a4ba4..39740f53475c 100644
--- a/pkgs/applications/networking/p2p/qbittorrent/default.nix
+++ b/pkgs/applications/networking/p2p/qbittorrent/default.nix
@@ -10,13 +10,13 @@ with lib;
 
 mkDerivation rec {
   pname = "qbittorrent";
-  version = "4.2.1";
+  version = "4.2.2";
 
   src = fetchFromGitHub {
     owner = "qbittorrent";
     repo = "qbittorrent";
     rev = "release-${version}";
-    sha256 = "0bz4l7awkx4qf3gh9c8gj8fab989439zj8qy4x9r36wxdjg5cxil";
+    sha256 = "1iqgwhgwa2kx85zj1rwfnnclr1433a7m2gbs3j7w6rx39vxnzhcc";
   };
 
   # NOTE: 2018-05-31: CMake is working but it is not officially supported
@@ -39,7 +39,7 @@ mkDerivation rec {
 
   meta = {
     description = "Featureful free software BitTorrent client";
-    homepage    = https://www.qbittorrent.org/;
+    homepage    = "https://www.qbittorrent.org/";
     license     = licenses.gpl2;
     platforms   = platforms.linux;
     maintainers = with maintainers; [ Anton-Latukha ];
diff --git a/pkgs/applications/networking/p2p/retroshare/default.nix b/pkgs/applications/networking/p2p/retroshare/default.nix
index f10714031ff0..ce6d3958c9b0 100644
--- a/pkgs/applications/networking/p2p/retroshare/default.nix
+++ b/pkgs/applications/networking/p2p/retroshare/default.nix
@@ -50,7 +50,7 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "";
-    homepage = http://retroshare.sourceforge.net/;
+    homepage = "http://retroshare.sourceforge.net/";
     license = licenses.gpl2Plus;
     platforms = platforms.linux;
     maintainers = [ maintainers.domenkozar ];
diff --git a/pkgs/applications/networking/p2p/soulseekqt/default.nix b/pkgs/applications/networking/p2p/soulseekqt/default.nix
index b52320c96814..2a8a06227133 100644
--- a/pkgs/applications/networking/p2p/soulseekqt/default.nix
+++ b/pkgs/applications/networking/p2p/soulseekqt/default.nix
@@ -1,59 +1,57 @@
-{ stdenv, lib, fetchurl, mkDerivation
+{ stdenv, lib, fetchzip, mkDerivation
+, appimageTools
 , autoPatchelfHook
-, dbus
 , desktop-file-utils
-, fontconfig
-, libjson
-, pythonPackages
+, imagemagick
 , qtmultimedia
-, squashfsTools
-, zlib
 }:
 
 mkDerivation rec {
   pname = "soulseekqt";
   version = "2018-1-30";
+  name="${pname}-${version}";
 
-  src = fetchurl {
-      urls = [
-        "https://www.dropbox.com/s/0vi87eef3ooh7iy/SoulseekQt-${version}.tgz"
-        "https://www.slsknet.org/SoulseekQt/Linux/SoulseekQt-${version}-64bit-appimage.tgz"
-      ];
-      sha256 = "0d1cayxr1a4j19bc5a3qp9pg22ggzmd55b6f5av3lc6lvwqqg4w6";
-    };
+  src = fetchzip {
+      url = "https://www.slsknet.org/SoulseekQt/Linux/SoulseekQt-${version}-64bit-appimage.tgz";
+      sha256 = "16ncnvv8h33f161mgy7qc0wjvvqahsbwvby65qhgfh9pbbgb4xgg";
+  };
 
-  dontBuild = true;
+  appextracted = appimageTools.extractType2 {
+    inherit name;
+    src="${src}/SoulseekQt-2018-1-30-64bit.AppImage";
+  };
 
-  nativeBuildInputs = [ autoPatchelfHook pythonPackages.binwalk squashfsTools desktop-file-utils ];
+  dontBuild = true;
+  dontConfigure = true;
+  
+  nativeBuildInputs = [ imagemagick autoPatchelfHook desktop-file-utils ];
   buildInputs = [ qtmultimedia stdenv.cc.cc ];
 
-  # avoid usage of appimage's runner option --appimage-extract
-  unpackCmd = ''
-    export HOME=$(pwd) # workaround for binwalk
-    appimage=$(tar xvf $curSrc) && binwalk --quiet \
-       $appimage -D 'squashfs:squashfs:unsquashfs %e'
-    '';
-
-  patchPhase = ''
-    cd squashfs-root/
-    binary="$(readlink AppRun)"
-
-    # fixup desktop file
-    desktop-file-edit --set-key Exec --set-value $binary default.desktop
-    desktop-file-edit --set-key Comment --set-value "${meta.description}" default.desktop
-    desktop-file-edit --set-key Categories --set-value Network default.desktop
-  '';
-
   installPhase = ''
-    mkdir -p $out/{bin,share/applications,share/icons/}
-    cp default.desktop $out/share/applications/$binary.desktop
-    cp soulseek.png $out/share/icons/
-    cp $binary $out/bin/
-  '';
+      # directory in /nix/store so readonly
+      cd $appextracted
+
+      binary="$(readlink AppRun)"
+      install -Dm755 $binary -t $out/bin
+
+      # fixup and install desktop file
+      desktop-file-install --dir $out/share/applications \
+        --set-key Exec --set-value $binary \
+        --set-key Comment --set-value "${meta.description}" \
+        --set-key Categories --set-value Network default.desktop
+      mv $out/share/applications/default.desktop $out/share/applications/SoulseekQt.desktop
+
+      #TODO: write generic code to read icon path from $binary.desktop
+      icon="$(readlink .DirIcon)"
+      for size in 16 32 48 64 72 96 128 192 256 512 1024; do
+        mkdir -p $out/share/icons/hicolor/"$size"x"$size"/apps
+        convert -resize "$size"x"$size" $icon $out/share/icons/hicolor/"$size"x"$size"/apps/$icon
+      done
+    '';
 
   meta = with lib; {
     description = "Official Qt SoulSeek client";
-    homepage = http://www.soulseekqt.net;
+    homepage = "https://www.slsknet.org";
     license = licenses.unfree;
     maintainers = [ maintainers.genesis ];
     platforms = [ "x86_64-linux" ];
diff --git a/pkgs/applications/networking/p2p/stig/default.nix b/pkgs/applications/networking/p2p/stig/default.nix
index 80b8251f2a3f..6b1a7ace902a 100644
--- a/pkgs/applications/networking/p2p/stig/default.nix
+++ b/pkgs/applications/networking/p2p/stig/default.nix
@@ -1,9 +1,9 @@
 { lib
 , fetchFromGitHub
-, python3
+, python3Packages
 }:
 
-python3.pkgs.buildPythonApplication rec {
+python3Packages.buildPythonApplication rec {
   pname = "stig";
   # This project has a different concept for pre release / alpha,
   # Read the project's README for details: https://github.com/rndusr/stig#stig
@@ -26,7 +26,7 @@ python3.pkgs.buildPythonApplication rec {
       --replace "urwidtrees>=1.0.3dev0" "urwidtrees"
   '';
 
-  buildInputs = with python3.pkgs; [
+  propagatedBuildInputs = with python3Packages; [
     urwid
     urwidtrees
     aiohttp
@@ -38,15 +38,23 @@ python3.pkgs.buildPythonApplication rec {
     setproctitle
   ];
 
-  checkInputs = with python3.pkgs; [
+  checkInputs = with python3Packages; [
     asynctest
-    pytest
+    pytestCheckHook
   ];
 
-  checkPhase = ''
-    pytest tests
+  dontUseSetuptoolsCheck = true;
+
+  preCheck = ''
+    export LC_ALL=C
   '';
 
+  pytestFlagsArray = [
+    "tests"
+    # test_string__month_day_hour_minute_second fails on darwin
+    "--deselect=tests/client_test/ttypes_test.py::TestTimestamp::test_string__month_day_hour_minute_second"
+  ];
+
   meta = with lib; {
     description = "TUI and CLI for the BitTorrent client Transmission";
     homepage = "https://github.com/rndusr/stig";
diff --git a/pkgs/applications/networking/p2p/synapse-bt/default.nix b/pkgs/applications/networking/p2p/synapse-bt/default.nix
index 65cf21c1611c..80d907894401 100644
--- a/pkgs/applications/networking/p2p/synapse-bt/default.nix
+++ b/pkgs/applications/networking/p2p/synapse-bt/default.nix
@@ -21,7 +21,7 @@ rustPlatform.buildRustPackage rec {
 
   meta = with stdenv.lib; {
     description = "Flexible and fast BitTorrent daemon";
-    homepage = https://synapse-bt.org/;
+    homepage = "https://synapse-bt.org/";
     license = licenses.isc;
     maintainers = with maintainers; [ dywedir ];
     platforms = platforms.all;
diff --git a/pkgs/applications/networking/p2p/tixati/default.nix b/pkgs/applications/networking/p2p/tixati/default.nix
index 05268bdaead1..151d652de526 100644
--- a/pkgs/applications/networking/p2p/tixati/default.nix
+++ b/pkgs/applications/networking/p2p/tixati/default.nix
@@ -2,11 +2,11 @@
 
 stdenv.mkDerivation rec {
   pname = "tixati";
-  version = "2.67";
+  version = "2.72";
 
   src = fetchurl {
     url = "https://download2.tixati.com/download/tixati-${version}-1.x86_64.manualinstall.tar.gz";
-    sha256 = "0510wkwmwrlv61958zd5nsc4lr0l0lka3jf4pq3dyiyfsf4k20rq";
+    sha256 = "04si7xwbpvljdbngmzlfvkn51wih3aqcb5g6r76wdh3pfpppskhr";
   };
 
   installPhase = ''
@@ -22,7 +22,7 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "Torrent client";
-    homepage = http://www.tixati.com;
+    homepage = "http://www.tixati.com";
     license = licenses.unfree;
     platforms = [ "x86_64-linux" ];
     maintainers = with maintainers; [ volth ];
diff --git a/pkgs/applications/networking/p2p/torrential/default.nix b/pkgs/applications/networking/p2p/torrential/default.nix
index 01da8a633742..1bf99165858d 100644
--- a/pkgs/applications/networking/p2p/torrential/default.nix
+++ b/pkgs/applications/networking/p2p/torrential/default.nix
@@ -58,7 +58,7 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "Download torrents in style with this speedy, minimalist torrent client for elementary OS";
-    homepage = https://github.com/davidmhewitt/torrential;
+    homepage = "https://github.com/davidmhewitt/torrential";
     maintainers = with maintainers; [ kjuvi ] ++ pantheon.maintainers;
     platforms = platforms.linux;
     license = licenses.gpl3;
diff --git a/pkgs/applications/networking/p2p/transgui/default.nix b/pkgs/applications/networking/p2p/transgui/default.nix
index 51d591995b76..dbe3bb50e6d0 100644
--- a/pkgs/applications/networking/p2p/transgui/default.nix
+++ b/pkgs/applications/networking/p2p/transgui/default.nix
@@ -68,7 +68,7 @@ stdenv.mkDerivation rec {
 
   meta = {
     description = "A cross platform front-end for the Transmission Bit-Torrent client";
-    homepage = https://sourceforge.net/p/transgui;
+    homepage = "https://sourceforge.net/p/transgui";
     license = stdenv.lib.licenses.gpl2Plus;
     maintainers = with stdenv.lib.maintainers; [ ramkromberg ];
     platforms = stdenv.lib.platforms.linux;
diff --git a/pkgs/applications/networking/p2p/transmission-remote-cli/default.nix b/pkgs/applications/networking/p2p/transmission-remote-cli/default.nix
index e05ca43eb507..7c6e35752a01 100644
--- a/pkgs/applications/networking/p2p/transmission-remote-cli/default.nix
+++ b/pkgs/applications/networking/p2p/transmission-remote-cli/default.nix
@@ -19,7 +19,7 @@ stdenv.mkDerivation rec {
 
   meta = {
     description = "Curses interface for the Transmission BitTorrent daemon";
-    homepage = https://github.com/fagga/transmission-remote-cli;
+    homepage = "https://github.com/fagga/transmission-remote-cli";
     license = stdenv.lib.licenses.gpl3Plus;
     platforms = stdenv.lib.platforms.unix;
   };
diff --git a/pkgs/applications/networking/p2p/transmission-remote-gtk/default.nix b/pkgs/applications/networking/p2p/transmission-remote-gtk/default.nix
index 68babaddd1bc..8e74b82b69d3 100644
--- a/pkgs/applications/networking/p2p/transmission-remote-gtk/default.nix
+++ b/pkgs/applications/networking/p2p/transmission-remote-gtk/default.nix
@@ -34,7 +34,7 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "GTK remote control for the Transmission BitTorrent client";
-    homepage = https://github.com/ajf8/transmission-remote-gtk;
+    homepage = "https://github.com/ajf8/transmission-remote-gtk";
     license = licenses.gpl2;
     maintainers = [ maintainers.ehmry ];
     platforms = platforms.linux;
diff --git a/pkgs/applications/networking/p2p/transmission/default.nix b/pkgs/applications/networking/p2p/transmission/default.nix
index 25996953e11a..0e80e1397faf 100644
--- a/pkgs/applications/networking/p2p/transmission/default.nix
+++ b/pkgs/applications/networking/p2p/transmission/default.nix
@@ -54,7 +54,7 @@ stdenv.mkDerivation rec {
         * Bluetack (PeerGuardian) blocklists with automatic updates
         * Full encryption, DHT, and PEX support
     '';
-    homepage = http://www.transmissionbt.com/;
+    homepage = "http://www.transmissionbt.com/";
     license = licenses.gpl2; # parts are under MIT
     maintainers = with maintainers; [ astsmtl vcunat wizeman ];
     platforms = platforms.unix;
diff --git a/pkgs/applications/networking/p2p/tribler/default.nix b/pkgs/applications/networking/p2p/tribler/default.nix
index 8bd536624086..ed1129b238ac 100644
--- a/pkgs/applications/networking/p2p/tribler/default.nix
+++ b/pkgs/applications/networking/p2p/tribler/default.nix
@@ -3,11 +3,11 @@
 
 stdenv.mkDerivation rec {
   pname = "tribler";
-  version = "7.4.1";
+  version = "7.4.4";
 
   src = fetchurl {
     url = "https://github.com/Tribler/tribler/releases/download/v${version}/Tribler-v${version}.tar.xz";
-    sha256 = "1s9hzr0n00d3hb1z2srq75j7mbml6csylb14hzy9psw27q2c0fqs";
+    sha256 = "0hxiyf1k07ngym2p8r1b5mcx1y2crkyz43gi9sgvsvsyijyaff3p";
   };
 
   nativeBuildInputs = [
@@ -71,11 +71,16 @@ stdenv.mkDerivation rec {
         ${stdenv.lib.optionalString enablePlayer ''
           --prefix LD_LIBRARY_PATH : ${vlc}/lib
         ''}
+
+    mkdir -p $out/share/applications $out/share/icons $out/share/man/man1
+    cp $out/Tribler/Main/Build/Ubuntu/tribler.desktop $out/share/applications/tribler.desktop
+    cp $out/Tribler/Main/Build/Ubuntu/tribler_big.xpm $out/share/icons/tribler.xpm
+    cp $out/Tribler/Main/Build/Ubuntu/tribler.1 $out/share/man/man1/tribler.1
   '';
 
   meta = with stdenv.lib; {
     maintainers = with maintainers; [ xvapx ];
-    homepage = https://www.tribler.org/;
+    homepage = "https://www.tribler.org/";
     description = "A completely decentralised P2P filesharing client based on the Bittorrent protocol";
     license = licenses.lgpl21;
     platforms = platforms.linux;
diff --git a/pkgs/applications/networking/p2p/twister/default.nix b/pkgs/applications/networking/p2p/twister/default.nix
index 30491470392a..03cb381f5eb4 100644
--- a/pkgs/applications/networking/p2p/twister/default.nix
+++ b/pkgs/applications/networking/p2p/twister/default.nix
@@ -59,7 +59,7 @@ in stdenv.mkDerivation rec {
   enableParallelBuilding = true;
 
   meta = {
-    homepage = http://www.twister.net.co/;
+    homepage = "http://www.twister.net.co/";
     description = "Peer-to-peer microblogging";
     license = stdenv.lib.licenses.mit;
     platforms = stdenv.lib.platforms.linux;
diff --git a/pkgs/applications/networking/p2p/vuze/default.nix b/pkgs/applications/networking/p2p/vuze/default.nix
index b1d3c73129aa..be2421ef4d26 100644
--- a/pkgs/applications/networking/p2p/vuze/default.nix
+++ b/pkgs/applications/networking/p2p/vuze/default.nix
@@ -21,7 +21,7 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "Torrent client";
-    homepage = http://www.vuze.com;
+    homepage = "http://www.vuze.com";
     license = licenses.unfree;
     platforms = platforms.all;
     maintainers = with maintainers; [ volth ];
diff --git a/pkgs/applications/networking/ping/default.nix b/pkgs/applications/networking/ping/default.nix
index 925618bbe991..dc75de6299f5 100644
--- a/pkgs/applications/networking/ping/default.nix
+++ b/pkgs/applications/networking/ping/default.nix
@@ -12,7 +12,9 @@
 , json-glib
 , libsoup
 , libgee
-, wrapGAppsHook }:
+, wrapGAppsHook
+, vala_0_40
+}:
 
 stdenv.mkDerivation rec {
   pname = "ping";
@@ -28,7 +30,7 @@ stdenv.mkDerivation rec {
   nativeBuildInputs = [
     meson
     ninja
-    vala
+    vala_0_40
     pkgconfig
     python3
     wrapGAppsHook
@@ -57,7 +59,7 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "A helpful tool that lets you debug what part of your API is causing you issues";
-    homepage = https://github.com/jeremyvaartjes/ping;
+    homepage = "https://github.com/jeremyvaartjes/ping";
     maintainers = with maintainers; [ kjuvi ] ++ pantheon.maintainers;
     platforms = platforms.linux;
     license = licenses.gpl3;
diff --git a/pkgs/applications/networking/pjsip/default.nix b/pkgs/applications/networking/pjsip/default.nix
index c9df5d3fbe37..7319dd4a44fa 100644
--- a/pkgs/applications/networking/pjsip/default.nix
+++ b/pkgs/applications/networking/pjsip/default.nix
@@ -1,20 +1,29 @@
-{ stdenv, fetchurl, openssl, libsamplerate, alsaLib }:
+{ stdenv, fetchFromGitHub, openssl, libsamplerate, alsaLib, AppKit }:
 
 stdenv.mkDerivation rec {
   pname = "pjsip";
-  version = "2.9";
+  version = "2.10";
 
-  src = fetchurl {
-    url = "https://www.pjsip.org/release/${version}/pjproject-${version}.tar.bz2";
-    sha256 = "0dm6l8fypkimmzvld35zyykbg957cm5zb4ny3lchgv68amwfz1fi";
+  src = fetchFromGitHub {
+    owner = pname;
+    repo = "pjproject";
+    rev = version;
+    sha256 = "1aklicpgwc88578k03i5d5cm5h8mfm7hmx8vfprchbmaa2p8f4z0";
   };
 
-  patches = [ ./fix-aarch64.patch ];
+  patches = [
+    ./fix-aarch64.patch
+  ];
 
-  buildInputs = [ openssl libsamplerate alsaLib ];
+  buildInputs = [ openssl libsamplerate ]
+    ++ stdenv.lib.optional stdenv.isLinux alsaLib
+    ++ stdenv.lib.optional stdenv.isDarwin AppKit;
 
   preConfigure = ''
     export LD=$CC
+  '' # Fixed on master, remove with 2.11
+     + stdenv.lib.optionalString stdenv.isDarwin ''
+    NIX_CFLAGS_COMPILE+=" -framework Security"
   '';
 
   postInstall = ''
@@ -27,11 +36,11 @@ stdenv.mkDerivation rec {
   # We need the libgcc_s.so.1 loadable (for pthread_cancel to work)
   dontPatchELF = true;
 
-  meta = {
+  meta = with stdenv.lib; {
     description = "A multimedia communication library written in C, implementing standard based protocols such as SIP, SDP, RTP, STUN, TURN, and ICE";
-    homepage = https://pjsip.org/;
-    license = stdenv.lib.licenses.gpl2Plus;
-    maintainers = with stdenv.lib.maintainers; [olynch];
-    platforms = with stdenv.lib.platforms; linux;
+    homepage = "https://pjsip.org/";
+    license = licenses.gpl2Plus;
+    maintainers = with maintainers; [ olynch ];
+    platforms = platforms.linux ++ platforms.darwin;
   };
 }
diff --git a/pkgs/applications/networking/protocol/default.nix b/pkgs/applications/networking/protocol/default.nix
index 8785d2449b3e..31b1bd6086ad 100644
--- a/pkgs/applications/networking/protocol/default.nix
+++ b/pkgs/applications/networking/protocol/default.nix
@@ -13,7 +13,7 @@ buildPythonApplication {
 
   meta = with stdenv.lib; {
     description = "An ASCII Header Generator for Network Protocols";
-    homepage = https://github.com/luismartingarcia/protocol;
+    homepage = "https://github.com/luismartingarcia/protocol";
     license = licenses.gpl3;
     maintainers = with maintainers; [ teto ];
   };
diff --git a/pkgs/applications/networking/protonvpn-cli-ng/default.nix b/pkgs/applications/networking/protonvpn-cli-ng/default.nix
index 03d1a665273e..e62bc21ab5b8 100644
--- a/pkgs/applications/networking/protonvpn-cli-ng/default.nix
+++ b/pkgs/applications/networking/protonvpn-cli-ng/default.nix
@@ -1,14 +1,14 @@
-{ stdenv, lib, fetchFromGitHub, python3Packages, openvpn, dialog }:
+{ lib, fetchFromGitHub, python3Packages, openvpn, dialog, iptables }:
 
 python3Packages.buildPythonApplication rec {
-  name = "protonvpn-cli-ng";
-  version = "2.2.0";
+  pname = "protonvpn-cli-ng";
+  version = "2.2.2";
 
   src = fetchFromGitHub {
     owner = "protonvpn";
-    repo = "protonvpn-cli-ng";
+    repo = "${pname}";
     rev = "v${version}";
-    sha256 = "11fvnnr5p3qdc4y10815jnydcjvxlxwkkq9kvaajg0yszq84rwkz";
+    sha256 = "0ixjb02kj4z79whm1izd8mrn2h0rp9cmw4im1qvp93rahqxdd4n8";
   };
 
   propagatedBuildInputs = (with python3Packages; [
@@ -19,15 +19,16 @@ python3Packages.buildPythonApplication rec {
     ]) ++ [
       dialog
       openvpn
+      iptables
     ];
 
   # No tests
   doCheck = false;
 
-  meta = with stdenv.lib; {
+  meta = with lib; {
     description = "Linux command-line client for ProtonVPN";
     homepage = "https://github.com/protonvpn/protonvpn-cli-ng";
-    maintainers = [ maintainers.jtcoolen ];
+    maintainers = with maintainers; [ jtcoolen jefflabonte ];
     license = licenses.gpl3;
     platforms = platforms.unix;
   };
diff --git a/pkgs/applications/networking/protonvpn-cli/default.nix b/pkgs/applications/networking/protonvpn-cli/default.nix
index f426a7c3a581..c48f6c820269 100644
--- a/pkgs/applications/networking/protonvpn-cli/default.nix
+++ b/pkgs/applications/networking/protonvpn-cli/default.nix
@@ -35,7 +35,7 @@ in stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "ProtonVPN Command-Line Tool";
-    homepage = https://github.com/ProtonVPN/protonvpn-cli;
+    homepage = "https://github.com/ProtonVPN/protonvpn-cli";
     maintainers = with maintainers; [ caugner ];
     license = licenses.mit;
     platforms = platforms.unix;
diff --git a/pkgs/applications/networking/ps2client/default.nix b/pkgs/applications/networking/ps2client/default.nix
index d75f92cb25c7..02b14b72c18b 100644
--- a/pkgs/applications/networking/ps2client/default.nix
+++ b/pkgs/applications/networking/ps2client/default.nix
@@ -21,7 +21,7 @@ stdenv.mkDerivation {
 
   meta = with stdenv.lib; {
     description = "Desktop clients to interact with ps2link and ps2netfs";
-    homepage = https://github.com/ps2dev/ps2client;
+    homepage = "https://github.com/ps2dev/ps2client";
     license = licenses.bsd3;
     maintainers = [ maintainers.genesis ];
     platforms = platforms.unix;
diff --git a/pkgs/applications/networking/pyload/beautifulsoup.nix b/pkgs/applications/networking/pyload/beautifulsoup.nix
index 66470bf8f314..8eb0c2298fd3 100644
--- a/pkgs/applications/networking/pyload/beautifulsoup.nix
+++ b/pkgs/applications/networking/pyload/beautifulsoup.nix
@@ -13,7 +13,7 @@ pythonPackages.buildPythonPackage {
   doCheck = false;
 
   meta = {
-    homepage = http://www.crummy.com/software/BeautifulSoup/;
+    homepage = "http://www.crummy.com/software/BeautifulSoup/";
     license = "bsd";
     description = "Undemanding HTML/XML parser";
   };
diff --git a/pkgs/applications/networking/pyload/default.nix b/pkgs/applications/networking/pyload/default.nix
index 3df21d414e04..f173e56abb34 100644
--- a/pkgs/applications/networking/pyload/default.nix
+++ b/pkgs/applications/networking/pyload/default.nix
@@ -52,7 +52,7 @@ in pythonPackages.buildPythonApplication rec {
 
   meta = with stdenv.lib; {
     description = "Free and open source downloader for 1-click-hosting sites";
-    homepage = https://github.com/pyload/pyload;
+    homepage = "https://github.com/pyload/pyload";
     license = licenses.gpl3;
     maintainers = [ maintainers.mahe ];
     platforms = platforms.all;
diff --git a/pkgs/applications/networking/remote/anydesk/default.nix b/pkgs/applications/networking/remote/anydesk/default.nix
index 8b194e53b445..8830881b69fb 100644
--- a/pkgs/applications/networking/remote/anydesk/default.nix
+++ b/pkgs/applications/networking/remote/anydesk/default.nix
@@ -5,7 +5,7 @@
 
 let
   sha256 = {
-    x86_64-linux = "0az7n4lhmd4pz0spjvyiwd4w1gnqbh8f1fvr1jinsssyq0j26ldj";
+    x86_64-linux = "09ajpsmgrgjhw7b91id76w84kwk2d678n0b81zzpwq7sgjcm0sb0";
     i386-linux   = "0vjxbg5hwkqkh600rr75xviwy848r1xw9mxwf6bb6l8b0isvlsgg";
   }.${stdenv.hostPlatform.system} or (throw "system ${stdenv.hostPlatform.system} not supported");
 
@@ -28,7 +28,7 @@ let
 
 in stdenv.mkDerivation rec {
   pname = "anydesk";
-  version = "5.5.2";
+  version = "5.5.5";
 
   src = fetchurl {
     urls = [
@@ -81,7 +81,7 @@ in stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     inherit description;
-    homepage = https://www.anydesk.com;
+    homepage = "https://www.anydesk.com";
     license = licenses.unfree;
     platforms = platforms.linux;
     maintainers = with maintainers; [ shyim ];
diff --git a/pkgs/applications/networking/remote/citrix-workspace/default.nix b/pkgs/applications/networking/remote/citrix-workspace/default.nix
index f6ec85f3c2cf..a62b1bf5ee15 100644
--- a/pkgs/applications/networking/remote/citrix-workspace/default.nix
+++ b/pkgs/applications/networking/remote/citrix-workspace/default.nix
@@ -24,7 +24,7 @@
 , gtk_engines
 , alsaLib
 , zlib
-, version ? "19.12.0"
+, version ? "20.04.0"
 }:
 
 let
@@ -38,7 +38,7 @@ let
         x86hash   = "16v3kgavrh62z6vxcbw6mn7h0bfishpl7m92k7g1p2882r1f8vaf";
         x64suffix = "60";
         x86suffix = "60";
-        homepage  = https://www.citrix.com/downloads/workspace-app/legacy-workspace-app-for-linux/workspace-app-for-linux-latest.html;
+        homepage  = "https://www.citrix.com/downloads/workspace-app/legacy-workspace-app-for-linux/workspace-app-for-linux-latest.html";
       };
 
       "19.8.0" = {
@@ -49,7 +49,7 @@ let
         x86hash   = "0afcqirb4q349r3izy88vqkszg6y2wg14iwypk6nrmvwgvcl6jdn";
         x64suffix = "20";
         x86suffix = "20";
-        homepage  = https://www.citrix.com/downloads/workspace-app/legacy-workspace-app-for-linux/workspace-app-for-linux-1908.html;
+        homepage  = "https://www.citrix.com/downloads/workspace-app/legacy-workspace-app-for-linux/workspace-app-for-linux-1908.html";
       };
 
       "19.10.0" = {
@@ -60,7 +60,7 @@ let
         x86hash   = "000zjik8wf8b6fadnsai0p77b4n2l95544zx503iyrb9pv53bj3y";
         x64suffix = "15";
         x86suffix = "15";
-        homepage  = https://www.citrix.com/downloads/workspace-app/legacy-workspace-app-for-linux/workspace-app-for-linux-1910.html;
+        homepage  = "https://www.citrix.com/downloads/workspace-app/legacy-workspace-app-for-linux/workspace-app-for-linux-1910.html";
       };
 
       "19.12.0" = {
@@ -71,7 +71,18 @@ let
         x86hash   = "07rfp90ksnvr8zv7ix7f0z6a59n48s7bd4kqbzilfwxgs4ddqmcy";
         x64suffix = "19";
         x86suffix = "19";
-        homepage  = https://www.citrix.com/de-de/downloads/workspace-app/linux/workspace-app-for-linux-latest.html;
+        homepage  = "https://www.citrix.com/downloads/workspace-app/legacy-workspace-app-for-linux/workspace-app-for-linux-1912.html";
+      };
+
+      "20.04.0" = {
+        major     = "20";
+        minor     = "04";
+        patch     = "0";
+        x64hash   = "E923592216F9541173846F932784E6C062CB09C9E8858219C7489607BF82A0FB";
+        x86hash   = "A2E2E1882723DA6796E68916B3BB2B44DD575A83DEB03CA90A262F6C81B1A53F";
+        x64suffix = "21";
+        x86suffix = "21";
+        homepage  = "https://www.citrix.com/downloads/workspace-app/linux/workspace-app-for-linux-latest.html";
       };
     };
 
diff --git a/pkgs/applications/networking/remote/freerdp/default.nix b/pkgs/applications/networking/remote/freerdp/default.nix
index 5963c6b6c950..be8810dfa7fc 100644
--- a/pkgs/applications/networking/remote/freerdp/default.nix
+++ b/pkgs/applications/networking/remote/freerdp/default.nix
@@ -1,67 +1,99 @@
-{ stdenv, lib, fetchFromGitHub, cmake, pkgconfig
-, alsaLib, ffmpeg, glib, openssl, pcre, zlib
-, libX11, libXcursor, libXdamage, libXext, libXi, libXinerama, libXrandr, libXrender, libXv
-, libxkbcommon, libxkbfile
-, wayland
-, gstreamer, gst-plugins-base, gst-plugins-good, libunwind, orc
-, libpulseaudio ? null
-, cups ? null
-, pcsclite ? null
-, systemd ? null
-, buildServer ? true
-, nocaps ? false
-}:
+{ stdenv, lib, fetchFromGitHub, cmake, pkgconfig, alsaLib, ffmpeg, glib, openssl
+, pcre, zlib, libX11, libXcursor, libXdamage, libXext, libXi, libXinerama
+, libXrandr, libXrender, libXv, libXtst, libxkbcommon, libxkbfile, wayland
+, gstreamer, gst-plugins-base, gst-plugins-good, libunwind, orc, libxslt
+, libusb1, libpulseaudio ? null, cups ? null, pcsclite ? null, systemd ? null
+, buildServer ? true, nocaps ? false }:
 
-stdenv.mkDerivation rec {
+let
+  cmFlag = flag: if flag then "ON" else "OFF";
+  disabledTests = [
+    # this one is probably due to our sandbox
+    {
+      dir = "libfreerdp/crypto/test";
+      file = "Test_x509_cert_info.c";
+    }
+  ];
+
+in stdenv.mkDerivation rec {
   pname = "freerdp";
-  version = "2.0.0-rc4";
+  version = "2.0.0";
 
   src = fetchFromGitHub {
-    owner  = "FreeRDP";
-    repo   = "FreeRDP";
-    rev    = version;
-    sha256 = "0546i0m2d4nz5jh84ngwzpcm3c43fp987jk6cynqspsmvapab6da";
+    owner = "FreeRDP";
+    repo = "FreeRDP";
+    rev = version;
+    sha256 = "0d2559v0z1jnq6jlrvsgdf8p6gd27m8kwdnxckl1x0ygaxs50bqc";
   };
 
-  # outputs = [ "bin" "out" "dev" ];
-
-  prePatch = ''
+  postPatch = ''
     export HOME=$TMP
+
+    # failing test(s)
+    ${lib.concatMapStringsSep "\n" (e: ''
+      substituteInPlace ${e.dir}/CMakeLists.txt \
+        --replace ${e.file} ""
+      rm ${e.dir}/${e.file}
+    '') disabledTests}
+
     substituteInPlace "libfreerdp/freerdp.pc.in" \
       --replace "Requires:" "Requires: @WINPR_PKG_CONFIG_FILENAME@"
   '' + lib.optionalString (pcsclite != null) ''
     substituteInPlace "winpr/libwinpr/smartcard/smartcard_pcsc.c" \
-      --replace "libpcsclite.so" "${stdenv.lib.getLib pcsclite}/lib/libpcsclite.so"
+      --replace "libpcsclite.so" "${lib.getLib pcsclite}/lib/libpcsclite.so"
   '' + lib.optionalString nocaps ''
     substituteInPlace "libfreerdp/locale/keyboard_xkbfile.c" \
       --replace "RDP_SCANCODE_CAPSLOCK" "RDP_SCANCODE_LCONTROL"
   '';
 
-  buildInputs = with lib; [
-    alsaLib cups ffmpeg glib openssl pcre pcsclite libpulseaudio zlib
-    gstreamer gst-plugins-base gst-plugins-good libunwind orc
-    libX11 libXcursor libXdamage libXext libXi libXinerama libXrandr libXrender libXv
-    libxkbcommon libxkbfile
-    wayland
-  ] ++ optional stdenv.isLinux systemd;
-
-  nativeBuildInputs = [
-    cmake pkgconfig
-  ];
+  buildInputs = with lib;
+    [
+      alsaLib
+      cups
+      ffmpeg
+      glib
+      gst-plugins-base
+      gst-plugins-good
+      gstreamer
+      libX11
+      libXcursor
+      libXdamage
+      libXext
+      libXi
+      libXinerama
+      libXrandr
+      libXrender
+      libXtst
+      libXv
+      libpulseaudio
+      libunwind
+      libusb1
+      libxkbcommon
+      libxkbfile
+      libxslt
+      openssl
+      orc
+      pcre
+      pcsclite
+      wayland
+      zlib
+    ] ++ optional stdenv.isLinux systemd;
 
-  enableParallelBuilding = true;
+  nativeBuildInputs = [ cmake pkgconfig ];
 
-  doCheck = false;
+  doCheck = true;
 
-  cmakeFlags = with lib; [
-    "-DCMAKE_INSTALL_LIBDIR=lib"
-    "-DWITH_CUNIT=OFF"
-    "-DWITH_OSS=OFF"
-  ] ++ optional (libpulseaudio != null)       "-DWITH_PULSE=ON"
-    ++ optional (cups != null)                "-DWITH_CUPS=ON"
-    ++ optional (pcsclite != null)            "-DWITH_PCSC=ON"
-    ++ optional buildServer                   "-DWITH_SERVER=ON"
-    ++ optional (stdenv.isx86_64)             "-DWITH_SSE2=ON";
+  cmakeFlags = [ "-DCMAKE_INSTALL_LIBDIR=lib" ]
+    ++ lib.mapAttrsToList (k: v: "-D${k}=${if v then "ON" else "OFF"}") {
+      BUILD_TESTING = doCheck;
+      WITH_CUNIT = doCheck;
+      WITH_CUPS = (cups != null);
+      WITH_OSS = false;
+      WITH_PCSC = (pcsclite != null);
+      WITH_PULSE = (libpulseaudio != null);
+      WITH_SERVER = buildServer;
+      WITH_SSE2 = stdenv.isx86_64;
+    };
 
   meta = with lib; {
     description = "A Remote Desktop Protocol Client";
@@ -69,9 +101,9 @@ stdenv.mkDerivation rec {
       FreeRDP is a client-side implementation of the Remote Desktop Protocol (RDP)
       following the Microsoft Open Specifications.
     '';
-    homepage = http://www.freerdp.com/;
+    homepage = "https://www.freerdp.com/";
     license = licenses.asl20;
-    maintainers = with maintainers; [ peterhoeg ];
+    maintainers = with maintainers; [ peterhoeg lheckemann ];
     platforms = platforms.unix;
   };
 }
diff --git a/pkgs/applications/networking/remote/putty/default.nix b/pkgs/applications/networking/remote/putty/default.nix
index 49182ec182fe..804a40a614c5 100644
--- a/pkgs/applications/networking/remote/putty/default.nix
+++ b/pkgs/applications/networking/remote/putty/default.nix
@@ -48,7 +48,7 @@ stdenv.mkDerivation rec {
       platforms, along with an xterm terminal emulator.
       It is written and maintained primarily by Simon Tatham.
     '';
-    homepage = https://www.chiark.greenend.org.uk/~sgtatham/putty/;
+    homepage = "https://www.chiark.greenend.org.uk/~sgtatham/putty/";
     license = licenses.mit;
     platforms = platforms.unix ++ platforms.windows;
   };
diff --git a/pkgs/applications/networking/remote/rdesktop/default.nix b/pkgs/applications/networking/remote/rdesktop/default.nix
index 9c9abe55daa6..4c67105dafc2 100644
--- a/pkgs/applications/networking/remote/rdesktop/default.nix
+++ b/pkgs/applications/networking/remote/rdesktop/default.nix
@@ -1,21 +1,21 @@
-{stdenv, fetchFromGitHub, openssl, libX11, libgssglue, pkgconfig, autoreconfHook
+{stdenv, fetchFromGitHub, openssl, libX11, krb5, libXcursor, libtasn1, nettle, gnutls, pkgconfig, autoreconfHook
 , enableCredssp ? (!stdenv.isDarwin)
 } :
 
 stdenv.mkDerivation (rec {
   pname = "rdesktop";
-  version = "1.8.6";
+  version = "1.9.0";
 
   src = fetchFromGitHub {
     owner = pname;
     repo = pname;
     rev = "v${version}";
-    sha256 = "02sbhnqbasa54c75c86qw9w9h9sxxbnldj7bjv2gvn18lmq5rm20";
+    sha256 = "1s6k1jwd28y38ymk3lfv76ch4arpfwrbdhpkbnwwy3fc4617gb78";
   };
 
   nativeBuildInputs = [pkgconfig autoreconfHook];
-  buildInputs = [openssl libX11]
-    ++ stdenv.lib.optional enableCredssp libgssglue;
+  buildInputs = [openssl libX11 libXcursor libtasn1 nettle gnutls]
+    ++ stdenv.lib.optional enableCredssp krb5;
 
   configureFlags = [
     "--with-ipv6"
@@ -25,7 +25,7 @@ stdenv.mkDerivation (rec {
 
   meta = {
     description = "Open source client for Windows Terminal Services";
-    homepage = http://www.rdesktop.org/;
+    homepage = "http://www.rdesktop.org/";
     platforms = stdenv.lib.platforms.linux ++ stdenv.lib.platforms.darwin;
     license = stdenv.lib.licenses.gpl2;
   };
diff --git a/pkgs/applications/networking/remote/remmina/default.nix b/pkgs/applications/networking/remote/remmina/default.nix
index de221fce3896..3e41649d8cc0 100644
--- a/pkgs/applications/networking/remote/remmina/default.nix
+++ b/pkgs/applications/networking/remote/remmina/default.nix
@@ -13,13 +13,13 @@ with stdenv.lib;
 
 stdenv.mkDerivation rec {
   pname = "remmina";
-  version = "1.3.10";
+  version = "1.4.1";
 
   src = fetchFromGitLab {
     owner  = "Remmina";
     repo   = "Remmina";
     rev    = "v${version}";
-    sha256 = "0gc7b88129avl9sbax3ncvm7zf2qvq35ixvvpr2zj74g3qnphl08";
+    sha256 = "084yw0fd3qmzzd6xinhf4plv5bg8gfj4jnfac7zi1nif8zilf456";
   };
 
   nativeBuildInputs = [ cmake ninja pkgconfig wrapGAppsHook ];
@@ -52,7 +52,7 @@ stdenv.mkDerivation rec {
 
   meta = {
     license = licenses.gpl2;
-    homepage = https://gitlab.com/Remmina/Remmina;
+    homepage = "https://gitlab.com/Remmina/Remmina";
     description = "Remote desktop client written in GTK";
     maintainers = with maintainers; [ melsigl ryantm ];
     platforms = platforms.linux;
diff --git a/pkgs/applications/networking/remote/teamviewer/default.nix b/pkgs/applications/networking/remote/teamviewer/default.nix
index 6fe77790b74a..dbb9d465cc7f 100644
--- a/pkgs/applications/networking/remote/teamviewer/default.nix
+++ b/pkgs/applications/networking/remote/teamviewer/default.nix
@@ -57,7 +57,7 @@ mkDerivation rec {
   preferLocalBuild = true;
 
   meta = with lib; {
-    homepage = http://www.teamviewer.com;
+    homepage = "http://www.teamviewer.com";
     license = licenses.unfree;
     description = "Desktop sharing application, providing remote support and online meetings";
     platforms = [ "x86_64-linux" ];
diff --git a/pkgs/applications/networking/remote/waypipe/default.nix b/pkgs/applications/networking/remote/waypipe/default.nix
index d253e766284f..03be60a99489 100644
--- a/pkgs/applications/networking/remote/waypipe/default.nix
+++ b/pkgs/applications/networking/remote/waypipe/default.nix
@@ -40,7 +40,7 @@ stdenv.mkDerivation rec {
       serializes changes to shared memory buffers over a single socket. This
       makes application forwarding similar to ssh -X feasible.
     '';
-    homepage = https://mstoeckl.com/notes/gsoc/blog.html;
+    homepage = "https://mstoeckl.com/notes/gsoc/blog.html";
     license = licenses.mit;
     platforms = platforms.linux;
     maintainers = with maintainers; [ primeos ];
diff --git a/pkgs/applications/networking/remote/wayvnc/default.nix b/pkgs/applications/networking/remote/wayvnc/default.nix
index b1498d0a9ce7..865710184f93 100644
--- a/pkgs/applications/networking/remote/wayvnc/default.nix
+++ b/pkgs/applications/networking/remote/wayvnc/default.nix
@@ -4,15 +4,20 @@
 
 stdenv.mkDerivation rec {
   pname = "wayvnc";
-  version = "0.1.0";
+  version = "0.1.2";
 
   src = fetchFromGitHub {
     owner = "any1";
     repo = pname;
     rev = "v${version}";
-    sha256 = "17c30c33zzhhlqzc4a5dd1y74ch7c8gsm98wvcn4n1fv50fbmpbd";
+    sha256 = "0aa12fkbwhzs0g2pqw1b27l33nn5dpbcvsf1z8h88kwsf9xdvb2r";
   };
 
+  postPatch = ''
+    substituteInPlace meson.build \
+      --replace "version: '0.1.0'" "version: '${version}'"
+  '';
+
   nativeBuildInputs = [ meson pkg-config ninja ];
   buildInputs = [ pixman libuv libGL libxkbcommon wayland neatvnc libdrm libX11 ];
 
@@ -26,6 +31,7 @@ stdenv.mkDerivation rec {
       display attached.
     '';
     inherit (src.meta) homepage;
+    changelog = "https://github.com/any1/wayvnc/releases/tag/v${version}";
     license = licenses.isc;
     platforms = platforms.linux;
     maintainers = with maintainers; [ primeos ];
diff --git a/pkgs/applications/networking/remote/x2goclient/default.nix b/pkgs/applications/networking/remote/x2goclient/default.nix
index 13bcbf9b57e1..047458067357 100644
--- a/pkgs/applications/networking/remote/x2goclient/default.nix
+++ b/pkgs/applications/networking/remote/x2goclient/default.nix
@@ -32,7 +32,7 @@ mkDerivation {
 
   meta = with stdenv.lib; {
     description = "Graphical NoMachine NX3 remote desktop client";
-    homepage = http://x2go.org/;
+    homepage = "http://x2go.org/";
     license = licenses.gpl2;
     platforms = platforms.linux;
   };
diff --git a/pkgs/applications/networking/remote/xrdp/default.nix b/pkgs/applications/networking/remote/xrdp/default.nix
index 5d33f186df7b..9941951225ca 100644
--- a/pkgs/applications/networking/remote/xrdp/default.nix
+++ b/pkgs/applications/networking/remote/xrdp/default.nix
@@ -96,7 +96,7 @@ let
 
     meta = with stdenv.lib; {
       description = "An open source RDP server";
-      homepage = https://github.com/neutrinolabs/xrdp;
+      homepage = "https://github.com/neutrinolabs/xrdp";
       license = licenses.asl20;
       maintainers = [ maintainers.volth ];
       platforms = platforms.linux;
diff --git a/pkgs/applications/networking/resilio-sync/default.nix b/pkgs/applications/networking/resilio-sync/default.nix
index 14d418cd2bfb..883a152fdf97 100644
--- a/pkgs/applications/networking/resilio-sync/default.nix
+++ b/pkgs/applications/networking/resilio-sync/default.nix
@@ -31,7 +31,7 @@ in stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "Automatically sync files via secure, distributed technology";
-    homepage    = https://www.resilio.com/;
+    homepage    = "https://www.resilio.com/";
     license     = licenses.unfreeRedistributable;
     platforms   = platforms.linux;
     maintainers = with maintainers; [ domenkozar thoughtpolice cwoac ];
diff --git a/pkgs/applications/networking/seafile-client/default.nix b/pkgs/applications/networking/seafile-client/default.nix
index 75ba68db3a80..0893ee21a558 100644
--- a/pkgs/applications/networking/seafile-client/default.nix
+++ b/pkgs/applications/networking/seafile-client/default.nix
@@ -4,13 +4,13 @@
 
 mkDerivation rec {
   pname = "seafile-client";
-  version = "7.0.5";
+  version = "7.0.7";
 
   src = fetchFromGitHub {
     owner = "haiwen";
     repo = "seafile-client";
     rev = "v${version}";
-    sha256 = "08ysmhvdpyzq2s16i3fvii252fzjrxly3da74x8y6wbyy8yywmjy";
+    sha256 = "0szdyprljyckmbrw5sypizs22j96q84ak6nyidyr2j6gf4grh9mg";
   };
 
   nativeBuildInputs = [ pkgconfig cmake ];
diff --git a/pkgs/applications/networking/sieve-connect/default.nix b/pkgs/applications/networking/sieve-connect/default.nix
index dc578dccd19d..c81cc78a9b55 100644
--- a/pkgs/applications/networking/sieve-connect/default.nix
+++ b/pkgs/applications/networking/sieve-connect/default.nix
@@ -42,7 +42,7 @@ stdenv.mkDerivation rec {
       as specifed in RFC 5804. Historically, this was MANAGESIEVE as
       implemented by timsieved in Cyrus IMAP.
     '';
-    homepage = https://github.com/philpennock/sieve-connect;
+    homepage = "https://github.com/philpennock/sieve-connect";
     license = licenses.bsd3;
     platforms = platforms.unix;
     maintainers = with maintainers; [ das_j ];
diff --git a/pkgs/applications/networking/siproxd/default.nix b/pkgs/applications/networking/siproxd/default.nix
index cd697f107b35..e664ee20c237 100644
--- a/pkgs/applications/networking/siproxd/default.nix
+++ b/pkgs/applications/networking/siproxd/default.nix
@@ -13,7 +13,7 @@ stdenv.mkDerivation rec {
   buildInputs = [ libosip ];
 
   meta = {
-    homepage = http://siproxd.sourceforge.net/;
+    homepage = "http://siproxd.sourceforge.net/";
     description = "A masquerading SIP Proxy Server";
     maintainers = with stdenv.lib.maintainers; [viric];
     platforms = with stdenv.lib.platforms; linux;
diff --git a/pkgs/applications/networking/sniffers/etherape/default.nix b/pkgs/applications/networking/sniffers/etherape/default.nix
index 81c48cff4a01..9c295c279156 100644
--- a/pkgs/applications/networking/sniffers/etherape/default.nix
+++ b/pkgs/applications/networking/sniffers/etherape/default.nix
@@ -14,7 +14,7 @@ stdenv.mkDerivation rec {
   ];
 
   meta = with stdenv.lib; {
-    homepage = http://etherape.sourceforge.net/;
+    homepage = "http://etherape.sourceforge.net/";
     license = stdenv.lib.licenses.gpl2Plus;
     platforms = with platforms; linux;
     maintainers = with maintainers; [ symphorien ];
diff --git a/pkgs/applications/networking/sniffers/ettercap/default.nix b/pkgs/applications/networking/sniffers/ettercap/default.nix
index c548098baa7e..4af8e526cd2c 100644
--- a/pkgs/applications/networking/sniffers/ettercap/default.nix
+++ b/pkgs/applications/networking/sniffers/ettercap/default.nix
@@ -42,7 +42,7 @@ stdenv.mkDerivation rec {
       of many protocols and includes many features for network and host
       analysis.
     '';
-    homepage = https://www.ettercap-project.org/;
+    homepage = "https://www.ettercap-project.org/";
     license = licenses.gpl2;
     platforms = platforms.unix;
     maintainers = with maintainers; [ pSub ];
diff --git a/pkgs/applications/networking/sniffers/kismet/default.nix b/pkgs/applications/networking/sniffers/kismet/default.nix
index 0005a5d230d7..93ccf254a3a4 100644
--- a/pkgs/applications/networking/sniffers/kismet/default.nix
+++ b/pkgs/applications/networking/sniffers/kismet/default.nix
@@ -1,16 +1,37 @@
-{ stdenv, fetchurl, pkgconfig, libpcap, ncurses, expat, pcre, libnl }:
+{ stdenv, fetchurl, pkgconfig, libpcap, pcre, libnl, zlib, libmicrohttpd
+, sqlite, protobuf, protobufc, libusb1, libcap, binutils, elfutils
+, withNetworkManager ? false, glib, networkmanager
+, withPython ? false, python3
+, withSensors ? false, lm_sensors}:
+
+# couldn't get python modules to build correctly,
+# waiting for some other volunteer to fix it
+assert !withPython;
 
 stdenv.mkDerivation rec {
   pname = "kismet";
-  version = "2016-07-R1";
+  version = "2020-04-R2";
 
   src = fetchurl {
     url = "https://www.kismetwireless.net/code/${pname}-${version}.tar.xz";
-    sha256 = "0dz28y4ay4lskhl0lawqy2dkcrhgfkbg06v22qxzzw8i6caizcmx";
+    sha256 = "0hxmaln0y6bk9m1rshr4swmg0sqy3ic693vfk8haj7f5gnph96cm";
   };
 
   nativeBuildInputs = [ pkgconfig ];
-  buildInputs = [ libpcap ncurses expat pcre libnl ];
+
+  buildInputs = [
+    libpcap pcre libmicrohttpd libnl zlib sqlite protobuf protobufc
+    libusb1 libcap binutils elfutils
+  ] ++ stdenv.lib.optionals withNetworkManager [ networkmanager glib ]
+    ++ stdenv.lib.optional withSensors lm_sensors
+    ++ stdenv.lib.optional withPython (python3.withPackages(ps: [ ps.setuptools ps.protobuf
+                                                                  ps.numpy ps.pyserial ]));
+
+  configureFlags = []
+    ++ stdenv.lib.optional (!withNetworkManager) "--disable-libnm"
+    ++ stdenv.lib.optional (!withPython) "--disable-python-tools"
+    ++ stdenv.lib.optional (!withSensors) "--disable-lmsensors";
+
   postConfigure = ''
     sed -e 's/-o $(INSTUSR)//' \
         -e 's/-g $(INSTGRP)//' \
@@ -19,9 +40,11 @@ stdenv.mkDerivation rec {
         -i Makefile
   '';
 
+  enableParallelBuilding = true;
+
   meta = with stdenv.lib; {
     description = "Wireless network sniffer";
-    homepage = https://www.kismetwireless.net/;
+    homepage = "https://www.kismetwireless.net/";
     license = licenses.gpl3;
     platforms = platforms.linux;
   };
diff --git a/pkgs/applications/networking/sniffers/whsniff/default.nix b/pkgs/applications/networking/sniffers/whsniff/default.nix
new file mode 100644
index 000000000000..d2e5803d58a1
--- /dev/null
+++ b/pkgs/applications/networking/sniffers/whsniff/default.nix
@@ -0,0 +1,25 @@
+{ stdenv, fetchFromGitHub, libusb1 }:
+
+stdenv.mkDerivation rec {
+  pname = "whsniff";
+  version = "1.3";
+
+  src = fetchFromGitHub {
+    owner = "homewsn";
+    repo = pname;
+    rev = "v${version}";
+    sha256 = "000l5vk9c0332m35lndk8892ivdr445lgg25hmq1lajn24cash5w";
+  };
+
+  buildInputs = [ libusb1 ];
+
+  installFlags = [ "PREFIX=$(out)" ];
+
+  meta = with stdenv.lib; {
+    homepage = "https://github.com/homewsn/whsniff";
+    description = "Packet sniffer for 802.15.4 wireless networks";
+    maintainers = with maintainers; [ snicket2100 ];
+    platforms = platforms.linux;
+    license = licenses.gpl2;
+  };
+}
diff --git a/pkgs/applications/networking/sniffers/wireshark/default.nix b/pkgs/applications/networking/sniffers/wireshark/default.nix
index 1dbc49512c6e..7602cb5fe6af 100644
--- a/pkgs/applications/networking/sniffers/wireshark/default.nix
+++ b/pkgs/applications/networking/sniffers/wireshark/default.nix
@@ -10,7 +10,7 @@ assert withQt  -> qt5  != null;
 with stdenv.lib;
 
 let
-  version = "3.2.2";
+  version = "3.2.3";
   variant = if withQt then "qt" else "cli";
 
 in stdenv.mkDerivation {
@@ -20,12 +20,14 @@ in stdenv.mkDerivation {
 
   src = fetchurl {
     url = "https://www.wireshark.org/download/src/all-versions/wireshark-${version}.tar.xz";
-    sha256 = "0ygdxpz0i4jxp55fg9x4xcan093wycjb66yas073gviz9kpj6naz";
+    sha256 = "1fpsfjrap7j84sy728yhcr2gad9nq3n5gq03mwrmxnc6ijwf81zh";
   };
 
   cmakeFlags = [
     "-DBUILD_wireshark=${if withQt then "ON" else "OFF"}"
     "-DENABLE_APPLICATION_BUNDLE=${if withQt && stdenv.isDarwin then "ON" else "OFF"}"
+    # Fix `extcap` and `plugins` paths. See https://bugs.wireshark.org/bugzilla/show_bug.cgi?id=16444
+    "-DCMAKE_INSTALL_LIBDIR=lib"
   ];
 
   nativeBuildInputs = [
diff --git a/pkgs/applications/networking/soapui/default.nix b/pkgs/applications/networking/soapui/default.nix
index 9de525d93245..32a6423243e6 100644
--- a/pkgs/applications/networking/soapui/default.nix
+++ b/pkgs/applications/networking/soapui/default.nix
@@ -43,7 +43,7 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "The Most Advanced REST & SOAP Testing Tool in the World";
-    homepage = https://www.soapui.org/;
+    homepage = "https://www.soapui.org/";
     license = "SoapUI End User License Agreement";
     maintainers = with maintainers; [ gerschtli ];
     platforms = platforms.all;
diff --git a/pkgs/applications/networking/soulseek/nicotine-plus/default.nix b/pkgs/applications/networking/soulseek/nicotine-plus/default.nix
index 158e6c5dad15..d673917af316 100644
--- a/pkgs/applications/networking/soulseek/nicotine-plus/default.nix
+++ b/pkgs/applications/networking/soulseek/nicotine-plus/default.nix
@@ -36,7 +36,7 @@ python27Packages.buildPythonApplication {
 
   meta = {
     description = "A graphical client for the SoulSeek peer-to-peer system";
-    homepage = https://www.nicotine-plus.org;
+    homepage = "https://www.nicotine-plus.org";
     license = licenses.gpl3;
     maintainers = with maintainers; [ klntsky ];
     platforms = platforms.unix;
diff --git a/pkgs/applications/networking/spideroak/default.nix b/pkgs/applications/networking/spideroak/default.nix
index 11c8af368b95..90d8ea553318 100644
--- a/pkgs/applications/networking/spideroak/default.nix
+++ b/pkgs/applications/networking/spideroak/default.nix
@@ -51,7 +51,7 @@ in stdenv.mkDerivation {
   nativeBuildInputs = [ patchelf makeWrapper ];
 
   meta = {
-    homepage = https://spideroak.com;
+    homepage = "https://spideroak.com";
     description = "Secure online backup and sychronization";
     license = stdenv.lib.licenses.unfree;
     maintainers = with stdenv.lib.maintainers; [ amorsillo ];
diff --git a/pkgs/applications/networking/ssb/patchwork/default.nix b/pkgs/applications/networking/ssb/patchwork/default.nix
index 2b4618b05b35..db33e7e6bb21 100644
--- a/pkgs/applications/networking/ssb/patchwork/default.nix
+++ b/pkgs/applications/networking/ssb/patchwork/default.nix
@@ -2,12 +2,12 @@
 
 let
   pname = "ssb-patchwork";
-  version = "3.17.5";
+  version = "3.17.7";
   name = "Patchwork-${version}";
 
   src = fetchurl {
     url = "https://github.com/ssbc/patchwork/releases/download/v${version}/${name}.AppImage";
-    sha256 = "0zmi6d9v92icbkln69n50648xbaz6jih5sal1fm5a8kw5is8qg4s";
+    sha256 = "1xj2aqy7daf4r3ypch6hkvk1s0jnx70qwh0p63c7rzm16vh8kb2f";
   };
 
   binary = appimageTools.wrapType2 {
diff --git a/pkgs/applications/networking/super-productivity/default.nix b/pkgs/applications/networking/super-productivity/default.nix
index c5ff090a8076..7a70375e42c9 100644
--- a/pkgs/applications/networking/super-productivity/default.nix
+++ b/pkgs/applications/networking/super-productivity/default.nix
@@ -98,7 +98,7 @@ in stdenv.mkDerivation {
 
   meta = with stdenv.lib; {
     description = "To Do List / Time Tracker with Jira Integration.";
-    homepage = https://super-productivity.com;
+    homepage = "https://super-productivity.com";
     license = licenses.mit;
     platforms = [ "x86_64-linux" ];
     maintainers = with maintainers; [ offline ];
diff --git a/pkgs/applications/networking/sync/acd_cli/default.nix b/pkgs/applications/networking/sync/acd_cli/default.nix
index 669ab4d1e3e5..c95647c78405 100644
--- a/pkgs/applications/networking/sync/acd_cli/default.nix
+++ b/pkgs/applications/networking/sync/acd_cli/default.nix
@@ -32,7 +32,7 @@ buildPythonApplication rec {
 
   meta = with stdenv.lib; {
     description = "A command line interface and FUSE filesystem for Amazon Cloud Drive";
-    homepage = https://github.com/yadayada/acd_cli;
+    homepage = "https://github.com/yadayada/acd_cli";
     license = licenses.gpl2;
     platforms = platforms.linux;
     maintainers = with maintainers; [ edwtjo ];
diff --git a/pkgs/applications/networking/sync/backintime/common.nix b/pkgs/applications/networking/sync/backintime/common.nix
index 36c4dd46222e..6244cd661d0a 100644
--- a/pkgs/applications/networking/sync/backintime/common.nix
+++ b/pkgs/applications/networking/sync/backintime/common.nix
@@ -32,7 +32,7 @@ in stdenv.mkDerivation rec {
     '';
 
   meta = {
-    homepage = https://github.com/bit-team/backintime;
+    homepage = "https://github.com/bit-team/backintime";
     description = "Simple backup tool for Linux";
     license = stdenv.lib.licenses.gpl2;
     maintainers = [ ];
diff --git a/pkgs/applications/networking/sync/casync/default.nix b/pkgs/applications/networking/sync/casync/default.nix
index 82a99bf2df10..461de492ae2d 100644
--- a/pkgs/applications/networking/sync/casync/default.nix
+++ b/pkgs/applications/networking/sync/casync/default.nix
@@ -44,7 +44,7 @@ stdenv.mkDerivation {
 
   meta = with stdenv.lib; {
     description = "Content-Addressable Data Synchronizer";
-    homepage    = https://github.com/systemd/casync;
+    homepage    = "https://github.com/systemd/casync";
     license     = licenses.lgpl21;
     platforms   = platforms.linux;
     maintainers = with maintainers; [ flokli ];
diff --git a/pkgs/applications/networking/sync/desync/default.nix b/pkgs/applications/networking/sync/desync/default.nix
index d38f8b53dbbf..9831ab34b2eb 100644
--- a/pkgs/applications/networking/sync/desync/default.nix
+++ b/pkgs/applications/networking/sync/desync/default.nix
@@ -19,7 +19,7 @@ buildGoPackage rec {
   meta = with stdenv.lib; {
     description = "Content-addressed binary distribution system";
     longDescription = "An alternate implementation of the casync protocol and storage mechanism with a focus on production-readiness";
-    homepage = https://github.com/folbricht/desync;
+    homepage = "https://github.com/folbricht/desync";
     license = licenses.bsd3;
     platforms = platforms.unix; # *may* work on Windows, but varies between releases.
     maintainers = [ maintainers.chaduffy ];
diff --git a/pkgs/applications/networking/sync/lsyncd/default.nix b/pkgs/applications/networking/sync/lsyncd/default.nix
index 832f7c63f275..9573e1717de9 100644
--- a/pkgs/applications/networking/sync/lsyncd/default.nix
+++ b/pkgs/applications/networking/sync/lsyncd/default.nix
@@ -34,7 +34,7 @@ stdenv.mkDerivation rec {
   ];
 
   meta = with stdenv.lib; {
-    homepage = https://github.com/axkibe/lsyncd;
+    homepage = "https://github.com/axkibe/lsyncd";
     description = "A utility that synchronizes local directories with remote targets";
     license = licenses.gpl2;
     platforms = platforms.linux;
diff --git a/pkgs/applications/networking/sync/rclone/default.nix b/pkgs/applications/networking/sync/rclone/default.nix
index 71421eaf1e71..2fde398b2f5f 100644
--- a/pkgs/applications/networking/sync/rclone/default.nix
+++ b/pkgs/applications/networking/sync/rclone/default.nix
@@ -1,29 +1,42 @@
-{ stdenv, buildGoPackage, fetchFromGitHub }:
+{ stdenv, buildGoPackage, fetchFromGitHub, buildPackages, installShellFiles }:
 
 buildGoPackage rec {
   pname = "rclone";
-  version = "1.50.2";
+  version = "1.51.0";
 
   src = fetchFromGitHub {
     owner = pname;
     repo = pname;
     rev = "v${version}";
-    sha256 = "0yaspkh88q8i58i8g8mm6sqb75hczavz2lvzdd1iif1bqgi6b5fz";
+    sha256 = "0z4kaq6wnj5dgl52g7f86phxlvnk5pbpda7prgh3hahpyhxj0z7d";
   };
 
   goPackagePath = "github.com/rclone/rclone";
 
   subPackages = [ "." ];
 
-  outputs = [ "bin" "out" "man" ];
+  outputs = [ "out" "man" ];
 
-  postInstall = ''
-    install -D -m644 $src/rclone.1 $man/share/man/man1/rclone.1
-  '';
+  nativeBuildInputs = [ installShellFiles ];
+
+  postInstall =
+    let
+      rcloneBin =
+        if stdenv.buildPlatform == stdenv.hostPlatform
+        then "$out"
+        else stdenv.lib.getBin buildPackages.rclone;
+    in
+      ''
+        installManPage $src/rclone.1
+        for shell in bash zsh; do
+          ${rcloneBin}/bin/rclone genautocomplete $shell rclone.$shell
+          installShellCompletion rclone.$shell
+        done
+      '';
 
   meta = with stdenv.lib; {
     description = "Command line program to sync files and directories to and from major cloud storage";
-    homepage = https://rclone.org;
+    homepage = "https://rclone.org";
     license = licenses.mit;
     maintainers = with maintainers; [ danielfullmer ];
     platforms = platforms.all;
diff --git a/pkgs/applications/networking/sync/rsync/base.nix b/pkgs/applications/networking/sync/rsync/base.nix
index fc4bc6c0671e..a0522dfe8202 100644
--- a/pkgs/applications/networking/sync/rsync/base.nix
+++ b/pkgs/applications/networking/sync/rsync/base.nix
@@ -15,7 +15,7 @@ rec {
 
   meta = with stdenv.lib; {
     description = "Fast incremental file transfer utility";
-    homepage = https://rsync.samba.org/;
+    homepage = "https://rsync.samba.org/";
     license = licenses.gpl3Plus;
     platforms = platforms.unix;
   };
diff --git a/pkgs/applications/networking/sync/unison/4.08-compatibility.patch b/pkgs/applications/networking/sync/unison/4.08-compatibility.patch
new file mode 100644
index 000000000000..a6921b516f07
--- /dev/null
+++ b/pkgs/applications/networking/sync/unison/4.08-compatibility.patch
@@ -0,0 +1,52 @@
+From 29fa058c3127f3b47c347dcaa4a94f4c0e888308 Mon Sep 17 00:00:00 2001
+From: Jaap Boender <jaapb@kerguelen.org>
+Date: Thu, 21 Mar 2019 12:26:51 +0000
+Subject: [PATCH] Compatibility with OCaml 4.08
+
+---
+ src/files.ml                 | 2 +-
+ src/recon.ml                 | 4 ++--
+ src/system/system_generic.ml | 2 +-
+ 3 files changed, 4 insertions(+), 4 deletions(-)
+
+diff --git a/src/files.ml b/src/files.ml
+index ba42ad57..5babf21e 100644
+--- a/src/files.ml
++++ b/src/files.ml
+@@ -722,7 +722,7 @@ let get_files_in_directory dir =
+   with End_of_file ->
+     dirh.System.closedir ()
+   end;
+-  Sort.list (<) !files
++  List.sort String.compare !files
+ 
+ let ls dir pattern =
+   Util.convertUnixErrorsToTransient
+diff --git a/src/recon.ml b/src/recon.ml
+index 5ed358d7..0df2cfe4 100644
+--- a/src/recon.ml
++++ b/src/recon.ml
+@@ -651,8 +651,8 @@ let rec reconcile
+ 
+ (* Sorts the paths so that they will be displayed in order                   *)
+ let sortPaths pathUpdatesList =
+-  Sort.list
+-    (fun (p1, _) (p2, _) -> Path.compare p1 p2 <= 0)
++  List.sort
++    Path.compare
+     pathUpdatesList
+ 
+ let rec enterPath p1 p2 t =
+diff --git a/src/system/system_generic.ml b/src/system/system_generic.ml
+index ed8e18f3..0e28a781 100755
+--- a/src/system/system_generic.ml
++++ b/src/system/system_generic.ml
+@@ -47,7 +47,7 @@ let open_out_gen = open_out_gen
+ let chmod = Unix.chmod
+ let chown = Unix.chown
+ let utimes = Unix.utimes
+-let link = Unix.link
++let link s d = Unix.link s d
+ let openfile = Unix.openfile
+ let opendir f =
+   let h = Unix.opendir f in
diff --git a/pkgs/applications/networking/sync/unison/default.nix b/pkgs/applications/networking/sync/unison/default.nix
index cada3f93f55a..7b7318544c56 100644
--- a/pkgs/applications/networking/sync/unison/default.nix
+++ b/pkgs/applications/networking/sync/unison/default.nix
@@ -1,6 +1,8 @@
-{stdenv, fetchFromGitHub, ocaml, lablgtk, fontschumachermisc, xset, makeWrapper, ncurses
+{stdenv, fetchFromGitHub, ocamlPackages, fontschumachermisc, xset, makeWrapper, ncurses, gnugrep
 , enableX11 ? true}:
 
+let inherit (ocamlPackages) ocaml lablgtk; in
+
 stdenv.mkDerivation (rec {
 
   pname = "unison";
@@ -25,19 +27,25 @@ stdenv.mkDerivation (rec {
     "UISTYLE=${if enableX11 then "gtk2" else "text"}"
   ] ++ stdenv.lib.optional (!ocaml.nativeCompilers) "NATIVE=false";
 
+  patches = [
+    # NOTE: Only needed until Unison 2.51.3 is released!
+    ./4.08-compatibility.patch
+    ./lablgtk.patch
+  ];
+
   preInstall = "mkdir -p $out/bin";
 
   postInstall = if enableX11 then ''
     for i in $(cd $out/bin && ls); do
       wrapProgram $out/bin/$i \
-        --run "[ -n \"\$DISPLAY\" ] && (${xset}/bin/xset q | grep -q \"${fontschumachermisc}\" || ${xset}/bin/xset +fp \"${fontschumachermisc}/lib/X11/fonts/misc\")"
+        --run "[ -n \"\$DISPLAY\" ] && (${xset}/bin/xset q | ${gnugrep}/bin/grep -q \"${fontschumachermisc}\" || ${xset}/bin/xset +fp \"${fontschumachermisc}/lib/X11/fonts/misc\")"
     done
   '' else "";
 
   dontStrip = !ocaml.nativeCompilers;
 
   meta = {
-    homepage = https://www.cis.upenn.edu/~bcpierce/unison/;
+    homepage = "https://www.cis.upenn.edu/~bcpierce/unison/";
     description = "Bidirectional file synchronizer";
     license = stdenv.lib.licenses.gpl3Plus;
     maintainers = with stdenv.lib.maintainers; [viric];
diff --git a/pkgs/applications/networking/sync/unison/lablgtk.patch b/pkgs/applications/networking/sync/unison/lablgtk.patch
new file mode 100644
index 000000000000..20c1db1b1166
--- /dev/null
+++ b/pkgs/applications/networking/sync/unison/lablgtk.patch
@@ -0,0 +1,31 @@
+From 2e7ea9481c6c3ff2ec513c39f73cfe15c0763c06 Mon Sep 17 00:00:00 2001
+From: daviddavid <geiger.david68210@gmail.com>
+Date: Mon, 26 Feb 2018 13:36:36 +0100
+Subject: [PATCH] Fix for lablgtk >= 2.18.6
+
+---
+ src/uigtk2.ml | 4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/src/uigtk2.ml b/src/uigtk2.ml
+index 2ba6d79..04c4da4 100644
+--- a/src/uigtk2.ml
++++ b/src/uigtk2.ml
+@@ -89,12 +89,12 @@ let fontItalic = lazy (Pango.Font.from_string "italic")
+ (* This does not work with the current version of Lablgtk, due to a bug
+ let icon =
+   GdkPixbuf.from_data ~width:48 ~height:48 ~has_alpha:true
+-    (Gpointer.region_of_string Pixmaps.icon_data)
++    (Gpointer.region_of_bytes Pixmaps.icon_data)
+ *)
+ let icon =
+   let p = GdkPixbuf.create ~width:48 ~height:48 ~has_alpha:true () in
+   Gpointer.blit
+-    (Gpointer.region_of_string Pixmaps.icon_data) (GdkPixbuf.get_pixels p);
++    (Gpointer.region_of_bytes Pixmaps.icon_data) (GdkPixbuf.get_pixels p);
+   p
+ 
+ let leftPtrWatch =
+-- 
+2.25.1
+
diff --git a/pkgs/applications/networking/syncplay/default.nix b/pkgs/applications/networking/syncplay/default.nix
index 920a1c97539e..0613a5c5bcd9 100644
--- a/pkgs/applications/networking/syncplay/default.nix
+++ b/pkgs/applications/networking/syncplay/default.nix
@@ -23,7 +23,7 @@ buildPythonApplication rec {
   '';
 
   meta = with lib; {
-    homepage = https://syncplay.pl/;
+    homepage = "https://syncplay.pl/";
     description = "Free software that synchronises media players";
     license = licenses.asl20;
     platforms = platforms.linux;
diff --git a/pkgs/applications/networking/syncthing-gtk/default.nix b/pkgs/applications/networking/syncthing-gtk/default.nix
index 9317ccab4eab..cf1e053dd53c 100644
--- a/pkgs/applications/networking/syncthing-gtk/default.nix
+++ b/pkgs/applications/networking/syncthing-gtk/default.nix
@@ -5,14 +5,14 @@
 , pango, gdk-pixbuf, atk }:
 
 buildPythonApplication rec {
-  version = "0.9.4";
+  version = "0.9.4.4";
   pname = "syncthing-gtk";
 
   src = fetchFromGitHub {
     owner = "syncthing";
     repo = "syncthing-gtk";
     rev = "v${version}";
-    sha256 = "0d3rjd1xjd7zravks9a2ph7gv1cm8wxaxkkvl1fvcx15v7f3hff9";
+    sha256 = "0nc0wd7qvyri7841c3dd9in5d7367hys0isyw8znv5fj4c0a6v1f";
   };
 
   nativeBuildInputs = [
@@ -34,10 +34,6 @@ buildPythonApplication rec {
   ];
 
   patches = [
-    (fetchpatch {
-      url = https://github.com/syncthing/syncthing-gtk/commit/b2535e5a9cdb31c4987ab7af37f62d58d38255b7.patch;
-      sha256 = "047v79wz2a9334gbzywlqwpacrk53s26ksvfqaddk06avv8742w7";
-    })
     (substituteAll {
       src = ./paths.patch;
       killall = "${killall}/bin/killall";
@@ -45,6 +41,9 @@ buildPythonApplication rec {
     })
   ];
 
+  # repo doesn't have any tests
+  doCheck = false;
+
   setupPyBuildFlags = [ "build_py" "--nofinddaemon" "--nostdownloader" ];
 
   postPatch = ''
@@ -58,7 +57,7 @@ buildPythonApplication rec {
 
   meta = with stdenv.lib; {
     description = "GTK3 & python based GUI for Syncthing";
-    homepage = https://github.com/syncthing/syncthing-gtk;
+    homepage = "https://github.com/syncthing/syncthing-gtk";
     license = licenses.gpl2;
     maintainers = with maintainers; [ ];
     platforms = syncthing.meta.platforms;
diff --git a/pkgs/applications/networking/syncthing/default.nix b/pkgs/applications/networking/syncthing/default.nix
index 2d7624ed89cb..fa3290f74850 100644
--- a/pkgs/applications/networking/syncthing/default.nix
+++ b/pkgs/applications/networking/syncthing/default.nix
@@ -1,21 +1,19 @@
-{ buildGoModule, stdenv, lib, procps, fetchFromGitHub }:
+{ buildGoModule, stdenv, lib, procps, fetchFromGitHub, nixosTests }:
 
 let
   common = { stname, target, postInstall ? "" }:
     buildGoModule rec {
-      version = "1.3.4";
+      version = "1.5.0";
       name = "${stname}-${version}";
 
       src = fetchFromGitHub {
         owner  = "syncthing";
         repo   = "syncthing";
         rev    = "v${version}";
-        sha256 = "076k06p2vqqz2r5bgvqkjipnhznbfbalp3pa2gjm2j9hy7nldr9f";
+        sha256 = "0yy31rfvr9d6kidfvvy36ljxlc14x5ir3ln19zg4k02hdqn0xkpj";
       };
 
-      goPackagePath = "github.com/syncthing/syncthing";
-
-      modSha256 = "10fgfjip5xr8lim2z0dh7399xpcnhxis9s9yd36fk934h1k1hwzd";
+      modSha256 = "1vs7lxlqd7jr4r9xkk7w7k6gxzjmm7ic0a1scfpx8rcr5swa9cq1";
 
       patches = [
         ./add-stcli-target.patch
@@ -37,8 +35,13 @@ let
 
       inherit postInstall;
 
+      passthru.tests = with nixosTests; {
+        init = syncthing-init;
+        relay = syncthing-relay;
+      };
+
       meta = with lib; {
-        homepage = https://www.syncthing.net/;
+        homepage = "https://www.syncthing.net/";
         description = "Open Source Continuous File Synchronization";
         license = licenses.mpl20;
         maintainers = with maintainers; [ pshendry joko peterhoeg andrew-d ];
diff --git a/pkgs/applications/networking/testssl/default.nix b/pkgs/applications/networking/testssl/default.nix
index e518502d6f37..cb13d296c2f8 100644
--- a/pkgs/applications/networking/testssl/default.nix
+++ b/pkgs/applications/networking/testssl/default.nix
@@ -3,13 +3,13 @@
 
 stdenv.mkDerivation rec {
   pname = "testssl.sh";
-  version = "3.0rc6";
+  version = "3.0";
 
   src = fetchFromGitHub {
     owner = "drwetter";
     repo = pname;
     rev = version;
-    sha256 = "1ks7pqgrg382ry0a0jf1dwgcwv81snhkrhkjdbcpym6w5flmpjsv";
+    sha256 = "08i1l835zlzb3qmsnsd5vhsrr82li6fnp5jqxiybbqr5wjz67ssd";
   };
 
   nativeBuildInputs = [ makeWrapper ];
diff --git a/pkgs/applications/networking/trebleshot/default.nix b/pkgs/applications/networking/trebleshot/default.nix
index 1b049ff2dc7f..56ebe1873ae6 100644
--- a/pkgs/applications/networking/trebleshot/default.nix
+++ b/pkgs/applications/networking/trebleshot/default.nix
@@ -20,7 +20,7 @@ mkDerivation rec {
 
   meta = with lib; {
     description = "Android file transferring tool for desktop";
-    homepage = https://github.com/genonbeta/TrebleShot-Desktop;
+    homepage = "https://github.com/genonbeta/TrebleShot-Desktop";
     license = licenses.gpl2;
 
     platforms = platforms.linux;
diff --git a/pkgs/applications/networking/umurmur/default.nix b/pkgs/applications/networking/umurmur/default.nix
index 1a19c8c96b33..d16c1bb944a2 100644
--- a/pkgs/applications/networking/umurmur/default.nix
+++ b/pkgs/applications/networking/umurmur/default.nix
@@ -22,7 +22,7 @@ stdenv.mkDerivation rec {
   meta = with stdenv.lib; {
     description = "Minimalistic Murmur (Mumble server)";
     license = licenses.bsd3;
-    homepage = https://github.com/umurmur/umurmur;
+    homepage = "https://github.com/umurmur/umurmur";
     platforms = platforms.all;
   };
 }
diff --git a/pkgs/applications/networking/vnstat/default.nix b/pkgs/applications/networking/vnstat/default.nix
index 44b8a955817d..cd0f65d4d454 100644
--- a/pkgs/applications/networking/vnstat/default.nix
+++ b/pkgs/applications/networking/vnstat/default.nix
@@ -29,7 +29,7 @@ stdenv.mkDerivation rec {
       This means that vnStat won't actually be sniffing any traffic and also
       ensures light use of system resources.
     '';
-    homepage = https://humdi.net/vnstat/;
+    homepage = "https://humdi.net/vnstat/";
     license = licenses.gpl2Plus;
     platforms = platforms.linux;
   };
diff --git a/pkgs/applications/networking/wayback_machine_downloader/Gemfile.lock b/pkgs/applications/networking/wayback_machine_downloader/Gemfile.lock
index 86e064347b65..4534beb20c39 100644
--- a/pkgs/applications/networking/wayback_machine_downloader/Gemfile.lock
+++ b/pkgs/applications/networking/wayback_machine_downloader/Gemfile.lock
@@ -10,4 +10,4 @@ DEPENDENCIES
   wayback_machine_downloader!
 
 BUNDLED WITH
-   1.17.2
+   2.1.4
diff --git a/pkgs/applications/networking/weather/meteo/default.nix b/pkgs/applications/networking/weather/meteo/default.nix
index 64fef08ceefd..9887e34d7354 100644
--- a/pkgs/applications/networking/weather/meteo/default.nix
+++ b/pkgs/applications/networking/weather/meteo/default.nix
@@ -40,7 +40,7 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "Know the forecast of the next hours & days";
-    homepage = https://gitlab.com/bitseater/meteo;
+    homepage = "https://gitlab.com/bitseater/meteo";
     license = licenses.gpl3Plus;
     maintainers = with maintainers; [ worldofpeace ];
     platforms = platforms.linux;
diff --git a/pkgs/applications/networking/znc/default.nix b/pkgs/applications/networking/znc/default.nix
index bf36a6f2bbbd..e9c3acdc11d1 100644
--- a/pkgs/applications/networking/znc/default.nix
+++ b/pkgs/applications/networking/znc/default.nix
@@ -41,7 +41,7 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "Advanced IRC bouncer";
-    homepage = https://wiki.znc.in/ZNC;
+    homepage = "https://wiki.znc.in/ZNC";
     maintainers = with maintainers; [ schneefux lnl7 ];
     license = licenses.asl20;
     platforms = platforms.unix;
diff --git a/pkgs/applications/networking/znc/modules.nix b/pkgs/applications/networking/znc/modules.nix
index 5e7bdd09b036..3fd447b8b096 100644
--- a/pkgs/applications/networking/znc/modules.nix
+++ b/pkgs/applications/networking/znc/modules.nix
@@ -31,7 +31,7 @@ in {
 
     meta = with stdenv.lib; {
       description = "Request backlog for IRC channels.";
-      homepage = https://github.com/fruitiex/znc-backlog/;
+      homepage = "https://github.com/fruitiex/znc-backlog/";
       license = licenses.asl20;
       maintainers = with maintainers; [ infinisil ];
     };
@@ -51,7 +51,7 @@ in {
 
     meta = with stdenv.lib; {
       description = "ZNC module for client specific buffers";
-      homepage = https://github.com/jpnurmi/znc-clientbuffer;
+      homepage = "https://github.com/jpnurmi/znc-clientbuffer";
       license = licenses.asl20;
       maintainers = with maintainers; [ hrdinka ];
     };
@@ -71,7 +71,7 @@ in {
 
     meta = with stdenv.lib; {
       description = "ZNC clientaway module";
-      homepage = https://github.com/kylef/znc-contrib;
+      homepage = "https://github.com/kylef/znc-contrib";
       license = licenses.gpl2;
       maintainers = with maintainers; [ kiwi ];
     };
@@ -92,7 +92,7 @@ in {
 
     meta = {
       description = "ZNC FiSH module";
-      homepage = https://github.com/dctrwatson/znc-fish;
+      homepage = "https://github.com/dctrwatson/znc-fish";
       maintainers = [ stdenv.lib.maintainers.offline ];
     };
   };
@@ -111,7 +111,7 @@ in {
 
     meta = with stdenv.lib; {
       description = "ZNC ignore module";
-      homepage = https://github.com/kylef/znc-contrib;
+      homepage = "https://github.com/kylef/znc-contrib";
       license = licenses.gpl2;
       maintainers = with maintainers; [ kiwi ];
     };
@@ -151,7 +151,7 @@ in {
 
     meta = with stdenv.lib; {
       description = "An advanced playback module for ZNC";
-      homepage = https://github.com/jpnurmi/znc-playback;
+      homepage = "https://github.com/jpnurmi/znc-playback";
       license = licenses.asl20;
       maintainers = with maintainers; [ hrdinka ];
     };
@@ -171,7 +171,7 @@ in {
 
     meta = {
       description = "ZNC privmsg module";
-      homepage = https://github.com/kylef/znc-contrib;
+      homepage = "https://github.com/kylef/znc-contrib";
     };
   };
 
@@ -189,7 +189,7 @@ in {
 
     meta = {
       description = "Push notification service module for ZNC";
-      homepage = https://github.com/jreese/znc-push;
+      homepage = "https://github.com/jreese/znc-push";
       license = stdenv.lib.licenses.mit;
       maintainers = with stdenv.lib.maintainers; [ offline schneefux ];
     };
diff --git a/pkgs/applications/office/abiword/default.nix b/pkgs/applications/office/abiword/default.nix
index a2b14443c1a9..4aa3f936b539 100644
--- a/pkgs/applications/office/abiword/default.nix
+++ b/pkgs/applications/office/abiword/default.nix
@@ -5,23 +5,29 @@
 
 stdenv.mkDerivation rec {
   pname = "abiword";
-  version = "3.0.2";
+  version = "3.0.4";
 
   src = fetchurl {
     url = "https://www.abisource.com/downloads/abiword/${version}/source/${pname}-${version}.tar.gz";
-    sha256 = "08imry821g81apdwym3gcs4nss0l9j5blqk31j5rv602zmcd9gxg";
+    sha256 = "1mx5l716n0z5788i19qmad30cck4v9ggr071cafw2nrf375rcc79";
   };
 
   enableParallelBuilding = true;
 
   patches = [
-    # https://bugzilla.abisource.com/show_bug.cgi?id=13791
+    # Switch to using enchant2; note by the next update enchant2 should be
+    # default and this patch can be removed.
+    # https://github.com/NixOS/nixpkgs/issues/38506
     (fetchurl {
-      url = https://bugzilla.abisource.com/attachment.cgi?id=5860;
-      sha256 = "02p8kz02xm1197zcpzjs010mna9hxsbq5lwgxr8b7qhh9yxja7al";
+      url = "https://git.archlinux.org/svntogit/packages.git/plain/trunk/enchant-2.1.patch?h=packages/abiword";
+      sha256 = "444dc2aadea3c80310a509b690097541573f6d2652c573d04da66a0f385fcfb2";
     })
   ];
 
+  postPatch = ''
+    substituteInPlace configure --replace 'enchant >=' 'enchant-2 >='
+  '';
+
   nativeBuildInputs = [ pkgconfig wrapGAppsHook ];
 
   buildInputs = [
@@ -31,9 +37,9 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "Word processing program, similar to Microsoft Word";
-    homepage = https://www.abisource.com/;
+    homepage = "https://www.abisource.com/";
     license = licenses.gpl3;
     platforms = platforms.linux;
-    maintainers = with maintainers; [ pSub ylwghst ];
+    maintainers = with maintainers; [ pSub ylwghst sna ];
   };
 }
diff --git a/pkgs/applications/office/aesop/default.nix b/pkgs/applications/office/aesop/default.nix
index 1e1f686ab194..4f8c115600af 100644
--- a/pkgs/applications/office/aesop/default.nix
+++ b/pkgs/applications/office/aesop/default.nix
@@ -3,13 +3,13 @@
 
 stdenv.mkDerivation rec {
   pname = "aesop";
-  version = "1.2.4";
+  version = "1.2.5";
 
   src = fetchFromGitHub {
     owner = "lainsce";
     repo = pname;
     rev = version;
-    sha256 = "1bqykr1mwanfm55w1v9ipqcqgzj8kbjvlm4d5b2swvhng77gnf3d";
+    sha256 = "1zxyyxl959rqhyz871dyyccqga2ydybkfcpyjq4vmvdn2g9mvmb0";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/applications/office/agenda/default.nix b/pkgs/applications/office/agenda/default.nix
index 23efbf9c9b54..9bf3b42c3ffd 100644
--- a/pkgs/applications/office/agenda/default.nix
+++ b/pkgs/applications/office/agenda/default.nix
@@ -1,7 +1,9 @@
 { stdenv
 , fetchFromGitHub
 , pantheon
-, cmake
+, meson
+, ninja
+, python3
 , pkg-config
 , vala
 , gettext
@@ -13,20 +15,23 @@
 
 stdenv.mkDerivation rec {
   pname = "agenda";
-  version = "1.0.12";
+  version = "1.1.0";
 
   src = fetchFromGitHub {
     owner = "dahenson";
     repo = pname;
     rev = version;
-    sha256 = "128c9p2jkc90imlq25xg5alqlam8q4i3gd5p1kcggf7s4amv8l8w";
+    sha256 = "0yfapapsanqacaa83iagar88i335yy2jvay8y6z7gkri7avbs4am";
   };
 
   nativeBuildInputs = [
-    cmake
     gettext
-    vala
+    glib # for glib-compile-schemas
+    meson
+    ninja
     pkg-config
+    python3
+    vala
     wrapGAppsHook
   ];
 
@@ -37,6 +42,13 @@ stdenv.mkDerivation rec {
     pantheon.granite
   ];
 
+  postPatch = ''
+    chmod +x meson/post_install.py
+    patchShebangs meson/post_install.py
+  '';
+
+  doCheck = true;
+
   passthru = {
     updateScript = pantheon.updateScript {
       attrPath = pname;
@@ -45,7 +57,7 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "A simple, fast, no-nonsense to-do (task) list designed for elementary OS";
-    homepage = https://github.com/dahenson/agenda;
+    homepage = "https://github.com/dahenson/agenda";
     maintainers = with maintainers; [ kjuvi ] ++ pantheon.maintainers;
     platforms = platforms.linux;
     license = licenses.gpl3;
diff --git a/pkgs/applications/office/antiword/10_fix_buffer_overflow_wordole_c.patch b/pkgs/applications/office/antiword/10_fix_buffer_overflow_wordole_c_CVE-2014-8123.patch
index ebf2f0900d98..ebf2f0900d98 100644
--- a/pkgs/applications/office/antiword/10_fix_buffer_overflow_wordole_c.patch
+++ b/pkgs/applications/office/antiword/10_fix_buffer_overflow_wordole_c_CVE-2014-8123.patch
diff --git a/pkgs/applications/office/antiword/default.nix b/pkgs/applications/office/antiword/default.nix
index e6c939b277ea..c8cb294b0dc0 100644
--- a/pkgs/applications/office/antiword/default.nix
+++ b/pkgs/applications/office/antiword/default.nix
@@ -16,12 +16,12 @@ stdenv.mkDerivation {
     substituteInPlace Makefile --replace "gcc" "cc"
   '';
 
-  patches = [ ./10_fix_buffer_overflow_wordole_c.patch ];
+  patches = [ ./10_fix_buffer_overflow_wordole_c_CVE-2014-8123.patch ];
 
   installTargets = [ "global_install" ];
 
   meta = {
-    homepage = http://www.winfield.demon.nl/;
+    homepage = "http://www.winfield.demon.nl/";
     description = "Convert MS Word documents to plain text or PostScript";
     license = stdenv.lib.licenses.gpl2;
 
diff --git a/pkgs/applications/office/atlassian-cli/default.nix b/pkgs/applications/office/atlassian-cli/default.nix
index 88da2442ecf2..22eee857b208 100644
--- a/pkgs/applications/office/atlassian-cli/default.nix
+++ b/pkgs/applications/office/atlassian-cli/default.nix
@@ -2,11 +2,11 @@
 
 stdenv.mkDerivation rec {
   pname = "atlassian-cli";
-  version = "9.1.1";
+  version = "9.2.0";
   
   src = fetchzip {
     url  = "https://bobswift.atlassian.net/wiki/download/attachments/16285777/${pname}-${version}-distribution.zip";
-    sha256  = "0mdf4ybp0a6c816210g76lx901qwxw727ipyiph5kbdzl4jlrpgm";
+    sha256  = "0rdnbx3zfz3lpgka7bb8jzapkr81l2yvgsbmn8hrhva5k61xwx3d";
     extraPostFetch = "chmod go-w $out";
   };
   
@@ -41,7 +41,7 @@ stdenv.mkDerivation rec {
   
   meta = with stdenv.lib; {
     description = "An integrated family of CLI’s for various Atlassian applications";
-    homepage = https://bobswift.atlassian.net/wiki/spaces/ACLI/overview;
+    homepage = "https://bobswift.atlassian.net/wiki/spaces/ACLI/overview";
     license = licenses.unfreeRedistributable;
     maintainers = with maintainers; [ twey ];
     inherit (jre.meta) platforms;
diff --git a/pkgs/applications/office/autokey/default.nix b/pkgs/applications/office/autokey/default.nix
index 31e74ccf23a1..441a9a98e972 100644
--- a/pkgs/applications/office/autokey/default.nix
+++ b/pkgs/applications/office/autokey/default.nix
@@ -29,7 +29,7 @@ python3Packages.buildPythonApplication rec {
     dbus-python pyinotify xlib pygobject3 ];
 
   meta = {
-    homepage = https://github.com/autokey/autokey;
+    homepage = "https://github.com/autokey/autokey";
     description = "Desktop automation utility for Linux and X11";
     license = with lib.licenses; [ gpl3 ];
     maintainers = with lib.maintainers; [ pneumaticat ];
diff --git a/pkgs/applications/office/beancount/bean-add.nix b/pkgs/applications/office/beancount/bean-add.nix
index aefd696ae4e3..916d13e7a83a 100644
--- a/pkgs/applications/office/beancount/bean-add.nix
+++ b/pkgs/applications/office/beancount/bean-add.nix
@@ -19,7 +19,7 @@ stdenv.mkDerivation {
   '';
 
   meta = {
-    homepage = https://github.com/simon-v/bean-add/;
+    homepage = "https://github.com/simon-v/bean-add/";
     description = "beancount transaction entry assistant";
 
     # The (only) source file states:
diff --git a/pkgs/applications/office/bookworm/default.nix b/pkgs/applications/office/bookworm/default.nix
index be6fe172e29f..90b6c2fefc53 100644
--- a/pkgs/applications/office/bookworm/default.nix
+++ b/pkgs/applications/office/bookworm/default.nix
@@ -1,15 +1,16 @@
 { stdenv, fetchFromGitHub, pantheon, vala, python3, python2, pkgconfig, libxml2, meson, ninja, gtk3, gnome3, glib, webkitgtk, libgee
-, gobject-introspection, sqlite, poppler, poppler_utils, html2text, curl, gnugrep, coreutils, bash, unzip, unar, wrapGAppsHook }:
+, gobject-introspection, sqlite, poppler, poppler_utils, html2text, curl, gnugrep, coreutils, bash, unzip, unar, wrapGAppsHook
+, appstream, desktop-file-utils }:
 
 stdenv.mkDerivation rec {
   pname = "bookworm";
-  version = "unstable-2018-11-19";
+  version = "1.1.2";
 
   src = fetchFromGitHub {
     owner = "babluboy";
     repo = pname;
-    rev = "4c3061784ff42151cac77d12bf2a28bf831fdfc5";
-    sha256 = "0yrqxa60xlvz249kx966z5krx8i7h17ac0hjgq9p8f0irzy5yp0n";
+    rev = version;
+    sha256 = "0w0rlyahpgx0l6inkbj106agbnr2czil0vdcy1zzv70apnjz488j";
   };
 
   nativeBuildInputs = [
@@ -35,6 +36,8 @@ stdenv.mkDerivation rec {
     python2
     sqlite
     webkitgtk
+    appstream
+    desktop-file-utils
   ];
 
   postPatch = ''
@@ -60,7 +63,7 @@ stdenv.mkDerivation rec {
      longDescription = ''
        Read the books you love without having to worry about different format complexities like epub, pdf, mobi, cbr, etc.
      '';
-     homepage = https://babluboy.github.io/bookworm/;
+     homepage = "https://babluboy.github.io/bookworm/";
      license = licenses.gpl3Plus;
      platforms = platforms.linux;
    };
diff --git a/pkgs/applications/office/calligra/default.nix b/pkgs/applications/office/calligra/default.nix
index 4855fbc63c3e..6915be9b6d64 100644
--- a/pkgs/applications/office/calligra/default.nix
+++ b/pkgs/applications/office/calligra/default.nix
@@ -60,7 +60,7 @@ mkDerivation rec {
       Sheets for computations, Plan for planning, and Karbon for
       vector graphics.
     '';
-    homepage = https://www.calligra.org/;
+    homepage = "https://www.calligra.org/";
     maintainers = with maintainers; [ phreedom ebzzry zraexy ];
     platforms = platforms.linux;
     license = with licenses; [ gpl2 lgpl2 ];
diff --git a/pkgs/applications/office/cb2bib/default.nix b/pkgs/applications/office/cb2bib/default.nix
index 0043648146f5..f5b8b437249f 100644
--- a/pkgs/applications/office/cb2bib/default.nix
+++ b/pkgs/applications/office/cb2bib/default.nix
@@ -18,7 +18,7 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "Rapidly extract unformatted, or unstandardized bibliographic references from email alerts, journal Web pages and PDF files";
-    homepage = http://www.molspaces.com/d_cb2bib-overview.php;
+    homepage = "http://www.molspaces.com/d_cb2bib-overview.php";
     maintainers = with maintainers; [ edwtjo ];
     license = licenses.gpl3;
   };
diff --git a/pkgs/applications/office/elementary-planner/default.nix b/pkgs/applications/office/elementary-planner/default.nix
index abc227e9e394..28a470162cef 100644
--- a/pkgs/applications/office/elementary-planner/default.nix
+++ b/pkgs/applications/office/elementary-planner/default.nix
@@ -1,6 +1,12 @@
-{ stdenv, fetchFromGitHub, fetchpatch
-, meson, ninja, pkgconfig, desktop-file-utils
-, python3, vala, wrapGAppsHook
+{ stdenv
+, fetchFromGitHub
+, meson
+, ninja
+, pkgconfig
+, desktop-file-utils
+, python3
+, vala
+, wrapGAppsHook
 , evolution-data-server
 , libical
 , libgee
@@ -15,13 +21,13 @@
 
 stdenv.mkDerivation rec {
   pname = "elementary-planner";
-  version = "2.1.1";
+  version = "2.3.5";
 
   src = fetchFromGitHub {
     owner = "alainm23";
     repo = "planner";
     rev = version;
-    sha256 = "0swj94pqf00wwzsgjap8z19k33gg1wj2b78ba1aj9h791j8lmaim";
+    sha256 = "15d51sqb3k59jjishsw1fq5ib50jmhlk194y3nga329damfv8bmy";
   };
 
   nativeBuildInputs = [
@@ -36,24 +42,16 @@ stdenv.mkDerivation rec {
 
   buildInputs = [
     evolution-data-server
-    libical
-    libgee
-    json-glib
     glib
-    sqlite
-    libsoup
     gtk3
+    json-glib
+    libgee
+    libical
+    libsoup
+    pantheon.elementary-icon-theme
     pantheon.granite
+    sqlite
     webkitgtk
-    pantheon.elementary-icon-theme
-  ];
-
-  # Fix version string, remove in next update!
-  patches = [
-    (fetchpatch {
-      url = "https://github.com/alainm23/planner/pull/194/commits/3d0a2197087b13fe90fa6f85f817ba56798d632c.patch";
-      sha256 = "077q5jddi8jaw2ypc6szbd1c50i4x3b21jvmvi3w7g5zhjwpkmf5";
-    })
   ];
 
   postPatch = ''
@@ -61,8 +59,15 @@ stdenv.mkDerivation rec {
     patchShebangs build-aux/meson/post_install.py
   '';
 
+  preFixup = ''
+    gappsWrapperArgs+=(
+      # the theme is hardcoded
+      --prefix XDG_DATA_DIRS : "${pantheon.elementary-gtk-theme}/share"
+    )
+  '';
+
   meta = with stdenv.lib; {
-    description = "Task and project manager designed to elementary OS";
+    description = "Task manager with Todoist support designed for GNU/Linux 🚀️";
     homepage = "https://planner-todo.web.app";
     license = licenses.gpl3;
     maintainers = with maintainers; [ dtzWill ] ++ pantheon.maintainers;
diff --git a/pkgs/applications/office/fava/default.nix b/pkgs/applications/office/fava/default.nix
index 6693d35dbd1d..8e1bb0d76d92 100644
--- a/pkgs/applications/office/fava/default.nix
+++ b/pkgs/applications/office/fava/default.nix
@@ -5,11 +5,11 @@ let
 in
 buildPythonApplication rec {
   pname = "fava";
-  version = "1.12";
+  version = "1.14";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "0309y25l7aijk7il9hpjia23yc5dfac0h78xdmzb0w0ynxbjsmi6";
+    sha256 = "181ypq2p7aaq2b76s55hxxbm1hykzf45mjjgm500h4dsaa167dqy";
   };
 
   checkInputs = [ python3.pkgs.pytest ];
@@ -35,7 +35,7 @@ buildPythonApplication rec {
   '';
 
   meta = {
-    homepage = https://beancount.github.io/fava;
+    homepage = "https://beancount.github.io/fava";
     description = "Web interface for beancount";
     license = stdenv.lib.licenses.mit;
     maintainers = with stdenv.lib.maintainers; [ matthiasbeyer ];
diff --git a/pkgs/applications/office/gnucash/default.nix b/pkgs/applications/office/gnucash/default.nix
index 476b1128b945..a8630381ebf2 100644
--- a/pkgs/applications/office/gnucash/default.nix
+++ b/pkgs/applications/office/gnucash/default.nix
@@ -25,11 +25,11 @@ in
 
 stdenv.mkDerivation rec {
   pname = "gnucash";
-  version = "3.8b";
+  version = "3.10";
 
   src = fetchurl {
     url = "mirror://sourceforge/gnucash/${pname}-${version}.tar.bz2";
-    sha256 = "0dvzm3bib7jcj685sklpzyy9mrak9mxyvih2k9fk4sl3v21wlphg";
+    sha256 = "05kgg7mhizndwn7icnarqk3c19xrzfawf90y9nb3jdm6fv1741xn";
   };
 
   nativeBuildInputs = [ pkgconfig makeWrapper cmake gtest ];
@@ -69,7 +69,6 @@ stdenv.mkDerivation rec {
   '';
 
   # TODO: The following tests FAILED:
-  #   61 - test-gnc-timezone (Failed)
   #   70 - test-load-c (Failed)
   #   71 - test-modsysver (Failed)
   #   72 - test-incompatdep (Failed)
@@ -102,7 +101,7 @@ stdenv.mkDerivation rec {
 
     license = stdenv.lib.licenses.gpl2Plus;
 
-    homepage = http://www.gnucash.org/;
+    homepage = "http://www.gnucash.org/";
 
     maintainers = [ stdenv.lib.maintainers.peti stdenv.lib.maintainers.domenkozar ];
     platforms = stdenv.lib.platforms.gnu ++ stdenv.lib.platforms.linux;
diff --git a/pkgs/applications/office/gnumeric/default.nix b/pkgs/applications/office/gnumeric/default.nix
index 710a66c25d86..67618e0e4f99 100644
--- a/pkgs/applications/office/gnumeric/default.nix
+++ b/pkgs/applications/office/gnumeric/default.nix
@@ -35,7 +35,7 @@ in stdenv.mkDerivation rec {
   meta = with stdenv.lib; {
     description = "The GNOME Office Spreadsheet";
     license = stdenv.lib.licenses.gpl2Plus;
-    homepage = http://projects.gnome.org/gnumeric/;
+    homepage = "http://projects.gnome.org/gnumeric/";
     platforms = platforms.unix;
     maintainers = [ maintainers.vcunat ];
   };
diff --git a/pkgs/applications/office/grisbi/default.nix b/pkgs/applications/office/grisbi/default.nix
index 85b688b0c4d3..d4f08b141a6e 100644
--- a/pkgs/applications/office/grisbi/default.nix
+++ b/pkgs/applications/office/grisbi/default.nix
@@ -1,5 +1,14 @@
-{ fetchurl, stdenv, gtk, pkgconfig, libgsf, libofx, intltool, wrapGAppsHook
-, libsoup, gnome3 }:
+{ fetchurl
+, stdenv
+, gtk
+, pkgconfig
+, libgsf
+, libofx
+, intltool
+, wrapGAppsHook
+, libsoup
+, gnome3
+}:
 
 stdenv.mkDerivation rec {
   pname = "grisbi";
@@ -7,12 +16,18 @@ stdenv.mkDerivation rec {
 
   src = fetchurl {
     url = "mirror://sourceforge/grisbi/${pname}-${version}.tar.bz2";
-    sha1 = "crv3bga72v6fw07wad0nkrgdg4war66j";
+    sha256 = "1piiyyxjsjbw9gcqydvknzxmmfgh8kdqal12ywrxyxih2afwnvbw";
   };
 
   nativeBuildInputs = [ pkgconfig wrapGAppsHook ];
-  buildInputs = [ gtk libgsf libofx intltool libsoup
-    gnome3.adwaita-icon-theme ];
+  buildInputs = [
+    gtk
+    libgsf
+    libofx
+    intltool
+    libsoup
+    gnome3.adwaita-icon-theme
+  ];
 
   meta = with stdenv.lib; {
     description = "A personnal accounting application.";
@@ -24,7 +39,7 @@ stdenv.mkDerivation rec {
       management and other information that make Grisbi adapted for
       associations.
     '';
-    homepage = "http://grisbi.org";
+    homepage = "https://grisbi.org";
     license = licenses.gpl2Plus;
     maintainers = with maintainers; [ layus ];
     platforms = platforms.linux;
diff --git a/pkgs/applications/office/homebank/default.nix b/pkgs/applications/office/homebank/default.nix
index 3cda543eda12..a34eadde36ea 100644
--- a/pkgs/applications/office/homebank/default.nix
+++ b/pkgs/applications/office/homebank/default.nix
@@ -2,10 +2,10 @@
 , libsoup, gnome3 }:
 
 stdenv.mkDerivation rec {
-  name = "homebank-5.3.2";
+  name = "homebank-5.4.1";
   src = fetchurl {
     url = "http://homebank.free.fr/public/${name}.tar.gz";
-    sha256 = "1fr4060yqlciay98dypvifmfvr8y2kbpj89d86mcvq9gb00vij2b";
+    sha256 = "1m1hpaby6zi8y0vmj2ljklp34a55l2qsr7pxw3852k2m4v5n9zsx";
   };
 
   nativeBuildInputs = [ pkgconfig wrapGAppsHook ];
@@ -14,7 +14,7 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "Free, easy, personal accounting for everyone";
-    homepage = http://homebank.free.fr/;
+    homepage = "http://homebank.free.fr/";
     license = licenses.gpl2Plus;
     maintainers = with maintainers; [ pSub ];
     platforms = platforms.linux;
diff --git a/pkgs/applications/office/ib/controller/default.nix b/pkgs/applications/office/ib/controller/default.nix
index 372414c1a76d..7be7e4467b52 100644
--- a/pkgs/applications/office/ib/controller/default.nix
+++ b/pkgs/applications/office/ib/controller/default.nix
@@ -154,7 +154,7 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "Automation Controller for the Trader Work Station of Interactive Brokers";
-    homepage = https://github.com/ib-controller/ib-controller;
+    homepage = "https://github.com/ib-controller/ib-controller";
     license = licenses.gpl3;
     maintainers = [ maintainers.tstrobel ];
     platforms = platforms.linux;
diff --git a/pkgs/applications/office/ib/tws/default.nix b/pkgs/applications/office/ib/tws/default.nix
index a88f1af02c65..b8b31bed7c5e 100644
--- a/pkgs/applications/office/ib/tws/default.nix
+++ b/pkgs/applications/office/ib/tws/default.nix
@@ -88,7 +88,7 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "Trader Work Station of Interactive Brokers";
-    homepage = https://www.interactivebrokers.com;
+    homepage = "https://www.interactivebrokers.com";
     license = licenses.unfree;
     maintainers = [ maintainers.tstrobel ];
     platforms = platforms.linux;
diff --git a/pkgs/applications/office/impressive/default.nix b/pkgs/applications/office/impressive/default.nix
index a8c318d690a9..ed8cc1dd50a7 100644
--- a/pkgs/applications/office/impressive/default.nix
+++ b/pkgs/applications/office/impressive/default.nix
@@ -59,7 +59,7 @@ in stdenv.mkDerivation {
         to make a slideshow with your favorite photos.
       '';
 
-      homepage = http://impressive.sourceforge.net/;
+      homepage = "http://impressive.sourceforge.net/";
 
       license = stdenv.lib.licenses.gpl2;
 
diff --git a/pkgs/applications/office/jabref/default.nix b/pkgs/applications/office/jabref/default.nix
index d0a7757e49d2..01ba190cf31f 100644
--- a/pkgs/applications/office/jabref/default.nix
+++ b/pkgs/applications/office/jabref/default.nix
@@ -38,7 +38,7 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "Open source bibliography reference manager";
-    homepage = https://www.jabref.org;
+    homepage = "https://www.jabref.org";
     license = licenses.gpl2;
     platforms = platforms.unix;
     maintainers = [ maintainers.gebner ];
diff --git a/pkgs/applications/office/jameica/default.nix b/pkgs/applications/office/jameica/default.nix
index 7b4feed1733a..6dc124c6a200 100644
--- a/pkgs/applications/office/jameica/default.nix
+++ b/pkgs/applications/office/jameica/default.nix
@@ -1,8 +1,8 @@
 { stdenv, fetchFromGitHub, makeDesktopItem, makeWrapper, ant, jdk, jre, gtk2, glib, xorg, Cocoa }:
 
 let
-  _version = "2.8.4";
-  _build = "453";
+  _version = "2.8.6";
+  _build = "455";
   version = "${_version}-${_build}";
   name = "jameica-${version}";
 
@@ -17,7 +17,7 @@ let
     comment = "Free Runtime Environment for Java Applications.";
     desktopName = "Jameica";
     genericName = "Jameica";
-    categories = "Application;Office;";
+    categories = "Office;";
   };
 in
 stdenv.mkDerivation rec {
@@ -31,7 +31,7 @@ stdenv.mkDerivation rec {
     owner = "willuhn";
     repo = "jameica";
     rev = "V_${builtins.replaceStrings ["."] ["_"] _version}_BUILD_${_build}";
-    sha256 = "1imm3wpdrgh2sr2wh9vgaf2mp1ixs845vgzk5ib82mak7lg9m1zl";
+    sha256 = "1pndklxsvixy6zyblqr62ki3pqaq8lfrzgasrvhclqxxh76gjlss";
   };
 
   # there is also a build.gradle, but it only seems to be used to vendor 3rd party libraries
@@ -62,7 +62,7 @@ stdenv.mkDerivation rec {
   '';
 
   meta = with stdenv.lib; {
-    homepage = https://www.willuhn.de/products/jameica/;
+    homepage = "https://www.willuhn.de/products/jameica/";
     description = "Free Runtime Environment for Java Applications";
     longDescription = ''
       Runtime Environment for plugins like Hibiscus (HBCI Online Banking),
diff --git a/pkgs/applications/office/keepnote/default.nix b/pkgs/applications/office/keepnote/default.nix
index 2e0b3f3fed7d..cf1b5125adf9 100644
--- a/pkgs/applications/office/keepnote/default.nix
+++ b/pkgs/applications/office/keepnote/default.nix
@@ -16,7 +16,7 @@ python2Packages.buildPythonApplication {
 
   meta = {
     description = "Note taking application";
-    homepage = http://keepnote.org;
+    homepage = "http://keepnote.org";
     license = stdenv.lib.licenses.gpl2Plus;
   };
 }
diff --git a/pkgs/applications/office/kexi/default.nix b/pkgs/applications/office/kexi/default.nix
index 8db7068f7cfa..4900dafb08e5 100644
--- a/pkgs/applications/office/kexi/default.nix
+++ b/pkgs/applications/office/kexi/default.nix
@@ -49,7 +49,7 @@ mkDerivation rec {
       All database objects - tables, queries and forms - are stored in the database,
       making it easy to share data and design.
     '';
-    homepage = http://kexi-project.org/;
+    homepage = "http://kexi-project.org/";
     maintainers = with maintainers; [ zraexy ];
     platforms = platforms.linux;
     license = with licenses; [ gpl2 lgpl2 ];
diff --git a/pkgs/applications/office/khronos/default.nix b/pkgs/applications/office/khronos/default.nix
index d7726c13e647..02c645f3d849 100644
--- a/pkgs/applications/office/khronos/default.nix
+++ b/pkgs/applications/office/khronos/default.nix
@@ -16,13 +16,13 @@
 
 stdenv.mkDerivation rec {
   pname = "khronos";
-  version = "1.0.5";
+  version = "1.0.8";
 
   src = fetchFromGitHub {
     owner = "lainsce";
     repo = pname;
     rev = version;
-    sha256 = "0dk1b2d82gli3z35dn5p002lfkgq326janql0vn1z5hs8jvjakqh";
+    sha256 = "0d5ma1d86lh2apagwrwk0d1v1cm3fifjivhf530nlznb67vi1x80";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/applications/office/kmymoney/default.nix b/pkgs/applications/office/kmymoney/default.nix
index 275cd826a69f..6137a4dc1ad8 100644
--- a/pkgs/applications/office/kmymoney/default.nix
+++ b/pkgs/applications/office/kmymoney/default.nix
@@ -66,7 +66,7 @@ stdenv.mkDerivation rec {
 
   meta = {
     description = "Personal finance manager for KDE";
-    homepage = https://kmymoney.org/;
+    homepage = "https://kmymoney.org/";
     platforms = lib.platforms.linux;
     license = lib.licenses.gpl2Plus;
   };
diff --git a/pkgs/applications/office/ledger-autosync/default.nix b/pkgs/applications/office/ledger-autosync/default.nix
index 62ac6a803824..3a0f362dcf72 100644
--- a/pkgs/applications/office/ledger-autosync/default.nix
+++ b/pkgs/applications/office/ledger-autosync/default.nix
@@ -2,14 +2,14 @@
 
 python3Packages.buildPythonApplication rec {
   pname = "ledger-autosync";
-  version = "1.0.1";
+  version = "1.0.2";
 
 # no tests included in PyPI tarball
   src = fetchFromGitHub {
     owner = "egh";
     repo = "ledger-autosync";
     rev = "v${version}";
-    sha256 = "1h5mjngdd3rmzwmy026xmas0491kxxi1vxkd5m1xii7y6j50z14q";
+    sha256 = "0sh32jcf8iznnbg1kqlrswbzfmn4h3gkw32q20xwxzz4935pz1qk";
   };
 
   propagatedBuildInputs = with python3Packages; [
@@ -43,7 +43,7 @@ python3Packages.buildPythonApplication rec {
   '';
 
   meta = with stdenv.lib; {
-    homepage = https://github.com/egh/ledger-autosync;
+    homepage = "https://github.com/egh/ledger-autosync";
     description = "OFX/CSV autosync for ledger and hledger";
     license = licenses.gpl3;
     maintainers = with maintainers; [ eamsden ];
diff --git a/pkgs/applications/office/ledger-web/Gemfile.lock b/pkgs/applications/office/ledger-web/Gemfile.lock
index f18460420c5d..b12a8600ed20 100644
--- a/pkgs/applications/office/ledger-web/Gemfile.lock
+++ b/pkgs/applications/office/ledger-web/Gemfile.lock
@@ -58,4 +58,4 @@ DEPENDENCIES
   ledger_web
 
 BUNDLED WITH
-   1.17.2
+   2.1.4
diff --git a/pkgs/applications/office/ledger-web/default.nix b/pkgs/applications/office/ledger-web/default.nix
index 0a8f68bc0961..ce8b401cb6b9 100644
--- a/pkgs/applications/office/ledger-web/default.nix
+++ b/pkgs/applications/office/ledger-web/default.nix
@@ -15,7 +15,7 @@ bundlerApp {
 
   meta = with lib; {
     description = "A web frontend to the Ledger CLI tool";
-    homepage = https://github.com/peterkeen/ledger-web;
+    homepage = "https://github.com/peterkeen/ledger-web";
     license = licenses.mit;
     maintainers = with maintainers; [ peterhoeg manveru nicknovitski ];
     platforms = platforms.linux;
diff --git a/pkgs/applications/office/ledger/2.6.3.nix b/pkgs/applications/office/ledger/2.6.3.nix
deleted file mode 100644
index 60fff1d0131b..000000000000
--- a/pkgs/applications/office/ledger/2.6.3.nix
+++ /dev/null
@@ -1,41 +0,0 @@
-{ stdenv, fetchurl, emacs, gmp, pcre, expat }:
-
-stdenv.mkDerivation rec {
-  name = "ledger2-2.6.3";
-
-  src = fetchurl {
-    url = "https://github.com/downloads/ledger/ledger/${name}.tar.gz";
-    sha256 = "05zpnypcwgck7lwk00pbdlcwa347xsqifxh4zsbbn01m98bx1v5k";
-  };
-
-  buildInputs = [ emacs gmp pcre expat ];
-
-  configureFlags = [
-    "CPPFLAGS=-DNDEBUG"
-    "CFLAGS=-O3"
-    "CXXFLAGS=-O3"
-  ];
-
-  doCheck = true;
-
-  # Patchelf breaks the hard-coded rpath to ledger's libamounts.0.so and
-  # libledger-2.6.3.so. Fortunately, libtool chooses proper rpaths to
-  # begin with, so we can just disable patchelf to avoid the issue.
-  dontPatchELF = true;
-
-  meta = {
-    homepage = https://ledger-cli.org/;
-    description = "A double-entry accounting system with a command-line reporting interface";
-    license = "BSD";
-
-    longDescription = ''
-      Ledger is a powerful, double-entry accounting system that is accessed
-      from the UNIX command-line. This may put off some users, as there is
-      no flashy UI, but for those who want unparalleled reporting access to
-      their data, there really is no alternative.
-    '';
-
-    platforms = stdenv.lib.platforms.all;
-    broken = true; # https://hydra.nixos.org/build/59124559/nixlog/1
-  };
-}
diff --git a/pkgs/applications/office/ledger/default.nix b/pkgs/applications/office/ledger/default.nix
index 99e09a8f36f2..05fb05924067 100644
--- a/pkgs/applications/office/ledger/default.nix
+++ b/pkgs/applications/office/ledger/default.nix
@@ -32,7 +32,7 @@ stdenv.mkDerivation rec {
   '';
 
   meta = with stdenv.lib; {
-    homepage = https://ledger-cli.org/;
+    homepage = "https://ledger-cli.org/";
     description = "A double-entry accounting system with a command-line reporting interface";
     license = licenses.bsd3;
 
diff --git a/pkgs/applications/office/libreoffice/default.nix b/pkgs/applications/office/libreoffice/default.nix
index a7d8f4c7d40f..976fc0fcd2d7 100644
--- a/pkgs/applications/office/libreoffice/default.nix
+++ b/pkgs/applications/office/libreoffice/default.nix
@@ -3,8 +3,8 @@
 , libxml2, db, curl, fontconfig, libsndfile, neon
 , bison, flex, zip, unzip, gtk3, gtk2, libmspack, getopt, file, cairo, which
 , icu, boost, jdk, ant, cups, xorg, libcmis, fontforge
-, openssl, gperf, cppunit, GConf, ORBit2, poppler, utillinux
-, librsvg, gnome_vfs, libGLU, libGL, bsh, CoinMP, libwps, libabw, libmysqlclient
+, openssl, gperf, cppunit, poppler, utillinux
+, librsvg, libGLU, libGL, bsh, CoinMP, libwps, libabw, libmysqlclient
 , autoconf, automake, openldap, bash, hunspell, librdf_redland, nss, nspr
 , libwpg, dbus-glib, qt4, clucene_core, libcdr, lcms, vigra
 , unixODBC, mdds, sane-backends, mythes, libexttextcat, libvisio
@@ -62,6 +62,11 @@ in (stdenv.mkDerivation rec {
 
   patches = [
     ./xdg-open-brief.patch
+    (fetchpatch {
+      url = "https://git.pld-linux.org/gitweb.cgi?p=packages/libreoffice.git;a=blob_plain;f=poppler-0.86.patch;h=76b8356d5f22ef537a83b0f9b0debab591f152fe;hb=a2737a61353e305a9ee69640fb20d4582c218008";
+      name = "poppler-0.86.patch";
+      sha256 = "0q6k4l8imgp8ailcv0qx5l83afyw44hah24fi7gjrm9xgv5sbb8j";
+    })
   ];
 
   tarballPath = "external/tarballs";
@@ -347,13 +352,13 @@ in (stdenv.mkDerivation rec {
   buildInputs = with xorg;
     [ ant ArchiveZip boost cairo clucene_core
       IOCompress cppunit cups curl db dbus-glib expat file flex fontconfig
-      freetype GConf getopt gnome_vfs gperf gtk3 gtk2
+      freetype getopt gperf gtk3 gtk2
       hunspell icu jdk lcms libcdr libexttextcat unixODBC libjpeg
       libmspack librdf_redland librsvg libsndfile libvisio libwpd libwpg libX11
       libXaw libXext libXi libXinerama libxml2 libxslt libXtst
       libXdmcp libpthreadstubs libGLU libGL mythes gst_all_1.gstreamer
       gst_all_1.gst-plugins-base glib libmysqlclient
-      neon nspr nss openldap openssl ORBit2 pam perl pkgconfig poppler
+      neon nspr nss openldap openssl pam perl pkgconfig poppler
       python3 sane-backends unzip vigra which zip zlib
       mdds bluez5 libcmis libwps libabw libzmf
       libxshmfence libatomic_ops graphite2 harfbuzz gpgme utillinux
@@ -370,7 +375,7 @@ in (stdenv.mkDerivation rec {
 
   meta = with lib; {
     description = "Comprehensive, professional-quality productivity suite, a variant of openoffice.org";
-    homepage = https://libreoffice.org/;
+    homepage = "https://libreoffice.org/";
     license = licenses.lgpl3;
     maintainers = with maintainers; [ raskin ];
     platforms = platforms.linux;
diff --git a/pkgs/applications/office/libreoffice/src-fresh/download.nix b/pkgs/applications/office/libreoffice/src-fresh/download.nix
index bc329e5a8f89..f4b14870eb79 100644
--- a/pkgs/applications/office/libreoffice/src-fresh/download.nix
+++ b/pkgs/applications/office/libreoffice/src-fresh/download.nix
@@ -728,11 +728,11 @@
     md5name = "a754c02f7051c2f21e52f8669a421b50485afcde9a581674d6106326b189d126-postgresql-9.2.24.tar.bz2";
   }
   {
-    name = "Python-3.7.6.tar.xz";
-    url = "http://dev-www.libreoffice.org/src/Python-3.7.6.tar.xz";
-    sha256 = "55a2cce72049f0794e9a11a84862e9039af9183603b78bc60d89539f82cf533f";
+    name = "Python-3.7.7.tar.xz";
+    url = "http://dev-www.libreoffice.org/src/Python-3.7.7.tar.xz";
+    sha256 = "06a0a9f1bf0d8cd1e4121194d666c4e28ddae4dd54346de6c343206599f02136";
     md5 = "";
-    md5name = "55a2cce72049f0794e9a11a84862e9039af9183603b78bc60d89539f82cf533f-Python-3.7.6.tar.xz";
+    md5name = "06a0a9f1bf0d8cd1e4121194d666c4e28ddae4dd54346de6c343206599f02136-Python-3.7.7.tar.xz";
   }
   {
     name = "QR-Code-generator-1.4.0.tar.gz";
diff --git a/pkgs/applications/office/libreoffice/src-fresh/primary.nix b/pkgs/applications/office/libreoffice/src-fresh/primary.nix
index fb21d1292d6d..5b62b0df9544 100644
--- a/pkgs/applications/office/libreoffice/src-fresh/primary.nix
+++ b/pkgs/applications/office/libreoffice/src-fresh/primary.nix
@@ -8,8 +8,8 @@ rec {
 
   major = "6";
   minor = "4";
-  patch = "1";
-  tweak = "1";
+  patch = "3";
+  tweak = "2";
 
   subdir = "${major}.${minor}.${patch}";
 
@@ -17,13 +17,13 @@ rec {
 
   src = fetchurl {
     url = "https://download.documentfoundation.org/libreoffice/src/${subdir}/libreoffice-${version}.tar.xz";
-    sha256 = "03fqpkilz4yi35l447hb9r8gjwj23l61bpdkwg21jm8blm8kkvyj";
+    sha256 = "1cmbrhha7mlflnlbpla8fix07cxcgkdb7krnrgs1bylf31y5855w";
   };
 
   # FIXME rename
   translations = fetchSrc {
     name = "translations";
-    sha256 = "0a7arjlxxy7hjm1brxwd124bf1gkbl92bgygi3sbbhbsv07pjdcr";
+    sha256 = "06z9hz4m3kdcljjc6y5s18001axjibj9xiyakdndkl9pmnnhn9h3";
   };
 
   # the "dictionaries" archive is not used for LO build because we already build hunspellDicts packages from
@@ -31,6 +31,6 @@ rec {
 
   help = fetchSrc {
     name = "help";
-    sha256 = "1hfllrdyxrg5mgqry3dcrhjbdrd0d27k5mvv4sfj7nwjlmjh8rqq";
+    sha256 = "0mpgrwg8z1q38j03l6m1sdpcplyjd5nz1nqaa13vfkryj2lflw45";
   };
 }
diff --git a/pkgs/applications/office/marp/default.nix b/pkgs/applications/office/marp/default.nix
index 7c054ba52047..5b05a9f164b7 100644
--- a/pkgs/applications/office/marp/default.nix
+++ b/pkgs/applications/office/marp/default.nix
@@ -29,7 +29,7 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "Markdown presentation writer, powered by Electron";
-    homepage = https://yhatt.github.io/marp/;
+    homepage = "https://yhatt.github.io/marp/";
     license = licenses.mit;
     maintainers = [ maintainers.puffnfresh ];
     platforms = [ "x86_64-linux" ];
diff --git a/pkgs/applications/office/mendeley/default.nix b/pkgs/applications/office/mendeley/default.nix
index 9fdeecfee368..192585bd4b5e 100644
--- a/pkgs/applications/office/mendeley/default.nix
+++ b/pkgs/applications/office/mendeley/default.nix
@@ -137,7 +137,7 @@ mkDerivation {
   updateScript = import ./update.nix { inherit writeScript runtimeShell; };
 
   meta = with stdenv.lib; {
-    homepage = https://www.mendeley.com;
+    homepage = "https://www.mendeley.com";
     description = "A reference manager and academic social network";
     license = licenses.unfree;
     platforms = [ "x86_64-linux" "i686-linux" ];
diff --git a/pkgs/applications/office/minetime/default.nix b/pkgs/applications/office/minetime/default.nix
index 42802409e59d..8f90973e5f8e 100644
--- a/pkgs/applications/office/minetime/default.nix
+++ b/pkgs/applications/office/minetime/default.nix
@@ -41,7 +41,7 @@ appimageTools.wrapAppImage rec {
 
   meta = with lib; {
     description = "Modern, intuitive and smart calendar application";
-    homepage = https://minetime.ai;
+    homepage = "https://minetime.ai";
     license = licenses.unfree;
     # Should be cross-platform, but for now we just grab the appimage
     platforms = [ "x86_64-linux" ];
diff --git a/pkgs/applications/office/mmex/default.nix b/pkgs/applications/office/mmex/default.nix
index ed33d121a05f..6d430a286bd3 100644
--- a/pkgs/applications/office/mmex/default.nix
+++ b/pkgs/applications/office/mmex/default.nix
@@ -27,7 +27,7 @@ in
 
     meta = {
       description = "Easy-to-use personal finance software";
-      homepage = https://www.moneymanagerex.org/;
+      homepage = "https://www.moneymanagerex.org/";
       license = stdenv.lib.licenses.gpl2Plus;
       maintainers = with stdenv.lib.maintainers; [viric];
       platforms = with stdenv.lib.platforms; linux;
diff --git a/pkgs/applications/office/moneyplex/default.nix b/pkgs/applications/office/moneyplex/default.nix
index 103288c03c62..85d9715bf396 100644
--- a/pkgs/applications/office/moneyplex/default.nix
+++ b/pkgs/applications/office/moneyplex/default.nix
@@ -116,7 +116,7 @@ stdenv.mkDerivation {
     maintainers = with maintainers; [ tstrobel ];
     platforms = platforms.linux;
     license = licenses.unfree;
-    downloadPage = http://matrica.de/download/download.html;
+    downloadPage = "http://matrica.de/download/download.html";
   };
 
 }
diff --git a/pkgs/applications/office/mytetra/default.nix b/pkgs/applications/office/mytetra/default.nix
index 050222451cf6..45d9e29ebe9a 100644
--- a/pkgs/applications/office/mytetra/default.nix
+++ b/pkgs/applications/office/mytetra/default.nix
@@ -31,7 +31,7 @@ in mkDerivation {
 
   meta = with stdenv.lib; {
     description = "Smart manager for information collecting";
-    homepage = https://webhamster.ru/site/page/index/articles/projectcode/138;
+    homepage = "https://webhamster.ru/site/page/index/articles/projectcode/138";
     license = licenses.gpl3;
     maintainers = [ maintainers.gnidorah ];
     platforms = platforms.linux;
diff --git a/pkgs/applications/office/notes-up/default.nix b/pkgs/applications/office/notes-up/default.nix
index 1d2e581f3c96..055b3a41d091 100644
--- a/pkgs/applications/office/notes-up/default.nix
+++ b/pkgs/applications/office/notes-up/default.nix
@@ -2,7 +2,7 @@
 , fetchFromGitHub
 , pantheon
 , pkgconfig
-, vala
+, vala_0_46
 , cmake
 , ninja
 , gtk3
@@ -30,7 +30,8 @@ stdenv.mkDerivation rec {
   nativeBuildInputs = [
     cmake
     ninja
-    vala
+    # fails with newer vala: https://github.com/Philip-Scott/Notes-up/issues/349
+    vala_0_46
     pkgconfig
     wrapGAppsHook
   ];
@@ -59,7 +60,7 @@ stdenv.mkDerivation rec {
   meta = with stdenv.lib; {
     description = "Markdown notes editor and manager designed for elementary OS"
     + stdenv.lib.optionalString withPantheon " - built with Contractor support";
-    homepage = https://github.com/Philip-Scott/Notes-up;
+    homepage = "https://github.com/Philip-Scott/Notes-up";
     license = licenses.gpl2;
     maintainers = with maintainers; [ davidak worldofpeace ];
     platforms = platforms.linux;
diff --git a/pkgs/applications/office/osmo/default.nix b/pkgs/applications/office/osmo/default.nix
index b1311428c61d..c3a7a5da4550 100644
--- a/pkgs/applications/office/osmo/default.nix
+++ b/pkgs/applications/office/osmo/default.nix
@@ -16,7 +16,7 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "A handy personal organizer";
-    homepage = http://clayo.org/osmo/;
+    homepage = "http://clayo.org/osmo/";
     license = licenses.gpl2;
     platforms = platforms.linux;
     maintainers = with maintainers; [ pSub ];
diff --git a/pkgs/applications/office/paperless/default.nix b/pkgs/applications/office/paperless/default.nix
index 1383986cf2ed..c549b107c541 100644
--- a/pkgs/applications/office/paperless/default.nix
+++ b/pkgs/applications/office/paperless/default.nix
@@ -99,7 +99,7 @@ let
 
     meta = with lib; {
       description = "Scan, index, and archive all of your paper documents";
-      homepage = https://github.com/the-paperless-project/paperless;
+      homepage = "https://github.com/the-paperless-project/paperless";
       license = licenses.gpl3;
       maintainers = [ maintainers.earvstedt ];
     };
diff --git a/pkgs/applications/office/paperless/python-modules/django-crispy-forms.nix b/pkgs/applications/office/paperless/python-modules/django-crispy-forms.nix
index 465da3862471..c470a56b8a11 100644
--- a/pkgs/applications/office/paperless/python-modules/django-crispy-forms.nix
+++ b/pkgs/applications/office/paperless/python-modules/django-crispy-forms.nix
@@ -29,7 +29,7 @@ buildPythonPackage {
 
   meta = with lib; {
     description = "The best way to have DRY Django forms";
-    homepage = https://github.com/maraujop/django-crispy-forms;
+    homepage = "https://github.com/maraujop/django-crispy-forms";
     license = licenses.mit;
     maintainers = with maintainers; [ earvstedt ];
   };
diff --git a/pkgs/applications/office/paperless/python-modules/django-filter.nix b/pkgs/applications/office/paperless/python-modules/django-filter.nix
index ffe94d10d5c3..d7f20bd9d37d 100644
--- a/pkgs/applications/office/paperless/python-modules/django-filter.nix
+++ b/pkgs/applications/office/paperless/python-modules/django-filter.nix
@@ -19,7 +19,7 @@ buildPythonPackage rec {
 
   meta = with lib; {
     description = "A reusable Django application for allowing users to filter querysets dynamically.";
-    homepage = https://github.com/carltongibson/django-filter;
+    homepage = "https://github.com/carltongibson/django-filter";
     license = licenses.bsd3;
     maintainers = with maintainers; [ earvstedt ];
   };
diff --git a/pkgs/applications/office/paperwork/backend.nix b/pkgs/applications/office/paperwork/backend.nix
index 7f82780fbe92..af0d4c430590 100644
--- a/pkgs/applications/office/paperwork/backend.nix
+++ b/pkgs/applications/office/paperwork/backend.nix
@@ -3,14 +3,15 @@
 , isPy3k, isPyPy
 
 , pyenchant, simplebayes, pillow, pycountry, whoosh, termcolor
-, python-Levenshtein, pyinsane2, pygobject3, pyocr, natsort
+, python-Levenshtein, pygobject3, pyocr, natsort, libinsane
+, distro
 
 , pkgs
 }:
 
 buildPythonPackage rec {
   pname = "paperwork-backend";
-  version = "1.2.4";
+  version = "1.3.1";
 
   src = fetchFromGitLab {
     domain = "gitlab.gnome.org";
@@ -18,7 +19,7 @@ buildPythonPackage rec {
     group = "World";
     owner = "OpenPaperwork";
     rev = version;
-    sha256 = "0wjjiw99aswmppnhzq3jir0p5p78r3m8hjinhdirkgm6h7skq5p4";
+    sha256 = "1219yz8z4r1yn6miq8zc2z1m1lnhf3dmkhwfw23n05bg842nvg65";
   };
 
   sourceRoot = "source/paperwork-backend";
@@ -34,14 +35,14 @@ buildPythonPackage rec {
 
   propagatedBuildInputs = [
     pyenchant simplebayes pillow pycountry whoosh termcolor
-    python-Levenshtein pyinsane2 pygobject3 pyocr natsort
-    pkgs.poppler_gi pkgs.gtk3
+    python-Levenshtein libinsane pygobject3 pyocr natsort
+    pkgs.poppler_gi pkgs.gtk3 distro
   ];
 
   meta = {
     description = "Backend part of Paperwork (Python API, no UI)";
-    homepage = https://openpaper.work/;
+    homepage = "https://openpaper.work/";
     license = lib.licenses.gpl3Plus;
-    maintainers = [ lib.maintainers.aszlig ];
+    maintainers = with lib.maintainers; [ aszlig symphorien ];
   };
 }
diff --git a/pkgs/applications/office/paperwork/default.nix b/pkgs/applications/office/paperwork/default.nix
index 3506ea8b5515..102c3cd2564c 100644
--- a/pkgs/applications/office/paperwork/default.nix
+++ b/pkgs/applications/office/paperwork/default.nix
@@ -1,7 +1,15 @@
-{ lib, python3Packages, gtk3, cairo
-, aspellDicts, buildEnv
-, gnome3, librsvg
-, xvfb_run, dbus, libnotify
+{ lib
+, python3Packages
+, gtk3
+, cairo
+, aspellDicts
+, buildEnv
+, gnome3
+, librsvg
+, xvfb_run
+, dbus
+, libnotify
+, wrapGAppsHook
 }:
 
 python3Packages.buildPythonApplication rec {
@@ -46,9 +54,23 @@ python3Packages.buildPythonApplication rec {
     paths = lib.collect lib.isDerivation aspellDicts;
   }}/lib/aspell";
 
+  postInstall = ''
+    # paperwork-shell needs to be re-wrapped with access to paperwork
+    cp ${python3Packages.paperwork-backend}/bin/.paperwork-shell-wrapped $out/bin/paperwork-shell
+    # install desktop files and icons
+    XDG_DATA_HOME=$out/share $out/bin/paperwork-shell install
+  '';
+
   checkInputs = [ xvfb_run dbus.daemon ] ++ (with python3Packages; [ paperwork-backend ]);
+
+  nativeBuildInputs = [
+    wrapGAppsHook
+  ];
+
   buildInputs = [
-    gnome3.adwaita-icon-theme libnotify librsvg
+    gnome3.adwaita-icon-theme
+    libnotify
+    librsvg
   ];
 
   # A few parts of chkdeps need to have a display and a dbus session, so we not
@@ -61,21 +83,20 @@ python3Packages.buildPythonApplication rec {
   '';
 
   propagatedBuildInputs = with python3Packages; [
-    paperwork-backend pypillowfight gtk3 cairo pyxdg dateutil setuptools pandas
-  ];
-
-  makeWrapperArgs = [
-    "--set GI_TYPELIB_PATH \"$GI_TYPELIB_PATH\""
-    "--set GDK_PIXBUF_MODULE_FILE \"$GDK_PIXBUF_MODULE_FILE\""
-    "--prefix XDG_DATA_DIRS : \"$out/share\""
-    "--suffix XDG_DATA_DIRS : \"$XDG_ICON_DIRS:$GSETTINGS_SCHEMAS_PATH\""
+    paperwork-backend
+    pypillowfight
+    gtk3
+    cairo
+    pyxdg
+    dateutil
+    setuptools
   ];
 
   meta = {
     description = "A personal document manager for scanned documents";
-    homepage = https://openpaper.work/;
+    homepage = "https://openpaper.work/";
     license = lib.licenses.gpl3Plus;
-    maintainers = [ lib.maintainers.aszlig ];
+    maintainers = with lib.maintainers; [ aszlig symphorien ];
     platforms = lib.platforms.linux;
   };
 }
diff --git a/pkgs/applications/office/pinpoint/default.nix b/pkgs/applications/office/pinpoint/default.nix
index 14756c3557f4..ce175d8517f5 100644
--- a/pkgs/applications/office/pinpoint/default.nix
+++ b/pkgs/applications/office/pinpoint/default.nix
@@ -13,7 +13,7 @@ stdenv.mkDerivation rec {
                   cairo clutter-gtk ];
 
   meta = with stdenv.lib; {
-    homepage = https://wiki.gnome.org/action/show/Apps/Pinpoint;
+    homepage = "https://wiki.gnome.org/action/show/Apps/Pinpoint";
     description = "A tool for making hackers do excellent presentations";
     license = licenses.lgpl21;
     platforms = platforms.linux;
diff --git a/pkgs/applications/office/planner/default.nix b/pkgs/applications/office/planner/default.nix
index 6189132d0f94..f33946d6b5a2 100644
--- a/pkgs/applications/office/planner/default.nix
+++ b/pkgs/applications/office/planner/default.nix
@@ -57,7 +57,7 @@ in stdenv.mkDerivation {
   enableParallelBuilding = true;
 
   meta = with stdenv.lib; {
-    homepage = https://wiki.gnome.org/Apps/Planner;
+    homepage = "https://wiki.gnome.org/Apps/Planner";
     description = "Project management application for GNOME";
     longDescription = ''
       Planner is the GNOME project management tool.
diff --git a/pkgs/applications/office/qnotero/default.nix b/pkgs/applications/office/qnotero/default.nix
index 769f58785ee5..7821b041064a 100644
--- a/pkgs/applications/office/qnotero/default.nix
+++ b/pkgs/applications/office/qnotero/default.nix
@@ -28,7 +28,7 @@ python3Packages.buildPythonPackage rec {
 
   meta = {
     description = "Quick access to Zotero references";
-    homepage = http://www.cogsci.nl/software/qnotero;
+    homepage = "http://www.cogsci.nl/software/qnotero";
     license = stdenv.lib.licenses.gpl2;
     platforms = stdenv.lib.platforms.unix;
     maintainers = [ stdenv.lib.maintainers.nico202 ];
diff --git a/pkgs/applications/office/qownnotes/default.nix b/pkgs/applications/office/qownnotes/default.nix
index fa2c67709fb9..99b021429a65 100644
--- a/pkgs/applications/office/qownnotes/default.nix
+++ b/pkgs/applications/office/qownnotes/default.nix
@@ -19,7 +19,7 @@ mkDerivation rec {
   meta = with lib; {
     description = "Plain-text file notepad and todo-list manager with markdown support and ownCloud / Nextcloud integration";
 
-    homepage = https://www.qownnotes.org/;
+    homepage = "https://www.qownnotes.org/";
     platforms = platforms.all;
     license = licenses.gpl2;
     maintainers = with maintainers; [ dtzWill ];
diff --git a/pkgs/applications/office/scribus/default.nix b/pkgs/applications/office/scribus/default.nix
index d6b73b07f0e5..779a5cb0fea3 100644
--- a/pkgs/applications/office/scribus/default.nix
+++ b/pkgs/applications/office/scribus/default.nix
@@ -48,7 +48,7 @@ in stdenv.mkDerivation rec {
     maintainers = [ stdenv.lib.maintainers.marcweber ];
     platforms = stdenv.lib.platforms.linux;
     description = "Desktop Publishing (DTP) and Layout program for Linux";
-    homepage = https://www.scribus.net;
+    homepage = "https://www.scribus.net";
     license = stdenv.lib.licenses.gpl2;
   };
 }
diff --git a/pkgs/applications/office/scribus/unstable.nix b/pkgs/applications/office/scribus/unstable.nix
index faff45c8884a..aa0c2dee9790 100644
--- a/pkgs/applications/office/scribus/unstable.nix
+++ b/pkgs/applications/office/scribus/unstable.nix
@@ -44,28 +44,40 @@ mkDerivation rec {
   };
 
   patches = [
+    # Poppler patches from
+    # https://github.com/scribusproject/scribus/commits/master/scribus/plugins/import/pdf
+
     # fix build with Poppler 0.82
-    (
-      fetchpatch {
-        url = "https://github.com/scribusproject/scribus/commit/6db15ec1af791377b28981601f8c296006de3c6f.patch";
-        sha256 = "1y6g3avmsmiyaj8xry1syaz8sfznsavh6l2rp13pj2bwsxfcf939";
-      }
-    )
+    (fetchpatch {
+      url = "https://github.com/scribusproject/scribus/commit/6db15ec1af791377b28981601f8c296006de3c6f.patch";
+      sha256 = "1y6g3avmsmiyaj8xry1syaz8sfznsavh6l2rp13pj2bwsxfcf939";
+    })
     # fix build with Poppler 0.83
-    (
-      fetchpatch {
-        url = "https://github.com/scribusproject/scribus/commit/b51c2bab4d57d685f96d427d6816bdd4ecfb4674.patch";
-        sha256 = "031yy9ylzksczfnpcc4glfccz025sn47zg6fqqzjnqqrc16bgdlx";
-      }
-    )
+    (fetchpatch {
+      url = "https://github.com/scribusproject/scribus/commit/b51c2bab4d57d685f96d427d6816bdd4ecfb4674.patch";
+      sha256 = "031yy9ylzksczfnpcc4glfccz025sn47zg6fqqzjnqqrc16bgdlx";
+    })
     # fix build with Poppler 0.84
     # TODO: Remove patches with scribus version > 1.5.5 as it should be fixed upstream in next version
-    (
-      fetchpatch {
-        url = "https://github.com/scribusproject/scribus/commit/3742559924136c2471ab15081c5b600dd5feaeb0.patch";
-        sha256 = "1d72h7jbajy9w83bnxmhn1ca947hpfxnfbmq30g5ljlj824c7y9y";
-      }
-    )
+    (fetchpatch {
+      url = "https://github.com/scribusproject/scribus/commit/3742559924136c2471ab15081c5b600dd5feaeb0.patch";
+      sha256 = "1d72h7jbajy9w83bnxmhn1ca947hpfxnfbmq30g5ljlj824c7y9y";
+    })
+    # Formating changes needed for the Poppler 0.86 patch to apply
+    (fetchpatch {
+      url = "https://github.com/scribusproject/scribus/commit/58613b5ce44335f202a55ab15ed303d97fe274cb.patch";
+      sha256 = "qwmVAZVYCijLNMVGwnOLJE8223vcRwPWfEvNKiDjw5o=";
+    })
+    (fetchpatch {
+      url = "https://github.com/scribusproject/scribus/commit/24aba508aac3f672f5f8cd629744a3b71e58ec37.patch";
+      sha256 = "sha256-OY+EIiGBTg2aIAmZOnkI8DPZVZYqFZAKnD7ychge1Dw=";
+      includes = [ "scribus/plugins/import/pdf/*" ];
+    })
+    # fix build with Poppler 0.86
+    (fetchpatch {
+      url = "https://github.com/scribusproject/scribus/commit/67f8771aaff2f55d61b8246f420e762f4b526944.patch";
+      sha256 = "51z+BYKhbH8a9dFph8X60NGpiogSb+5tOhW2d+m/X9M=";
+    })
   ];
 
   enableParallelBuilding = true;
@@ -104,7 +116,7 @@ mkDerivation rec {
     ];
     platforms = platforms.linux;
     description = "Desktop Publishing (DTP) and Layout program for Linux";
-    homepage = "http://www.scribus.net";
+    homepage = "https://www.scribus.net";
     # There are a lot of licenses... https://github.com/scribusproject/scribus/blob/20508d69ca4fc7030477db8dee79fd1e012b52d2/COPYING#L15-L19
     license = with licenses; [
       bsd3
diff --git a/pkgs/applications/office/skanlite/default.nix b/pkgs/applications/office/skanlite/default.nix
index d4c1df75709b..3c97c145c74b 100644
--- a/pkgs/applications/office/skanlite/default.nix
+++ b/pkgs/applications/office/skanlite/default.nix
@@ -23,7 +23,7 @@ in mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "KDE simple image scanning application";
-    homepage    = http://www.kde.org/applications/graphics/skanlite/;
+    homepage    = "http://www.kde.org/applications/graphics/skanlite/";
     license = licenses.gpl2;
     maintainers = with maintainers; [ pshendry ];
     platforms   = platforms.linux;
diff --git a/pkgs/applications/office/skrooge/default.nix b/pkgs/applications/office/skrooge/default.nix
index 1db5ce16fe53..f3e6f6229969 100644
--- a/pkgs/applications/office/skrooge/default.nix
+++ b/pkgs/applications/office/skrooge/default.nix
@@ -36,6 +36,6 @@ mkDerivation rec {
     description = "A personal finances manager, powered by KDE";
     license = with licenses; [ gpl3 ];
     maintainers = with maintainers; [ joko ];
-    homepage = https://skrooge.org/;
+    homepage = "https://skrooge.org/";
   };
 }
diff --git a/pkgs/applications/office/softmaker/desktop_items.nix b/pkgs/applications/office/softmaker/desktop_items.nix
index 6975da064566..614c6574faa2 100644
--- a/pkgs/applications/office/softmaker/desktop_items.nix
+++ b/pkgs/applications/office/softmaker/desktop_items.nix
@@ -4,10 +4,10 @@
   planmaker = makeDesktopItem {
     name = "${pname}-planmaker";
     desktopName = "${suiteName} PlanMaker";
-    icon = "${pname}-pml.png";
-    categories = "Application;Office;SpreadSheet;";
+    icon = "${pname}-pml";
+    categories = "Office;";
     exec = "${pname}-planmaker %F";
-    mimeType = "application/x-pmd;application/x-pmdx;application/x-pmv;application/excel;application/x-excel;application/x-ms-excel;application/x-msexcel;application/x-sylk;application/x-xls;application/xls;application/vnd.ms-excel;application/vnd.stardivision.calc;application/vnd.openxmlformats-officedocument.spreadsheetml.sheet;application/vnd.openxmlformats-officedocument.spreadsheetml.template;application/vnd.ms-excel.sheet.macroenabled.12;application/vnd.openxmlformats-officedocument.spreadsheetml.template;application/vnd.ms-excel.template.macroEnabled.12;application/x-dif;text/spreadsheet;text/csv;application/x-prn;application/vnd.ms-excel.sheet.binary.macroenabled.12;";
+    mimeType = "application/x-pmd;application/x-pmdx;application/x-pmv;application/excel;application/x-excel;application/x-ms-excel;application/x-msexcel;application/x-sylk;application/x-xls;application/xls;application/vnd.ms-excel;application/vnd.stardivision.calc;application/vnd.openxmlformats-officedocument.spreadsheetml.sheet;application/vnd.openxmlformats-officedocument.spreadsheetml.template;application/vnd.ms-excel.sheet.macroenabled.12;application/vnd.ms-excel.template.macroEnabled.12;application/x-dif;text/spreadsheet;text/csv;application/x-prn;application/vnd.ms-excel.sheet.binary.macroenabled.12;";
     extraEntries = ''
       TryExec=${pname}-planmaker
       StartupWMClass=pm
@@ -17,8 +17,8 @@
   presentations = makeDesktopItem {
     name = "${pname}-presentations";
     desktopName = "${suiteName} Presentations";
-    icon = "${pname}-prl.png";
-    categories = "Application;Office;Presentation;";
+    icon = "${pname}-prl";
+    categories = "Office;";
     exec = "${pname}-presentations %F";
     mimeType = "application/x-prdx;application/x-prvx;application/x-prsx;application/x-prd;application/x-prv;application/x-prs;application/ppt;application/mspowerpoint;application/vnd.ms-powerpoint;application/vnd.openxmlformats-officedocument.presentationml.presentation;application/vnd.ms-powerpoint.presentation.macroenabled.12;application/vnd.openxmlformats-officedocument.presentationml.template;application/vnd.ms-powerpoint.template.macroEnabled.12;application/vnd.ms-powerpoint.slideshow.macroenabled.12;application/vnd.openxmlformats-officedocument.presentationml.slideshow;";
     extraEntries = ''
@@ -30,8 +30,8 @@
   textmaker = makeDesktopItem {
     name = "${pname}-textmaker";
     desktopName = "${suiteName} TextMaker";
-    icon = "${pname}-tml.png";
-    categories = "Application;Office;WordProcessor;";
+    icon = "${pname}-tml";
+    categories = "Office;";
     exec = "${pname}-textmaker %F";
     mimeType = "application/x-tmdx;application/x-tmvx;application/x-tmd;application/x-tmv;application/msword;application/vnd.ms-word;application/x-doc;text/rtf;application/rtf;application/vnd.oasis.opendocument.text;application/vnd.oasis.opendocument.text-template;application/vnd.stardivision.writer;application/vnd.sun.xml.writer;application/vnd.sun.xml.writer.template;application/vnd.openxmlformats-officedocument.wordprocessingml.document;application/vnd.ms-word.document.macroenabled.12;application/vnd.openxmlformats-officedocument.wordprocessingml.template;application/vnd.ms-word.template.macroenabled.12;application/x-pocket-word;application/x-dbf;application/msword-template;";
     extraEntries = ''
diff --git a/pkgs/applications/office/softmaker/freeoffice.nix b/pkgs/applications/office/softmaker/freeoffice.nix
index ff54f8ff90f0..d9f901ff4635 100644
--- a/pkgs/applications/office/softmaker/freeoffice.nix
+++ b/pkgs/applications/office/softmaker/freeoffice.nix
@@ -2,13 +2,13 @@
 
 callPackage ./generic.nix (args // rec {
   pname = "freeoffice";
-  version = "973";
+  version = "976";
   edition = "2018";
   suiteName = "FreeOffice";
 
   src = fetchurl {
     url = "https://www.softmaker.net/down/softmaker-freeoffice-${version}-amd64.tgz";
-    sha256 = "0xac4ynf1lfh8qmni5bhp4ybaamdfngva4bqaq21n1m4pgrx1ba5";
+    sha256 = "13yh4lyqakbdqf4r8vw8imy5gwpfva697iqfd85qmp3wimqvzskl";
   };
 
   archive = "freeoffice${edition}.tar.lzma";
diff --git a/pkgs/applications/office/softmaker/softmaker_office.nix b/pkgs/applications/office/softmaker/softmaker_office.nix
index ed4903d64743..77634efebe82 100644
--- a/pkgs/applications/office/softmaker/softmaker_office.nix
+++ b/pkgs/applications/office/softmaker/softmaker_office.nix
@@ -2,13 +2,13 @@
 
 callPackage ./generic.nix (args // rec {
   pname = "softmaker-office";
-  version = "974";
+  version = "976";
   edition = "2018";
   suiteName = "SoftMaker Office";
 
   src = fetchurl {
     url = "https://www.softmaker.net/down/softmaker-office-${edition}-${version}-amd64.tgz";
-    sha256 = "0z1g76lhja92s25x6y0h55wmqza2d3pjbshn5b9rn2784gjgj7hn";
+    sha256 = "0j6zm0cbxrcgm7glk84hvvbp4z0ys6v8bkwwhl5r7dbphyi72fw8";
   };
 
   archive = "office${edition}.tar.lzma";
diff --git a/pkgs/applications/office/spice-up/default.nix b/pkgs/applications/office/spice-up/default.nix
index 07a3b26a1a85..8afd459c42be 100644
--- a/pkgs/applications/office/spice-up/default.nix
+++ b/pkgs/applications/office/spice-up/default.nix
@@ -68,7 +68,7 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "Create simple and beautiful presentations";
-    homepage = https://github.com/Philip-Scott/Spice-up;
+    homepage = "https://github.com/Philip-Scott/Spice-up";
     maintainers = with maintainers; [ samdroid-apps kjuvi ] ++ pantheon.maintainers;
     platforms = platforms.linux;
     # The COPYING file has GPLv3; some files have GPLv2+ and some have GPLv3+
diff --git a/pkgs/applications/office/tagainijisho/default.nix b/pkgs/applications/office/tagainijisho/default.nix
index 24542041cc87..d826b9f54f6a 100644
--- a/pkgs/applications/office/tagainijisho/default.nix
+++ b/pkgs/applications/office/tagainijisho/default.nix
@@ -3,7 +3,7 @@
 stdenv.mkDerivation {
   name = "tagainijisho-1.0.3";
   src = fetchurl {
-    url = https://github.com/Gnurou/tagainijisho/releases/download/1.0.3/tagainijisho-1.0.3.tar.gz;
+    url = "https://github.com/Gnurou/tagainijisho/releases/download/1.0.3/tagainijisho-1.0.3.tar.gz";
     sha256 = "0kmg1940yiqfm4vpifyj680283ids4nsij9s750nrshwxiwwbqvg";
   };
 
@@ -11,7 +11,7 @@ stdenv.mkDerivation {
 
   meta = with stdenv.lib; {
     description = "A free, open-source Japanese dictionary and kanji lookup tool";
-    homepage = https://www.tagaini.net/;
+    homepage = "https://www.tagaini.net/";
     license = with licenses; [
       /* program */ gpl3Plus
       /* data */ cc-by-sa-30
diff --git a/pkgs/applications/office/timetrap/Gemfile.lock b/pkgs/applications/office/timetrap/Gemfile.lock
index 9f2ea82cee05..30e48b7febbe 100644
--- a/pkgs/applications/office/timetrap/Gemfile.lock
+++ b/pkgs/applications/office/timetrap/Gemfile.lock
@@ -2,12 +2,12 @@ GEM
   remote: https://rubygems.org/
   specs:
     chronic (0.10.2)
-    sequel (4.43.0)
-    sqlite3 (1.3.13)
-    timetrap (1.15.1)
+    sequel (5.30.0)
+    sqlite3 (1.4.2)
+    timetrap (1.15.2)
       chronic (~> 0.10.2)
-      sequel (~> 4.43.0)
-      sqlite3 (~> 1.3.3)
+      sequel (~> 5.30.0)
+      sqlite3 (~> 1.4.2)
 
 PLATFORMS
   ruby
@@ -16,4 +16,4 @@ DEPENDENCIES
   timetrap
 
 BUNDLED WITH
-   1.17.2
+   2.1.4
diff --git a/pkgs/applications/office/timetrap/default.nix b/pkgs/applications/office/timetrap/default.nix
index 6d094ecb5dcc..579c9e115be8 100644
--- a/pkgs/applications/office/timetrap/default.nix
+++ b/pkgs/applications/office/timetrap/default.nix
@@ -9,7 +9,7 @@ bundlerApp {
 
   meta = with lib; {
     description = "A simple command line time tracker written in ruby";
-    homepage    = https://github.com/samg/timetrap;
+    homepage    = "https://github.com/samg/timetrap";
     license     = licenses.mit;
     maintainers = with maintainers; [ jerith666 manveru nicknovitski ];
     platforms   = platforms.unix;
diff --git a/pkgs/applications/office/timetrap/gemset.nix b/pkgs/applications/office/timetrap/gemset.nix
index 1ea489b92c3f..65ab4ade9e0a 100644
--- a/pkgs/applications/office/timetrap/gemset.nix
+++ b/pkgs/applications/office/timetrap/gemset.nix
@@ -14,20 +14,20 @@
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "121z4sq2m4vsgxwy8hs6d12cc1i4xa5rjiv0nbviyj87jldxapw0";
+      sha256 = "0gqqnqrfayhwhkp0vy3frv68sgc7klyd6mfisx1j3djjvlyc7hmr";
       type = "gem";
     };
-    version = "4.43.0";
+    version = "5.30.0";
   };
   sqlite3 = {
     groups = ["default"];
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "01ifzp8nwzqppda419c9wcvr8n82ysmisrs0hph9pdmv1lpa4f5i";
+      sha256 = "0lja01cp9xd5m6vmx99zwn4r7s97r1w5cb76gqd8xhbm1wxyzf78";
       type = "gem";
     };
-    version = "1.3.13";
+    version = "1.4.2";
   };
   timetrap = {
     dependencies = ["chronic" "sequel" "sqlite3"];
@@ -35,9 +35,9 @@
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "0ylaz9q99hbxnw6h1df6wphmh68fj847d1l4f9jylcx3nzzp5cyd";
+      sha256 = "0pfg5c3kmh1jfaaszw253bi93ixa6cznqmsafrcpccrdg9r8j2k8";
       type = "gem";
     };
-    version = "1.15.1";
+    version = "1.15.2";
   };
 }
\ No newline at end of file
diff --git a/pkgs/applications/office/todo.txt-cli/default.nix b/pkgs/applications/office/todo.txt-cli/default.nix
index edb2c778a0a5..d711440fc340 100644
--- a/pkgs/applications/office/todo.txt-cli/default.nix
+++ b/pkgs/applications/office/todo.txt-cli/default.nix
@@ -21,7 +21,7 @@ in stdenv.mkDerivation {
 
   meta = {
     description = "Simple plaintext todo list manager";
-    homepage = http://todotxt.com;
+    homepage = "http://todotxt.com";
     license = stdenv.lib.licenses.gpl3;
     platforms = stdenv.lib.platforms.all;
   };
diff --git a/pkgs/applications/office/todoman/default.nix b/pkgs/applications/office/todoman/default.nix
index 9aeddf1a021f..e18a11a7448b 100644
--- a/pkgs/applications/office/todoman/default.nix
+++ b/pkgs/applications/office/todoman/default.nix
@@ -42,7 +42,7 @@ buildPythonApplication rec {
   '';
 
   meta = with stdenv.lib; {
-    homepage = https://github.com/pimutils/todoman;
+    homepage = "https://github.com/pimutils/todoman";
     description = "Standards-based task manager based on iCalendar";
     longDescription = ''
       Todoman is a simple, standards-based, cli todo (aka: task) manager. Todos
diff --git a/pkgs/applications/office/treesheets/default.nix b/pkgs/applications/office/treesheets/default.nix
index 000fa7ff1015..d316d4287072 100644
--- a/pkgs/applications/office/treesheets/default.nix
+++ b/pkgs/applications/office/treesheets/default.nix
@@ -48,7 +48,7 @@ stdenv.mkDerivation rec {
       planning, requirements gathering, presentation of information, etc.
     '';
 
-    homepage    = http://strlen.com/treesheets/;
+    homepage    = "http://strlen.com/treesheets/";
     maintainers = with maintainers; [ obadz avery ];
     platforms   = platforms.linux;
     license     = licenses.zlib;
diff --git a/pkgs/applications/office/trilium/default.nix b/pkgs/applications/office/trilium/default.nix
index ee4940928841..fb7f88829f6b 100644
--- a/pkgs/applications/office/trilium/default.nix
+++ b/pkgs/applications/office/trilium/default.nix
@@ -13,13 +13,23 @@ let
 
   meta = with stdenv.lib; {
     inherit description;
-    homepage = https://github.com/zadam/trilium;
+    homepage = "https://github.com/zadam/trilium";
     license = licenses.agpl3;
     platforms = [ "x86_64-linux" ];
     maintainers = with maintainers; [ emmanuelrosa dtzWill kampka ];
   };
 
-  version = "0.39.4";
+  version = "0.42.1";
+
+  desktopSource = {
+    url = "https://github.com/zadam/trilium/releases/download/v${version}/trilium-linux-x64-${version}.tar.xz";
+    sha256 = "0xcbkm6z1a0jh3qywlwcjk6l302cxgdfcq8sw30vbnz99cyarpvz";
+  };
+
+  serverSource = {
+    url = "https://github.com/zadam/trilium/releases/download/v${version}/trilium-linux-x64-server-${version}.tar.xz";
+    sha256 = "012l36z0n3fcdajj3v4w2bcb1619sdhg6cvy3y89b6rxl0h2wdiw";
+  };
 
 in {
   
@@ -28,16 +38,13 @@ in {
     inherit version;
     inherit meta;
 
-    src = fetchurl {
-      url = "https://github.com/zadam/trilium/releases/download/v${version}/trilium-linux-x64-${version}.tar.xz";
-      sha256 = "18wrnm13k0gg6aljpf6k7c5zia81zzkqc0sa1pgz0yzczydsfaa9";
-    };
+    src = fetchurl desktopSource;
   
     # Fetch from source repo, no longer included in release.
     # (they did special-case icon.png but we want the scalable svg)
     # Use the version here to ensure we get any changes.
     trilium_svg = fetchurl {
-      url = "https://raw.githubusercontent.com/zadam/trilium/v${version}/src/public/images/trilium.svg";
+      url = "https://raw.githubusercontent.com/zadam/trilium/v${version}/images/trilium.svg";
       sha256 = "1rgj7pza20yndfp8n12k93jyprym02hqah36fkk2b3if3kcmwnfg";
     };
   
@@ -76,10 +83,7 @@ in {
     inherit version;
     inherit meta;
 
-    src = fetchurl {
-      url = "https://github.com/zadam/trilium/releases/download/v${version}/trilium-linux-x64-server-${version}.tar.xz";
-      sha256 = "06svdp25031p665pvlxdz10malvhxpczzrg90hpr1zymm6v8van3";
-    };
+    src = fetchurl serverSource;
 
     nativeBuildInputs = [
       autoPatchelfHook
diff --git a/pkgs/applications/office/tryton/default.nix b/pkgs/applications/office/tryton/default.nix
index b9f1465af179..d0c5eb4e7b2e 100644
--- a/pkgs/applications/office/tryton/default.nix
+++ b/pkgs/applications/office/tryton/default.nix
@@ -70,7 +70,7 @@ python3Packages.buildPythonApplication rec {
       It is the core base of a complete business solution providing
       modularity, scalability and security.
     '';
-    homepage = http://www.tryton.org/;
+    homepage = "http://www.tryton.org/";
     license = licenses.gpl3Plus;
     maintainers = with maintainers; [ johbo udono ];
   };
diff --git a/pkgs/applications/office/trytond/default.nix b/pkgs/applications/office/trytond/default.nix
index dc63acd6db64..c45562a0c8dd 100644
--- a/pkgs/applications/office/trytond/default.nix
+++ b/pkgs/applications/office/trytond/default.nix
@@ -45,7 +45,7 @@ python2Packages.buildPythonApplication rec {
       It is the core base of a complete business solution providing
       modularity, scalability and security.
     '';
-    homepage = http://www.tryton.org/;
+    homepage = "http://www.tryton.org/";
     license = licenses.gpl3Plus;
     maintainers = with maintainers; [ udono johbo ];
   };
diff --git a/pkgs/applications/office/tudu/default.nix b/pkgs/applications/office/tudu/default.nix
index a4734f454605..cb3b2111372b 100644
--- a/pkgs/applications/office/tudu/default.nix
+++ b/pkgs/applications/office/tudu/default.nix
@@ -13,7 +13,7 @@ stdenv.mkDerivation rec {
 
   meta = {
     description = "ncurses-based hierarchical todo list manager with vim-like keybindings";
-    homepage = https://code.meskio.net/tudu/;
+    homepage = "https://code.meskio.net/tudu/";
     license = stdenv.lib.licenses.gpl3;
     platforms = stdenv.lib.platforms.linux;
   };
diff --git a/pkgs/applications/office/watson/default.nix b/pkgs/applications/office/watson/default.nix
index 7d79d79072a9..52c94ce378e1 100644
--- a/pkgs/applications/office/watson/default.nix
+++ b/pkgs/applications/office/watson/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, pythonPackages, fetchpatch }:
+{ stdenv, pythonPackages, fetchpatch, installShellFiles }:
 
 with pythonPackages;
 
@@ -14,15 +14,21 @@ buildPythonApplication rec {
 
   checkPhase = ''
     pytest -vs tests
- '';
+  '';
+
+  postInstall = ''
+    installShellCompletion --bash --name watson watson.completion
+    installShellCompletion --zsh --name _watson watson.zsh-completion
+  '';
 
   checkInputs = [ py pytest pytest-datafiles mock pytest-mock pytestrunner ];
   propagatedBuildInputs = [ requests click arrow ];
+  nativeBuildInputs = [ installShellFiles ];
 
   meta = with stdenv.lib; {
-    homepage = https://tailordev.github.io/Watson/;
+    homepage = "https://tailordev.github.io/Watson/";
     description = "A wonderful CLI to track your time!";
     license = licenses.mit;
-    maintainers = with maintainers; [ mguentner nathyong ] ;
+    maintainers = with maintainers; [ mguentner nathyong ];
   };
 }
diff --git a/pkgs/applications/office/wordgrinder/default.nix b/pkgs/applications/office/wordgrinder/default.nix
index 199f17afda79..c2ccbabe2f16 100644
--- a/pkgs/applications/office/wordgrinder/default.nix
+++ b/pkgs/applications/office/wordgrinder/default.nix
@@ -51,7 +51,7 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "Text-based word processor";
-    homepage = https://cowlark.com/wordgrinder;
+    homepage = "https://cowlark.com/wordgrinder";
     license = licenses.mit;
     maintainers = with maintainers; [ matthiasbeyer ];
     platforms = with stdenv.lib.platforms; linux ++ darwin;
diff --git a/pkgs/applications/office/wpsoffice/default.nix b/pkgs/applications/office/wpsoffice/default.nix
index 7032632da884..2d8f4d18621c 100644
--- a/pkgs/applications/office/wpsoffice/default.nix
+++ b/pkgs/applications/office/wpsoffice/default.nix
@@ -1,67 +1,112 @@
-{ stdenv, fetchurl
-, libX11, glib, xorg, fontconfig, freetype
-, zlib, libpng12, libICE, libXrender, cups
-, alsaLib, atk, cairo, dbus, expat
-, gdk-pixbuf, gtk2-x11, lzma, pango, zotero
-, sqlite, libuuid, qt5, dpkg }:
+{ stdenv
+, mkDerivation
+, fetchurl
+, autoPatchelfHook
+, dpkg
+, wrapGAppsHook
+, wrapQtAppsHook
+, alsaLib
+, atk
+, bzip2
+, cairo
+, cups
+, dbus
+, expat
+, ffmpeg_3
+, fontconfig
+, freetype
+, gdk-pixbuf
+, glib
+, gperftools
+, gtk2-x11
+, libpng12
+, libtool
+, libuuid
+, libxml2
+, lzma
+, nspr
+, nss
+, openssl
+, pango
+, qt4
+, qtbase
+, sqlite
+, unixODBC
+, xorg
+, zlib
+}:
 
 stdenv.mkDerivation rec{
   pname = "wpsoffice";
-  version = "11.1.0.9080";
+  version = "11.1.0.9505";
 
   src = fetchurl {
-    url = "http://wdl1.pcfg.cache.wpscdn.com/wpsdl/wpsoffice/download/linux/9080/wps-office_11.1.0.9080.XA_amd64.deb";
-    sha256 = "1731e9aea22ef4e558ad66b1373d863452b4f570aecf09d448ae28a821333454";
+    url = "http://wdl1.pcfg.cache.wpscdn.com/wpsdl/wpsoffice/download/linux/9505/wps-office_11.1.0.9505.XA_amd64.deb";
+    sha256 = "1bvaxwd3npw3kswk7k1p6mcbfg37x0ym4sp6xis6ykz870qivqk5";
   };
   unpackCmd = "dpkg -x $src .";
   sourceRoot = ".";
 
-  nativeBuildInputs = [ qt5.wrapQtAppsHook dpkg ];
+  postUnpack = stdenv.lib.optionalString (version == "11.1.0.9505") ''
+    # distribution is missing libjsapiservice.so, so we should not let
+    # autoPatchelfHook fail on the following dead libraries
+    rm opt/kingsoft/wps-office/office6/{libjsetapi.so,libjswppapi.so,libjswpsapi.so}
+  '';
+
+  nativeBuildInputs = [ autoPatchelfHook dpkg wrapGAppsHook wrapQtAppsHook ];
 
   meta = {
     description = "Office program originally named Kingsoft Office";
-    homepage = http://wps-community.org/;
-    platforms = [ "i686-linux" "x86_64-linux" ];
+    homepage = "http://wps-community.org/";
+    platforms = [ "x86_64-linux" ];
     hydraPlatforms = [];
     license = stdenv.lib.licenses.unfreeRedistributable;
     maintainers = [ stdenv.lib.maintainers.mlatus ];
   };
 
-  libPath = with xorg; stdenv.lib.makeLibraryPath [
-    libX11
-    libpng12
-    glib
-    libSM
-    libXext
-    fontconfig
-    zlib
-    freetype
-    libICE
-    cups
-    libXrender
-    libxcb
-
+  buildInputs = with xorg; [
     alsaLib
     atk
+    bzip2
     cairo
-    dbus.daemon.lib
+    dbus.lib
     expat
-    fontconfig.lib
+    ffmpeg_3
+    fontconfig
+    freetype
     gdk-pixbuf
+    glib
+    gperftools
     gtk2-x11
-    lzma
-    pango
-    zotero
-    sqlite
-    libuuid
+    libICE
+    libSM
+    libX11
+    libX11
+    libXScrnSaver
     libXcomposite
     libXcursor
     libXdamage
+    libXext
     libXfixes
     libXi
     libXrandr
-    libXScrnSaver
+    libXrender
     libXtst
+    libpng12
+    libtool
+    libuuid
+    libxcb
+    libxml2
+    lzma
+    nspr
+    nss
+    openssl
+    pango
+    qt4
+    qtbase
+    sqlite
+    unixODBC
+    zlib
   ];
 
   dontPatchELF = true;
@@ -70,25 +115,59 @@ stdenv.mkDerivation rec{
   # references to nix own build directory
   noAuditTmpdir = true;
 
+  unvendoredLibraries = [
+    # Have to use parts of the vendored qt4
+    #"Qt"
+    "SDL2"
+    "bz2"
+    "avcodec"
+    "avdevice"
+    "avformat"
+    "avutil"
+    "swresample"
+    "swscale"
+    "jpeg"
+    "png"
+    # File saving breaks unless we are using vendored llvmPackages_8.libcxx
+    #"c++"
+    "ssl" "crypto"
+    "nspr"
+    "nss"
+    "odbc"
+    "tcmalloc" # gperftools
+  ];
+
   installPhase = ''
     prefix=$out/opt/kingsoft/wps-office
     mkdir -p $out
     cp -r opt $out
     cp -r usr/* $out
-    # Avoid forbidden reference error due use of patchelf
-    rm -r *
+    for lib in $unvendoredLibraries; do
+      rm -v "$prefix/office6/lib$lib"*.so{,.*}
+    done
     for i in wps wpp et wpspdf; do
-      patchelf \
-        --set-interpreter "$(cat $NIX_CC/nix-support/dynamic-linker)" \
-        --force-rpath --set-rpath "$(patchelf --print-rpath $prefix/office6/$i):${stdenv.cc.cc.lib}/lib64:${libPath}" \
-        $prefix/office6/$i
       substituteInPlace $out/bin/$i \
         --replace /opt/kingsoft/wps-office $prefix
     done
     for i in $out/share/applications/*;do
       substituteInPlace $i \
-        --replace /usr/bin $out/bin \
-        --replace /opt/kingsoft/wps-office $prefix
+        --replace /usr/bin $out/bin
+    done
+  '';
+
+  runtimeLibPath = stdenv.lib.makeLibraryPath [
+    cups.lib
+  ];
+
+  dontWrapQtApps = true;
+  dontWrapGApps = true;
+  postFixup = ''
+    for f in "$out"/bin/*; do
+      echo "Wrapping $f"
+      wrapProgram "$f" \
+        "''${gappsWrapperArgs[@]}" \
+        "''${qtWrapperArgs[@]}" \
+        --suffix LD_LIBRARY_PATH : "$runtimeLibPath"
     done
   '';
-}
\ No newline at end of file
+}
diff --git a/pkgs/applications/office/zanshin/default.nix b/pkgs/applications/office/zanshin/default.nix
index b4adc947c4d1..18e762974964 100644
--- a/pkgs/applications/office/zanshin/default.nix
+++ b/pkgs/applications/office/zanshin/default.nix
@@ -28,7 +28,7 @@ mkDerivation rec {
 
   meta = with lib; {
     description = "A powerful yet simple application to manage your day to day actions, getting your mind like water";
-    homepage = https://zanshin.kde.org/;
+    homepage = "https://zanshin.kde.org/";
     maintainers = with maintainers; [ zraexy ];
     platforms = platforms.linux;
     license = licenses.gpl2Plus;
diff --git a/pkgs/applications/office/zim/default.nix b/pkgs/applications/office/zim/default.nix
index 075552b1ec4f..ba6351da1ddd 100644
--- a/pkgs/applications/office/zim/default.nix
+++ b/pkgs/applications/office/zim/default.nix
@@ -34,7 +34,7 @@ python3Packages.buildPythonApplication rec {
 
   meta = with stdenv.lib; {
     description = "A desktop wiki";
-    homepage = http://zim-wiki.org;
+    homepage = "http://zim-wiki.org";
     license = licenses.gpl2Plus;
     maintainers = with maintainers; [ pSub ];
     broken = stdenv.isDarwin; # https://github.com/NixOS/nixpkgs/pull/52658#issuecomment-449565790
diff --git a/pkgs/applications/office/zotero/default.nix b/pkgs/applications/office/zotero/default.nix
index f24cc014cddb..8a27dcd3c9fc 100644
--- a/pkgs/applications/office/zotero/default.nix
+++ b/pkgs/applications/office/zotero/default.nix
@@ -35,17 +35,18 @@
 
 stdenv.mkDerivation rec {
   pname = "zotero";
-  version = "5.0.82";
+  version = "5.0.83";
 
   src = fetchurl {
     url = "https://download.zotero.org/client/release/${version}/Zotero-${version}_linux-x86_64.tar.bz2";
-    sha256 = "02a9dlsdd7dh56dwvsjskr899bqi8ijcvzc71xcjwaik6rp8xw88";
+    sha256 = "1abkwxdi154hnry8nsvxbklvbsnvd7cs2as0041h2kbiz824pv31";
   };
 
-  buildInputs= [ wrapGAppsHook gsettings-desktop-schemas gtk3 gnome3.adwaita-icon-theme dconf ];
-
-  phases = [ "unpackPhase" "patchPhase" "installPhase" "fixupPhase" ];
+  nativeBuildInputs = [ wrapGAppsHook ];
+  buildInputs= [ gsettings-desktop-schemas glib gtk3 gnome3.adwaita-icon-theme dconf ];
 
+  dontConfigure = true;
+  dontBuild = true;
   dontStrip = true;
   dontPatchELF = true;
 
@@ -131,7 +132,7 @@ stdenv.mkDerivation rec {
   '';
 
   meta = with stdenv.lib; {
-    homepage = https://www.zotero.org;
+    homepage = "https://www.zotero.org";
     description = "Collect, organize, cite, and share your research sources";
     license = licenses.agpl3;
     platforms = platforms.linux;
diff --git a/pkgs/applications/radio/airspy/default.nix b/pkgs/applications/radio/airspy/default.nix
index 0a313c35a182..67a59b68cd5b 100644
--- a/pkgs/applications/radio/airspy/default.nix
+++ b/pkgs/applications/radio/airspy/default.nix
@@ -1,36 +1,33 @@
 { stdenv, lib, fetchFromGitHub
-, cmake , pkgconfig, libusb
+, cmake , pkgconfig, libusb1
 }:
 
-let
+stdenv.mkDerivation rec {
+  pname = "airspy";
   version = "1.0.9";
-in
-  stdenv.mkDerivation {
-    pname = "airspy";
-    inherit version;
 
-    src = fetchFromGitHub {
-      owner = "airspy";
-      repo = "airspyone_host";
-      rev = "v${version}";
-      sha256 = "04kx2p461sqd4q354n1a99zcabg9h29dwcnyhakykq8bpg3mgf1x";
-    };
+  src = fetchFromGitHub {
+    owner = "airspy";
+    repo = "airspyone_host";
+    rev = "v${version}";
+    sha256 = "04kx2p461sqd4q354n1a99zcabg9h29dwcnyhakykq8bpg3mgf1x";
+  };
 
-    postPatch = ''
-      substituteInPlace airspy-tools/CMakeLists.txt --replace "/etc/udev/rules.d" "$out/etc/udev/rules.d"
-    '';
+  postPatch = ''
+    substituteInPlace airspy-tools/CMakeLists.txt --replace "/etc/udev/rules.d" "$out/etc/udev/rules.d"
+  '';
 
-    nativeBuildInputs = [ cmake pkgconfig ];
-    buildInputs = [ libusb ];
+  nativeBuildInputs = [ cmake pkgconfig ];
+  buildInputs = [ libusb1 ];
 
-    cmakeFlags =
-      lib.optionals stdenv.isLinux [ "-DINSTALL_UDEV_RULES=ON" ];
+  cmakeFlags =
+    lib.optionals stdenv.isLinux [ "-DINSTALL_UDEV_RULES=ON" ];
 
-    meta = with stdenv.lib; {
-      homepage = https://github.com/airspy/airspyone_host;
-      description = "Host tools and driver library for the AirSpy SDR";
-      license = licenses.bsd3;
-      platforms = with platforms; linux ++ darwin;
-      maintainers = with maintainers; [ markuskowa ];
-    };
-  }
+  meta = with stdenv.lib; {
+    homepage = "https://github.com/airspy/airspyone_host";
+    description = "Host tools and driver library for the AirSpy SDR";
+    license = licenses.bsd3;
+    platforms = with platforms; linux ++ darwin;
+    maintainers = with maintainers; [ markuskowa ];
+  };
+}
diff --git a/pkgs/applications/radio/aldo/default.nix b/pkgs/applications/radio/aldo/default.nix
index fc38f6be4cca..df52531a518d 100644
--- a/pkgs/applications/radio/aldo/default.nix
+++ b/pkgs/applications/radio/aldo/default.nix
@@ -13,7 +13,7 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "Morse code training program";
-    homepage = http://aldo.nongnu.org/;
+    homepage = "http://aldo.nongnu.org/";
     license = licenses.gpl3Plus;
     maintainers = with maintainers; [ etu ];
     platforms = platforms.linux;
diff --git a/pkgs/applications/radio/chirp/default.nix b/pkgs/applications/radio/chirp/default.nix
index f88687b076e0..898244970c89 100644
--- a/pkgs/applications/radio/chirp/default.nix
+++ b/pkgs/applications/radio/chirp/default.nix
@@ -4,11 +4,11 @@
 }:
 python2.pkgs.buildPythonApplication rec {
   pname = "chirp-daily";
-  version = "20200213";
+  version = "20200409";
 
   src = fetchurl {
     url = "https://trac.chirp.danplanet.com/chirp_daily/daily-${version}/${pname}-${version}.tar.gz";
-    sha256 = "189kg3425wggib1cggcj49bk01pq3j4b8mks7najpp1rjsl5f2i1";
+    sha256 = "16zhwg2xmp5kpqx5isavwwkfq1212zgfj8gbp453ngjcrvp3m4lq";
   };
 
   propagatedBuildInputs = with python2.pkgs; [
@@ -17,7 +17,7 @@ python2.pkgs.buildPythonApplication rec {
 
   meta = with stdenv.lib; {
     description = "A free, open-source tool for programming your amateur radio";
-    homepage = https://chirp.danplanet.com/;
+    homepage = "https://chirp.danplanet.com/";
     license = licenses.gpl3;
     platforms = platforms.linux;
     maintainers = [ maintainers.the-kenny ];
diff --git a/pkgs/applications/radio/cubicsdr/default.nix b/pkgs/applications/radio/cubicsdr/default.nix
index 14badd6c55c5..ef4d68af54c6 100644
--- a/pkgs/applications/radio/cubicsdr/default.nix
+++ b/pkgs/applications/radio/cubicsdr/default.nix
@@ -19,7 +19,7 @@ stdenv.mkDerivation rec {
     ++ stdenv.lib.optional enableDigitalLab "-DENABLE_DIGITAL_LAB=ON";
 
   meta = with stdenv.lib; {
-    homepage = https://cubicsdr.com;
+    homepage = "https://cubicsdr.com";
     description = "Software Defined Radio application";
     license = licenses.gpl2Plus;
     maintainers = with maintainers; [ lasandell ];
diff --git a/pkgs/applications/radio/dablin/default.nix b/pkgs/applications/radio/dablin/default.nix
index fba63362ab6e..287649ddbe1e 100644
--- a/pkgs/applications/radio/dablin/default.nix
+++ b/pkgs/applications/radio/dablin/default.nix
@@ -4,13 +4,13 @@
 
 stdenv.mkDerivation rec {
   pname = "dablin";
-  version = "1.12.0";
+  version = "1.13.0";
 
   src = fetchFromGitHub {
     owner = "Opendigitalradio";
     repo = "dablin";
     rev = version;
-    sha256 = "0d514ixz062xyyh4k3laxwhn3k3a1l4jq4w7rxf8x46d3743zrf7";
+    sha256 = "0143jnhwwh4din6mlrkbm8m2wm8vnrlk0yk9r5qcvj70r2314bgq";
   };
 
   nativeBuildInputs = [ cmake pkgconfig ];
@@ -19,7 +19,7 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "Play DAB/DAB+ from ETI-NI aligned stream";
-    homepage = https://github.com/Opendigitalradio/dablin;
+    homepage = "https://github.com/Opendigitalradio/dablin";
     license = with licenses; [ gpl3 lgpl21 ];
     platforms = platforms.linux;
     maintainers = [ maintainers.markuskowa ];
diff --git a/pkgs/applications/radio/dmrconfig/default.nix b/pkgs/applications/radio/dmrconfig/default.nix
index 68b4cfe8af46..47b72669f8fd 100644
--- a/pkgs/applications/radio/dmrconfig/default.nix
+++ b/pkgs/applications/radio/dmrconfig/default.nix
@@ -34,7 +34,7 @@ stdenv.mkDerivation rec {
     longDescription = ''
       DMRconfig is a utility for programming digital radios via USB programming cable.
     '';
-    homepage = https://github.com/sergev/dmrconfig;
+    homepage = "https://github.com/sergev/dmrconfig";
     license = licenses.asl20;
     maintainers = [ maintainers.etu ];
     platforms = platforms.linux;
diff --git a/pkgs/applications/radio/dump1090/default.nix b/pkgs/applications/radio/dump1090/default.nix
index 0a92bea44e83..01af881d133a 100644
--- a/pkgs/applications/radio/dump1090/default.nix
+++ b/pkgs/applications/radio/dump1090/default.nix
@@ -2,27 +2,27 @@
 , fetchFromGitHub
 , pkgconfig
 , libbladeRF
-, libusb
+, libusb1
 , ncurses
 , rtl-sdr
 }:
 
 stdenv.mkDerivation rec {
   pname = "dump1090";
-  version = "3.7.2";
+  version = "3.8.0";
 
   src = fetchFromGitHub {
     owner = "flightaware";
     repo = pname;
     rev = "v${version}";
-    sha256 = "0vlv9bd805kid202xxkrnl51rh02cyrl055gbcqlqgk51j5rrq8w";
+    sha256 = "0c30x56h79hza9m6b9zp5y28jxx4f4n5xgaaw597l8agcm5iia0p";
   };
 
   nativeBuildInputs = [ pkgconfig ];
 
   buildInputs = [
     libbladeRF
-    libusb
+    libusb1
     ncurses
     rtl-sdr
   ];
diff --git a/pkgs/applications/radio/ebook2cw/default.nix b/pkgs/applications/radio/ebook2cw/default.nix
index 915d0ba84db3..d273594f4c90 100644
--- a/pkgs/applications/radio/ebook2cw/default.nix
+++ b/pkgs/applications/radio/ebook2cw/default.nix
@@ -17,7 +17,7 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "Convert ebooks to Morse MP3s/OGGs";
-    homepage = http://fkurz.net/ham/ebook2cw.html;
+    homepage = "http://fkurz.net/ham/ebook2cw.html";
     license = licenses.gpl2;
     platforms = platforms.all;
     maintainers = with maintainers; [ earldouglas ];
diff --git a/pkgs/applications/radio/fldigi/default.nix b/pkgs/applications/radio/fldigi/default.nix
index b7705cff026f..84908d304dfb 100644
--- a/pkgs/applications/radio/fldigi/default.nix
+++ b/pkgs/applications/radio/fldigi/default.nix
@@ -2,12 +2,12 @@
   libsamplerate, libpulseaudio, libXinerama, gettext, pkgconfig, alsaLib }:
 
 stdenv.mkDerivation rec {
-  version = "4.1.09";
+  version = "4.1.12";
   pname = "fldigi";
 
   src = fetchurl {
     url = "mirror://sourceforge/${pname}/${pname}-${version}.tar.gz";
-    sha256 = "1pdwm8na2yq6wj76057sbfxr5cb5avnm26if8spsp5fkfw9yylwp";
+    sha256 = "1yjjv2ss84xfiaidypp476mhrbpnw4zf7mb5cdqwhdh604x0svr1";
   };
 
   buildInputs = [ libXinerama gettext hamlib fltk14 libjpeg libpng portaudio
@@ -15,7 +15,7 @@ stdenv.mkDerivation rec {
 
   meta = {
     description = "Digital modem program";
-    homepage = https://sourceforge.net/projects/fldigi/;
+    homepage = "https://sourceforge.net/projects/fldigi/";
     license = stdenv.lib.licenses.gpl3Plus;
     maintainers = with stdenv.lib.maintainers; [ relrod ftrvxmtrx ];
     platforms = stdenv.lib.platforms.linux;
diff --git a/pkgs/applications/radio/fllog/default.nix b/pkgs/applications/radio/fllog/default.nix
index 49149a2d82a6..649caae09021 100644
--- a/pkgs/applications/radio/fllog/default.nix
+++ b/pkgs/applications/radio/fllog/default.nix
@@ -25,7 +25,7 @@ stdenv.mkDerivation rec {
 
   meta = {
     description = "Digital modem log program";
-    homepage = https://sourceforge.net/projects/fldigi/;
+    homepage = "https://sourceforge.net/projects/fldigi/";
     license = stdenv.lib.licenses.gpl3Plus;
     maintainers = with stdenv.lib.maintainers; [ dysinger ];
     platforms = stdenv.lib.platforms.linux;
diff --git a/pkgs/applications/radio/flmsg/default.nix b/pkgs/applications/radio/flmsg/default.nix
index 39fbb0de06c0..e437dffa4856 100644
--- a/pkgs/applications/radio/flmsg/default.nix
+++ b/pkgs/applications/radio/flmsg/default.nix
@@ -25,7 +25,7 @@ stdenv.mkDerivation rec {
 
   meta = {
     description = "Digital modem message program";
-    homepage = https://sourceforge.net/projects/fldigi/;
+    homepage = "https://sourceforge.net/projects/fldigi/";
     license = stdenv.lib.licenses.gpl3Plus;
     maintainers = with stdenv.lib.maintainers; [ dysinger ];
     platforms = stdenv.lib.platforms.linux;
diff --git a/pkgs/applications/radio/flrig/default.nix b/pkgs/applications/radio/flrig/default.nix
index 17d579cb45e5..968b2fd0df9b 100644
--- a/pkgs/applications/radio/flrig/default.nix
+++ b/pkgs/applications/radio/flrig/default.nix
@@ -6,12 +6,12 @@
 }:
 
 stdenv.mkDerivation rec {
-  version = "1.3.49";
+  version = "1.3.50";
   pname = "flrig";
 
   src = fetchurl {
     url = "mirror://sourceforge/fldigi/${pname}-${version}.tar.gz";
-    sha256 = "0icfniiw2l7d7gyxrzy87n3ragzvf0ykvq7c10ppf111wl5in295";
+    sha256 = "0fzrknzzi8kmzmrcfpc8rxr7v4a4ny6z6z5q5qwh95sp2kn2qzp9";
   };
 
   buildInputs = [
@@ -25,7 +25,7 @@ stdenv.mkDerivation rec {
 
   meta = {
     description = "Digital modem rig control program";
-    homepage = https://sourceforge.net/projects/fldigi/;
+    homepage = "https://sourceforge.net/projects/fldigi/";
     license = stdenv.lib.licenses.gpl3Plus;
     maintainers = with stdenv.lib.maintainers; [ dysinger ];
     platforms = stdenv.lib.platforms.linux;
diff --git a/pkgs/applications/radio/flwrap/default.nix b/pkgs/applications/radio/flwrap/default.nix
index 6bdab0a925d3..889c212de4e9 100644
--- a/pkgs/applications/radio/flwrap/default.nix
+++ b/pkgs/applications/radio/flwrap/default.nix
@@ -25,7 +25,7 @@ stdenv.mkDerivation rec {
 
   meta = {
     description = "Digital modem file transfer program";
-    homepage = https://sourceforge.net/projects/fldigi/;
+    homepage = "https://sourceforge.net/projects/fldigi/";
     license = stdenv.lib.licenses.gpl3Plus;
     maintainers = with stdenv.lib.maintainers; [ dysinger ];
     platforms = stdenv.lib.platforms.linux;
diff --git a/pkgs/applications/radio/gnss-sdr/default.nix b/pkgs/applications/radio/gnss-sdr/default.nix
index ba37b7ecad22..4e423094e90e 100644
--- a/pkgs/applications/radio/gnss-sdr/default.nix
+++ b/pkgs/applications/radio/gnss-sdr/default.nix
@@ -12,7 +12,7 @@
 , pythonPackages
 , uhd
 , log4cpp
-, openblas
+, blas, lapack
 , matio
 , pugixml
 , protobuf
@@ -20,13 +20,13 @@
 
 stdenv.mkDerivation rec {
   pname = "gnss-sdr";
-  version = "0.0.11";
+  version = "0.0.12";
 
   src = fetchFromGitHub {
     owner = "gnss-sdr";
     repo = "gnss-sdr";
     rev = "v${version}";
-    sha256 = "0ajj0wx68yyzigppxxa1wag3hzkrjj8dqq8k28rj0jhp8a6bw2q7";
+    sha256 = "0i9cz85jc2m758pzy3bq4dk4vj9wv7k2z118lasb09xldx01dwsq";
   };
 
   buildInputs = [
@@ -46,7 +46,7 @@ stdenv.mkDerivation rec {
     # nothing to be gained by leaving it out.
     uhd
     log4cpp
-    openblas
+    blas lapack
     matio
     pugixml
     protobuf
@@ -63,8 +63,8 @@ stdenv.mkDerivation rec {
     # armadillo is built using both, so skip checking for them.
     "-DBLAS=YES"
     "-DLAPACK=YES"
-    "-DBLAS_LIBRARIES=-lopenblas"
-    "-DLAPACK_LIBRARIES=-lopenblas"
+    "-DBLAS_LIBRARIES=-lblas"
+    "-DLAPACK_LIBRARIES=-llapack"
 
     # Similarly, it doesn't actually use gfortran despite checking for
     # its presence.
@@ -73,7 +73,7 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "An open source Global Navigation Satellite Systems software-defined receiver";
-    homepage = https://gnss-sdr.org/;
+    homepage = "https://gnss-sdr.org/";
     license = licenses.gpl3Plus;
     platforms = platforms.linux;
   };
diff --git a/pkgs/applications/radio/gnuradio/ais.nix b/pkgs/applications/radio/gnuradio/ais.nix
index c26d3e77c70d..30c2638a72f8 100644
--- a/pkgs/applications/radio/gnuradio/ais.nix
+++ b/pkgs/applications/radio/gnuradio/ais.nix
@@ -32,7 +32,7 @@ stdenv.mkDerivation {
 
   meta = with stdenv.lib; {
     description = "Gnuradio block for ais";
-    homepage = https://github.com/bistromath/gr-ais;
+    homepage = "https://github.com/bistromath/gr-ais";
     license = licenses.gpl3Plus;
     platforms = platforms.linux ++ platforms.darwin;
     maintainers = with maintainers; [ mog ];
diff --git a/pkgs/applications/radio/gnuradio/default.nix b/pkgs/applications/radio/gnuradio/default.nix
index f5c89ae51cef..6d788f77bc32 100644
--- a/pkgs/applications/radio/gnuradio/default.nix
+++ b/pkgs/applications/radio/gnuradio/default.nix
@@ -116,7 +116,7 @@ stdenv.mkDerivation rec {
       environments to support both wireless communications research and
       real-world radio systems.
     '';
-    homepage = https://www.gnuradio.org;
+    homepage = "https://www.gnuradio.org";
     license = licenses.gpl3;
     platforms = platforms.linux ++ platforms.darwin;
     maintainers = with maintainers; [ bjornfor fpletz ];
diff --git a/pkgs/applications/radio/gnuradio/gsm.nix b/pkgs/applications/radio/gnuradio/gsm.nix
index 27cdfc74aab3..e0b8d7dd44f7 100644
--- a/pkgs/applications/radio/gnuradio/gsm.nix
+++ b/pkgs/applications/radio/gnuradio/gsm.nix
@@ -31,7 +31,7 @@ stdenv.mkDerivation {
 
   meta = with stdenv.lib; {
     description = "Gnuradio block for gsm";
-    homepage = https://github.com/ptrkrysik/gr-gsm;
+    homepage = "https://github.com/ptrkrysik/gr-gsm";
     license = licenses.gpl3Plus;
     platforms = platforms.linux;
     maintainers = with maintainers; [ mog ];
diff --git a/pkgs/applications/radio/gnuradio/limesdr.nix b/pkgs/applications/radio/gnuradio/limesdr.nix
index ec1b802c659b..490caaaa7bea 100644
--- a/pkgs/applications/radio/gnuradio/limesdr.nix
+++ b/pkgs/applications/radio/gnuradio/limesdr.nix
@@ -32,7 +32,7 @@ in stdenv.mkDerivation {
 
   meta = with stdenv.lib; {
     description = "Gnuradio source and sink blocks for LimeSDR";
-    homepage = https://wiki.myriadrf.org/Gr-limesdr_Plugin_for_GNURadio;
+    homepage = "https://wiki.myriadrf.org/Gr-limesdr_Plugin_for_GNURadio";
     license = licenses.mit;
     platforms = platforms.linux;
     maintainers = [ maintainers.markuskowa ];
diff --git a/pkgs/applications/radio/gnuradio/nacl.nix b/pkgs/applications/radio/gnuradio/nacl.nix
index 3026c81e8eff..e3d851e2e14a 100644
--- a/pkgs/applications/radio/gnuradio/nacl.nix
+++ b/pkgs/applications/radio/gnuradio/nacl.nix
@@ -31,7 +31,7 @@ stdenv.mkDerivation {
 
   meta = with stdenv.lib; {
     description = "Gnuradio block for encryption";
-    homepage = https://github.com/stwunsch/gr-nacl;
+    homepage = "https://github.com/stwunsch/gr-nacl";
     license = licenses.gpl3Plus;
     platforms = platforms.linux ++ platforms.darwin;
     maintainers = with maintainers; [ mog ];
diff --git a/pkgs/applications/radio/gnuradio/osmosdr.nix b/pkgs/applications/radio/gnuradio/osmosdr.nix
index 017e2e1632ce..1078cf4df684 100644
--- a/pkgs/applications/radio/gnuradio/osmosdr.nix
+++ b/pkgs/applications/radio/gnuradio/osmosdr.nix
@@ -39,7 +39,7 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "Gnuradio block for OsmoSDR and rtl-sdr";
-    homepage = https://sdr.osmocom.org/trac/wiki/GrOsmoSDR;
+    homepage = "https://sdr.osmocom.org/trac/wiki/GrOsmoSDR";
     license = licenses.gpl3Plus;
     platforms = platforms.linux ++ platforms.darwin;
     maintainers = with maintainers; [ bjornfor the-kenny ];
diff --git a/pkgs/applications/radio/gnuradio/rds.nix b/pkgs/applications/radio/gnuradio/rds.nix
index e4a55fe50987..1f8ed211ef29 100644
--- a/pkgs/applications/radio/gnuradio/rds.nix
+++ b/pkgs/applications/radio/gnuradio/rds.nix
@@ -30,7 +30,7 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "Gnuradio block for radio data system";
-    homepage = https://github.com/bastibl/gr-rds;
+    homepage = "https://github.com/bastibl/gr-rds";
     license = licenses.gpl2Plus;
     platforms = platforms.linux ++ platforms.darwin;
     maintainers = with maintainers; [ mog ];
diff --git a/pkgs/applications/radio/gqrx/default.nix b/pkgs/applications/radio/gqrx/default.nix
index e95c7d779526..f1a71804e3ff 100644
--- a/pkgs/applications/radio/gqrx/default.nix
+++ b/pkgs/applications/radio/gqrx/default.nix
@@ -38,7 +38,7 @@ mkDerivation rec {
       including Funcube Dongle Pro/Pro+, rtl-sdr, HackRF, and Universal
       Software Radio Peripheral (USRP) devices.
     '';
-    homepage = http://gqrx.dk/;
+    homepage = "https://gqrx.dk/";
     # Some of the code comes from the Cutesdr project, with a BSD license, but
     # it's currently unknown which version of the BSD license that is.
     license = licenses.gpl3Plus;
diff --git a/pkgs/applications/radio/hackrf/default.nix b/pkgs/applications/radio/hackrf/default.nix
index 09b4c84c1314..9569dd89797c 100644
--- a/pkgs/applications/radio/hackrf/default.nix
+++ b/pkgs/applications/radio/hackrf/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchFromGitHub, cmake, pkgconfig, libusb, fftwSinglePrec }:
+{ stdenv, fetchFromGitHub, cmake, pkgconfig, libusb1, fftwSinglePrec }:
 
 stdenv.mkDerivation rec {
   pname = "hackrf";
@@ -11,9 +11,14 @@ stdenv.mkDerivation rec {
     sha256 = "0idh983xh6gndk9kdgx5nzz76x3mxb42b02c5xvdqahadsfx3b9w";
   };
 
-  nativeBuildInputs = [ pkgconfig ];
+  nativeBuildInputs = [
+    cmake
+    pkgconfig
+  ];
+
   buildInputs = [
-    cmake libusb fftwSinglePrec
+    libusb1
+    fftwSinglePrec
   ];
 
   cmakeFlags = [ "-DUDEV_RULES_GROUP=plugdev" "-DUDEV_RULES_PATH=lib/udev/rules.d" ];
@@ -24,7 +29,7 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "An open source SDR platform";
-    homepage = http://greatscottgadgets.com/hackrf/;
+    homepage = "http://greatscottgadgets.com/hackrf/";
     license = licenses.gpl2;
     platforms = platforms.all;
     maintainers = with maintainers; [ sjmackenzie the-kenny ];
diff --git a/pkgs/applications/radio/kalibrate-hackrf/default.nix b/pkgs/applications/radio/kalibrate-hackrf/default.nix
index 3964a8c37370..273d2d8c8e37 100644
--- a/pkgs/applications/radio/kalibrate-hackrf/default.nix
+++ b/pkgs/applications/radio/kalibrate-hackrf/default.nix
@@ -29,7 +29,7 @@ stdenv.mkDerivation {
 
       This package is for hackrf devices.
     '';
-    homepage = https://github.com/scateu/kalibrate-hackrf;
+    homepage = "https://github.com/scateu/kalibrate-hackrf";
     license = licenses.bsd2;
     platforms = platforms.linux;
     maintainers = [ maintainers.mog ];
diff --git a/pkgs/applications/radio/kalibrate-rtl/default.nix b/pkgs/applications/radio/kalibrate-rtl/default.nix
index 879cd6e3aac9..38913e827d09 100644
--- a/pkgs/applications/radio/kalibrate-rtl/default.nix
+++ b/pkgs/applications/radio/kalibrate-rtl/default.nix
@@ -23,7 +23,7 @@ stdenv.mkDerivation {
 
       This package is for RTL-SDR devices.
     '';
-    homepage = https://github.com/steve-m/kalibrate-rtl;
+    homepage = "https://github.com/steve-m/kalibrate-rtl";
     license = licenses.bsd2;
     platforms = platforms.linux;
     maintainers = [ maintainers.bjornfor ];
diff --git a/pkgs/applications/radio/limesuite/default.nix b/pkgs/applications/radio/limesuite/default.nix
index aae062a87c7e..ef36eac28e42 100644
--- a/pkgs/applications/radio/limesuite/default.nix
+++ b/pkgs/applications/radio/limesuite/default.nix
@@ -43,7 +43,7 @@ in stdenv.mkDerivation {
 
   meta = with stdenv.lib; {
     description = "Driver and GUI for LMS7002M-based SDR platforms";
-    homepage = https://github.com/myriadrf/LimeSuite;
+    homepage = "https://github.com/myriadrf/LimeSuite";
     license = licenses.asl20;
     maintainers = with maintainers; [ markuskowa ];
     platforms = platforms.linux;
diff --git a/pkgs/applications/radio/minimodem/default.nix b/pkgs/applications/radio/minimodem/default.nix
index 55cd14cf70da..e94561e46dc8 100644
--- a/pkgs/applications/radio/minimodem/default.nix
+++ b/pkgs/applications/radio/minimodem/default.nix
@@ -32,7 +32,7 @@ stdenv.mkDerivation rec {
     standard FSK protocols such as Bell103, Bell202, RTTY, NOAA SAME, and
     Caller-ID.
     '';
-    homepage = http://www.whence.com/minimodem/;
+    homepage = "http://www.whence.com/minimodem/";
     license = stdenv.lib.licenses.gpl3Plus;
     platforms = with stdenv.lib.platforms; linux;
     maintainers = with stdenv.lib.maintainers; [ relrod ];
diff --git a/pkgs/applications/radio/multimon-ng/default.nix b/pkgs/applications/radio/multimon-ng/default.nix
index c0f189686ac9..de6b8504091d 100644
--- a/pkgs/applications/radio/multimon-ng/default.nix
+++ b/pkgs/applications/radio/multimon-ng/default.nix
@@ -36,7 +36,7 @@ stdenv.mkDerivation {
       AFSK2400 AFSK2400_2 AFSK2400_3 HAPN4800 FSK9600 DTMF ZVEI1 ZVEI2
       ZVEI3 DZVEI PZVEI EEA EIA CCIR MORSE CW
     '';
-    homepage = https://github.com/EliasOenal/multimon-ng;
+    homepage = "https://github.com/EliasOenal/multimon-ng";
     license = licenses.gpl2;
     platforms = platforms.linux;
     maintainers = with maintainers; [ the-kenny ];
diff --git a/pkgs/applications/radio/pyradio/default.nix b/pkgs/applications/radio/pyradio/default.nix
index 88ce23cd7096..f23359688c6c 100644
--- a/pkgs/applications/radio/pyradio/default.nix
+++ b/pkgs/applications/radio/pyradio/default.nix
@@ -2,13 +2,13 @@
 
 python3Packages.buildPythonApplication rec {
   pname = "pyradio";
-  version = "0.8.7.1";
+  version = "0.8.7.2";
 
   src = fetchFromGitHub {
     owner = "coderholic";
     repo = pname;
     rev = version;
-    sha256 = "1f1dch5vrx2armrff19rh9gpqydspn3nvzc9p9j2jfi6gsxhppyb";
+    sha256 = "0h2sxaqpmc1d1kpvpbcs9wymgzhx25x0x9p7dbyfw9r90i6123q1";
   };
 
   checkPhase = ''
diff --git a/pkgs/applications/radio/qradiolink/default.nix b/pkgs/applications/radio/qradiolink/default.nix
index a00ec6c47eb8..4c792811dc59 100644
--- a/pkgs/applications/radio/qradiolink/default.nix
+++ b/pkgs/applications/radio/qradiolink/default.nix
@@ -52,7 +52,7 @@ in stdenv.mkDerivation {
 
   meta = with stdenv.lib; {
     description = "SDR transceiver application for analog and digital modes";
-    homepage = http://qradiolink.org/;
+    homepage = "http://qradiolink.org/";
     license = licenses.agpl3;
     maintainers = [ maintainers.markuskowa ];
     platforms = platforms.linux;
diff --git a/pkgs/applications/radio/qsstv/default.nix b/pkgs/applications/radio/qsstv/default.nix
index a4ef5a2a0d1b..d5d12a714031 100644
--- a/pkgs/applications/radio/qsstv/default.nix
+++ b/pkgs/applications/radio/qsstv/default.nix
@@ -27,7 +27,7 @@ mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "Qt-based slow-scan TV and fax";
-    homepage = http://users.telenet.be/on4qz/;
+    homepage = "http://users.telenet.be/on4qz/";
     platforms = platforms.linux;
     license = stdenv.lib.licenses.gpl3;
     maintainers = with stdenv.lib.maintainers; [ hax404 ];
diff --git a/pkgs/applications/radio/rtl-sdr/default.nix b/pkgs/applications/radio/rtl-sdr/default.nix
index 4e9badaa6c51..8fb5154ff788 100644
--- a/pkgs/applications/radio/rtl-sdr/default.nix
+++ b/pkgs/applications/radio/rtl-sdr/default.nix
@@ -10,8 +10,8 @@ stdenv.mkDerivation rec {
     sha256 = "0lmvsnb4xw4hmz6zs0z5ilsah5hjz29g1s0050n59fllskqr3b8k";
   };
 
-  nativeBuildInputs = [ pkgconfig ];
-  buildInputs = [ cmake libusb1 ];
+  nativeBuildInputs = [ pkgconfig cmake ];
+  buildInputs = [ libusb1 ];
 
   # TODO: get these fixes upstream:
   # * Building with -DINSTALL_UDEV_RULES=ON tries to install udev rules to
@@ -29,7 +29,7 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "Turns your Realtek RTL2832 based DVB dongle into a SDR receiver";
-    homepage = http://sdr.osmocom.org/trac/wiki/rtl-sdr;
+    homepage = "http://sdr.osmocom.org/trac/wiki/rtl-sdr";
     license = licenses.gpl2Plus;
     platforms = platforms.linux ++ platforms.darwin;
     maintainers = [ maintainers.bjornfor ];
diff --git a/pkgs/applications/radio/rtl_433/default.nix b/pkgs/applications/radio/rtl_433/default.nix
index 5faac96d28f0..78d0f8befc98 100644
--- a/pkgs/applications/radio/rtl_433/default.nix
+++ b/pkgs/applications/radio/rtl_433/default.nix
@@ -20,7 +20,7 @@ stdenv.mkDerivation {
 
   meta = with stdenv.lib; {
     description = "Decode traffic from devices that broadcast on 433.9 MHz";
-    homepage = https://github.com/merbanan/rtl_433;
+    homepage = "https://github.com/merbanan/rtl_433";
     license = licenses.gpl2;
     maintainers = with maintainers; [ earldouglas ];
     platforms = platforms.all;
diff --git a/pkgs/applications/radio/sdrangel/default.nix b/pkgs/applications/radio/sdrangel/default.nix
index 7cb64f92f3f4..6d0a19334dec 100644
--- a/pkgs/applications/radio/sdrangel/default.nix
+++ b/pkgs/applications/radio/sdrangel/default.nix
@@ -13,7 +13,7 @@ libav,
 libiio,
 libopus,
 libpulseaudio,
-libusb,
+libusb-compat-0_1,
 limesuite,
 mkDerivation,
 ocl-icd,
@@ -51,7 +51,7 @@ in mkDerivation rec {
 
   nativeBuildInputs = [ cmake pkgconfig ];
   buildInputs = [
-    glew opencv3 libusb boost libopus limesuite libav libiio libpulseaudio
+    glew opencv3 libusb-compat-0_1 boost libopus limesuite libav libiio libpulseaudio
     qtbase qtwebsockets qtmultimedia rtl-sdr airspy hackrf
     fftwFloat codec2' cm256cc serialdv
   ];
diff --git a/pkgs/applications/radio/soapyairspy/default.nix b/pkgs/applications/radio/soapyairspy/default.nix
index eacbe66e5e5a..4a69e52741e7 100644
--- a/pkgs/applications/radio/soapyairspy/default.nix
+++ b/pkgs/applications/radio/soapyairspy/default.nix
@@ -22,7 +22,7 @@ in stdenv.mkDerivation {
   cmakeFlags = [ "-DSoapySDR_DIR=${soapysdr}/share/cmake/SoapySDR/" ];
 
   meta = with stdenv.lib; {
-    homepage = https://github.com/pothosware/SoapyAirspy;
+    homepage = "https://github.com/pothosware/SoapyAirspy";
     description = "SoapySDR plugin for Airspy devices";
     license = licenses.mit;
     maintainers = with maintainers; [ markuskowa ];
diff --git a/pkgs/applications/radio/soapybladerf/default.nix b/pkgs/applications/radio/soapybladerf/default.nix
index 0bb05a204da7..7e2e17a84558 100644
--- a/pkgs/applications/radio/soapybladerf/default.nix
+++ b/pkgs/applications/radio/soapybladerf/default.nix
@@ -23,7 +23,7 @@ in stdenv.mkDerivation {
 
 
   meta = with stdenv.lib; {
-    homepage = https://github.com/pothosware/SoapyBladeRF;
+    homepage = "https://github.com/pothosware/SoapyBladeRF";
     description = "SoapySDR plugin for BladeRF devices";
     license = licenses.lgpl21;
     maintainers = with maintainers; [ markuskowa ];
diff --git a/pkgs/applications/radio/soapyhackrf/default.nix b/pkgs/applications/radio/soapyhackrf/default.nix
index 5ab4c3363f48..e472b1cc3ae9 100644
--- a/pkgs/applications/radio/soapyhackrf/default.nix
+++ b/pkgs/applications/radio/soapyhackrf/default.nix
@@ -22,7 +22,7 @@ in stdenv.mkDerivation {
   cmakeFlags = [ "-DSoapySDR_DIR=${soapysdr}/share/cmake/SoapySDR/" ];
 
   meta = with stdenv.lib; {
-    homepage = https://github.com/pothosware/SoapyHackRF;
+    homepage = "https://github.com/pothosware/SoapyHackRF";
     description = "SoapySDR plugin for HackRF devices";
     license = licenses.mit;
     maintainers = with maintainers; [ markuskowa ];
diff --git a/pkgs/applications/radio/soapyremote/default.nix b/pkgs/applications/radio/soapyremote/default.nix
index 2f73403a168b..ed94693db41f 100644
--- a/pkgs/applications/radio/soapyremote/default.nix
+++ b/pkgs/applications/radio/soapyremote/default.nix
@@ -20,7 +20,7 @@ in stdenv.mkDerivation {
   cmakeFlags = [ "-DSoapySDR_DIR=${soapysdr}/share/cmake/SoapySDR/" ];
 
   meta = with stdenv.lib; {
-    homepage = https://github.com/pothosware/SoapyRemote;
+    homepage = "https://github.com/pothosware/SoapyRemote";
     description = "SoapySDR plugin for remote access to SDRs";
     license = licenses.boost;
     maintainers = with maintainers; [ markuskowa ];
diff --git a/pkgs/applications/radio/soapyrtlsdr/default.nix b/pkgs/applications/radio/soapyrtlsdr/default.nix
index 8bf473cb36a3..8f342190ba7e 100644
--- a/pkgs/applications/radio/soapyrtlsdr/default.nix
+++ b/pkgs/applications/radio/soapyrtlsdr/default.nix
@@ -22,7 +22,7 @@ in stdenv.mkDerivation {
   cmakeFlags = [ "-DSoapySDR_DIR=${soapysdr}/share/cmake/SoapySDR/" ];
 
   meta = with stdenv.lib; {
-    homepage = https://github.com/pothosware/SoapyRTLSDR;
+    homepage = "https://github.com/pothosware/SoapyRTLSDR";
     description = "SoapySDR plugin for RTL-SDR devices";
     license = licenses.mit;
     maintainers = with maintainers; [ ragge ];
diff --git a/pkgs/applications/radio/soapysdr/default.nix b/pkgs/applications/radio/soapysdr/default.nix
index e072ec97b974..676f7d3c839e 100644
--- a/pkgs/applications/radio/soapysdr/default.nix
+++ b/pkgs/applications/radio/soapysdr/default.nix
@@ -1,6 +1,6 @@
 { stdenv, lib, lndir, makeWrapper
 , fetchFromGitHub, cmake
-, libusb, pkgconfig
+, libusb-compat-0_1, pkgconfig
 , usePython ? false
 , python, ncurses, swig2
 , extraPackages ? []
@@ -25,7 +25,7 @@ in stdenv.mkDerivation {
   };
 
   nativeBuildInputs = [ cmake makeWrapper pkgconfig ];
-  buildInputs = [ libusb ncurses ]
+  buildInputs = [ libusb-compat-0_1 ncurses ]
     ++ lib.optionals usePython [ python swig2 ];
 
   propagatedBuildInputs = lib.optional usePython python.pkgs.numpy;
@@ -46,7 +46,7 @@ in stdenv.mkDerivation {
   '';
 
   meta = with stdenv.lib; {
-    homepage = https://github.com/pothosware/SoapySDR;
+    homepage = "https://github.com/pothosware/SoapySDR";
     description = "Vendor and platform neutral SDR support library";
     license = licenses.boost;
     maintainers = with maintainers; [ markuskowa ];
diff --git a/pkgs/applications/radio/soapyuhd/default.nix b/pkgs/applications/radio/soapyuhd/default.nix
index 9e910584158d..a169116c29a1 100644
--- a/pkgs/applications/radio/soapyuhd/default.nix
+++ b/pkgs/applications/radio/soapyuhd/default.nix
@@ -26,7 +26,7 @@ in stdenv.mkDerivation {
   '';
 
   meta = with stdenv.lib; {
-    homepage = https://github.com/pothosware/SoapyAirspy;
+    homepage = "https://github.com/pothosware/SoapyAirspy";
     description = "SoapySDR plugin for UHD devices";
     license = licenses.gpl3;
     maintainers = with maintainers; [ markuskowa ];
diff --git a/pkgs/applications/radio/tlf/default.nix b/pkgs/applications/radio/tlf/default.nix
index 530008702f10..fd9ab82b321c 100644
--- a/pkgs/applications/radio/tlf/default.nix
+++ b/pkgs/applications/radio/tlf/default.nix
@@ -3,13 +3,13 @@
 
 stdenv.mkDerivation rec {
   pname = "tlf";
-  version = "1.4.0";
+  version = "1.4.1";
 
   src = fetchFromGitHub {
     owner = pname;
     repo = pname;
     rev = "${pname}-${version}";
-    sha256 = "0f97hxiwc6blp5haik871q6zzvwy0b3p2jg8ad2dvaxg07xc76l0";
+    sha256 = "1xpgs4k27pjd9mianfknknp6mf34365bcp96wrv5xh4dhph573rj";
   };
 
   nativeBuildInputs = [ autoreconfHook autoconf automake pkgconfig perl ];
@@ -32,7 +32,7 @@ stdenv.mkDerivation rec {
       EU SPRINT shortwave contests (single operator) as well as a LOT MORE basic
       contests, general QSO and DXpedition mode.
     '';
-    homepage = https://tlf.github.io/;
+    homepage = "https://tlf.github.io/";
     license = licenses.gpl2;
     maintainers = with maintainers; [ etu ];
     platforms = platforms.linux;
diff --git a/pkgs/applications/radio/tqsl/default.nix b/pkgs/applications/radio/tqsl/default.nix
index 451a63c3d81f..fd5f5505a672 100644
--- a/pkgs/applications/radio/tqsl/default.nix
+++ b/pkgs/applications/radio/tqsl/default.nix
@@ -22,7 +22,7 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "Software for using the ARRL Logbook of the World";
-    homepage = https://www.arrl.org/tqsl-download;
+    homepage = "https://www.arrl.org/tqsl-download";
     license = licenses.bsd3;
     platforms = platforms.linux;
     maintainers = [ maintainers.dpflug ];
diff --git a/pkgs/applications/radio/uhd/default.nix b/pkgs/applications/radio/uhd/default.nix
index 76519062f590..e7ddb5787fac 100644
--- a/pkgs/applications/radio/uhd/default.nix
+++ b/pkgs/applications/radio/uhd/default.nix
@@ -1,57 +1,129 @@
-{ stdenv, fetchurl, fetchFromGitHub, cmake, pkgconfig
-, python, orc, libusb1, boost }:
-
-# You need these udev rules to not have to run as root (copied from
-# ${uhd}/share/uhd/utils/uhd-usrp.rules):
-#
-#   SUBSYSTEMS=="usb", ATTRS{idVendor}=="fffe", ATTRS{idProduct}=="0002", MODE:="0666"
-#   SUBSYSTEMS=="usb", ATTRS{idVendor}=="2500", ATTRS{idProduct}=="0002", MODE:="0666"
+{ stdenv
+, fetchurl
+, fetchFromGitHub
+, cmake
+, pkgconfig
+# See https://files.ettus.com/manual_archive/v3.15.0.0/html/page_build_guide.html for dependencies explanations
+, boost
+, enableLibuhd_C_api ? true
+# requires numpy
+, enableLibuhd_Python_api ? false
+, python3 ? null
+, enableExamples ? false
+, enableUtils ? false
+, enableLiberio ? false
+, liberio ? null
+, libusb1 ? null
+, enableDpdk ? false
+, dpdk ? null
+# Devices
+, enableOctoClock ? true
+, enableMpmd ? true
+, enableB100 ? true
+, enableB200 ? true
+, enableUsrp1 ? true
+, enableUsrp2 ? true
+, enableX300 ? true
+, enableN230 ? true
+, enableN300 ? true
+, enableN320 ? true
+, enableE300 ? true
+, enableE320 ? true
+}:
 
 let
-  uhdVer = "v" + version;
+  onOffBool = b: if b then "ON" else "OFF";
+  inherit (stdenv.lib) optionals;
+in
 
+stdenv.mkDerivation rec {
+  pname = "uhd";
   # UHD seems to use three different version number styles: x.y.z, xxx_yyy_zzz
   # and xxx.yyy.zzz. Hrmpf... style keeps changing
-  version = "3.14.0.0";
-
-  # Firmware images are downloaded (pre-built) from the respective release on Github
-  uhdImagesSrc = fetchurl {
-    url = "https://github.com/EttusResearch/uhd/releases/download/${uhdVer}/uhd-images_${version}.tar.xz";
-    sha256 = "1fp37wgqkbr14cxg9l7ghfd4r92y2bxwgb7cfjzs96hbpd9s6al0";
-  };
-
-in stdenv.mkDerivation {
-  pname = "uhd";
-  inherit version;
+  version = "3.15.0.0";
 
   src = fetchFromGitHub {
     owner = "EttusResearch";
     repo = "uhd";
-    rev = uhdVer;
-    sha256 = "0y1hff4vslfv36vxgvjqajg4862a11d4wgr0vcb0visgh1bi8qgy";
+    rev = "v${version}";
+    sha256 = "0jknln88a69fh244670nb7qrflbyv0vvdxfddb5g8ncpb6hcg8qf";
+  };
+  # Firmware images are downloaded (pre-built) from the respective release on Github
+  uhdImagesSrc = fetchurl {
+    url = "https://github.com/EttusResearch/uhd/releases/download/v${version}/uhd-images_${version}.tar.xz";
+    sha256 = "1fir1a13ac07mqhm4sr34cixiqj2difxq0870qv1wr7a7cbfw6vp";
   };
 
   enableParallelBuilding = true;
 
-  # ABI differences GCC 7.1
-  # /nix/store/wd6r25miqbk9ia53pp669gn4wrg9n9cj-gcc-7.3.0/include/c++/7.3.0/bits/vector.tcc:394:7: note: parameter passing for argument of type 'std::vector<uhd::range_t>::iterator {aka __gnu_cxx::__normal_iterator<uhd::range_t*, std::vector<uhd::range_t> >}' changed in GCC 7.1
+  cmakeFlags = [
+    "-DENABLE_LIBUHD=ON"
+    "-DENABLE_USB=ON"
+    "-DENABLE_TESTS=ON" # This installs tests as well so we delete them via postPhases
+    "-DENABLE_EXAMPLES=${onOffBool enableExamples}"
+    "-DENABLE_UTILS=${onOffBool enableUtils}"
+    "-DENABLE_LIBUHD_C_API=${onOffBool enableLibuhd_C_api}"
+    "-DENABLE_LIBUHD_PYTHON_API=${onOffBool enableLibuhd_Python_api}"
+    "-DENABLE_LIBERIO=${onOffBool enableLiberio}"
+    "-DENABLE_DPDK=${onOffBool enableDpdk}"
+    # Devices
+    "-DENABLE_OCTOCLOCK=${onOffBool enableOctoClock}"
+    "-DENABLE_MPMD=${onOffBool enableMpmd}"
+    "-DENABLE_B100=${onOffBool enableB100}"
+    "-DENABLE_B200=${onOffBool enableB200}"
+    "-DENABLE_USRP1=${onOffBool enableUsrp1}"
+    "-DENABLE_USRP2=${onOffBool enableUsrp2}"
+    "-DENABLE_X300=${onOffBool enableX300}"
+    "-DENABLE_N230=${onOffBool enableN230}"
+    "-DENABLE_N300=${onOffBool enableN300}"
+    "-DENABLE_N320=${onOffBool enableN320}"
+    "-DENABLE_E300=${onOffBool enableE300}"
+    "-DENABLE_E320=${onOffBool enableE320}"
+  ]
+    # TODO: Check if this still needed
+    # ABI differences GCC 7.1
+    # /nix/store/wd6r25miqbk9ia53pp669gn4wrg9n9cj-gcc-7.3.0/include/c++/7.3.0/bits/vector.tcc:394:7: note: parameter passing for argument of type 'std::vector<uhd::range_t>::iterator {aka __gnu_cxx::__normal_iterator<uhd::range_t*, std::vector<uhd::range_t> >}' changed in GCC 7.1
+    ++ [ (stdenv.lib.optionalString stdenv.isAarch32 "-DCMAKE_CXX_FLAGS=-Wno-psabi") ]
+  ;
 
-  cmakeFlags = [ "-DLIBUSB_INCLUDE_DIRS=${libusb1.dev}/include/libusb-1.0"] ++
-               [ (stdenv.lib.optionalString stdenv.isAarch32 "-DCMAKE_CXX_FLAGS=-Wno-psabi") ];
+  # Python + Mako are always required for the build itself but not necessary for runtime.
+  pythonEnv = python3.withPackages (ps: with ps; [ Mako ]
+    ++ optionals (enableLibuhd_Python_api) [ numpy setuptools ]
+    ++ optionals (enableUtils) [ requests six ]
+  );
 
-  nativeBuildInputs = [ cmake pkgconfig ];
+  nativeBuildInputs = [
+    cmake
+    pkgconfig
+  ]
+    # If both enableLibuhd_Python_api and enableUtils are off, we don't need
+    # pythonEnv in buildInputs as it's a 'build' dependency and not a runtime
+    # dependency
+    ++ optionals (!enableLibuhd_Python_api && !enableUtils) [ pythonEnv ]
+  ;
   buildInputs = [
-    (python.withPackages (ps: with ps; [ Mako six requests ]))
-    orc
-    libusb1
     boost
-  ];
+    libusb1
+  ]
+    # However, if enableLibuhd_Python_api *or* enableUtils is on, we need
+    # pythonEnv for runtime as well. The utilities' runtime dependencies are
+    # handled at the environment
+    ++ optionals (enableLibuhd_Python_api || enableUtils) [ pythonEnv ]
+    ++ optionals (enableLiberio) [ liberio ]
+    ++ optionals (enableDpdk) [ dpdk ]
+  ;
+
+  doCheck = true;
 
   # Build only the host software
   preConfigure = "cd host";
+  # TODO: Check if this still needed, perhaps relevant:
+  # https://files.ettus.com/manual_archive/v3.15.0.0/html/page_build_guide.html#build_instructions_unix_arm
   patches = if stdenv.isAarch32 then ./neon.patch else null;
 
-  postPhases = [ "installFirmware" ];
+  postPhases = [ "installFirmware" "removeInstalledTests" ]
+    ++ optionals (enableUtils) [ "moveUdevRules" ]
+  ;
 
   # UHD expects images in `$CMAKE_INSTALL_PREFIX/share/uhd/images`
   installFirmware = ''
@@ -59,6 +131,18 @@ in stdenv.mkDerivation {
     tar --strip-components=1 -xvf "${uhdImagesSrc}" -C "$out/share/uhd/images"
   '';
 
+  # -DENABLE_TESTS=ON installs the tests, we don't need them in the output
+  removeInstalledTests = ''
+    rm -r $out/lib/uhd/tests
+  '';
+
+  # Moves the udev rules to the standard location, needed only if utils are
+  # enabled
+  moveUdevRules = ''
+    mkdir -p $out/lib/udev/rules.d
+    mv $out/lib/uhd/utils/uhd-usrp.rules $out/lib/udev/rules.d/
+  '';
+
   meta = with stdenv.lib; {
     description = "USRP Hardware Driver (for Software Defined Radio)";
     longDescription = ''
@@ -68,7 +152,7 @@ in stdenv.mkDerivation {
       USRP devices are designed and sold by Ettus Research, LLC and its parent
       company, National Instruments.
     '';
-    homepage = https://uhd.ettus.com/;
+    homepage = "https://uhd.ettus.com/";
     license = licenses.gpl3Plus;
     platforms = platforms.linux ++ platforms.darwin;
     maintainers = with maintainers; [ bjornfor fpletz tomberek ];
diff --git a/pkgs/applications/radio/urh/default.nix b/pkgs/applications/radio/urh/default.nix
index 8ca42ab94acc..d75572e5e570 100644
--- a/pkgs/applications/radio/urh/default.nix
+++ b/pkgs/applications/radio/urh/default.nix
@@ -5,13 +5,13 @@
 
 python3Packages.buildPythonApplication rec {
   pname = "urh";
-  version = "2.8.2";
+  version = "2.8.7";
 
   src = fetchFromGitHub {
     owner = "jopohl";
     repo = pname;
     rev = "v${version}";
-    sha256 = "0cypm602zl3s4qggmafj4c246h65qgzsj3bsimvc5zz7jspk6m77";
+    sha256 = "1grak0vzlzqvg8bqaalyamwvkyzlmj9nbczqp6jcdf6w2vnbzhph";
   };
 
   nativeBuildInputs = [ qt5.wrapQtAppsHook ];
diff --git a/pkgs/applications/radio/welle-io/default.nix b/pkgs/applications/radio/welle-io/default.nix
index 66a033fef25b..05187440899b 100644
--- a/pkgs/applications/radio/welle-io/default.nix
+++ b/pkgs/applications/radio/welle-io/default.nix
@@ -1,6 +1,6 @@
 { mkDerivation, lib, fetchFromGitHub, cmake, pkgconfig
 , qtbase, qtcharts, qtmultimedia, qtquickcontrols, qtquickcontrols2
-, faad2, rtl-sdr, soapysdr-with-plugins, libusb, fftwSinglePrec, lame, mpg123 }:
+, faad2, rtl-sdr, soapysdr-with-plugins, libusb-compat-0_1, fftwSinglePrec, lame, mpg123 }:
 let
 
   version = "2.1";
@@ -23,7 +23,7 @@ in mkDerivation {
     faad2
     fftwSinglePrec
     lame
-    libusb
+    libusb-compat-0_1
     mpg123
     qtbase
     qtcharts
@@ -42,7 +42,7 @@ in mkDerivation {
 
   meta = with lib; {
     description = "A DAB/DAB+ Software Radio";
-    homepage = https://www.welle.io/;
+    homepage = "https://www.welle.io/";
     maintainers = with maintainers; [ ck3d markuskowa ];
     license = licenses.gpl2;
     platforms = with platforms; [ "x86_64-linux" "i686-linux" ] ++ darwin;
diff --git a/pkgs/applications/radio/xlog/default.nix b/pkgs/applications/radio/xlog/default.nix
index 2268cdf725db..31bcfa463b95 100644
--- a/pkgs/applications/radio/xlog/default.nix
+++ b/pkgs/applications/radio/xlog/default.nix
@@ -23,7 +23,7 @@ stdenv.mkDerivation rec {
          location in latitude and longitude and distance and heading in kilometers or miles,
          both for short and long path.
       '';
-    homepage = https://www.nongnu.org/xlog;
+    homepage = "https://www.nongnu.org/xlog";
     maintainers = [ maintainers.mafo ];
     license = licenses.gpl3;
     platforms = platforms.unix;
diff --git a/pkgs/applications/science/astronomy/astrolabe-generator/default.nix b/pkgs/applications/science/astronomy/astrolabe-generator/default.nix
index 32d89866b5ae..cb3f3131ea14 100644
--- a/pkgs/applications/science/astronomy/astrolabe-generator/default.nix
+++ b/pkgs/applications/science/astronomy/astrolabe-generator/default.nix
@@ -22,7 +22,7 @@ stdenv.mkDerivation rec {
   '';
 
   meta = with stdenv.lib;{
-    homepage = https://www.astrolabeproject.com;
+    homepage = "https://www.astrolabeproject.com";
     description = "A Java-based tool for generating EPS files for constructing astrolabes and related tools";
     license = licenses.gpl3;
     maintainers = [ maintainers.genesis ];
diff --git a/pkgs/applications/science/astronomy/celestia/default.nix b/pkgs/applications/science/astronomy/celestia/default.nix
index e72354c86585..340641917e4f 100644
--- a/pkgs/applications/science/astronomy/celestia/default.nix
+++ b/pkgs/applications/science/astronomy/celestia/default.nix
@@ -66,7 +66,7 @@ stdenv.mkDerivation {
 
   meta = {
     description = "Free space simulation";
-    homepage = https://celestia.space/;
+    homepage = "https://celestia.space/";
     license = stdenv.lib.licenses.gpl2;
 
     platforms = stdenv.lib.platforms.linux;
diff --git a/pkgs/applications/science/astronomy/gildas/default.nix b/pkgs/applications/science/astronomy/gildas/default.nix
index 9908439e10d4..38d8e23a811b 100644
--- a/pkgs/applications/science/astronomy/gildas/default.nix
+++ b/pkgs/applications/science/astronomy/gildas/default.nix
@@ -61,7 +61,7 @@ stdenv.mkDerivation rec {
       extensible. GILDAS is written in Fortran-90, with a
       few parts in C/C++ (mainly keyboard interaction,
       plotting, widgets).'';
-    homepage = http://www.iram.fr/IRAMFR/GILDAS/gildas.html;
+    homepage = "http://www.iram.fr/IRAMFR/GILDAS/gildas.html";
     license = stdenv.lib.licenses.free;
     maintainers = [ stdenv.lib.maintainers.bzizou stdenv.lib.maintainers.smaret ];
     platforms = stdenv.lib.platforms.all;
diff --git a/pkgs/applications/science/astronomy/gpredict/default.nix b/pkgs/applications/science/astronomy/gpredict/default.nix
index f36431beac13..1ae80c0b0aa6 100644
--- a/pkgs/applications/science/astronomy/gpredict/default.nix
+++ b/pkgs/applications/science/astronomy/gpredict/default.nix
@@ -28,7 +28,7 @@ in stdenv.mkDerivation {
     '';
     license = licenses.gpl2;
     platforms = platforms.linux;
-    homepage = http://gpredict.oz9aec.net/;
+    homepage = "http://gpredict.oz9aec.net/";
     maintainers = [ maintainers.markuskowa maintainers.cmcdragonkai ];
   };
 }
diff --git a/pkgs/applications/science/astronomy/gravit/default.nix b/pkgs/applications/science/astronomy/gravit/default.nix
index 15f72938effe..0a98563ed0e5 100644
--- a/pkgs/applications/science/astronomy/gravit/default.nix
+++ b/pkgs/applications/science/astronomy/gravit/default.nix
@@ -22,7 +22,7 @@ stdenv.mkDerivation rec {
   enableParallelBuilding = true;
 
   meta = {
-    homepage = https://gravit.slowchop.com;
+    homepage = "https://gravit.slowchop.com";
     description = "Beautiful OpenGL-based gravity simulator";
     license = stdenv.lib.licenses.gpl2;
 
diff --git a/pkgs/applications/science/astronomy/kstars/default.nix b/pkgs/applications/science/astronomy/kstars/default.nix
new file mode 100644
index 000000000000..0b53e3e85ac3
--- /dev/null
+++ b/pkgs/applications/science/astronomy/kstars/default.nix
@@ -0,0 +1,48 @@
+{
+  mkDerivation, lib, fetchgit,
+  extra-cmake-modules,
+
+  kconfig, kdoctools, kguiaddons, ki18n, kinit, kiconthemes, kio,
+  knewstuff, kplotting, kwidgetsaddons, kxmlgui,
+
+  qtx11extras, qtwebsockets,
+
+  eigen, zlib,
+
+  cfitsio, indilib, xplanet
+}:
+
+mkDerivation {
+  name = "kstars";
+  
+  src = fetchgit {
+    url = "https://anongit.kde.org/kstars.git";
+    rev = "7acc527939280edd22823371dc4e22494c6c626a";
+    sha256 = "1n1lgi7p3dj893fdnzjbnrha40p4apl0dy8zppcabxwrb1khb84v";
+  };
+  
+  nativeBuildInputs = [ extra-cmake-modules kdoctools ];
+  buildInputs = [
+    kconfig kdoctools kguiaddons ki18n kinit kiconthemes kio
+    knewstuff kplotting kwidgetsaddons kxmlgui
+
+    qtx11extras qtwebsockets
+
+    eigen zlib
+
+    cfitsio indilib xplanet
+  ];
+
+  meta = with lib; {
+    description = "Virtual planetarium astronomy software";
+    homepage = "https://kde.org/applications/education/org.kde.kstars";
+    longDescription = ''
+      It provides an accurate graphical simulation of the night sky, from any location on Earth, at any date and time.
+      The display includes up to 100 million stars, 13.000 deep-sky objects, all 8 planets, the Sun and Moon, and thousands of comets, asteroids, supernovae, and satellites.
+      For students and teachers, it supports adjustable simulation speeds in order to view phenomena that happen over long timescales, the KStars Astrocalculator to predict conjunctions, and many common astronomical calculations.
+    '';
+    license = licenses.gpl2;
+    platforms = platforms.linux;
+    maintainers = with maintainers; [ timput ];
+  };
+}
diff --git a/pkgs/applications/science/astronomy/openspace/default.nix b/pkgs/applications/science/astronomy/openspace/default.nix
index cfdd320d201c..566fd61f1a7b 100644
--- a/pkgs/applications/science/astronomy/openspace/default.nix
+++ b/pkgs/applications/science/astronomy/openspace/default.nix
@@ -82,7 +82,7 @@ stdenv.mkDerivation rec {
 
       WARNING: This build is not very usable for now.
     '';
-    homepage  = https://www.openspaceproject.com/;
+    homepage  = "https://www.openspaceproject.com/";
     license   = stdenv.lib.licenses.mit;
     platforms = stdenv.lib.platforms.linux;
     broken = true; # fails to build
diff --git a/pkgs/applications/science/astronomy/stellarium/default.nix b/pkgs/applications/science/astronomy/stellarium/default.nix
index eca25774c593..7ef7776c0fe8 100644
--- a/pkgs/applications/science/astronomy/stellarium/default.nix
+++ b/pkgs/applications/science/astronomy/stellarium/default.nix
@@ -6,13 +6,13 @@
 
 mkDerivation rec {
   pname = "stellarium";
-  version = "0.19.3";
+  version = "0.20.1";
 
   src = fetchFromGitHub {
     owner = "Stellarium";
     repo = "stellarium";
     rev = "v${version}";
-    sha256 = "175aj4bgi9b6bif6fvjdlpd68brcwij4x3ml0lxk6i51binv233y";
+    sha256 = "1x8svan03k1x9jwqflimbpj7jpg6mjrbz26bg1sbhsqdlc8rbhky";
   };
 
   nativeBuildInputs = [ cmake perl wrapQtAppsHook ];
@@ -24,7 +24,7 @@ mkDerivation rec {
 
   meta = with lib; {
     description = "Free open-source planetarium";
-    homepage = http://stellarium.org/;
+    homepage = "http://stellarium.org/";
     license = licenses.gpl2;
 
     platforms = platforms.linux; # should be mesaPlatforms, but we don't have qt on darwin
diff --git a/pkgs/applications/science/astronomy/xplanet/default.nix b/pkgs/applications/science/astronomy/xplanet/default.nix
index f306f9265aba..a314678b6ea3 100644
--- a/pkgs/applications/science/astronomy/xplanet/default.nix
+++ b/pkgs/applications/science/astronomy/xplanet/default.nix
@@ -30,7 +30,7 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "Renders an image of the earth or other planets into the X root window";
-    homepage = http://xplanet.sourceforge.net;
+    homepage = "http://xplanet.sourceforge.net";
     license = licenses.gpl2;
     maintainers = with maintainers; [ lassulus sander ];
     platforms = platforms.all;
diff --git a/pkgs/applications/science/biology/ants/default.nix b/pkgs/applications/science/biology/ants/default.nix
index 6e1a2a3407ee..20eedfaaa16c 100644
--- a/pkgs/applications/science/biology/ants/default.nix
+++ b/pkgs/applications/science/biology/ants/default.nix
@@ -33,7 +33,7 @@ stdenv.mkDerivation rec {
   '';
 
   meta = with stdenv.lib; {
-    homepage = https://github.com/ANTsX/ANTs;
+    homepage = "https://github.com/ANTsX/ANTs";
     description = "Advanced normalization toolkit for medical image registration and other processing";
     maintainers = with maintainers; [ bcdarwin ];
     platforms = platforms.unix;
diff --git a/pkgs/applications/science/biology/aragorn/default.nix b/pkgs/applications/science/biology/aragorn/default.nix
index a5f0ebc18abd..956e4d884531 100644
--- a/pkgs/applications/science/biology/aragorn/default.nix
+++ b/pkgs/applications/science/biology/aragorn/default.nix
@@ -20,7 +20,7 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "Detects tRNA, mtRNA, and tmRNA genes in nucleotide sequences";
-    homepage = http://mbio-serv2.mbioekol.lu.se/ARAGORN/;
+    homepage = "http://mbio-serv2.mbioekol.lu.se/ARAGORN/";
     license = licenses.gpl2;
     maintainers = [ maintainers.bzizou ];
     platforms = platforms.unix;
diff --git a/pkgs/applications/science/biology/bcftools/default.nix b/pkgs/applications/science/biology/bcftools/default.nix
index 4a6a464de464..b847fd8b5fe4 100644
--- a/pkgs/applications/science/biology/bcftools/default.nix
+++ b/pkgs/applications/science/biology/bcftools/default.nix
@@ -30,7 +30,7 @@ stdenv.mkDerivation rec {
   meta = with stdenv.lib; {
     description = "Tools for manipulating BCF2/VCF/gVCF format, SNP and short indel sequence variants";
     license = licenses.mit;
-    homepage = http://www.htslib.org/;
+    homepage = "http://www.htslib.org/";
     platforms = platforms.unix;
     maintainers = [ maintainers.mimame ];
   };
diff --git a/pkgs/applications/science/biology/bedtools/default.nix b/pkgs/applications/science/biology/bedtools/default.nix
index 9af2ec88c392..332e06ea0cf5 100644
--- a/pkgs/applications/science/biology/bedtools/default.nix
+++ b/pkgs/applications/science/biology/bedtools/default.nix
@@ -20,7 +20,7 @@ stdenv.mkDerivation rec {
   meta = with stdenv.lib; {
     description = "A powerful toolset for genome arithmetic.";
     license = licenses.gpl2;
-    homepage = https://bedtools.readthedocs.io/en/latest/;
+    homepage = "https://bedtools.readthedocs.io/en/latest/";
     maintainers = with maintainers; [ jbedo ];
     platforms = platforms.unix;
   };
diff --git a/pkgs/applications/science/biology/bftools/default.nix b/pkgs/applications/science/biology/bftools/default.nix
index 29e8bca52625..2ecefee340fd 100644
--- a/pkgs/applications/science/biology/bftools/default.nix
+++ b/pkgs/applications/science/biology/bftools/default.nix
@@ -35,7 +35,7 @@ stdenv.mkDerivation rec {
     description = "A bundle of scripts for using Bio-Formats on the command line with bioformats_package.jar already included";
     license = licenses.gpl2;
     platforms = platforms.all;
-    homepage = https://www.openmicroscopy.org/bio-formats/;
+    homepage = "https://www.openmicroscopy.org/bio-formats/";
     maintainers = [ maintainers.tbenst ];
   };
 }
diff --git a/pkgs/applications/science/biology/blast/default.nix b/pkgs/applications/science/biology/blast/default.nix
index ad737c6699d6..95a1b905e9e2 100644
--- a/pkgs/applications/science/biology/blast/default.nix
+++ b/pkgs/applications/science/biology/blast/default.nix
@@ -97,7 +97,7 @@ stdenv.mkDerivation rec {
   meta = with stdenv.lib; {
     description = ''Basic Local Alignment Search Tool (BLAST) finds regions of
     similarity between biological sequences'';
-    homepage = https://blast.ncbi.nlm.nih.gov/Blast.cgi;
+    homepage = "https://blast.ncbi.nlm.nih.gov/Blast.cgi";
     license = licenses.publicDomain;
 
     # Version 2.10.0 fails on Darwin
diff --git a/pkgs/applications/science/biology/bowtie2/default.nix b/pkgs/applications/science/biology/bowtie2/default.nix
index 962428d67cf9..dc818e2fb868 100644
--- a/pkgs/applications/science/biology/bowtie2/default.nix
+++ b/pkgs/applications/science/biology/bowtie2/default.nix
@@ -18,7 +18,7 @@ stdenv.mkDerivation rec {
   meta = with stdenv.lib; {
     description = "An ultrafast and memory-efficient tool for aligning sequencing reads to long reference sequences";
     license = licenses.gpl3;
-    homepage = http://bowtie-bio.sf.net/bowtie2;
+    homepage = "http://bowtie-bio.sf.net/bowtie2";
     maintainers = with maintainers; [ rybern ];
     platforms = platforms.all;
     broken = stdenv.isAarch64;
diff --git a/pkgs/applications/science/biology/bwa/default.nix b/pkgs/applications/science/biology/bwa/default.nix
index 5e39320bf835..e478c104edef 100644
--- a/pkgs/applications/science/biology/bwa/default.nix
+++ b/pkgs/applications/science/biology/bwa/default.nix
@@ -18,7 +18,7 @@ stdenv.mkDerivation rec {
   meta = with stdenv.lib; {
     description = "A software package for mapping low-divergent sequences against a large reference genome, such as the human genome";
     license     = licenses.gpl3;
-    homepage    = http://bio-bwa.sourceforge.net/;
+    homepage    = "http://bio-bwa.sourceforge.net/";
     maintainers = with maintainers; [ luispedro ];
     platforms = [ "x86_64-linux" ];
   };
diff --git a/pkgs/applications/science/biology/cd-hit/default.nix b/pkgs/applications/science/biology/cd-hit/default.nix
index 1a41a28a19aa..0db788b0f743 100644
--- a/pkgs/applications/science/biology/cd-hit/default.nix
+++ b/pkgs/applications/science/biology/cd-hit/default.nix
@@ -26,7 +26,7 @@ stdenv.mkDerivation rec {
   '';
   meta = with stdenv.lib; {
     description = "Clustering and comparing protein or nucleotide sequences";
-    homepage = http://weizhongli-lab.org/cd-hit/;
+    homepage = "http://weizhongli-lab.org/cd-hit/";
     license = licenses.gpl2;
     maintainers = [ maintainers.bzizou ];
     platforms = platforms.unix;
diff --git a/pkgs/applications/science/biology/clustal-omega/default.nix b/pkgs/applications/science/biology/clustal-omega/default.nix
index 00acc25028c0..71cf87985376 100644
--- a/pkgs/applications/science/biology/clustal-omega/default.nix
+++ b/pkgs/applications/science/biology/clustal-omega/default.nix
@@ -24,7 +24,7 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "General purpose multiple sequence alignment program for protein and DNA/RNA";
-    homepage = http://www.clustal.org/omega/;
+    homepage = "http://www.clustal.org/omega/";
     license = licenses.gpl2;
     maintainers = [ maintainers.bzizou ];
     platforms = platforms.unix;
diff --git a/pkgs/applications/science/biology/cmtk/default.nix b/pkgs/applications/science/biology/cmtk/default.nix
index 1ebfa2fca57a..41805c15aed5 100644
--- a/pkgs/applications/science/biology/cmtk/default.nix
+++ b/pkgs/applications/science/biology/cmtk/default.nix
@@ -21,6 +21,6 @@ stdenv.mkDerivation {
     maintainers = with maintainers; [ tbenst ];
     platforms = platforms.all;
     license     = licenses.gpl3;
-    homepage    = https://www.nitrc.org/projects/cmtk/;
+    homepage    = "https://www.nitrc.org/projects/cmtk/";
   };
 }
diff --git a/pkgs/applications/science/biology/conglomerate/default.nix b/pkgs/applications/science/biology/conglomerate/default.nix
index 23182fcadc6b..971e2f23055b 100644
--- a/pkgs/applications/science/biology/conglomerate/default.nix
+++ b/pkgs/applications/science/biology/conglomerate/default.nix
@@ -25,7 +25,7 @@ stdenv.mkDerivation rec {
   '';
 
   meta = with stdenv.lib; {
-    homepage = https://github.com/BIC-MNI/conglomerate;
+    homepage = "https://github.com/BIC-MNI/conglomerate";
     description = "More command-line utilities for working with MINC files";
     maintainers = with maintainers; [ bcdarwin ];
     platforms = platforms.unix;
diff --git a/pkgs/applications/science/biology/dcm2niix/default.nix b/pkgs/applications/science/biology/dcm2niix/default.nix
index 7c328034a306..59b173ac98cd 100644
--- a/pkgs/applications/science/biology/dcm2niix/default.nix
+++ b/pkgs/applications/science/biology/dcm2niix/default.nix
@@ -6,14 +6,14 @@
 }:
 
 stdenv.mkDerivation rec {
-  version = "1.0.20190902";
+  version = "1.0.20200331";
   pname = "dcm2niix";
 
   src = fetchFromGitHub {
     owner = "rordenlab";
     repo = "dcm2niix";
     rev = "v${version}";
-    sha256 = "0h8jsadgv831lqb0jhnaxm7lldirmnp5agrhgg5bcxvn860fl15b";
+    sha256 = "1cncfwhyhmg18n970lkn6yvp0i74ajznsl8dqz00asqfzmg681n1";
   };
 
   enableParallelBuilding = true;
@@ -26,7 +26,7 @@ stdenv.mkDerivation rec {
       dcm2niix is a designed to convert neuroimaging data from the
       DICOM format to the NIfTI format.
     '';
-    homepage = https://www.nitrc.org/projects/dcm2nii;
+    homepage = "https://www.nitrc.org/projects/dcm2nii";
     license = licenses.bsd3;
     maintainers = [ maintainers.ashgillman ];
     platforms = platforms.all;
diff --git a/pkgs/applications/science/biology/deeptools/default.nix b/pkgs/applications/science/biology/deeptools/default.nix
index 78a6f483337f..8787c96e5b03 100644
--- a/pkgs/applications/science/biology/deeptools/default.nix
+++ b/pkgs/applications/science/biology/deeptools/default.nix
@@ -4,11 +4,11 @@
 with python.pkgs;
 buildPythonApplication rec {
   pname = "deepTools";
-  version = "3.3.1";
+  version = "3.4.1";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "08p36p9ncj5s8qf1r7h83x4rnmi63l3yk6mnr3wgpg2qgvwl0hji";
+    sha256 = "05zw9gk17hz08hns5lnhn7l13idg9jdz4gdba6m6gbr84yz149gs";
   };
 
   propagatedBuildInputs = [
diff --git a/pkgs/applications/science/biology/diamond/default.nix b/pkgs/applications/science/biology/diamond/default.nix
index c1d20a11ca96..dd1e13ec7162 100644
--- a/pkgs/applications/science/biology/diamond/default.nix
+++ b/pkgs/applications/science/biology/diamond/default.nix
@@ -31,10 +31,10 @@ stdenv.mkDerivation {
       "Fast and sensitive protein alignment using DIAMOND",
       Nature Methods 12, 59-60 (2015).
         '';
-    homepage = https://github.com/bbuchfink/diamond;
+    homepage = "https://github.com/bbuchfink/diamond";
     license = {
       fullName = "University of Tuebingen, Benjamin Buchfink";
-      url = https://raw.githubusercontent.com/bbuchfink/diamond/master/src/COPYING;
+      url = "https://raw.githubusercontent.com/bbuchfink/diamond/master/src/COPYING";
     };
     maintainers = [ maintainers.metabar ];
   };
diff --git a/pkgs/applications/science/biology/ecopcr/default.nix b/pkgs/applications/science/biology/ecopcr/default.nix
index 9e1b16ff9449..2e744c7b2b9e 100644
--- a/pkgs/applications/science/biology/ecopcr/default.nix
+++ b/pkgs/applications/science/biology/ecopcr/default.nix
@@ -30,7 +30,7 @@ stdenv.mkDerivation rec {
       coverage and barcode specificity. New barcode primers can be
       developed using the ecoPrimers software.
     '';
-    homepage = https://git.metabarcoding.org/obitools/ecopcr/wikis/home;
+    homepage = "https://git.metabarcoding.org/obitools/ecopcr/wikis/home";
     license = licenses.cecill20;
     maintainers = [ maintainers.metabar ];
   };
diff --git a/pkgs/applications/science/biology/eggnog-mapper/default.nix b/pkgs/applications/science/biology/eggnog-mapper/default.nix
index e11f4ebf77c5..3ef52e543933 100644
--- a/pkgs/applications/science/biology/eggnog-mapper/default.nix
+++ b/pkgs/applications/science/biology/eggnog-mapper/default.nix
@@ -33,7 +33,7 @@ python27Packages.buildPythonApplication rec {
   meta = with stdenv.lib; {
     description = "Fast genome-wide functional annotation through orthology assignment";
     license = licenses.gpl2;
-    homepage = https://github.com/eggnogdb/eggnog-mapper/wiki;
+    homepage = "https://github.com/eggnogdb/eggnog-mapper/wiki";
     maintainers = with maintainers; [ luispedro ];
     platforms = platforms.all;
   };
diff --git a/pkgs/applications/science/biology/emboss/default.nix b/pkgs/applications/science/biology/emboss/default.nix
index 2110a9bcfaba..e2374bcd1e2f 100644
--- a/pkgs/applications/science/biology/emboss/default.nix
+++ b/pkgs/applications/science/biology/emboss/default.nix
@@ -23,6 +23,6 @@ stdenv.mkDerivation {
     data in a variety of formats and even allows transparent retrieval of
     sequence data from the web.''; 
     license     = "GPL2";
-    homepage    = http://emboss.sourceforge.net/;
+    homepage    = "http://emboss.sourceforge.net/";
   };
 }
diff --git a/pkgs/applications/science/biology/est-sfs/default.nix b/pkgs/applications/science/biology/est-sfs/default.nix
index dcc725233551..1b15c06c670a 100644
--- a/pkgs/applications/science/biology/est-sfs/default.nix
+++ b/pkgs/applications/science/biology/est-sfs/default.nix
@@ -19,7 +19,7 @@ stdenv.mkDerivation rec {
   '';
 
   meta = with stdenv.lib; {
-    homepage = https://sourceforge.net/projects/est-usfs;
+    homepage = "https://sourceforge.net/projects/est-usfs";
     description = "Estimate the unfolded site frequency spectrum and ancestral states";
     license = licenses.gpl3;
     maintainers = [ maintainers.bzizou ];
diff --git a/pkgs/applications/science/biology/exonerate/default.nix b/pkgs/applications/science/biology/exonerate/default.nix
index 1dd6b44692a3..b2c49ab00767 100644
--- a/pkgs/applications/science/biology/exonerate/default.nix
+++ b/pkgs/applications/science/biology/exonerate/default.nix
@@ -17,7 +17,7 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "Generic tool for sequence alignment";
-    homepage = https://www.ebi.ac.uk/about/vertebrate-genomics/software/exonerate;
+    homepage = "https://www.ebi.ac.uk/about/vertebrate-genomics/software/exonerate";
     license = licenses.gpl3;
     maintainers = [ maintainers.bzizou ];
     platforms = platforms.unix ;
diff --git a/pkgs/applications/science/biology/freebayes/default.nix b/pkgs/applications/science/biology/freebayes/default.nix
index 7d0a36e755f6..bd80df56cb90 100644
--- a/pkgs/applications/science/biology/freebayes/default.nix
+++ b/pkgs/applications/science/biology/freebayes/default.nix
@@ -22,7 +22,7 @@ stdenv.mkDerivation rec {
   meta = with stdenv.lib; {
     description = "Bayesian haplotype-based polymorphism discovery and genotyping";
     license     = licenses.mit;
-    homepage    = https://github.com/ekg/freebayes;
+    homepage    = "https://github.com/ekg/freebayes";
     maintainers = with maintainers; [ jdagilliland ];
     platforms = [ "x86_64-linux" ];
   };
diff --git a/pkgs/applications/science/biology/hisat2/default.nix b/pkgs/applications/science/biology/hisat2/default.nix
index 824856301145..fb7f2cba3de3 100644
--- a/pkgs/applications/science/biology/hisat2/default.nix
+++ b/pkgs/applications/science/biology/hisat2/default.nix
@@ -42,7 +42,7 @@ stdenv.mkDerivation rec {
   meta = with stdenv.lib; {
     description = "Graph based aligner";
     license = licenses.gpl3;
-    homepage = https://ccb.jhu.edu/software/hisat2/index.shtml;
+    homepage = "https://ccb.jhu.edu/software/hisat2/index.shtml";
     maintainers = with maintainers; [ jbedo ];
     platforms = [ "x86_64-linux" "i686-linux" ];
   };
diff --git a/pkgs/applications/science/biology/hmmer/default.nix b/pkgs/applications/science/biology/hmmer/default.nix
index 69ecb228697b..3786b62f7477 100644
--- a/pkgs/applications/science/biology/hmmer/default.nix
+++ b/pkgs/applications/science/biology/hmmer/default.nix
@@ -17,7 +17,7 @@ stdenv.mkDerivation rec {
       HMMER is designed to detect remote homologs as sensitively as possible, relying on the strength of its underlying probability models. In the past, this strength came at significant computational expense, but as of the new HMMER3 project, HMMER is now essentially as fast as BLAST.
       HMMER can be downloaded and installed as a command line tool on your own hardware, and now it is also more widely accessible to the scientific community via new search servers at the European Bioinformatics Institute.
     '';
-    homepage = http://hmmer.org/;
+    homepage = "http://hmmer.org/";
     license = licenses.gpl3;
     maintainers = [ maintainers.iimog ];
     platforms = [ "x86_64-linux" "i686-linux" ];
diff --git a/pkgs/applications/science/biology/igv/default.nix b/pkgs/applications/science/biology/igv/default.nix
index 04699a84b692..aa6c95071b7b 100644
--- a/pkgs/applications/science/biology/igv/default.nix
+++ b/pkgs/applications/science/biology/igv/default.nix
@@ -24,7 +24,7 @@ stdenv.mkDerivation rec {
   '';
 
   meta = with stdenv.lib; {
-    homepage = https://www.broadinstitute.org/igv/;
+    homepage = "https://www.broadinstitute.org/igv/";
     description = "A visualization tool for interactive exploration of genomic datasets";
     license = licenses.lgpl21;
     platforms = platforms.unix;
diff --git a/pkgs/applications/science/biology/itsx/default.nix b/pkgs/applications/science/biology/itsx/default.nix
index 1ba8cdf22ba0..ac534a4ec3cd 100644
--- a/pkgs/applications/science/biology/itsx/default.nix
+++ b/pkgs/applications/science/biology/itsx/default.nix
@@ -26,7 +26,7 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "Improved software detection and extraction of ITS1 and ITS2 from ribosomal ITS sequences of fungi and other eukaryotes for use in environmental sequencing";
-    homepage = https://microbiology.se/software/itsx/;
+    homepage = "https://microbiology.se/software/itsx/";
     license = licenses.gpl3;
     maintainers = [ maintainers.bzizou ];
     platforms = [ "x86_64-linux" "i686-linux" ];
diff --git a/pkgs/applications/science/biology/iv/default.nix b/pkgs/applications/science/biology/iv/default.nix
index 37abcf396211..82fe36940081 100644
--- a/pkgs/applications/science/biology/iv/default.nix
+++ b/pkgs/applications/science/biology/iv/default.nix
@@ -26,7 +26,7 @@ stdenv.mkDerivation rec
     meta = with stdenv.lib;
       { description = "InterViews graphical library for Neuron";
         license     = licenses.bsd3;
-        homepage    = http://www.neuron.yale.edu/neuron;
+        homepage    = "http://www.neuron.yale.edu/neuron";
         platforms   = platforms.all;
       };
   }
diff --git a/pkgs/applications/science/biology/last/default.nix b/pkgs/applications/science/biology/last/default.nix
index b47ce6ac3a94..1a3762f43264 100644
--- a/pkgs/applications/science/biology/last/default.nix
+++ b/pkgs/applications/science/biology/last/default.nix
@@ -2,11 +2,11 @@
 
 stdenv.mkDerivation rec {
   pname = "last";
-  version = "1047";
+  version = "1060";
 
   src = fetchurl {
     url = "http://last.cbrc.jp/last-${version}.zip";
-    sha256 = "06fj4qfw3dd35y3pky3dnr40v1alf43wjx373rbx1vr3hbgzvgf8";
+    sha256 = "0h0604rxg0z0h21dykrnxsb4679zfhibg79gss1v2ik5xpdxl8kk";
   };
 
   nativeBuildInputs = [ unzip ];
diff --git a/pkgs/applications/science/biology/megahit/default.nix b/pkgs/applications/science/biology/megahit/default.nix
index 86414980177f..35ef280ed676 100644
--- a/pkgs/applications/science/biology/megahit/default.nix
+++ b/pkgs/applications/science/biology/megahit/default.nix
@@ -19,7 +19,7 @@ stdenv.mkDerivation rec {
   meta = with stdenv.lib; {
     description = "An ultra-fast single-node solution for large and complex metagenomics assembly via succinct de Bruijn graph";
     license     = licenses.gpl3;
-    homepage    = https://github.com/voutcn/megahit;
+    homepage    = "https://github.com/voutcn/megahit";
     maintainers = with maintainers; [ luispedro ];
     platforms = [ "x86_64-linux" ];
   };
diff --git a/pkgs/applications/science/biology/messer-slim/default.nix b/pkgs/applications/science/biology/messer-slim/default.nix
index d485666f3931..201e38cfc538 100644
--- a/pkgs/applications/science/biology/messer-slim/default.nix
+++ b/pkgs/applications/science/biology/messer-slim/default.nix
@@ -18,7 +18,7 @@ stdenv.mkDerivation rec {
 
   meta = {
      description = "An evolutionary simulation framework";
-     homepage = https://messerlab.org/slim/;
+     homepage = "https://messerlab.org/slim/";
      license = with stdenv.lib.licenses; [ gpl3 ];
      maintainers = with stdenv.lib.maintainers; [ bzizou ];
      platforms = stdenv.lib.platforms.all;
diff --git a/pkgs/applications/science/biology/migrate/default.nix b/pkgs/applications/science/biology/migrate/default.nix
index d80e6e7b30df..0e2aa1c1a791 100644
--- a/pkgs/applications/science/biology/migrate/default.nix
+++ b/pkgs/applications/science/biology/migrate/default.nix
@@ -16,7 +16,7 @@ gccStdenv.mkDerivation rec {
 
   meta = with gccStdenv.lib; {
     description = "Estimates population size, migration, population splitting parameters using genetic/genomic data";
-    homepage = https://peterbeerli.com/migrate-html5/index.html;
+    homepage = "https://peterbeerli.com/migrate-html5/index.html";
     license = licenses.mit;
     maintainers = [ maintainers.bzizou ];
     platforms = platforms.unix;
diff --git a/pkgs/applications/science/biology/minc-tools/default.nix b/pkgs/applications/science/biology/minc-tools/default.nix
index 4c8b768a56a9..db803ea4922f 100644
--- a/pkgs/applications/science/biology/minc-tools/default.nix
+++ b/pkgs/applications/science/biology/minc-tools/default.nix
@@ -33,7 +33,7 @@ stdenv.mkDerivation rec {
   enableParallelBuilding = true;
 
   meta = with stdenv.lib; {
-    homepage = https://github.com/BIC-MNI/minc-tools;
+    homepage = "https://github.com/BIC-MNI/minc-tools";
     description = "Command-line utilities for working with MINC files";
     maintainers = with maintainers; [ bcdarwin ];
     platforms = platforms.unix;
diff --git a/pkgs/applications/science/biology/minimap2/default.nix b/pkgs/applications/science/biology/minimap2/default.nix
index bff2bcf428b5..e33a17537910 100644
--- a/pkgs/applications/science/biology/minimap2/default.nix
+++ b/pkgs/applications/science/biology/minimap2/default.nix
@@ -22,7 +22,7 @@ stdenv.mkDerivation rec {
   
   meta = with stdenv.lib; {
     description = "A versatile pairwise aligner for genomic and spliced nucleotide sequences";
-    homepage = https://lh3.github.io/minimap2;
+    homepage = "https://lh3.github.io/minimap2";
     license = licenses.mit;
     platforms = platforms.all;
     maintainers = [ maintainers.arcadio ];
diff --git a/pkgs/applications/science/biology/mni_autoreg/default.nix b/pkgs/applications/science/biology/mni_autoreg/default.nix
index ab22fb7232ff..254d874f9d91 100644
--- a/pkgs/applications/science/biology/mni_autoreg/default.nix
+++ b/pkgs/applications/science/biology/mni_autoreg/default.nix
@@ -26,7 +26,7 @@ stdenv.mkDerivation rec {
   '';
 
   meta = with stdenv.lib; {
-    homepage = https://github.com/BIC-MNI/mni_autoreg;
+    homepage = "https://github.com/BIC-MNI/mni_autoreg";
     description = "Tools for automated registration using the MINC image format";
     maintainers = with maintainers; [ bcdarwin ];
     platforms = platforms.unix;
diff --git a/pkgs/applications/science/biology/mosdepth/default.nix b/pkgs/applications/science/biology/mosdepth/default.nix
index 717b8c3ab2f3..21af5b82207b 100644
--- a/pkgs/applications/science/biology/mosdepth/default.nix
+++ b/pkgs/applications/science/biology/mosdepth/default.nix
@@ -4,8 +4,8 @@ let
   hts-nim = fetchFromGitHub {
     owner = "brentp";
     repo = "hts-nim";
-    rev = "v0.2.14";
-    sha256 = "0d1z4b6mrppmz3hgkxd4wcy79w68icvhi7q7n3m2k17n8f3xbdx3";
+    rev = "v0.3.4";
+    sha256 = "0670phk1bq3l9j2zaa8i5wcpc5dyfrc0l2a6c21g0l2mmdczffa7";
   };
 
   docopt = fetchFromGitHub {
@@ -17,13 +17,13 @@ let
 
 in stdenv.mkDerivation rec {
   pname = "mosdepth";
-  version = "0.2.6";
+  version = "0.2.9";
 
   src = fetchFromGitHub {
     owner = "brentp";
     repo = "mosdepth";
     rev = "v${version}";
-    sha256 = "0i9pl9lsli3y84ygxanrr525gfg8fs9h481944cbzsmqmbldwvgk";
+    sha256 = "01gm9gj2x2zs4yx6wk761fi1papi7qr3gp4ln1kkn8n2f9y9h849";
   };
 
   buildInputs = [ nim ];
@@ -38,7 +38,7 @@ in stdenv.mkDerivation rec {
   meta = with stdenv.lib; {
     description = "fast BAM/CRAM depth calculation for WGS, exome, or targeted sequencing.";
     license = licenses.mit;
-    homepage = https://github.com/brentp/mosdepth;
+    homepage = "https://github.com/brentp/mosdepth";
     maintainers = with maintainers; [ jbedo ];
     platforms = platforms.linux;
   };
diff --git a/pkgs/applications/science/biology/mrbayes/default.nix b/pkgs/applications/science/biology/mrbayes/default.nix
index 1dd92af58eb1..8ee7bccf075f 100644
--- a/pkgs/applications/science/biology/mrbayes/default.nix
+++ b/pkgs/applications/science/biology/mrbayes/default.nix
@@ -23,7 +23,7 @@ stdenv.mkDerivation rec {
       MCMC) to approximate the posterior probabilities of trees.
     '';
     license     = "GPL2";
-    homepage    = http://mrbayes.csit.fsu.edu/;
+    homepage    = "http://mrbayes.csit.fsu.edu/";
     platforms = stdenv.lib.platforms.linux;
   };
 }
diff --git a/pkgs/applications/science/biology/mrtrix/default.nix b/pkgs/applications/science/biology/mrtrix/default.nix
index 6959b2caab8a..528277e05e38 100644
--- a/pkgs/applications/science/biology/mrtrix/default.nix
+++ b/pkgs/applications/science/biology/mrtrix/default.nix
@@ -1,17 +1,17 @@
 { stdenv, lib, fetchFromGitHub, python, makeWrapper
-, eigen, fftw, libtiff, zlib, ants, bc
+, eigen, fftw, libtiff, libpng, zlib, ants, bc
 , qt5, libGL, libGLU, libX11, libXext
 , withGui ? true }:
 
 stdenv.mkDerivation rec {
   pname = "mrtrix";
-  version = "3.0_RC3_latest";
+  version = "3.0.0";
 
   src = fetchFromGitHub {
     owner  = "MRtrix3";
     repo   = "mrtrix3";
     rev    = version;
-    sha256 = "184nv524p8j94qicjy9l288bqcgl2yxqqs55a7042i0gfsnwp51c";
+    sha256 = "1vvmmbw3m0bdfwp4szr62ygzsvkj0ss91cx5zlkspsr1rff05f9b";
     fetchSubmodules = true;
   };
 
@@ -22,7 +22,9 @@ stdenv.mkDerivation rec {
     python
     fftw
     libtiff
-    zlib ] ++ lib.optionals withGui [
+    libpng
+    zlib
+  ] ++ lib.optionals withGui [
     libGL
     libGLU
     libX11
@@ -34,9 +36,14 @@ stdenv.mkDerivation rec {
   installCheckInputs = [ bc ];
 
   postPatch = ''
-    patchShebangs ./build ./configure ./run_tests ./bin/population_template
+    patchShebangs ./build ./configure ./run_tests ./bin/*
+
+    # patching interpreters before fixup is needed for tests:
+    patchShebangs ./bin/*
+    patchShebangs testing/binaries/data/vectorstats/*py
+
     substituteInPlace ./run_tests  \
-      --replace 'git submodule update --init >> $LOGFILE 2>&1' ""
+      --replace 'git submodule update --init $datadir >> $LOGFILE 2>&1' ""
   '';
 
   configurePhase = ''
@@ -50,7 +57,13 @@ stdenv.mkDerivation rec {
     (cd testing && ../build)
   '';
 
-  installCheckPhase = "./run_tests";
+  installCheckPhase = ''
+    ./run_tests units
+    ./run_tests binaries
+
+    # can also `./run_tests scripts`, but this fails due to lack of FSL package
+    # (and there's no convenient way to disable individual tests)
+  '';
   doInstallCheck = true;
 
   installPhase = ''
@@ -63,7 +76,9 @@ stdenv.mkDerivation rec {
 
   postInstall = ''
     for prog in $out/bin/*; do
-      wrapProgram $prog --prefix PATH : ${lib.makeBinPath [ ants ]}
+      if [[ -x "$prog" ]]; then
+        wrapProgram $prog --prefix PATH : ${lib.makeBinPath [ ants ]}
+      fi
     done
   '';
 
diff --git a/pkgs/applications/science/biology/muscle/default.nix b/pkgs/applications/science/biology/muscle/default.nix
index 9cbabc7ab37e..7ed18349259e 100644
--- a/pkgs/applications/science/biology/muscle/default.nix
+++ b/pkgs/applications/science/biology/muscle/default.nix
@@ -26,7 +26,7 @@ stdenv.mkDerivation rec {
   meta = with stdenv.lib; {
     description = "A multiple sequence alignment method with reduced time and space complexity";
     license     = licenses.publicDomain;
-    homepage    = https://www.drive5.com/muscle/;
+    homepage    = "https://www.drive5.com/muscle/";
     maintainers = [ maintainers.unode ];
     # NOTE: Supposed to be compatible with darwin/intel & PPC but currently fails.
     # Anyone with access to these platforms is welcome to give it a try
diff --git a/pkgs/applications/science/biology/ncbi-tools/default.nix b/pkgs/applications/science/biology/ncbi-tools/default.nix
index 1c24ef092542..cc8ebf7f37d9 100644
--- a/pkgs/applications/science/biology/ncbi-tools/default.nix
+++ b/pkgs/applications/science/biology/ncbi-tools/default.nix
@@ -26,7 +26,7 @@ stdenv.mkDerivation rec {
   meta = {
     description = ''NCBI Bioinformatics toolbox (incl. BLAST)'';
     longDescription = ''The NCBI Bioinformatics toolsbox, including command-line utilties, libraries and include files. No X11 support'';
-    homepage = http://www.ncbi.nlm.nih.gov/IEB/ToolBox/; 
+    homepage = "http://www.ncbi.nlm.nih.gov/IEB/ToolBox/"; 
     license = "GPL";
     priority = 5;   # zlib.so gives a conflict with zlib
     broken = true;
diff --git a/pkgs/applications/science/biology/neuron/default.nix b/pkgs/applications/science/biology/neuron/default.nix
index 4e6d3494c721..8cad5f466c5f 100644
--- a/pkgs/applications/science/biology/neuron/default.nix
+++ b/pkgs/applications/science/biology/neuron/default.nix
@@ -78,7 +78,7 @@ stdenv.mkDerivation rec {
                 involving many ion-specific channels, ion accumulation, and second messengers";
 
     license     = licenses.bsd3;
-    homepage    = http://www.neuron.yale.edu/neuron;
+    homepage    = "http://www.neuron.yale.edu/neuron";
     maintainers = [ maintainers.adev ];
     # source claims it's only tested for x86 and powerpc
     platforms   = platforms.x86_64 ++ platforms.i686;
diff --git a/pkgs/applications/science/biology/niftyreg/default.nix b/pkgs/applications/science/biology/niftyreg/default.nix
index 48bd1b21ecd6..fd7dc4f1fbb4 100644
--- a/pkgs/applications/science/biology/niftyreg/default.nix
+++ b/pkgs/applications/science/biology/niftyreg/default.nix
@@ -16,7 +16,7 @@ stdenv.mkDerivation rec {
   enableParallelBuilding = true;
 
   meta = with stdenv.lib; {
-    homepage = http://cmictig.cs.ucl.ac.uk/wiki/index.php/NiftyReg;
+    homepage = "http://cmictig.cs.ucl.ac.uk/wiki/index.php/NiftyReg";
     description = "Medical image registration software";
     maintainers = with maintainers; [ bcdarwin ];
     platforms = [ "x86_64-linux" ];
diff --git a/pkgs/applications/science/biology/niftyseg/default.nix b/pkgs/applications/science/biology/niftyseg/default.nix
index f70054e97716..38194697223d 100644
--- a/pkgs/applications/science/biology/niftyseg/default.nix
+++ b/pkgs/applications/science/biology/niftyseg/default.nix
@@ -13,7 +13,7 @@ stdenv.mkDerivation rec {
   enableParallelBuilding = true;
 
   meta = with stdenv.lib; {
-    homepage = http://cmictig.cs.ucl.ac.uk/research/software/software-nifty/niftyseg;
+    homepage = "http://cmictig.cs.ucl.ac.uk/research/software/software-nifty/niftyseg";
     description = "Software for medical image segmentation, bias field correction, and cortical thickness calculation";
     maintainers = with maintainers; [ bcdarwin ];
     platforms = platforms.unix;
diff --git a/pkgs/applications/science/biology/paml/default.nix b/pkgs/applications/science/biology/paml/default.nix
index 731e31c588fa..7a2dc2782ab0 100644
--- a/pkgs/applications/science/biology/paml/default.nix
+++ b/pkgs/applications/science/biology/paml/default.nix
@@ -28,6 +28,6 @@ stdenv.mkDerivation rec {
     description     = "Phylogenetic Analysis by Maximum Likelihood (PAML)";
     longDescription = ''PAML is a package of programs for phylogenetic analyses of DNA or protein sequences using maximum likelihood. It is maintained and distributed for academic use free of charge by Ziheng Yang. ANSI C source codes are distributed for UNIX/Linux/Mac OSX, and executables are provided for MS Windows. PAML is not good for tree making. It may be used to estimate parameters and test hypotheses to study the evolutionary process, when you have reconstructed trees using other programs such as PAUP*, PHYLIP, MOLPHY, PhyML, RaxML, etc.'';
     license     = "non-commercial";
-    homepage    = http://abacus.gene.ucl.ac.uk/software/paml.html;
+    homepage    = "http://abacus.gene.ucl.ac.uk/software/paml.html";
   };
 }
diff --git a/pkgs/applications/science/biology/picard-tools/default.nix b/pkgs/applications/science/biology/picard-tools/default.nix
index 42b13a981d9d..5073d0f0f324 100644
--- a/pkgs/applications/science/biology/picard-tools/default.nix
+++ b/pkgs/applications/science/biology/picard-tools/default.nix
@@ -2,11 +2,11 @@
 
 stdenv.mkDerivation rec {
   pname = "picard-tools";
-  version = "2.21.8";
+  version = "2.22.4";
 
   src = fetchurl {
     url = "https://github.com/broadinstitute/picard/releases/download/${version}/picard.jar";
-    sha256 = "0wxacfyxqvd39mzmwkwz39g4mf0ig1zcgymwbhsnhmn9j60mdmrf";
+    sha256 = "0gzna5df8nk42l7mc0qbp9h73gwr1030jnw10fawjp6ql6213kdd";
   };
 
   nativeBuildInputs = [ makeWrapper ];
@@ -24,7 +24,7 @@ stdenv.mkDerivation rec {
   meta = with stdenv.lib; {
     description = "Tools for high-throughput sequencing (HTS) data and formats such as SAM/BAM/CRAM and VCF";
     license = licenses.mit;
-    homepage = https://broadinstitute.github.io/picard/;
+    homepage = "https://broadinstitute.github.io/picard/";
     maintainers = with maintainers; [ jbedo ];
     platforms = platforms.all;
   };
diff --git a/pkgs/applications/science/biology/platypus/default.nix b/pkgs/applications/science/biology/platypus/default.nix
index 6907c6e3ec82..30e45d5af0ec 100644
--- a/pkgs/applications/science/biology/platypus/default.nix
+++ b/pkgs/applications/science/biology/platypus/default.nix
@@ -31,7 +31,7 @@ in stdenv.mkDerivation {
   meta = with stdenv.lib; {
     description = "The Platypus variant caller";
     license = licenses.gpl3;
-    homepage = https://github.com/andyrimmer/Platypus;
+    homepage = "https://github.com/andyrimmer/Platypus";
     maintainers = with maintainers; [ jbedo ];
     platforms = platforms.x86_64;
   };
diff --git a/pkgs/applications/science/biology/plink-ng/default.nix b/pkgs/applications/science/biology/plink-ng/default.nix
index 52f8f70b7796..0a31ff6ba4fd 100644
--- a/pkgs/applications/science/biology/plink-ng/default.nix
+++ b/pkgs/applications/science/biology/plink-ng/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchFromGitHub, zlib, openblas, darwin}:
+{ stdenv, fetchFromGitHub, zlib, blas, lapack, darwin}:
 
 stdenv.mkDerivation rec {
   pname = "plink-ng";
@@ -11,14 +11,20 @@ stdenv.mkDerivation rec {
     sha256 = "1zhffjbwpd50dxywccbnv1rxy9njwz73l4awc5j7i28rgj3davcq";
   };
 
-  buildInputs = [ zlib ] ++ (if stdenv.isDarwin then [ darwin.apple_sdk.frameworks.Accelerate ] else [ openblas ]) ;
+  buildInputs = [ zlib ] ++ (if stdenv.isDarwin then [ darwin.apple_sdk.frameworks.Accelerate ] else [ blas lapack ]) ;
 
-  buildPhase = ''
+  preBuild = ''
     sed -i 's|zlib-1.2.8/zlib.h|zlib.h|g' *.c *.h
     ${if stdenv.cc.isClang then "sed -i 's|g++|clang++|g' Makefile.std" else ""}
-    make ZLIB=-lz ${if stdenv.isDarwin then "" else "BLASFLAGS=-lopenblas"} -f Makefile.std
+
+    makeFlagsArray+=(
+      ZLIB=-lz
+      BLASFLAGS="-lblas -lcblas -llapack"
+    );
   '';
 
+  makefile = "Makefile.std";
+
   installPhase = ''
     mkdir -p $out/bin
     cp plink $out/bin
@@ -26,9 +32,8 @@ stdenv.mkDerivation rec {
 
   meta = {
     description = "A comprehensive update to the PLINK association analysis toolset";
-    homepage = https://www.cog-genomics.org/plink2;
+    homepage = "https://www.cog-genomics.org/plink2";
     license = stdenv.lib.licenses.gpl3;
     platforms = stdenv.lib.platforms.linux;
   };
 }
-
diff --git a/pkgs/applications/science/biology/plink/default.nix b/pkgs/applications/science/biology/plink/default.nix
index cc48a0cb13a9..009e12aa02f0 100644
--- a/pkgs/applications/science/biology/plink/default.nix
+++ b/pkgs/applications/science/biology/plink/default.nix
@@ -17,7 +17,7 @@ stdenv.mkDerivation {
   
   meta = {
     description = "Whole genome association toolkit";
-    homepage = http://pngu.mgh.harvard.edu/~purcell/plink/;
+    homepage = "http://pngu.mgh.harvard.edu/~purcell/plink/";
     license = stdenv.lib.licenses.gpl2;
     platforms = stdenv.lib.platforms.all;
     broken = true;
diff --git a/pkgs/applications/science/biology/poretools/default.nix b/pkgs/applications/science/biology/poretools/default.nix
index 4660a776ab21..a9f3fdb24672 100755
--- a/pkgs/applications/science/biology/poretools/default.nix
+++ b/pkgs/applications/science/biology/poretools/default.nix
@@ -16,7 +16,7 @@ pythonPackages.buildPythonPackage rec {
   meta = {
     description = "a toolkit for working with nanopore sequencing data from Oxford Nanopore";
     license = stdenv.lib.licenses.mit;
-    homepage = https://poretools.readthedocs.io/en/latest/;
+    homepage = "https://poretools.readthedocs.io/en/latest/";
     maintainers = [stdenv.lib.maintainers.rybern];
   };
 }
diff --git a/pkgs/applications/science/biology/prodigal/default.nix b/pkgs/applications/science/biology/prodigal/default.nix
index 653f4390488e..ba51c93c38c2 100644
--- a/pkgs/applications/science/biology/prodigal/default.nix
+++ b/pkgs/applications/science/biology/prodigal/default.nix
@@ -18,7 +18,7 @@ stdenv.mkDerivation rec {
   
   meta = with stdenv.lib; {
     description = "Fast, reliable protein-coding gene prediction for prokaryotic genomes";
-    homepage = https://github.com/hyattpd/Prodigal;
+    homepage = "https://github.com/hyattpd/Prodigal";
     license = licenses.gpl3;
     platforms = platforms.all;
     maintainers = with maintainers; [ luispedro ];
diff --git a/pkgs/applications/science/biology/quast/default.nix b/pkgs/applications/science/biology/quast/default.nix
new file mode 100644
index 000000000000..e3c3ea23c2c0
--- /dev/null
+++ b/pkgs/applications/science/biology/quast/default.nix
@@ -0,0 +1,58 @@
+{ stdenv, fetchurl, python3Packages, zlib, bash, coreutils }:
+
+let
+  pythonPackages = python3Packages;
+  inherit (pythonPackages) python;
+in
+
+pythonPackages.buildPythonApplication rec {
+  pname = "quast";
+  version = "5.0.2";
+
+  src = fetchurl {
+    url = "https://github.com/ablab/quast/releases/download/${pname}_${version}/${pname}-${version}.tar.gz";
+    sha256 = "13ml8qywbb4cc7wf2x7z5mz1rjqg51ab8wkizwcg4f6c40zgif6d";
+  };
+
+  pythonPath = with pythonPackages; [ simplejson joblib setuptools matplotlib ];
+
+  nativeBuildInputs = [ coreutils ];
+
+  buildInputs = [ zlib ] ++ pythonPath;
+
+  dontConfigure = true;
+
+  dontBuild = true;
+
+  installPhase = ''
+    substituteInPlace quast_libs/bedtools/Makefile \
+      --replace "/bin/bash" "${bash}/bin/bash"
+    mkdir -p "$out/${python.sitePackages}"
+    export PYTHONPATH="$out/${python.sitePackages}:$PYTHONPATH"
+    ${python.interpreter} setup.py install \
+      --install-lib=$out/${python.sitePackages} \
+      --prefix="$out"
+  '';
+
+   postFixup = ''
+   for file in $(find $out -type f -type f -perm /0111); do
+       old_rpath=$(patchelf --print-rpath $file) && \
+       patchelf --set-rpath $old_rpath:${stdenv.cc.cc.lib}/lib $file || true
+   done
+   # Link to the master program
+   ln -s $out/bin/quast.py $out/bin/quast
+  '';
+
+  dontPatchELF = true;
+
+  # Tests need to download data files, so manual run after packaging is needed
+  doCheck = false;
+
+  meta = with stdenv.lib ; {
+    description = "Evaluates genome assemblies by computing various metrics";
+    homepage = "https://github.com/ablab/quast";
+    license = licenses.gpl2;
+    maintainers = [ maintainers.bzizou ];
+    platforms = platforms.all;
+  };
+}
diff --git a/pkgs/applications/science/biology/raxml/default.nix b/pkgs/applications/science/biology/raxml/default.nix
index d7ee54bfbcf0..5c7353af9315 100644
--- a/pkgs/applications/science/biology/raxml/default.nix
+++ b/pkgs/applications/science/biology/raxml/default.nix
@@ -33,7 +33,7 @@ stdenv.mkDerivation rec {
   meta = with stdenv.lib; {
     description = "A tool for Phylogenetic Analysis and Post-Analysis of Large Phylogenies";
     license = licenses.gpl3;
-    homepage = https://sco.h-its.org/exelixis/web/software/raxml/;
+    homepage = "https://sco.h-its.org/exelixis/web/software/raxml/";
     maintainers = [ maintainers.unode ];
     platforms = [ "i686-linux" "x86_64-linux" ];
   };
diff --git a/pkgs/applications/science/biology/samtools/default.nix b/pkgs/applications/science/biology/samtools/default.nix
index f2c5e9f25beb..e750eea89ac9 100644
--- a/pkgs/applications/science/biology/samtools/default.nix
+++ b/pkgs/applications/science/biology/samtools/default.nix
@@ -27,7 +27,7 @@ stdenv.mkDerivation rec {
   meta = with stdenv.lib; {
     description = "Tools for manipulating SAM/BAM/CRAM format";
     license = licenses.mit;
-    homepage = http://www.htslib.org/;
+    homepage = "http://www.htslib.org/";
     platforms = platforms.unix;
     maintainers = [ maintainers.mimame ];
   };
diff --git a/pkgs/applications/science/biology/samtools/samtools_0_1_19.nix b/pkgs/applications/science/biology/samtools/samtools_0_1_19.nix
index 72d125ef8b6f..d62c2a1fe7b1 100644
--- a/pkgs/applications/science/biology/samtools/samtools_0_1_19.nix
+++ b/pkgs/applications/science/biology/samtools/samtools_0_1_19.nix
@@ -26,7 +26,7 @@ stdenv.mkDerivation rec {
   meta = with stdenv.lib; {
     description = "Tools for manipulating SAM/BAM/CRAM format";
     license = licenses.mit;
-    homepage = http://samtools.sourceforge.net/;
+    homepage = "http://samtools.sourceforge.net/";
     platforms = platforms.unix;
     maintainers = [ maintainers.unode ];
   };
diff --git a/pkgs/applications/science/biology/seaview/default.nix b/pkgs/applications/science/biology/seaview/default.nix
index fea8da41d70a..4192de714d0b 100644
--- a/pkgs/applications/science/biology/seaview/default.nix
+++ b/pkgs/applications/science/biology/seaview/default.nix
@@ -1,12 +1,12 @@
 { stdenv, fetchurl, coreutils, fltk, libjpeg }:
 
 stdenv.mkDerivation rec {
-  version = "5.0";
+  version = "5.0.2";
   pname = "seaview";
 
   src = fetchurl {
     url = "ftp://pbil.univ-lyon1.fr/pub/mol_phylogeny/seaview/archive/seaview_${version}.tar.gz";
-    sha256 = "0gzjqf5mm91pa1drwxvz229bv6l995npdggngszh6z6j4pfh8j7c";
+    sha256 = "0bad0nd18a36g6ysx28j68rbnwqn33ra8inx2lv2igqqcs6i5kif";
   };
 
   buildInputs = [ fltk libjpeg ];
@@ -33,7 +33,7 @@ stdenv.mkDerivation rec {
 
           Gouy M., Guindon S. & Gascuel O. (2010) SeaView version 4 : a multiplatform graphical user interface for sequence alignment and phylogenetic tree building. Molecular Biology and Evolution 27(2):221-224.
     '';
-    homepage = http://doua.prabi.fr/software/seaview;
+    homepage = "http://doua.prabi.fr/software/seaview";
     license = licenses.gpl3;
     maintainers = [ maintainers.iimog ];
     platforms = platforms.linux;
diff --git a/pkgs/applications/science/biology/snpeff/default.nix b/pkgs/applications/science/biology/snpeff/default.nix
index d700ee50a9c6..c68fcfada332 100644
--- a/pkgs/applications/science/biology/snpeff/default.nix
+++ b/pkgs/applications/science/biology/snpeff/default.nix
@@ -25,7 +25,7 @@ stdenv.mkDerivation rec {
   meta = with stdenv.lib; {
     description = "Genetic variant annotation and effect prediction toolbox.";
     license = licenses.lgpl3;
-    homepage = http://snpeff.sourceforge.net/;
+    homepage = "http://snpeff.sourceforge.net/";
     maintainers = with maintainers; [ jbedo ];
     platforms = platforms.all;
   };
diff --git a/pkgs/applications/science/biology/somatic-sniper/default.nix b/pkgs/applications/science/biology/somatic-sniper/default.nix
index 1961c71f43bb..17d9c3dbb55c 100644
--- a/pkgs/applications/science/biology/somatic-sniper/default.nix
+++ b/pkgs/applications/science/biology/somatic-sniper/default.nix
@@ -20,7 +20,7 @@ stdenv.mkDerivation rec {
   meta = with stdenv.lib; {
     description = "Identify single nucleotide positions that are different between tumor and normal";
     license = licenses.mit;
-    homepage = https://github.com/genome/somatic-sniper;
+    homepage = "https://github.com/genome/somatic-sniper";
     maintainers = with maintainers; [ jbedo ];
     platforms = platforms.linux;
   };
diff --git a/pkgs/applications/science/biology/sortmerna/default.nix b/pkgs/applications/science/biology/sortmerna/default.nix
index 4adce4461ede..1f291d1a7008 100644
--- a/pkgs/applications/science/biology/sortmerna/default.nix
+++ b/pkgs/applications/science/biology/sortmerna/default.nix
@@ -32,7 +32,7 @@ stdenv.mkDerivation rec {
     description = "Tools for filtering, mapping, and OTU-picking from shotgun genomics data";
     license = licenses.lgpl3;
     platforms = platforms.x86_64;
-    homepage = https://bioinfo.lifl.fr/RNA/sortmerna/;
+    homepage = "https://bioinfo.lifl.fr/RNA/sortmerna/";
     maintainers = with maintainers; [ luispedro ];
   };
 }
diff --git a/pkgs/applications/science/biology/stacks/default.nix b/pkgs/applications/science/biology/stacks/default.nix
index e778c3bd52cc..93a02a46bd88 100644
--- a/pkgs/applications/science/biology/stacks/default.nix
+++ b/pkgs/applications/science/biology/stacks/default.nix
@@ -2,17 +2,17 @@
     
 stdenv.mkDerivation rec {
   pname = "stacks";
-  version = "2.41";
+  version = "2.52";
   src = fetchurl {
     url = "http://catchenlab.life.illinois.edu/stacks/source/${pname}-${version}.tar.gz";
-    sha256 = "0q420rzjb05jfchcls3pysm4hxfgs6xj2jw246isx0il10g93gkq";
+    sha256 = "0gq3kbj910jsq591wylzjmd23srjlsssmrckmf46m4ysjqdqd8vm";
   };
 
   buildInputs = [ zlib ];
 
   meta = {
     description = "Software pipeline for building loci from short-read sequences";
-    homepage = http://catchenlab.life.illinois.edu/stacks/;
+    homepage = "http://catchenlab.life.illinois.edu/stacks/";
     maintainers = [ stdenv.lib.maintainers.bzizou ];
     license = stdenv.lib.licenses.gpl3;
   };
diff --git a/pkgs/applications/science/biology/strelka/default.nix b/pkgs/applications/science/biology/strelka/default.nix
index 184dcb48a0de..a32eddcb1cd9 100644
--- a/pkgs/applications/science/biology/strelka/default.nix
+++ b/pkgs/applications/science/biology/strelka/default.nix
@@ -35,7 +35,7 @@ stdenv.mkDerivation rec {
   meta = with stdenv.lib; {
     description = "Germline and small variant caller";
     license = licenses.gpl3;
-    homepage = https://github.com/Illumina/strelka;
+    homepage = "https://github.com/Illumina/strelka";
     maintainers = with maintainers; [ jbedo ];
     platforms = [ "x86_64-linux" ];
   };
diff --git a/pkgs/applications/science/biology/sumatools/default.nix b/pkgs/applications/science/biology/sumatools/default.nix
index 5230fcd2eb62..1e3b479d54fc 100644
--- a/pkgs/applications/science/biology/sumatools/default.nix
+++ b/pkgs/applications/science/biology/sumatools/default.nix
@@ -4,7 +4,7 @@ let
   stdenv = gccStdenv;
   meta = with stdenv.lib; {
     description = "Fast and exact comparison and clustering of sequences";
-    homepage = https://metabarcoding.org/sumatra;
+    homepage = "https://metabarcoding.org/sumatra";
     maintainers = [ maintainers.bzizou ];
     platforms = platforms.unix;
   };
diff --git a/pkgs/applications/science/biology/trimal/default.nix b/pkgs/applications/science/biology/trimal/default.nix
index d4e8fee7bc36..8d7e62b61431 100755
--- a/pkgs/applications/science/biology/trimal/default.nix
+++ b/pkgs/applications/science/biology/trimal/default.nix
@@ -25,7 +25,7 @@ stdenv.mkDerivation rec {
     description = "A tool for the automated removal of spurious sequences or poorly aligned regions from a multiple sequence alignment";
     license = licenses.gpl3;
     platforms = platforms.linux;
-    homepage = http://trimal.cgenomics.org;
+    homepage = "http://trimal.cgenomics.org";
     maintainers = [ maintainers.bzizou ];
   };
 }
diff --git a/pkgs/applications/science/biology/varscan/default.nix b/pkgs/applications/science/biology/varscan/default.nix
index 697a444193b1..e97c8f14451f 100644
--- a/pkgs/applications/science/biology/varscan/default.nix
+++ b/pkgs/applications/science/biology/varscan/default.nix
@@ -28,7 +28,7 @@ stdenv.mkDerivation rec {
     # through the Office of Technology Management at Washington
     # University School of Medicine.
     license = licenses.unfree;
-    homepage = https://github.com/dkoboldt/varscan;
+    homepage = "https://github.com/dkoboldt/varscan";
     maintainers = with maintainers; [ jbedo ];
     platforms = platforms.all;
   };
diff --git a/pkgs/applications/science/biology/vcftools/default.nix b/pkgs/applications/science/biology/vcftools/default.nix
index f6c9ad029c13..52957b58bc92 100755
--- a/pkgs/applications/science/biology/vcftools/default.nix
+++ b/pkgs/applications/science/biology/vcftools/default.nix
@@ -17,7 +17,7 @@ stdenv.mkDerivation rec {
     description = "A set of tools written in Perl and C++ for working with VCF files, such as those generated by the 1000 Genomes Project";
     license = licenses.lgpl3;
     platforms = platforms.linux;
-    homepage = https://vcftools.github.io/index.html;
+    homepage = "https://vcftools.github.io/index.html";
     maintainers = [ maintainers.rybern ];
   };
 }
diff --git a/pkgs/applications/science/chemistry/avogadro/default.nix b/pkgs/applications/science/chemistry/avogadro/default.nix
index 6aca678480da..96dea10333b3 100644
--- a/pkgs/applications/science/chemistry/avogadro/default.nix
+++ b/pkgs/applications/science/chemistry/avogadro/default.nix
@@ -16,7 +16,7 @@ stdenv.mkDerivation rec {
 
   patches = [
     (fetchurl {
-      url = https://data.gpo.zugaina.org/fusion809/sci-chemistry/avogadro/files/avogadro-1.1.0-xlibs.patch;
+      url = "https://data.gpo.zugaina.org/fusion809/sci-chemistry/avogadro/files/avogadro-1.1.0-xlibs.patch";
       sha256 = "1p113v19z3zwr9gxj2k599f8p97a8rwm93pa4amqvd0snn31mw0k";
     })
   ];
diff --git a/pkgs/applications/science/chemistry/gwyddion/codegen.patch b/pkgs/applications/science/chemistry/gwyddion/codegen.patch
new file mode 100644
index 000000000000..eb306d99f8a3
--- /dev/null
+++ b/pkgs/applications/science/chemistry/gwyddion/codegen.patch
@@ -0,0 +1,22 @@
+--- gwyddion-2.55.orig/configure	2019-11-04 01:25:31.000000000 -0800
++++ gwyddion-2.55/configure	2020-03-20 18:49:43.860452655 -0700
+@@ -18560,7 +18560,7 @@
+ fi
+   if test "x$embed_pygtk" = xno; then
+     if test "x$PYGTK_CODEGENDIR" = 'x'; then
+-      PYGTK_CODEGENDIR=`$PKG_CONFIG --variable=codegendir pygtk-2.0`
++      PYGTK_CODEGENDIR=`$PKG_CONFIG --variable=codegendir pygobject-2.0`
+     fi
+   else
+     # Some silly OSes want to remove pygtk2.  We can build pygwy without
+--- gwyddion-2.55.orig/configure.ac	2019-11-04 01:25:16.000000000 -0800
++++ gwyddion-2.55/configure.ac	2020-03-20 18:52:55.042724547 -0700
+@@ -270,7 +270,7 @@
+                     [embed_pygtk=yes; pygwy_warn=" (embedded pygtk2)"])
+   if test "x$embed_pygtk" = xno; then
+     if test "x$PYGTK_CODEGENDIR" = 'x'; then
+-      PYGTK_CODEGENDIR=`$PKG_CONFIG --variable=codegendir pygtk-2.0`
++      PYGTK_CODEGENDIR=`$PKG_CONFIG --variable=codegendir pygobject-2.0`
+     fi
+   else
+     # Some silly OSes want to remove pygtk2.  We can build pygwy without
diff --git a/pkgs/applications/science/chemistry/gwyddion/default.nix b/pkgs/applications/science/chemistry/gwyddion/default.nix
index 12007c940b3d..dec63910f709 100644
--- a/pkgs/applications/science/chemistry/gwyddion/default.nix
+++ b/pkgs/applications/science/chemistry/gwyddion/default.nix
@@ -1,19 +1,71 @@
-{ stdenv, fetchurl, gtk2, pkgconfig }:
+{ stdenv, fetchurl, gtk2, pkg-config, fftw, file,
+  pythonSupport ? false, pythonPackages ? null,
+  gnome2 ? null,
+  openexrSupport ? true, openexr ? null,
+  libzipSupport ? true, libzip ? null,
+  libxml2Support ? true, libxml2 ? null,
+  libwebpSupport ? true, libwebp ? null,
+  # libXmu is not used if libunique is.
+  libXmuSupport ? false, xorg ? null,
+  libxsltSupport ? true, libxslt ? null,
+  fitsSupport ? true, cfitsio ? null,
+  zlibSupport ? true, zlib ? null,
+  libuniqueSupport ? true, libunique ? null,
+  libpngSupport ? true, libpng ? null,
+  openglSupport ? !stdenv.isDarwin
+}:
 
-with stdenv.lib;
+assert openexrSupport -> openexr != null;
+assert libzipSupport -> libzip != null;
+assert libxml2Support -> libxml2 != null;
+assert libwebpSupport -> libwebp != null;
+assert libXmuSupport -> xorg != null;
+assert libxsltSupport -> libxslt != null;
+assert fitsSupport -> cfitsio != null;
+assert zlibSupport -> zlib != null;
+assert libuniqueSupport -> libunique != null;
+assert libpngSupport -> libpng != null;
+assert openglSupport -> gnome2 != null;
+assert pythonSupport -> (pythonPackages != null && gnome2 != null);
 
-let version = "2.48"; in
-stdenv.mkDerivation {
+let
+    inherit (pythonPackages) pygtk pygobject2 python;
+
+in
+
+stdenv.mkDerivation rec {
   pname = "gwyddion";
-  inherit version;
+   version = "2.55";
   src = fetchurl {
-    url = "mirror://sourceforge/gwyddion/files/gwyddion/${version}/gwyddion-${version}.tar.xz";
-    sha256 = "119iw58ac2wn4cas6js8m7r1n4gmmkga6b1y711xzcyjp9hshgwx";
+    url = "mirror://sourceforge/gwyddion/gwyddion-${version}.tar.xz";
+    sha256 = "0l00zszvginpriv12idc0y1x28qmicdmrwkqa007srkxvrdgxwdi";
   };
-  nativeBuildInputs = [ pkgconfig ];
-  buildInputs = [ gtk2 ];
+  
+  nativeBuildInputs = [ pkg-config file ];
+  
+  buildInputs = with stdenv.lib;
+    [ gtk2 fftw ] ++
+    optional openglSupport gnome2.gtkglext ++
+    optional openexrSupport openexr ++
+    optional libXmuSupport xorg.libXmu ++
+    optional fitsSupport cfitsio ++
+    optional libpngSupport libpng ++
+    optional libxsltSupport libxslt ++
+    optional libxml2Support libxml2 ++
+    optional libwebpSupport libwebp ++
+    optional zlibSupport zlib ++
+    optional libuniqueSupport libunique ++
+    optional libzipSupport libzip;
+
+  propagatedBuildInputs = with stdenv.lib;
+    optionals pythonSupport [ pygtk pygobject2 python gnome2.gtksourceview ];
+
+  # This patch corrects problems with python support, but should apply cleanly
+  # regardless of whether python support is enabled, and have no effects if
+  # it is disabled.
+  patches = [ ./codegen.patch ];
   meta = {
-    homepage = http://gwyddion.net/;
+    homepage = "http://gwyddion.net/";
 
     description = "Scanning probe microscopy data visualization and analysis";
 
@@ -28,6 +80,7 @@ stdenv.mkDerivation {
       spectrophotometry.
     '';
     license = stdenv.lib.licenses.gpl2;
-    platforms = stdenv.lib.platforms.linux;
+    platforms = with stdenv.lib.platforms; linux ++ darwin;
+    maintainers = [ stdenv.lib.maintainers.cge ];
   };
 }
diff --git a/pkgs/applications/science/chemistry/jmol/default.nix b/pkgs/applications/science/chemistry/jmol/default.nix
index 7259705bc804..f52621dd71af 100644
--- a/pkgs/applications/science/chemistry/jmol/default.nix
+++ b/pkgs/applications/science/chemistry/jmol/default.nix
@@ -45,7 +45,7 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
      description = "A Java 3D viewer for chemical structures";
-     homepage = https://sourceforge.net/projects/jmol;
+     homepage = "https://sourceforge.net/projects/jmol";
      license = licenses.lgpl2;
      platforms = platforms.all;
      maintainers = with maintainers; [ timokau mounium ];
diff --git a/pkgs/applications/science/chemistry/marvin/default.nix b/pkgs/applications/science/chemistry/marvin/default.nix
index 2c155e4e848f..9512a288d80c 100644
--- a/pkgs/applications/science/chemistry/marvin/default.nix
+++ b/pkgs/applications/science/chemistry/marvin/default.nix
@@ -4,12 +4,12 @@ with stdenv.lib;
 
 stdenv.mkDerivation rec {
   pname = "marvin";
-  version = "20.6.0";
+  version = "20.10.0";
 
   src = fetchurl {
     name = "marvin-${version}.deb";
     url = "http://dl.chemaxon.com/marvin/${version}/marvin_linux_${versions.majorMinor version}.deb";
-    sha256 = "1vd1hsj36wzghpn6xnppjmva35kdcin7h0xdj3xmi4w5l3qw7fl6";
+    sha256 = "042ndlns48pa6mn6wyrp4q9c1v0a2vzcnhw5l766zdnxdjyv0acx";
   };
 
   nativeBuildInputs = [ dpkg makeWrapper ];
@@ -40,7 +40,7 @@ stdenv.mkDerivation rec {
 
   meta = {
     description = "A chemical modelling, analysis and structure drawing program";
-    homepage = https://chemaxon.com/products/marvin;
+    homepage = "https://chemaxon.com/products/marvin";
     maintainers = with maintainers; [ fusion809 ];
     license = licenses.unfree;
     platforms = platforms.linux;
diff --git a/pkgs/applications/science/chemistry/molden/default.nix b/pkgs/applications/science/chemistry/molden/default.nix
index 87dae3b14d9e..5e5df85a5279 100644
--- a/pkgs/applications/science/chemistry/molden/default.nix
+++ b/pkgs/applications/science/chemistry/molden/default.nix
@@ -31,10 +31,10 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
      description = "Display and manipulate molecular structures";
-     homepage = http://www.cmbi.ru.nl/molden/;
+     homepage = "http://www.cmbi.ru.nl/molden/";
      license = {
        fullName = "Free for academic/non-profit use";
-       url = http://www.cmbi.ru.nl/molden/CopyRight.html;
+       url = "http://www.cmbi.ru.nl/molden/CopyRight.html";
        free = false;
      };
      platforms = platforms.linux;
diff --git a/pkgs/applications/science/chemistry/octopus/default.nix b/pkgs/applications/science/chemistry/octopus/default.nix
index a5abbe2d1de6..adb31d326509 100644
--- a/pkgs/applications/science/chemistry/octopus/default.nix
+++ b/pkgs/applications/science/chemistry/octopus/default.nix
@@ -1,7 +1,9 @@
 { stdenv, fetchFromGitLab, symlinkJoin, gfortran, perl, procps
-, libyaml, libxc, fftw, openblas, gsl, netcdf, arpack, autoreconfHook
+, libyaml, libxc, fftw, blas, lapack, gsl, netcdf, arpack, autoreconfHook
 }:
 
+assert (!blas.isILP64) && (!lapack.isILP64);
+
 stdenv.mkDerivation rec {
   pname = "octopus";
   version = "9.2";
@@ -14,12 +16,12 @@ stdenv.mkDerivation rec {
   };
 
   nativeBuildInputs = [ perl procps autoreconfHook ];
-  buildInputs = [ libyaml gfortran libxc openblas gsl fftw netcdf arpack ];
+  buildInputs = [ libyaml gfortran libxc blas lapack gsl fftw netcdf arpack ];
 
   configureFlags = [
     "--with-yaml-prefix=${libyaml}"
-    "--with-blas=-lopenblas"
-    "--with-lapack=-lopenblas"
+    "--with-blas=-lblas"
+    "--with-lapack=-llapack"
     "--with-fftw-prefix=${fftw.dev}"
     "--with-gsl-prefix=${gsl}"
     "--with-libxc-prefix=${libxc}"
@@ -40,7 +42,7 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "Real-space time dependent density-functional theory code";
-    homepage = https://octopus-code.org;
+    homepage = "https://octopus-code.org";
     maintainers = with maintainers; [ markuskowa ];
     license = licenses.gpl2;
     platforms = [ "x86_64-linux" ];
diff --git a/pkgs/applications/science/chemistry/openmolcas/default.nix b/pkgs/applications/science/chemistry/openmolcas/default.nix
index d73e86d2f577..0d74e784d772 100644
--- a/pkgs/applications/science/chemistry/openmolcas/default.nix
+++ b/pkgs/applications/science/chemistry/openmolcas/default.nix
@@ -1,9 +1,11 @@
 { stdenv, fetchFromGitLab, cmake, gfortran, perl
-, openblas, hdf5-cpp, python3, texlive
+, openblas, blas, lapack, hdf5-cpp, python3, texlive
 , armadillo, openmpi, globalarrays, openssh
 , makeWrapper, fetchpatch
 } :
 
+assert blas.implementation == "openblas" && lapack.implementation == "openblas";
+
 let
   version = "19.11";
   gitLabRev = "v${version}";
@@ -74,7 +76,7 @@ in stdenv.mkDerivation {
 
   meta = with stdenv.lib; {
     description = "Advanced quantum chemistry software package";
-    homepage = https://gitlab.com/Molcas/OpenMolcas;
+    homepage = "https://gitlab.com/Molcas/OpenMolcas";
     maintainers = [ maintainers.markuskowa ];
     license = licenses.lgpl21;
     platforms = platforms.linux;
diff --git a/pkgs/applications/science/chemistry/pymol/default.nix b/pkgs/applications/science/chemistry/pymol/default.nix
index e8b3b23ddd9d..474986901225 100644
--- a/pkgs/applications/science/chemistry/pymol/default.nix
+++ b/pkgs/applications/science/chemistry/pymol/default.nix
@@ -50,7 +50,7 @@ python3Packages.buildPythonApplication rec {
 
   meta = with lib; {
     description = description;
-    homepage = https://www.pymol.org/;
+    homepage = "https://www.pymol.org/";
     license = licenses.mit;
     maintainers = with maintainers; [ samlich ];
   };
diff --git a/pkgs/applications/science/chemistry/quantum-espresso/default.nix b/pkgs/applications/science/chemistry/quantum-espresso/default.nix
index bd420519ce01..2443e6b23aba 100644
--- a/pkgs/applications/science/chemistry/quantum-espresso/default.nix
+++ b/pkgs/applications/science/chemistry/quantum-espresso/default.nix
@@ -1,5 +1,5 @@
 { stdenv, fetchurl
-, gfortran, fftw, openblas
+, gfortran, fftw, blas, lapack
 , mpi ? null
 }:
 
@@ -20,7 +20,7 @@ stdenv.mkDerivation rec {
     patchShebangs configure
   '';
 
-  buildInputs = [ fftw openblas gfortran ]
+  buildInputs = [ fftw blas lapack gfortran ]
     ++ (stdenv.lib.optionals (mpi != null) [ mpi ]);
 
 configureFlags = if (mpi != null) then [ "LD=${mpi}/bin/mpif90" ] else [ "LD=${gfortran}/bin/gfortran" ];
diff --git a/pkgs/applications/science/chemistry/siesta/default.nix b/pkgs/applications/science/chemistry/siesta/default.nix
index 9d7880f57df5..c053c0a09cdf 100644
--- a/pkgs/applications/science/chemistry/siesta/default.nix
+++ b/pkgs/applications/science/chemistry/siesta/default.nix
@@ -1,5 +1,5 @@
 { stdenv, fetchurl
-, gfortran, openblas
+, gfortran, blas, lapack
 , mpi ? null, scalapack
 }:
 
@@ -16,7 +16,7 @@ stdenv.mkDerivation {
     inherit mpi;
   };
 
-  buildInputs = [ openblas gfortran ]
+  buildInputs = [ blas lapack gfortran ]
     ++ (stdenv.lib.optionals (mpi != null) [ mpi scalapack ]);
 
   enableParallelBuilding = true;
@@ -33,11 +33,11 @@ stdenv.mkDerivation {
     makeFlagsArray=(
         CC="mpicc" FC="mpifort"
         FPPFLAGS="-DMPI" MPI_INTERFACE="libmpi_f90.a" MPI_INCLUDE="."
-        COMP_LIBS="" LIBS="-lopenblas -lscalapack"
+        COMP_LIBS="" LIBS="-lblas -llapack -lscalapack"
     );
   '' else ''
     makeFlagsArray=(
-      COMP_LIBS="" LIBS="-lopenblas"
+      COMP_LIBS="" LIBS="-lblas -llapack"
     );
   '';
 
@@ -61,7 +61,7 @@ stdenv.mkDerivation {
          matching the quality of other approaches, such as plane-wave
          and all-electron methods.
       '';
-    homepage = https://www.quantum-espresso.org/;
+    homepage = "https://www.quantum-espresso.org/";
     license = licenses.gpl2;
     platforms = [ "x86_64-linux" ];
     maintainers = [ maintainers.costrouc ];
diff --git a/pkgs/applications/science/electronics/adms/default.nix b/pkgs/applications/science/electronics/adms/default.nix
index 8b95e73b8913..f55dd2f0528e 100644
--- a/pkgs/applications/science/electronics/adms/default.nix
+++ b/pkgs/applications/science/electronics/adms/default.nix
@@ -18,7 +18,7 @@ stdenv.mkDerivation rec {
 
   meta = {
     description = "automatic device model synthesizer";
-    homepage = https://github.com/Qucs/adms;
+    homepage = "https://github.com/Qucs/adms";
     license = stdenv.lib.licenses.gpl3;
     maintainers = with stdenv.lib.maintainers; [disassembler];
     platforms = with stdenv.lib.platforms; linux;
diff --git a/pkgs/applications/science/electronics/alliance/default.nix b/pkgs/applications/science/electronics/alliance/default.nix
index c863fe6aea85..861f6cea0b4b 100644
--- a/pkgs/applications/science/electronics/alliance/default.nix
+++ b/pkgs/applications/science/electronics/alliance/default.nix
@@ -65,7 +65,7 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "Complete set of free CAD tools and portable libraries for VLSI design";
-    homepage = http://www-asim.lip6.fr/recherche/alliance/;
+    homepage = "http://www-asim.lip6.fr/recherche/alliance/";
     license = with licenses; gpl2Plus;
     maintainers = with maintainers; [ ];
     platforms = with platforms; linux;
diff --git a/pkgs/applications/science/electronics/archimedes/default.nix b/pkgs/applications/science/electronics/archimedes/default.nix
index 016760bde020..1377231c152b 100644
--- a/pkgs/applications/science/electronics/archimedes/default.nix
+++ b/pkgs/applications/science/electronics/archimedes/default.nix
@@ -10,7 +10,7 @@ stdenv.mkDerivation rec {
 
   meta = {
     description = "GNU package for semiconductor device simulations";
-    homepage = https://www.gnu.org/software/archimedes;
+    homepage = "https://www.gnu.org/software/archimedes";
     license = stdenv.lib.licenses.gpl2Plus;
     platforms = with stdenv.lib.platforms; linux;
   };
diff --git a/pkgs/applications/science/electronics/bitscope/common.nix b/pkgs/applications/science/electronics/bitscope/common.nix
index 9101f1fdbe5e..acbdeb8cfaa2 100644
--- a/pkgs/applications/science/electronics/bitscope/common.nix
+++ b/pkgs/applications/science/electronics/bitscope/common.nix
@@ -23,7 +23,7 @@ let
     name = "${toolName}-${version}";
 
     meta = with stdenv.lib; {
-      homepage = http://bitscope.com/software/;
+      homepage = "http://bitscope.com/software/";
       license = licenses.unfree;
       platforms = [ "x86_64-linux" ];
       maintainers = with maintainers; [
diff --git a/pkgs/applications/science/electronics/caneda/default.nix b/pkgs/applications/science/electronics/caneda/default.nix
index ff41a498ae71..c90ceac6788f 100644
--- a/pkgs/applications/science/electronics/caneda/default.nix
+++ b/pkgs/applications/science/electronics/caneda/default.nix
@@ -1,6 +1,6 @@
-{stdenv, fetchFromGitHub, cmake, qtbase, qttools, qtsvg, qwt }:
+{ mkDerivation, stdenv, fetchFromGitHub, cmake, qtbase, qttools, qtsvg, qwt }:
 
-stdenv.mkDerivation rec {
+mkDerivation rec {
   pname = "caneda";
   version = "0.3.1";
 
@@ -18,7 +18,7 @@ stdenv.mkDerivation rec {
 
   meta = {
     description = "Open source EDA software focused on easy of use and portability";
-    homepage = http://caneda.org;
+    homepage = "http://caneda.org";
     license = stdenv.lib.licenses.gpl2Plus;
     maintainers = with stdenv.lib.maintainers; [viric];
     platforms = with stdenv.lib.platforms; linux;
diff --git a/pkgs/applications/science/electronics/dsview/default.nix b/pkgs/applications/science/electronics/dsview/default.nix
index d188365db1dc..4d3acb331d5d 100644
--- a/pkgs/applications/science/electronics/dsview/default.nix
+++ b/pkgs/applications/science/electronics/dsview/default.nix
@@ -1,6 +1,6 @@
 { stdenv, fetchFromGitHub, pkgconfig, cmake,
 libzip, boost, fftw, qtbase,
-libusb, wrapQtAppsHook, libsigrok4dsl, libsigrokdecode4dsl
+libusb1, wrapQtAppsHook, libsigrok4dsl, libsigrokdecode4dsl
 }:
 
 stdenv.mkDerivation rec {
@@ -27,14 +27,14 @@ stdenv.mkDerivation rec {
   nativeBuildInputs = [ cmake pkgconfig wrapQtAppsHook ];
 
   buildInputs = [
-   boost fftw qtbase libusb libzip libsigrokdecode4dsl libsigrok4dsl
+   boost fftw qtbase libusb1 libzip libsigrokdecode4dsl libsigrok4dsl
   ];
 
   enableParallelBuilding = true;
 
   meta = with stdenv.lib; {
     description = "A GUI program for supporting various instruments from DreamSourceLab, including logic analyzer, oscilloscope, etc";
-    homepage = https://www.dreamsourcelab.com/;
+    homepage = "https://www.dreamsourcelab.com/";
     license = licenses.gpl3Plus;
     platforms = platforms.linux;
     maintainers = [ maintainers.bachp ];
diff --git a/pkgs/applications/science/electronics/dsview/libsigrok4dsl.nix b/pkgs/applications/science/electronics/dsview/libsigrok4dsl.nix
index c2cfc69c50c8..7915cb0ba4ae 100644
--- a/pkgs/applications/science/electronics/dsview/libsigrok4dsl.nix
+++ b/pkgs/applications/science/electronics/dsview/libsigrok4dsl.nix
@@ -1,5 +1,5 @@
 { stdenv, pkgconfig, autoreconfHook,
-glib, libzip, libserialport, check, libusb, libftdi,
+glib, libzip, libserialport, check, libusb1, libftdi,
 systemd, alsaLib, dsview
 }:
 
@@ -15,12 +15,12 @@ stdenv.mkDerivation {
   nativeBuildInputs = [ pkgconfig autoreconfHook ];
 
   buildInputs = [
-    glib libzip libserialport libusb libftdi systemd check alsaLib
+    glib libzip libserialport libusb1 libftdi systemd check alsaLib
   ];
 
   meta = with stdenv.lib; {
     description = "A fork of the sigrok library for usage with DSView";
-    homepage = https://www.dreamsourcelab.com/;
+    homepage = "https://www.dreamsourcelab.com/";
     license = licenses.gpl3Plus;
     platforms = platforms.linux;
     maintainers = [ maintainers.bachp ];
diff --git a/pkgs/applications/science/electronics/dsview/libsigrokdecode4dsl.nix b/pkgs/applications/science/electronics/dsview/libsigrokdecode4dsl.nix
index b7fe5140864c..72b2fa1b6854 100644
--- a/pkgs/applications/science/electronics/dsview/libsigrokdecode4dsl.nix
+++ b/pkgs/applications/science/electronics/dsview/libsigrokdecode4dsl.nix
@@ -19,7 +19,7 @@ stdenv.mkDerivation {
 
   meta = with stdenv.lib; {
     description = "A fork of the sigrokdecode library for usage with DSView";
-    homepage = https://www.dreamsourcelab.com/;
+    homepage = "https://www.dreamsourcelab.com/";
     license = licenses.gpl3Plus;
     platforms = platforms.linux;
     maintainers = [ maintainers.bachp ];
diff --git a/pkgs/applications/science/electronics/eagle/eagle.nix b/pkgs/applications/science/electronics/eagle/eagle.nix
index 68f4fafa887c..58bdd5c722da 100644
--- a/pkgs/applications/science/electronics/eagle/eagle.nix
+++ b/pkgs/applications/science/electronics/eagle/eagle.nix
@@ -13,11 +13,11 @@ let
   in
   mkDerivation rec {
     pname = "eagle";
-    version = "9.5.2";
+    version = "9.6.1";
 
     src = fetchurl {
       url = "https://eagle-updates.circuits.io/downloads/${builtins.replaceStrings ["."] ["_"] version}/Autodesk_EAGLE_${version}_English_Linux_64bit.tar.gz";
-      sha256 = "0k707pyh0g2r6sgyran59sznq0nlh0i16la2gxqj3c5da1vb58y5";
+      sha256 = "1iq4aahrh4g3549vbr7gka5y2h7f17n3yafzl21njc2mkqb12jdw";
     };
 
     desktopItem = makeDesktopItem {
@@ -72,7 +72,7 @@ let
 
     meta = with stdenv.lib; {
       description = "Schematic editor and PCB layout tool from Autodesk (formerly CadSoft)";
-      homepage = https://www.autodesk.com/products/eagle/overview;
+      homepage = "https://www.autodesk.com/products/eagle/overview";
       license = licenses.unfree;
       platforms = [ "x86_64-linux" ];
       maintainers = [ maintainers.rittelle ];
diff --git a/pkgs/applications/science/electronics/eagle/eagle7.nix b/pkgs/applications/science/electronics/eagle/eagle7.nix
index a9528b05a311..af0fb675880e 100644
--- a/pkgs/applications/science/electronics/eagle/eagle7.nix
+++ b/pkgs/applications/science/electronics/eagle/eagle7.nix
@@ -89,7 +89,7 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "Schematic editor and PCB layout tool from CadSoft";
-    homepage = http://www.cadsoftusa.com/;
+    homepage = "http://www.cadsoftusa.com/";
     license = licenses.unfree;
     platforms = platforms.linux;
     maintainers = [ maintainers.bjornfor ];
diff --git a/pkgs/applications/science/electronics/fparser/default.nix b/pkgs/applications/science/electronics/fparser/default.nix
new file mode 100644
index 000000000000..55e40ca2b00b
--- /dev/null
+++ b/pkgs/applications/science/electronics/fparser/default.nix
@@ -0,0 +1,26 @@
+{ stdenv
+, fetchFromGitHub
+, cmake
+}:
+
+stdenv.mkDerivation rec {
+  pname = "fparser";
+  version = "unstable-2015-09-25";
+
+  src = fetchFromGitHub {
+    owner = "thliebig";
+    repo = "fparser";
+    rev = "a59e1f51e32096bfe2a0a2640d5dffc7ae6ba37b";
+    sha256 = "0wayml1mlyi922gp6am3fsidhzsilziksdn5kbnpcln01h8555ad";
+  };
+
+  nativeBuildInputs = [ cmake ];
+
+  meta = with stdenv.lib; {
+    description = "C++ Library for Evaluating Mathematical Functions";
+    homepage = "https://github.com/thliebig/fparser";
+    license = licenses.lgpl3;
+    maintainers = with maintainers; [ matthuszagh ];
+    platforms = platforms.linux;
+  };
+}
diff --git a/pkgs/applications/science/electronics/fped/default.nix b/pkgs/applications/science/electronics/fped/default.nix
index f93fddba8cb5..9ef47ae26346 100644
--- a/pkgs/applications/science/electronics/fped/default.nix
+++ b/pkgs/applications/science/electronics/fped/default.nix
@@ -36,7 +36,7 @@ stdenv.mkDerivation {
 
   meta = {
     description = "An editor that allows the interactive creation of footprints electronic components";
-    homepage = http://projects.qi-hardware.com/index.php/p/fped/;
+    homepage = "http://projects.qi-hardware.com/index.php/p/fped/";
     license = licenses.gpl2;
     maintainers = with maintainers; [ expipiplus1 ];
     platforms = platforms.linux;
diff --git a/pkgs/applications/science/electronics/fritzing/default.nix b/pkgs/applications/science/electronics/fritzing/default.nix
index 127e9c05624d..a0442db7fed2 100644
--- a/pkgs/applications/science/electronics/fritzing/default.nix
+++ b/pkgs/applications/science/electronics/fritzing/default.nix
@@ -38,7 +38,7 @@ stdenv.mkDerivation rec {
 
   meta = {
     description = "An open source prototyping tool for Arduino-based projects";
-    homepage = http://fritzing.org/;
+    homepage = "http://fritzing.org/";
     license = stdenv.lib.licenses.gpl3;
     maintainers = [ stdenv.lib.maintainers.robberer ];
     platforms = stdenv.lib.platforms.linux;
diff --git a/pkgs/applications/science/electronics/geda/default.nix b/pkgs/applications/science/electronics/geda/default.nix
index 1aaa5496ff37..54ab7ec57e27 100644
--- a/pkgs/applications/science/electronics/geda/default.nix
+++ b/pkgs/applications/science/electronics/geda/default.nix
@@ -17,7 +17,7 @@ stdenv.mkDerivation {
 
   meta = with stdenv.lib; {
     description = "Full GPL'd suite of Electronic Design Automation tools";
-    homepage = http://www.geda-project.org/;
+    homepage = "http://www.geda-project.org/";
     maintainers = with maintainers; [ pjones ];
     platforms = platforms.linux;
     license = licenses.gpl2;
diff --git a/pkgs/applications/science/electronics/gerbv/default.nix b/pkgs/applications/science/electronics/gerbv/default.nix
index fa5bdbbebdb6..b0317551df8d 100644
--- a/pkgs/applications/science/electronics/gerbv/default.nix
+++ b/pkgs/applications/science/electronics/gerbv/default.nix
@@ -5,7 +5,7 @@ stdenv.mkDerivation {
   version = "2015-10-08";
 
   src = fetchgit {
-    url = git://git.geda-project.org/gerbv.git;
+    url = "git://git.geda-project.org/gerbv.git";
     rev = "76b8b67bfa10823ce98f1c4c3b49a2afcadf7659";
     sha256 = "00jn1xhf6kblxc5gac1wvk8zm12fy6sk81nj3jwdag0z6wk3z446";
   };
@@ -17,7 +17,7 @@ stdenv.mkDerivation {
 
   meta = with stdenv.lib; {
     description = "A Gerber (RS-274X) viewer";
-    homepage = http://gerbv.geda-project.org/;
+    homepage = "http://gerbv.geda-project.org/";
     maintainers = with maintainers; [ mog ];
     platforms = platforms.linux;
     license = licenses.gpl2;
diff --git a/pkgs/applications/science/electronics/gtkwave/default.nix b/pkgs/applications/science/electronics/gtkwave/default.nix
index 694adc4d6349..3d75780936e1 100644
--- a/pkgs/applications/science/electronics/gtkwave/default.nix
+++ b/pkgs/applications/science/electronics/gtkwave/default.nix
@@ -21,7 +21,7 @@ stdenv.mkDerivation rec {
 
   meta = {
     description = "VCD/Waveform viewer for Unix and Win32";
-    homepage    = http://gtkwave.sourceforge.net;
+    homepage    = "http://gtkwave.sourceforge.net";
     license     = stdenv.lib.licenses.gpl2Plus;
     maintainers = with stdenv.lib.maintainers; [ thoughtpolice ];
     platforms   = stdenv.lib.platforms.linux;
diff --git a/pkgs/applications/science/electronics/kicad/default.nix b/pkgs/applications/science/electronics/kicad/default.nix
index a60f8db388a5..f03a0a0cceff 100644
--- a/pkgs/applications/science/electronics/kicad/default.nix
+++ b/pkgs/applications/science/electronics/kicad/default.nix
@@ -137,5 +137,9 @@ stdenv.mkDerivation rec {
     maintainers = with maintainers; [ evils kiwi berce ];
     # kicad's cross-platform, not sure what to fill in here
     platforms = with platforms; linux;
+  } // optionalAttrs with3d {
+    # We can't download the 3d models on Hydra - they are a ~1 GiB download and
+    # they occupy ~5 GiB in store.
+    hydraPlatforms = [];
   };
 }
diff --git a/pkgs/applications/science/electronics/kicad/libraries.nix b/pkgs/applications/science/electronics/kicad/libraries.nix
index 53e190d2749b..7cdf9373e087 100644
--- a/pkgs/applications/science/electronics/kicad/libraries.nix
+++ b/pkgs/applications/science/electronics/kicad/libraries.nix
@@ -12,8 +12,8 @@
 # };
 with lib;
 let
-  mkLib = name: attrs:
-    stdenv.mkDerivation (
+  mkLib = name:
+    stdenv.mkDerivation
       {
         pname = "kicad-${name}";
         version = "${version}";
@@ -27,16 +27,13 @@ let
         );
         nativeBuildInputs = [ cmake ];
         meta.license = licenses.cc-by-sa-40;
-      } // attrs
-    );
+      };
 in
 {
-  symbols = mkLib "symbols" { };
-  templates = mkLib "templates" { };
-  footprints = mkLib "footprints" { };
-  packages3d = mkLib "packages3d" {
-    hydraPlatforms = []; # this is a ~1 GiB download, occupies ~5 GiB in store
-  };
+  symbols = mkLib "symbols";
+  templates = mkLib "templates";
+  footprints = mkLib "footprints";
+  packages3d = mkLib "packages3d";
 
   # i18n is a special case, not actually a library
   # more a part of kicad proper, but also optional and separate
diff --git a/pkgs/applications/science/electronics/kicad/update.sh b/pkgs/applications/science/electronics/kicad/update.sh
index 7dc0b008b6c2..f048ccde4ec8 100755
--- a/pkgs/applications/science/electronics/kicad/update.sh
+++ b/pkgs/applications/science/electronics/kicad/update.sh
@@ -1,6 +1,8 @@
 #!/usr/bin/env nix-shell
 #!nix-shell -i bash -p coreutils git nix curl
 
+set -e
+
 # this script will generate versions.nix in the right location
 # this should contain the versions' revs and hashes
 # the stable revs are stored only for ease of skipping
@@ -50,12 +52,11 @@ for arg in "$@"; do
 done
 
 here="$( cd "$( dirname "${BASH_SOURCE[0]}" )" >/dev/null 2>&1 && pwd )"
-now=$(date --iso-8601)
+now=$(date --iso-8601 --utc)
 
 file="${here}/versions.nix"
 # just in case this runs in parallel
-rand="$(head -c 3 /dev/urandom | base64)"
-tmp="${here}/,versions.nix.${rand}"
+tmp="${here}/,versions.nix.${RANDOM}"
 
 # libraries currently on github, move to $gitlab/libraries planned
 libs=( symbols templates footprints packages3d )
@@ -112,16 +113,16 @@ for version in "${all_versions[@]}"; do
 
     echo "Checking src" >&2
     src_rev="$(${get_rev} "${gitlab}"/code/kicad.git "${version}" | cut -f1)"
-    ret="$(grep -sm 1 "\"${pname}\"" -A 4 "${file}" | grep -sm 1 "${src_rev}")"
+    has_rev="$(grep -sm 1 "\"${pname}\"" -A 4 "${file}" | grep -sm 1 "${src_rev}" || true)"
     has_hash="$(grep -sm 1 "\"${pname}\"" -A 5 "${file}" | grep -sm 1 "sha256")"
-    if [[ -n ${ret} && -n ${has_hash} && -z ${clean} ]]; then
+    if [[ -n ${has_rev} && -n ${has_hash} && -z ${clean} ]]; then
       echo "Reusing old ${pname}.src.sha256, already latest .rev" >&2
       grep -sm 1 "\"${pname}\"" -A 5 "${file}" | grep -sm 1 "rev" -A 1
     else
           printf "%8srev =\t\t\t\"%s\";\n" "" "${src_rev}"
           printf "%8ssha256 =\t\t\"%s\";\n" \
             "" "$(${prefetch} "${gitlab_pre}${src_rev}")"
-          (( count++ ))
+          count=$((count+1))
     fi
         printf "%6s};\n" ""
       printf "%4s};\n" ""
@@ -132,25 +133,25 @@ for version in "${all_versions[@]}"; do
 
         echo "Checking i18n" >&2
         i18n_rev="$(${get_rev} "${i18n}" "${version}" | cut -f1)"
-        ret="$(grep -sm 1 "\"${pname}\"" -A 11 "${file}" | grep -sm 1 "${i18n_rev}")"
+        has_rev="$(grep -sm 1 "\"${pname}\"" -A 11 "${file}" | grep -sm 1 "${i18n_rev}" || true)"
         has_hash="$(grep -sm 1 "\"${pname}\"" -A 12 "${file}" | grep -sm 1 "i18n.sha256")"
-        if [[ -n ${ret} && -n ${has_hash} && -z ${clean} ]]; then
+        if [[ -n ${has_rev} && -n ${has_hash} && -z ${clean} ]]; then
           echo "Reusing old kicad-i18n-${today}.src.sha256, already latest .rev" >&2
           grep -sm 1 "\"${pname}\"" -A 12 "${file}" | grep -sm 1 "i18n" -A 1
         else
           printf "%8si18n.rev =\t\t\"%s\";\n" "" "${i18n_rev}"
           printf "%8si18n.sha256 =\t\t\"%s\";\n" "" \
             "$(${prefetch} "${i18n_pre}${i18n_rev}")"
-          (( count++ ))
+          count=$((count+1))
         fi
 
           for lib in "${libs[@]}"; do
             echo "Checking ${lib}" >&2
             url="${github}-${lib}.git"
             lib_rev="$(${get_rev} "${url}" "${version}" | cut -f1)"
-            ret="$(grep -sm 1 "\"${pname}\"" -A 19 "${file}" | grep -sm 1 "${lib_rev}" -A 1)"
+            has_rev="$(grep -sm 1 "\"${pname}\"" -A 19 "${file}" | grep -sm 1 "${lib_rev}" || true)"
             has_hash="$(grep -sm 1 "\"${pname}\"" -A 20 "${file}" | grep -sm 1 "${lib}.sha256")"
-            if [[ -n ${ret} && -n ${has_hash} && -z ${clean} ]]; then
+            if [[ -n ${has_rev} && -n ${has_hash} && -z ${clean} ]]; then
               echo "Reusing old kicad-${lib}-${today}.src.sha256, already latest .rev" >&2
               grep -sm 1 "\"${pname}\"" -A 20 "${file}" | grep -sm 1 "${lib}" -A 1
             else
@@ -161,7 +162,7 @@ for version in "${all_versions[@]}"; do
               printf "\"%s\";\n" "${lib_rev}"
               printf "%8s%s.sha256 =\t\"%s\";\n" "" \
               "${lib}" "$(${prefetch} "${github}-${lib}/archive/${lib_rev}.tar.gz")"
-              (( count++ ))
+              count=$((count+1))
             fi
           done
         printf "%6s};\n" ""
@@ -175,6 +176,11 @@ done
 printf "}\n"
 } > "${tmp}"
 
+if grep '""' "${tmp}"; then
+	echo "empty value detected, out of space?" >&2
+	exit "1"
+fi
+
 mv "${tmp}" "${file}"
 
 printf "\nFinished\nMoved output to %s\n\n" "${file}" >&2
diff --git a/pkgs/applications/science/electronics/kicad/versions.nix b/pkgs/applications/science/electronics/kicad/versions.nix
index 6b9a981a87c4..174532d69625 100644
--- a/pkgs/applications/science/electronics/kicad/versions.nix
+++ b/pkgs/applications/science/electronics/kicad/versions.nix
@@ -27,25 +27,25 @@
   };
   "kicad-unstable" = {
     kicadVersion = {
-      version =			"2020-02-10";
+      version =			"2020-04-25";
       src = {
-        rev =			"1190e60dd426d246661e478db3287f266ec6cda2";
-        sha256 =		"0cgfad07j69cks97llj4hf3kga0d5qf728s89xwxrzcwm06k62bi";
+        rev =			"3759799d1e03b2da6a0dcd72273e4978880fc8f1";
+        sha256 =		"0ba14fla8m5zli68wfjkfc4ymvj4j8z92y3jigxs8hys0450bybi";
       };
     };
     libVersion = {
-      version =			"2020-02-10";
+      version =			"2020-04-25";
       libSources = {
-        i18n.rev =		"26786c4ca804bad7eb072f1ef381f00b5a2ff3ee";
-        i18n.sha256 =		"0iqr1xfw4s677afjy9bn5y41z4isp327f9y90wypkxiwwq3dfkfl";
-        symbols.rev =		"35b7da2d211d7cc036b37ad7f5e40ef03faa1bc7";
-        symbols.sha256 =	"0wbfw1swbfvfp47cn48pxpqlygjs3xh568ydrrs51v3w102x8y64";
-        templates.rev =		"0c0490897f803ab8b7c3dad438b7eb1f80e0417c";
-        templates.sha256 =	"0cs3bm3zb5ngw5ldn0lzw5bvqm4kvcidyrn76438alffwiz2b15g";
-        footprints.rev =	"9357b6f09312966c57fec9f66a516941d79c3038";
-        footprints.sha256 =	"0cgah1q0h012ffwfl220k7qb6hgbs0i91spq2j4v3lgpfr4g638d";
-        packages3d.rev =	"de368eb739abe41dfc3163e0e370477e857f9cc1";
-        packages3d.sha256 =	"0b3p5v8g24h6l7q3sbqz7ns0gnrf9l89glj86m5ybhizvls9vrrs";
+        i18n.rev =		"fc14baa52ca56a58b0048ab860bf31887d3cf8eb";
+        i18n.sha256 =		"05nayab7dkjyq7g3i9q7k55hcckpc0cmq4bbklmxx16rx4rbhzc6";
+        symbols.rev =		"0f9ff2d17237f90bb649bf0a52b6d454f68197e8";
+        symbols.sha256 =	"1a54428syn2xksc00n2bvh1alrx2vrqmp7cg7d2rn8nlq8yk4qd5";
+        templates.rev =		"7db8d4d0ea0711f1961d117853547fb3edbc3857";
+        templates.sha256 =	"1hppcsrkn4dk6ggby6ckh0q65qxkywrbyxa4lwpaf7pxjyv498xg";
+        footprints.rev =	"61df6d8853b4c68cca0ac87784c0a33cff9394d3";
+        footprints.sha256 =	"0blmhk8pwd4mi6rlsr4lf4lq7j01h6xbpbvr3pm8pmw8zylhi54v";
+        packages3d.rev =	"88bcf2e817fe000bb2c05e14489afc3b1a4e10ed";
+        packages3d.sha256 =	"0z9p1fn5xbz940kr5jz2ibzf09hpdi1c9izmabkffvrnfy6408x6";
       };
     };
   };
diff --git a/pkgs/applications/science/electronics/librepcb/default.nix b/pkgs/applications/science/electronics/librepcb/default.nix
index dacbd948241a..7e0894fb337d 100644
--- a/pkgs/applications/science/electronics/librepcb/default.nix
+++ b/pkgs/applications/science/electronics/librepcb/default.nix
@@ -31,7 +31,7 @@ mkDerivation {
 
   meta = with lib; {
     description = "A free EDA software to develop printed circuit boards";
-    homepage = https://librepcb.org/;
+    homepage = "https://librepcb.org/";
     maintainers = with maintainers; [ luz ];
     license = licenses.gpl3;
     platforms = platforms.linux;
diff --git a/pkgs/applications/science/electronics/magic-vlsi/0001-strip-bin-prefix.patch b/pkgs/applications/science/electronics/magic-vlsi/0001-strip-bin-prefix.patch
new file mode 100644
index 000000000000..1cef96ea1408
--- /dev/null
+++ b/pkgs/applications/science/electronics/magic-vlsi/0001-strip-bin-prefix.patch
@@ -0,0 +1,10 @@
+diff --git a/scripts/makedbh b/scripts/makedbh
+index 01e4fa5..d6299c6 100755
+--- a/scripts/makedbh
++++ b/scripts/makedbh
+@@ -1,4 +1,4 @@
+-#!/bin/csh -f
++#!/usr/bin/env tcsh
+ #
+ # makes the "database.h" (1st argument, $1) file from "database.h.in"
+ # (2nd argument, $2), setting various mask operation definitions
diff --git a/pkgs/applications/science/electronics/magic-vlsi/0002-fix-format-security.patch b/pkgs/applications/science/electronics/magic-vlsi/0002-fix-format-security.patch
new file mode 100644
index 000000000000..37ae35195503
--- /dev/null
+++ b/pkgs/applications/science/electronics/magic-vlsi/0002-fix-format-security.patch
@@ -0,0 +1,19 @@
+diff --git a/database/DBio.c b/database/DBio.c
+index 93c4b0b..292ea5f 100644
+--- a/database/DBio.c
++++ b/database/DBio.c
+@@ -2378,12 +2378,12 @@ DBCellWriteFile(cellDef, f)
+ 
+ #define FPRINTF(f,s)\
+ {\
+-     if (fprintf(f,s) == EOF) goto ioerror;\
++     if (fprintf(f,"%s",s) == EOF) goto ioerror;\
+      DBFileOffset += strlen(s);\
+ }
+ #define FPRINTR(f,s)\
+ {\
+-     if (fprintf(f,s) == EOF) return 1;\
++     if (fprintf(f,"%s",s) == EOF) return 1;\
+      DBFileOffset += strlen(s);\
+ }
+ 
diff --git a/pkgs/applications/science/electronics/magic-vlsi/default.nix b/pkgs/applications/science/electronics/magic-vlsi/default.nix
new file mode 100644
index 000000000000..62b830547e53
--- /dev/null
+++ b/pkgs/applications/science/electronics/magic-vlsi/default.nix
@@ -0,0 +1,36 @@
+{ stdenv, fetchurl, m4, tcsh, libX11, tcl, tk, cairo, ncurses, mesa_glu, python3 }:
+
+stdenv.mkDerivation {
+  pname = "magic-vlsi";
+  version = "8.3.5";
+
+  src = fetchurl {
+    url = "http://opencircuitdesign.com/magic/archive/magic-8.3.5.tgz";
+    sha256 = "0wv4zmxlqjfaakgp802icn0cd9f8ylkz2sppix83axq8p5cg90yq";
+  };
+
+  buildInputs = [ m4 tcsh libX11 tcl tk cairo ncurses mesa_glu ];
+  nativeBuildInputs = [ python3 ];
+
+  configureFlags = [
+    "--with-tcl=${tcl}"
+    "--with-tk=${tk}"
+    "--disable-werror"
+  ];
+
+  postPatch = ''
+    patchShebangs scripts/*
+  '';
+
+  patches = [
+    ./0001-strip-bin-prefix.patch
+    ./0002-fix-format-security.patch
+  ];
+
+  meta = with stdenv.lib; {
+    description = "VLSI layout tool written in Tcl";
+    homepage = "http://opencircuitdesign.com/magic/";
+    license = licenses.mit;
+    maintainers = [ maintainers.dkudriavtsev ];
+  };
+}
diff --git a/pkgs/applications/science/electronics/ngspice/default.nix b/pkgs/applications/science/electronics/ngspice/default.nix
index f044f1d88e7b..951e5f66f6ee 100644
--- a/pkgs/applications/science/electronics/ngspice/default.nix
+++ b/pkgs/applications/science/electronics/ngspice/default.nix
@@ -17,7 +17,7 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "The Next Generation Spice (Electronic Circuit Simulator)";
-    homepage = http://ngspice.sourceforge.net;
+    homepage = "http://ngspice.sourceforge.net";
     license = with licenses; [ "BSD" gpl2 ];
     maintainers = with maintainers; [ bgamari rongcuid ];
     platforms = platforms.linux;
diff --git a/pkgs/applications/science/electronics/pcb/default.nix b/pkgs/applications/science/electronics/pcb/default.nix
index 636c494c3409..4309f52e8b15 100644
--- a/pkgs/applications/science/electronics/pcb/default.nix
+++ b/pkgs/applications/science/electronics/pcb/default.nix
@@ -57,7 +57,7 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "Printed Circuit Board editor";
-    homepage = http://pcb.geda-project.org/;
+    homepage = "http://pcb.geda-project.org/";
     maintainers = with maintainers; [ mog ];
     platforms = platforms.linux;
     license = licenses.gpl2;
diff --git a/pkgs/applications/science/electronics/pulseview/default.nix b/pkgs/applications/science/electronics/pulseview/default.nix
index ae9afd95518b..f43717389b53 100644
--- a/pkgs/applications/science/electronics/pulseview/default.nix
+++ b/pkgs/applications/science/electronics/pulseview/default.nix
@@ -22,7 +22,7 @@ mkDerivation rec {
 
   meta = with lib; {
     description = "Qt-based LA/scope/MSO GUI for sigrok (a signal analysis software suite)";
-    homepage = https://sigrok.org/;
+    homepage = "https://sigrok.org/";
     license = licenses.gpl3Plus;
     maintainers = with maintainers; [ bjornfor ];
     platforms = platforms.linux;
diff --git a/pkgs/applications/science/electronics/qfsm/default.nix b/pkgs/applications/science/electronics/qfsm/default.nix
index 6ca3f80cefd3..9b6e75c77ba8 100644
--- a/pkgs/applications/science/electronics/qfsm/default.nix
+++ b/pkgs/applications/science/electronics/qfsm/default.nix
@@ -22,7 +22,7 @@ stdenv.mkDerivation rec {
 
   meta = {
     description = "Graphical editor for finite state machines";
-    homepage = http://qfsm.sourceforge.net/;
+    homepage = "http://qfsm.sourceforge.net/";
     license = stdenv.lib.licenses.gpl3Plus;
     platforms = stdenv.lib.platforms.unix;
   };
diff --git a/pkgs/applications/science/electronics/qucs/default.nix b/pkgs/applications/science/electronics/qucs/default.nix
index 1bfe6df5ff53..62a9ae8b73be 100644
--- a/pkgs/applications/science/electronics/qucs/default.nix
+++ b/pkgs/applications/science/electronics/qucs/default.nix
@@ -21,7 +21,7 @@ stdenv.mkDerivation rec {
 
   meta = {
     description = "Integrated circuit simulator";
-    homepage = http://qucs.sourceforge.net;
+    homepage = "http://qucs.sourceforge.net";
     license = stdenv.lib.licenses.gpl2Plus;
     maintainers = with stdenv.lib.maintainers; [viric];
     platforms = with stdenv.lib.platforms; linux;
diff --git a/pkgs/applications/science/electronics/tkgate/1.x.nix b/pkgs/applications/science/electronics/tkgate/1.x.nix
index 2c346b0e74a0..e6f912616034 100644
--- a/pkgs/applications/science/electronics/tkgate/1.x.nix
+++ b/pkgs/applications/science/electronics/tkgate/1.x.nix
@@ -34,7 +34,7 @@ stdenv.mkDerivation rec {
 
   meta = {
     description = "Event driven digital circuit simulator with a TCL/TK-based graphical editor";
-    homepage = http://www.tkgate.org/;
+    homepage = "http://www.tkgate.org/";
     license = stdenv.lib.licenses.gpl2Plus;
     maintainers = [ stdenv.lib.maintainers.peti ];
     hydraPlatforms = stdenv.lib.platforms.linux;
diff --git a/pkgs/applications/science/electronics/verilator/default.nix b/pkgs/applications/science/electronics/verilator/default.nix
index 7163c201dbfc..dd6c5a09851e 100644
--- a/pkgs/applications/science/electronics/verilator/default.nix
+++ b/pkgs/applications/science/electronics/verilator/default.nix
@@ -2,11 +2,11 @@
 
 stdenv.mkDerivation rec {
   pname = "verilator";
-  version = "4.028";
+  version = "4.032";
 
   src = fetchurl {
     url    = "https://www.veripool.org/ftp/${pname}-${version}.tgz";
-    sha256 = "1rl92jnayhc1j47gjxdz2zf1by9vzlawbyw9mf1d7d2y22dqak1l";
+    sha256 = "1l3rhgw7pk59dz7dyhcl0iygn6c9rv9bv131rfzg66asxfwbfq1s";
   };
 
   enableParallelBuilding = true;
diff --git a/pkgs/applications/science/electronics/verilog/default.nix b/pkgs/applications/science/electronics/verilog/default.nix
index b707db141602..fa1efe299829 100644
--- a/pkgs/applications/science/electronics/verilog/default.nix
+++ b/pkgs/applications/science/electronics/verilog/default.nix
@@ -31,7 +31,7 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "Icarus Verilog compiler";
-    repositories.git = https://github.com/steveicarus/iverilog.git;
+    repositories.git = "https://github.com/steveicarus/iverilog.git";
     homepage = "http://iverilog.icarus.com/";
     license = licenses.lgpl21;
     maintainers = with maintainers; [ winden ];
diff --git a/pkgs/applications/science/electronics/xcircuit/default.nix b/pkgs/applications/science/electronics/xcircuit/default.nix
index 418144e6af7b..52fe9b037414 100644
--- a/pkgs/applications/science/electronics/xcircuit/default.nix
+++ b/pkgs/applications/science/electronics/xcircuit/default.nix
@@ -2,7 +2,7 @@
 , cairo, ghostscript, ngspice, tcl, tk, xorg, zlib }:
 
 let
-  version = "3.9.73";
+  version = "3.10.12";
   name = "xcircuit-${version}";
   inherit (stdenv.lib) getBin;
 
@@ -11,7 +11,7 @@ in stdenv.mkDerivation {
 
   src = fetchurl {
     url = "http://opencircuitdesign.com/xcircuit/archive/${name}.tgz";
-    sha256 = "1kj9hayipplzm4960kx48vxddqj154qnxkccaqj9cnkp62b7q3jg";
+    sha256 = "1h1ywc3mr7plvwnhdii2zgnnv5ih2nhyl4qbdjpi83dq0aq1s2mn";
   };
 
   nativeBuildInputs = [ autoreconfHook automake pkgconfig ];
@@ -27,9 +27,9 @@ in stdenv.mkDerivation {
 
   meta = with stdenv.lib; {
     description = "Generic drawing program tailored to circuit diagrams";
-    homepage = http://opencircuitdesign.com/xcircuit;
+    homepage = "http://opencircuitdesign.com/xcircuit";
     license = licenses.gpl2;
     platforms = platforms.linux;
-    maintainers = [ maintainers.spacefrogg ];
+    maintainers = with maintainers; [ spacefrogg thoughtpolice ];
   };
 }
diff --git a/pkgs/applications/science/electronics/xoscope/default.nix b/pkgs/applications/science/electronics/xoscope/default.nix
index 829caacb55cb..f8a68f31f464 100644
--- a/pkgs/applications/science/electronics/xoscope/default.nix
+++ b/pkgs/applications/science/electronics/xoscope/default.nix
@@ -16,7 +16,7 @@ stdenv.mkDerivation rec {
 
   meta = {
     description = "Oscilloscope through the sound card";
-    homepage = http://xoscope.sourceforge.net;
+    homepage = "http://xoscope.sourceforge.net";
     license = stdenv.lib.licenses.gpl2Plus;
     maintainers = with stdenv.lib.maintainers; [viric];
     platforms = with stdenv.lib.platforms; linux;
diff --git a/pkgs/applications/science/geometry/drgeo/default.nix b/pkgs/applications/science/geometry/drgeo/default.nix
index e8ae4d01a6d6..7bae3d414cbf 100644
--- a/pkgs/applications/science/geometry/drgeo/default.nix
+++ b/pkgs/applications/science/geometry/drgeo/default.nix
@@ -22,7 +22,7 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "Interactive geometry program";
-    homepage = https://sourceforge.net/projects/ofset;
+    homepage = "https://sourceforge.net/projects/ofset";
     license = licenses.gpl2;
     platforms = platforms.linux;
   };
diff --git a/pkgs/applications/science/geometry/tetgen/1.4.nix b/pkgs/applications/science/geometry/tetgen/1.4.nix
index 3a2dbf180ee3..9dd254736834 100644
--- a/pkgs/applications/science/geometry/tetgen/1.4.nix
+++ b/pkgs/applications/science/geometry/tetgen/1.4.nix
@@ -15,7 +15,7 @@ stdenv.mkDerivation rec {
 
   meta = {
     description = "Quality Tetrahedral Mesh Generator and 3D Delaunay Triangulator";
-    homepage = http://tetgen.org/;
+    homepage = "http://tetgen.org/";
     license = stdenv.lib.licenses.mit;
     platforms = stdenv.lib.platforms.linux;
   };
diff --git a/pkgs/applications/science/geometry/tetgen/default.nix b/pkgs/applications/science/geometry/tetgen/default.nix
index 0d3a7cc2bc23..d12e8e35844f 100644
--- a/pkgs/applications/science/geometry/tetgen/default.nix
+++ b/pkgs/applications/science/geometry/tetgen/default.nix
@@ -18,7 +18,7 @@ stdenv.mkDerivation {
   meta = {
     inherit version;
     description = "Quality Tetrahedral Mesh Generator and 3D Delaunay Triangulator";
-    homepage = http://tetgen.org/;
+    homepage = "http://tetgen.org/";
     license = stdenv.lib.licenses.agpl3Plus;
     platforms = stdenv.lib.platforms.linux;
   };
diff --git a/pkgs/applications/science/logic/abc/default.nix b/pkgs/applications/science/logic/abc/default.nix
index 8551a3ee4ca3..a33cc92c7ce7 100644
--- a/pkgs/applications/science/logic/abc/default.nix
+++ b/pkgs/applications/science/logic/abc/default.nix
@@ -1,35 +1,32 @@
-{ fetchFromGitHub, stdenv, readline, cmake }:
+{ stdenv, fetchFromGitHub
+, readline, cmake
+}:
 
-let
-  rev = "71f2b40320127561175ad60f6f2428f3438e5243";
-in stdenv.mkDerivation {
-  pname = "abc-verifier";
-  version = "2020-01-11";
+stdenv.mkDerivation rec {
+  pname   = "abc-verifier";
+  version = "2020.03.05";
 
   src = fetchFromGitHub {
-    inherit rev;
-    owner = "berkeley-abc";
-    repo = "abc";
-    sha256 = "15sn146ajxql7l1h8rsag5lhn4spwvgjhwzqawfr78snzadw8by3";
+    owner  = "berkeley-abc";
+    repo   = "abc";
+    rev    = "ed90ce20df9c7c4d6e1db5d3f786f9b52e06bab1";
+    sha256 = "01sw67pkrb6wzflkxbkxzwsnli3nvp0yxwp3j1ngb3c0j86ri437";
   };
 
-  passthru.rev = rev;
-
   nativeBuildInputs = [ cmake ];
   buildInputs = [ readline ];
 
   enableParallelBuilding = true;
+  installPhase = "mkdir -p $out/bin && mv abc $out/bin";
 
-  installPhase = ''
-    mkdir -p $out/bin
-    mv abc $out/bin
-  '';
+  # needed by yosys
+  passthru.rev = src.rev;
 
-  meta = {
+  meta = with stdenv.lib; {
     description = "A tool for squential logic synthesis and formal verification";
-    homepage    = https://people.eecs.berkeley.edu/~alanmi/abc;
-    license     = stdenv.lib.licenses.mit;
-    platforms   = stdenv.lib.platforms.unix;
-    maintainers = [ stdenv.lib.maintainers.thoughtpolice ];
+    homepage    = "https://people.eecs.berkeley.edu/~alanmi/abc";
+    license     = licenses.mit;
+    platforms   = platforms.unix;
+    maintainers = with maintainers; [ thoughtpolice ];
   };
 }
diff --git a/pkgs/applications/science/logic/abella/default.nix b/pkgs/applications/science/logic/abella/default.nix
index 7078fd454a0a..3d9a2e9bd67b 100644
--- a/pkgs/applications/science/logic/abella/default.nix
+++ b/pkgs/applications/science/logic/abella/default.nix
@@ -30,7 +30,7 @@ stdenv.mkDerivation rec {
       of programming languages and other logical systems which manipulate
       objects with binding.
     '';
-    homepage = http://abella-prover.org/;
+    homepage = "http://abella-prover.org/";
     license = stdenv.lib.licenses.gpl3;
     maintainers = with stdenv.lib.maintainers; [ bcdarwin ciil ];
     platforms = stdenv.lib.platforms.unix;
diff --git a/pkgs/applications/science/logic/acgtk/default.nix b/pkgs/applications/science/logic/acgtk/default.nix
index 729aef4e21c2..ccd080005076 100644
--- a/pkgs/applications/science/logic/acgtk/default.nix
+++ b/pkgs/applications/science/logic/acgtk/default.nix
@@ -2,15 +2,16 @@
 
 stdenv.mkDerivation {
 
-  name = "acgtk-1.5.0";
+  pname = "acgtk";
+  version = "1.5.1";
 
   src = fetchurl {
-    url = http://calligramme.loria.fr/acg/software/acg-1.5.0-20181019.tar.gz;
-    sha256 = "14n003gxzw5w79hlpw1ja4nq97jqf9zqyg00ihvpxw4bv9jlm8jm";
+    url = "https://acg.loria.fr/software/acg-1.5.1-20191113.tar.gz";
+    sha256 = "17595qfwhzz5q091ak6i6bg5wlppbn8zfn58x3hmmmjvx2yfajn1";
   };
 
   buildInputs = [ dune ] ++ (with ocamlPackages; [
-    ocaml findlib ansiterminal cairo2 fmt logs menhir mtime ocf
+    ocaml findlib ansiterminal cairo2 cmdliner fmt logs menhir mtime yojson
   ]);
 
   buildPhase = "dune build";
@@ -18,7 +19,7 @@ stdenv.mkDerivation {
   inherit (dune) installPhase;
 
   meta = with stdenv.lib; {
-    homepage = http://calligramme.loria.fr/acg/;
+    homepage = "https://acg.loria.fr/";
     description = "A toolkit for developing ACG signatures and lexicon";
     license = licenses.cecill20;
     inherit (ocamlPackages.ocaml.meta) platforms;
diff --git a/pkgs/applications/science/logic/aiger/default.nix b/pkgs/applications/science/logic/aiger/default.nix
index 0f65c9b7eaea..aa5a59ed298a 100644
--- a/pkgs/applications/science/logic/aiger/default.nix
+++ b/pkgs/applications/science/logic/aiger/default.nix
@@ -47,7 +47,7 @@ stdenv.mkDerivation rec {
 
   meta = {
     description = "And-Inverter Graph (AIG) utilities";
-    homepage    = http://fmv.jku.at/aiger/;
+    homepage    = "http://fmv.jku.at/aiger/";
     license     = stdenv.lib.licenses.mit;
     maintainers = with stdenv.lib.maintainers; [ thoughtpolice ];
     platforms   = stdenv.lib.platforms.unix;
diff --git a/pkgs/applications/science/logic/alt-ergo/default.nix b/pkgs/applications/science/logic/alt-ergo/default.nix
index f83480cfbafc..e396f1c4a91a 100644
--- a/pkgs/applications/science/logic/alt-ergo/default.nix
+++ b/pkgs/applications/science/logic/alt-ergo/default.nix
@@ -1,26 +1,47 @@
-{ fetchurl, stdenv, which, dune, ocamlPackages }:
+{ fetchurl, lib, which, ocamlPackages }:
 
-stdenv.mkDerivation rec {
+let
   pname = "alt-ergo";
-  version = "2.3.0";
+  version = "2.3.2";
 
   src = fetchurl {
-    url    = "https://alt-ergo.ocamlpro.com/download_manager.php?target=${pname}-${version}.tar.gz";
-    name   = "${pname}-${version}.tar.gz";
-    sha256 = "1ycr3ff0gacq1aqzs16n6swgfniwpim0m7rvhcam64kj0a80c6bz";
+    url = "https://alt-ergo.ocamlpro.com/http/alt-ergo-${version}/alt-ergo-${version}.tar.gz";
+    sha256 = "130hisjzkaslygipdaaqib92spzx9rapsd45dbh5ssczjn5qnhb9";
   };
 
-  buildInputs = [ dune which ] ++ (with ocamlPackages; [
-    ocaml findlib camlzip lablgtk menhir num ocplib-simplex psmt2-frontend seq zarith
-  ]);
-
   preConfigure = "patchShebangs ./configure";
 
+  nativeBuildInputs = [ which ];
+
+in
+
+let alt-ergo-lib = ocamlPackages.buildDunePackage rec {
+  pname = "alt-ergo-lib";
+  inherit version src preConfigure nativeBuildInputs;
+  configureFlags = pname;
+  propagatedBuildInputs = with ocamlPackages; [ num ocplib-simplex stdlib-shims zarith ];
+}; in
+
+let alt-ergo-parsers = ocamlPackages.buildDunePackage rec {
+  pname = "alt-ergo-parsers";
+  inherit version src preConfigure nativeBuildInputs;
+  configureFlags = pname;
+  buildInputs = with ocamlPackages; [ menhir ];
+  propagatedBuildInputs = [ alt-ergo-lib ] ++ (with ocamlPackages; [ camlzip psmt2-frontend ]);
+}; in
+
+ocamlPackages.buildDunePackage {
+
+  inherit pname version src preConfigure nativeBuildInputs;
+
+  configureFlags = pname;
+
+  buildInputs = [ alt-ergo-parsers ocamlPackages.menhir ];
+
   meta = {
     description = "High-performance theorem prover and SMT solver";
     homepage    = "https://alt-ergo.ocamlpro.com/";
-    license     = stdenv.lib.licenses.ocamlpro_nc;
-    platforms   = stdenv.lib.platforms.linux ++ stdenv.lib.platforms.darwin;
-    maintainers = [ stdenv.lib.maintainers.thoughtpolice ];
+    license     = lib.licenses.ocamlpro_nc;
+    maintainers = [ lib.maintainers.thoughtpolice ];
   };
 }
diff --git a/pkgs/applications/science/logic/aspino/default.nix b/pkgs/applications/science/logic/aspino/default.nix
index 82458d7c5663..c1cf9034c02a 100644
--- a/pkgs/applications/science/logic/aspino/default.nix
+++ b/pkgs/applications/science/logic/aspino/default.nix
@@ -43,7 +43,7 @@ stdenv.mkDerivation {
     maintainers = with maintainers; [ gebner ];
     platforms = platforms.unix;
     license = licenses.asl20;
-    homepage = https://alviano.net/software/maxino/;
+    homepage = "https://alviano.net/software/maxino/";
     # See pkgs/applications/science/logic/glucose/default.nix
     badPlatforms = [ "aarch64-linux" ];
   };
diff --git a/pkgs/applications/science/logic/avy/default.nix b/pkgs/applications/science/logic/avy/default.nix
index b43e0c6fbf1a..78ed641a809a 100644
--- a/pkgs/applications/science/logic/avy/default.nix
+++ b/pkgs/applications/science/logic/avy/default.nix
@@ -42,7 +42,7 @@ stdenv.mkDerivation {
 
   meta = {
     description = "AIGER model checking for Property Directed Reachability";
-    homepage    = https://arieg.bitbucket.io/avy/;
+    homepage    = "https://arieg.bitbucket.io/avy/";
     license     = stdenv.lib.licenses.mit;
     maintainers = with stdenv.lib.maintainers; [ thoughtpolice ];
     platforms   = stdenv.lib.platforms.linux;
diff --git a/pkgs/applications/science/logic/beluga/default.nix b/pkgs/applications/science/logic/beluga/default.nix
index da0e9bf1c1dd..44478a032b38 100644
--- a/pkgs/applications/science/logic/beluga/default.nix
+++ b/pkgs/applications/science/logic/beluga/default.nix
@@ -1,34 +1,40 @@
-{ stdenv, fetchFromGitHub, ocamlPackages, omake }:
+{ lib, fetchFromGitHub, ocamlPackages, rsync }:
 
-stdenv.mkDerivation {
-  name = "beluga-20180403";
+ocamlPackages.buildDunePackage {
+  pname = "beluga";
+  version = "unstable-2020-03-11";
 
   src = fetchFromGitHub {
     owner  = "Beluga-lang";
     repo   = "Beluga";
-    rev    = "046aa59f008be70a7c4700b723bed0214ea8b687";
-    sha256 = "0m68y0r0wdw3mg2jks68bihaww7sg305zdfnic1rkndq2cxv0mld";
+    rev    = "6133b2f572219333f304bb4f77c177592324c55b";
+    sha256 = "0sy6mi50z3mvs5z7dx38piydapk89all81rh038x3559b5fsk68q";
   };
 
-  nativeBuildInputs = with ocamlPackages; [ findlib ocamlbuild omake ];
-  buildInputs = with ocamlPackages; [ ocaml ulex ocaml_extlib ];
+  useDune2 = true;
 
-  installPhase = ''
-    mkdir -p $out
-    cp -r bin $out/
+  buildInputs = with ocamlPackages; [
+    gen sedlex_2 ocaml_extlib dune-build-info linenoise
+  ];
 
-    mkdir -p $out/share/beluga
-    cp -r tools/ examples/ $out/share/beluga
+  postPatch = ''
+    patchShebangs ./TEST ./run_harpoon_test.sh
+  '';
+
+  checkPhase = "./TEST";
+  checkInputs = [ rsync ];
+  doCheck = true;
 
+  postInstall = ''
     mkdir -p $out/share/emacs/site-lisp/beluga/
     cp -r tools/beluga-mode.el $out/share/emacs/site-lisp/beluga
   '';
 
-  meta = {
+  meta = with lib; {
     description = "A functional language for reasoning about formal systems";
-    homepage    = http://complogic.cs.mcgill.ca/beluga/;
-    license     = stdenv.lib.licenses.gpl3Plus;
-    maintainers = [ stdenv.lib.maintainers.bcdarwin ];
-    platforms   = stdenv.lib.platforms.unix;
+    homepage    = "http://complogic.cs.mcgill.ca/beluga/";
+    license     = licenses.gpl3Plus;
+    maintainers = [ maintainers.bcdarwin ];
+    platforms   = platforms.unix;
   };
 }
diff --git a/pkgs/applications/science/logic/boolector/default.nix b/pkgs/applications/science/logic/boolector/default.nix
index 4cf0b0f1ea1e..105e911ed4fd 100644
--- a/pkgs/applications/science/logic/boolector/default.nix
+++ b/pkgs/applications/science/logic/boolector/default.nix
@@ -50,7 +50,7 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "An extremely fast SMT solver for bit-vectors and arrays";
-    homepage    = https://boolector.github.io;
+    homepage    = "https://boolector.github.io";
     license     = licenses.mit;
     platforms   = platforms.linux;
     maintainers = with maintainers; [ thoughtpolice ];
diff --git a/pkgs/applications/science/logic/cadical/default.nix b/pkgs/applications/science/logic/cadical/default.nix
new file mode 100644
index 000000000000..5e6c0d55b7dd
--- /dev/null
+++ b/pkgs/applications/science/logic/cadical/default.nix
@@ -0,0 +1,29 @@
+{ stdenv, fetchFromGitHub }:
+
+stdenv.mkDerivation rec {
+  pname = "cadical";
+  version = "1.2.1";
+
+  src = fetchFromGitHub {
+    owner = "arminbiere";
+    repo = "cadical";
+    rev = "rel-${version}";
+    hash = "sha256:1a66xkw42ad330fvw8i0sawrmg913m8wrq5c85lw5qandkwvxdi6";
+  };
+
+  dontAddPrefix = true;
+  installPhase = ''
+    install -Dm0755 build/cadical "$out/bin/cadical"
+    install -Dm0755 build/mobical "$out/bin/mobical"
+    mkdir -p "$out/share/doc/${pname}-${version}/"
+    install -Dm0755 {LICEN?E,README*,VERSION} "$out/share/doc/${pname}-${version}/"
+  '';
+
+  meta = with stdenv.lib; {
+    description = "Simplified Satisfiability Solver";
+    maintainers = with maintainers; [ shnarazk ];
+    platforms = platforms.unix;
+    license = licenses.mit;
+    homepage = "http://fmv.jku.at/cadical";
+  };
+}
diff --git a/pkgs/applications/science/logic/cedille/default.nix b/pkgs/applications/science/logic/cedille/default.nix
index 4cef49788c04..2ac96df66a68 100644
--- a/pkgs/applications/science/logic/cedille/default.nix
+++ b/pkgs/applications/science/logic/cedille/default.nix
@@ -44,7 +44,7 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "An interactive theorem-prover and dependently typed programming language, based on extrinsic (aka Curry-style) type theory";
-    homepage = https://cedille.github.io/;
+    homepage = "https://cedille.github.io/";
     license = licenses.mit;
     maintainers = with maintainers; [ marsam mpickering ];
     platforms = platforms.unix;
diff --git a/pkgs/applications/science/logic/celf/default.nix b/pkgs/applications/science/logic/celf/default.nix
index 708270f772fd..9dc20a61a4d2 100644
--- a/pkgs/applications/science/logic/celf/default.nix
+++ b/pkgs/applications/science/logic/celf/default.nix
@@ -28,7 +28,7 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "Linear logic programming system";
-    homepage = https://github.com/clf/celf;
+    homepage = "https://github.com/clf/celf";
     license = licenses.gpl3;
     maintainers = with maintainers; [ bcdarwin ];
     platforms = platforms.unix;
diff --git a/pkgs/applications/science/logic/clprover/clprover.nix b/pkgs/applications/science/logic/clprover/clprover.nix
index 0319069660ed..e53bbe688371 100644
--- a/pkgs/applications/science/logic/clprover/clprover.nix
+++ b/pkgs/applications/science/logic/clprover/clprover.nix
@@ -19,7 +19,7 @@ stdenv.mkDerivation {
 
   meta = with stdenv.lib; {
     description = "Resolution-based theorem prover for Coalition Logic implemented in C++";
-    homepage = http://cgi.csc.liv.ac.uk/~ullrich/CLProver++/;
+    homepage = "http://cgi.csc.liv.ac.uk/~ullrich/CLProver++/";
     license = licenses.gpl3; # Note that while the website states that it is GPLv2 but the file in the zip as well as the comments in the source state it is GPLv3
     maintainers = with maintainers; [ mgttlinger ];
     platforms = [ "x86_64-linux" ];
diff --git a/pkgs/applications/science/logic/coq/default.nix b/pkgs/applications/science/logic/coq/default.nix
index 85c5d23ffcad..315900d42b9b 100644
--- a/pkgs/applications/science/logic/coq/default.nix
+++ b/pkgs/applications/science/logic/coq/default.nix
@@ -33,6 +33,7 @@ let
    "8.10.1" = "072v2zkjzf7gj48137wpr3c9j0hg9pdhlr5l8jrgrwynld8fp7i4";
    "8.10.2" = "0znxmpy71bfw0p6x47i82jf5k7v41zbz9bdpn901ysn3ir8l3wrz";
    "8.11.0" = "1rfdic6mp7acx2zfwz7ziqk12g95bl9nyj68z4n20a5bcjv2pxpn";
+   "8.11.1" = "0qriy9dy36dajsv5qmli8gd6v55mah02ya334nw49ky19v7518m0";
   }.${version};
   coq-version = stdenv.lib.versions.majorMinor version;
   versionAtLeast = stdenv.lib.versionAtLeast coq-version;
@@ -160,7 +161,7 @@ self = stdenv.mkDerivation {
       together with an environment for semi-interactive development of
       machine-checked proofs.
     '';
-    homepage = http://coq.inria.fr;
+    homepage = "http://coq.inria.fr";
     license = licenses.lgpl21;
     branch = coq-version;
     maintainers = with maintainers; [ roconnor thoughtpolice vbgl Zimmi48 ];
diff --git a/pkgs/applications/science/logic/coq2html/default.nix b/pkgs/applications/science/logic/coq2html/default.nix
index bebf81b030d6..2e56eda893e9 100644
--- a/pkgs/applications/science/logic/coq2html/default.nix
+++ b/pkgs/applications/science/logic/coq2html/default.nix
@@ -31,7 +31,7 @@ stdenv.mkDerivation {
       initially hidden, but can be revealed one by one by clicking on the
       "Proof" keyword.
     '';
-    homepage = https://github.com/xavierleroy/coq2html;
+    homepage = "https://github.com/xavierleroy/coq2html";
     license = licenses.gpl2;
     maintainers = with maintainers; [ jwiegley ];
     platforms = platforms.unix;
diff --git a/pkgs/applications/science/logic/cryptominisat/default.nix b/pkgs/applications/science/logic/cryptominisat/default.nix
index b4c4cb7c047d..8c1b3bd03694 100644
--- a/pkgs/applications/science/logic/cryptominisat/default.nix
+++ b/pkgs/applications/science/logic/cryptominisat/default.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation rec {
   pname = "cryptominisat";
-  version = "5.6.8";
+  version = "5.7.0";
 
   src = fetchFromGitHub {
     owner  = "msoos";
     repo   = "cryptominisat";
     rev    = version;
-    sha256 = "0csimmy1nvkfcsxjra9bm4mlcyxa3ac8zarm88zfb7640ca0d0wv";
+    sha256 = "0ny5ln8fc0irprs04qw01c9mppps8q27lkx01a549zazwhj4b5rm";
   };
 
   buildInputs = [ python3 boost ];
@@ -16,7 +16,7 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "An advanced SAT Solver";
-    homepage    = https://github.com/msoos/cryptominisat;
+    homepage    = "https://github.com/msoos/cryptominisat";
     license     = licenses.mit;
     maintainers = with maintainers; [ mic92 ];
     platforms   = platforms.unix;
diff --git a/pkgs/applications/science/logic/cubicle/default.nix b/pkgs/applications/science/logic/cubicle/default.nix
index d198de41f9b7..bfb6a57fb33a 100644
--- a/pkgs/applications/science/logic/cubicle/default.nix
+++ b/pkgs/applications/science/logic/cubicle/default.nix
@@ -16,7 +16,7 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "An open source model checker for verifying safety properties of array-based systems";
-    homepage = http://cubicle.lri.fr/;
+    homepage = "http://cubicle.lri.fr/";
     license = licenses.asl20;
     platforms = platforms.unix;
     maintainers = with maintainers; [ dwarfmaster ];
diff --git a/pkgs/applications/science/logic/cvc3/default.nix b/pkgs/applications/science/logic/cvc3/default.nix
index dfb04ad90e92..ff481fd7ab46 100644
--- a/pkgs/applications/science/logic/cvc3/default.nix
+++ b/pkgs/applications/science/logic/cvc3/default.nix
@@ -24,7 +24,7 @@ stdenv.mkDerivation rec {
       [ raskin ];
     platforms = platforms.linux;
     license = licenses.free;
-    homepage = http://www.cs.nyu.edu/acsys/cvc3/index.html;
+    homepage = "http://www.cs.nyu.edu/acsys/cvc3/index.html";
   };
   passthru = {
     updateInfo = {
diff --git a/pkgs/applications/science/logic/cvc4/default.nix b/pkgs/applications/science/logic/cvc4/default.nix
index c0c7a53ebd44..a6e9bc69a12c 100644
--- a/pkgs/applications/science/logic/cvc4/default.nix
+++ b/pkgs/applications/science/logic/cvc4/default.nix
@@ -35,7 +35,7 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "A high-performance theorem prover and SMT solver";
-    homepage    = http://cvc4.cs.stanford.edu/web/;
+    homepage    = "http://cvc4.cs.stanford.edu/web/";
     license     = licenses.gpl3;
     platforms   = platforms.unix;
     maintainers = with maintainers; [ vbgl thoughtpolice gebner ];
diff --git a/pkgs/applications/science/logic/drat-trim/default.nix b/pkgs/applications/science/logic/drat-trim/default.nix
index 4c4ea0f14ce1..4099236e6280 100644
--- a/pkgs/applications/science/logic/drat-trim/default.nix
+++ b/pkgs/applications/science/logic/drat-trim/default.nix
@@ -32,7 +32,7 @@ stdenv.mkDerivation {
       competing SAT solvers' work when they claim that a SAT instance
       is unsatisfiable.
     '';
-    homepage = https://www.cs.utexas.edu/~marijn/drat-trim/;
+    homepage = "https://www.cs.utexas.edu/~marijn/drat-trim/";
     license = licenses.mit;
     maintainers = with maintainers; [ kini ];
     platforms = platforms.all;
diff --git a/pkgs/applications/science/logic/elan/default.nix b/pkgs/applications/science/logic/elan/default.nix
index b77f5110521c..cafd6eef23f6 100644
--- a/pkgs/applications/science/logic/elan/default.nix
+++ b/pkgs/applications/science/logic/elan/default.nix
@@ -2,16 +2,16 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "elan";
-  version = "0.7.5";
+  version = "0.9.0";
 
   src = fetchFromGitHub {
     owner = "kha";
     repo = "elan";
     rev = "v${version}";
-    sha256 = "1147f3lzr6lgvf580ppspn20bdwnf6l8idh1h5ana0p0lf5a0dn1";
+    sha256 = "17i8sn53hk03fsawpwfinm1w0nb6lcmdbk8ar2mxyhkxczd45vag";
   };
 
-  cargoSha256 = "0vja1cq6z7jlr4nzfdzn4gl8l31yld82zmgzwihnalif13q3fcps";
+  cargoSha256 = "1b2b200wci1lirnkbhfmravz85v8ly918qkr0nwg7dlmhvg9gjb0";
 
   nativeBuildInputs = [ pkgconfig ];
 
@@ -22,7 +22,7 @@ rustPlatform.buildRustPackage rec {
   postInstall = ''
     pushd $out/bin
     mv elan-init elan
-    for link in lean leanpkg leanchecker; do
+    for link in lean leanpkg leanchecker leanc leanmake; do
       ln -s elan $link
     done
     popd
diff --git a/pkgs/applications/science/logic/eprover/default.nix b/pkgs/applications/science/logic/eprover/default.nix
index 1b021f716078..f19d7e35c3e3 100644
--- a/pkgs/applications/science/logic/eprover/default.nix
+++ b/pkgs/applications/science/logic/eprover/default.nix
@@ -21,7 +21,7 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "Automated theorem prover for full first-order logic with equality";
-    homepage = http://www.eprover.org/;
+    homepage = "http://www.eprover.org/";
     license = licenses.gpl2;
     maintainers = with maintainers; [ raskin gebner ];
     platforms = platforms.all;
diff --git a/pkgs/applications/science/logic/gappa/default.nix b/pkgs/applications/science/logic/gappa/default.nix
index 7522eb4790ed..2ca1bcd30981 100644
--- a/pkgs/applications/science/logic/gappa/default.nix
+++ b/pkgs/applications/science/logic/gappa/default.nix
@@ -4,7 +4,7 @@ stdenv.mkDerivation {
   name = "gappa-1.3.5";
 
   src = fetchurl {
-    url = https://gforge.inria.fr/frs/download.php/file/38044/gappa-1.3.5.tar.gz;
+    url = "https://gforge.inria.fr/frs/download.php/file/38044/gappa-1.3.5.tar.gz";
     sha256 = "0q1wdiwqj6fsbifaayb1zkp20bz8a1my81sqjsail577jmzwi07w";
   };
 
@@ -14,7 +14,7 @@ stdenv.mkDerivation {
   installPhase = "./remake install";
 
   meta = {
-    homepage = http://gappa.gforge.inria.fr/;
+    homepage = "http://gappa.gforge.inria.fr/";
     description = "Verifying and formally proving properties on numerical programs dealing with floating-point or fixed-point arithmetic";
     license = with stdenv.lib.licenses; [ cecill20 gpl2 ];
     maintainers = with stdenv.lib.maintainers; [ vbgl ];
diff --git a/pkgs/applications/science/logic/hol/default.nix b/pkgs/applications/science/logic/hol/default.nix
index d6a1eb6cbf71..dbafee7d6000 100644
--- a/pkgs/applications/science/logic/hol/default.nix
+++ b/pkgs/applications/science/logic/hol/default.nix
@@ -79,7 +79,7 @@ stdenv.mkDerivation {
       implementing combinations of deduction, execution and property
       checking.
     '';
-    homepage = http://hol.sourceforge.net/;
+    homepage = "http://hol.sourceforge.net/";
     license = licenses.bsd3;
     maintainers = with maintainers; [ mudri ];
     platforms = with platforms; linux;
diff --git a/pkgs/applications/science/logic/hol_light/default.nix b/pkgs/applications/science/logic/hol_light/default.nix
index d799b52d115e..9c3030517e32 100644
--- a/pkgs/applications/science/logic/hol_light/default.nix
+++ b/pkgs/applications/science/logic/hol_light/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, runtimeShell, fetchFromGitHub, ocaml, num, camlp5 }:
+{ stdenv, runtimeShell, fetchFromGitHub, fetchpatch, ocaml, num, camlp5 }:
 
 let
   load_num =
@@ -30,6 +30,11 @@ stdenv.mkDerivation {
     sha256 = "0sxsk8z08ba0q5aixdyczcx5l29lb51ba4ip3d2fry7y604kjsx6";
   };
 
+  patches = [(fetchpatch {
+    url = "https://salsa.debian.org/ocaml-team/hol-light/-/raw/master/debian/patches/0004-Fix-compilation-with-camlp5-7.11.patch";
+    sha256 = "180qmxbrk3vb1ix7j77hcs8vsar91rs11s5mm8ir5352rz7ylicr";
+  })];
+
   buildInputs = [ ocaml camlp5 ];
   propagatedBuildInputs = [ num ];
 
@@ -42,7 +47,7 @@ stdenv.mkDerivation {
 
   meta = with stdenv.lib; {
     description = "Interactive theorem prover based on Higher-Order Logic";
-    homepage    = http://www.cl.cam.ac.uk/~jrh13/hol-light/;
+    homepage    = "http://www.cl.cam.ac.uk/~jrh13/hol-light/";
     license     = licenses.bsd2;
     platforms   = platforms.unix;
     maintainers = with maintainers; [ thoughtpolice maggesi vbgl ];
diff --git a/pkgs/applications/science/logic/iprover/default.nix b/pkgs/applications/science/logic/iprover/default.nix
index c4eb22a7c030..310a95d7e7a6 100644
--- a/pkgs/applications/science/logic/iprover/default.nix
+++ b/pkgs/applications/science/logic/iprover/default.nix
@@ -25,7 +25,7 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "An automated first-order logic theorem prover";
-    homepage = http://www.cs.man.ac.uk/~korovink/iprover/;
+    homepage = "http://www.cs.man.ac.uk/~korovink/iprover/";
     maintainers = with maintainers; [ raskin gebner ];
     platforms = platforms.linux;
     license = licenses.gpl3;
diff --git a/pkgs/applications/science/logic/isabelle/default.nix b/pkgs/applications/science/logic/isabelle/default.nix
index 024f2f4e8294..d2e49d817837 100644
--- a/pkgs/applications/science/logic/isabelle/default.nix
+++ b/pkgs/applications/science/logic/isabelle/default.nix
@@ -74,7 +74,7 @@ stdenv.mkDerivation rec {
       to be expressed in a formal language and provides tools for proving those
       formulas in a logical calculus.
     '';
-    homepage = http://isabelle.in.tum.de/;
+    homepage = "http://isabelle.in.tum.de/";
     license = "LGPL";
     maintainers = [ stdenv.lib.maintainers.jwiegley ];
     platforms = stdenv.lib.platforms.linux;
diff --git a/pkgs/applications/science/logic/jonprl/default.nix b/pkgs/applications/science/logic/jonprl/default.nix
index e503836098f1..3ee05a478bc2 100644
--- a/pkgs/applications/science/logic/jonprl/default.nix
+++ b/pkgs/applications/science/logic/jonprl/default.nix
@@ -26,7 +26,7 @@ stdenv.mkDerivation rec {
       based on Brouwer-realizability & meaning explanations.
       Inspired by Nuprl
     '';
-    homepage = https://github.com/jonsterling/JonPRL;
+    homepage = "https://github.com/jonsterling/JonPRL";
     license = stdenv.lib.licenses.mit;
     maintainers = with stdenv.lib.maintainers; [ puffnfresh ];
     platforms = stdenv.lib.platforms.linux;
diff --git a/pkgs/applications/science/logic/lean/default.nix b/pkgs/applications/science/logic/lean/default.nix
index ae8b0ada8062..c80c163562be 100644
--- a/pkgs/applications/science/logic/lean/default.nix
+++ b/pkgs/applications/science/logic/lean/default.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation rec {
   pname = "lean";
-  version = "3.6.1";
+  version = "3.10.0";
 
   src = fetchFromGitHub {
     owner  = "leanprover-community";
     repo   = "lean";
     rev    = "v${version}";
-    sha256 = "0crcpzbz75mdyi1vi4mygw3mj4lx73vff58fkic1gfxlpwrwgi20";
+    sha256 = "0nmh09x3scfqg0bg1qf8b7z67s11hbfd7kr1h6k1zw94fyn2mg8q";
   };
 
   nativeBuildInputs = [ cmake ];
@@ -22,6 +22,7 @@ stdenv.mkDerivation rec {
   meta = with stdenv.lib; {
     description = "Automatic and interactive theorem prover";
     homepage    = "https://leanprover.github.io/";
+    changelog   = "https://github.com/leanprover-community/lean/blob/v${version}/doc/changes.md";
     license     = licenses.asl20;
     platforms   = platforms.unix;
     maintainers = with maintainers; [ thoughtpolice gebner ];
diff --git a/pkgs/applications/science/logic/leo2/default.nix b/pkgs/applications/science/logic/leo2/default.nix
index b50848a18205..b43bfb801358 100644
--- a/pkgs/applications/science/logic/leo2/default.nix
+++ b/pkgs/applications/science/logic/leo2/default.nix
@@ -32,6 +32,6 @@ stdenv.mkDerivation rec {
     maintainers = [ maintainers.raskin ];
     platforms = platforms.linux;
     license = licenses.bsd3;
-    homepage = http://www.leoprover.org/;
+    homepage = "http://www.leoprover.org/";
   };
 }
diff --git a/pkgs/applications/science/logic/lingeling/default.nix b/pkgs/applications/science/logic/lingeling/default.nix
index 94be89d4736f..1805f6cdcc89 100644
--- a/pkgs/applications/science/logic/lingeling/default.nix
+++ b/pkgs/applications/science/logic/lingeling/default.nix
@@ -41,7 +41,7 @@ stdenv.mkDerivation {
 
   meta = with stdenv.lib; {
     description = "Fast SAT solver";
-    homepage    = http://fmv.jku.at/lingeling/;
+    homepage    = "http://fmv.jku.at/lingeling/";
     license     = licenses.mit;
     platforms   = platforms.unix;
     maintainers = with maintainers; [ thoughtpolice ];
diff --git a/pkgs/applications/science/logic/logisim/default.nix b/pkgs/applications/science/logic/logisim/default.nix
index d6a1207b5d60..ce86b2523116 100644
--- a/pkgs/applications/science/logic/logisim/default.nix
+++ b/pkgs/applications/science/logic/logisim/default.nix
@@ -21,7 +21,7 @@ stdenv.mkDerivation {
   '';
   
   meta = {
-    homepage = http://ozark.hendrix.edu/~burch/logisim;
+    homepage = "http://ozark.hendrix.edu/~burch/logisim";
     description = "Educational tool for designing and simulating digital logic circuits";
     license = stdenv.lib.licenses.gpl2Plus;
     platforms = stdenv.lib.platforms.unix;
diff --git a/pkgs/applications/science/logic/mcrl2/default.nix b/pkgs/applications/science/logic/mcrl2/default.nix
index a479e31e3395..eb83eaf79c55 100644
--- a/pkgs/applications/science/logic/mcrl2/default.nix
+++ b/pkgs/applications/science/logic/mcrl2/default.nix
@@ -21,7 +21,7 @@ stdenv.mkDerivation rec {
       that can be used for modelling, validation and verification of
       concurrent systems and protocols
     '';
-    homepage = https://www.mcrl2.org/;
+    homepage = "https://www.mcrl2.org/";
     license = licenses.boost;
     maintainers = with maintainers; [ moretea ];
     platforms = platforms.unix;
diff --git a/pkgs/applications/science/logic/mcy/default.nix b/pkgs/applications/science/logic/mcy/default.nix
index 9f239f221b18..a9366d560583 100644
--- a/pkgs/applications/science/logic/mcy/default.nix
+++ b/pkgs/applications/science/logic/mcy/default.nix
@@ -7,28 +7,31 @@ let
 in
 stdenv.mkDerivation {
   pname = "mcy";
-  version = "2020.02.05";
+  version = "2020.03.21";
 
   src = fetchFromGitHub {
     owner  = "YosysHQ";
     repo   = "mcy";
-    rev    = "83deeddd12d583a89ad4aa1d2147efa4d6adc33c";
-    sha256 = "1i0cabiqr68zflwzc6z894i4n7k6m3hbfck58vzh8zb9jwxwizav";
+    rev    = "bac92b8aad9bf24714fda70d3750bb50d6d96177";
+    sha256 = "0mmg6zd5cbn8g0am9c3naamg0lq67yyy117fzn2ydigcyia7vmnp";
   };
 
   buildInputs = [ python ];
   patchPhase = ''
     substituteInPlace mcy.py \
       --replace yosys '${yosys}/bin/yosys' \
-      --replace 'os.execvp("mcy-dash"' "os.execvp(\"$out/libexec/mcy/mcy-dash.py\""
+      --replace 'os.execvp("mcy-dash"' "os.execvp(\"$out/bin/mcy-dash\""
+    substituteInPlace mcy-dash.py \
+      --replace 'app.run(debug=True)' 'app.run(host="0.0.0.0",debug=True)'
   '';
 
   # the build needs a bit of work...
   buildPhase = "true";
   installPhase = ''
-    mkdir -p $out/bin $out/libexec/mcy
-    install mcy.py $out/bin/mcy && chmod +x $out/bin/mcy
-    install mcy-dash.py $out/libexec/mcy/mcy-dash.py
+    mkdir -p $out/bin $out/share/mcy/dash
+    install mcy.py      $out/bin/mcy      && chmod +x $out/bin/mcy
+    install mcy-dash.py $out/bin/mcy-dash && chmod +x $out/bin/mcy-dash
+    cp -r dash/. $out/share/mcy/dash/.
   '';
 
   meta = {
diff --git a/pkgs/applications/science/logic/metis-prover/default.nix b/pkgs/applications/science/logic/metis-prover/default.nix
index ed1218c401b3..5755abfd9078 100644
--- a/pkgs/applications/science/logic/metis-prover/default.nix
+++ b/pkgs/applications/science/logic/metis-prover/default.nix
@@ -24,7 +24,7 @@ stdenv.mkDerivation {
 
   meta = with stdenv.lib; {
     description = "Automatic theorem prover for first-order logic with equality";
-    homepage = http://www.gilith.com/research/metis/;
+    homepage = "http://www.gilith.com/research/metis/";
     license = licenses.mit;
     maintainers = with maintainers; [ gebner ];
     platforms = platforms.unix;
diff --git a/pkgs/applications/science/logic/minisat/default.nix b/pkgs/applications/science/logic/minisat/default.nix
index 6b642832b83f..df1800e6c31b 100644
--- a/pkgs/applications/science/logic/minisat/default.nix
+++ b/pkgs/applications/science/logic/minisat/default.nix
@@ -19,6 +19,6 @@ stdenv.mkDerivation rec {
     maintainers = with maintainers; [ gebner raskin ];
     platforms = platforms.unix;
     license = licenses.mit;
-    homepage = http://minisat.se/;
+    homepage = "http://minisat.se/";
   };
 }
diff --git a/pkgs/applications/science/logic/monosat/default.nix b/pkgs/applications/science/logic/monosat/default.nix
index ba0e787af721..63440213920c 100644
--- a/pkgs/applications/science/logic/monosat/default.nix
+++ b/pkgs/applications/science/logic/monosat/default.nix
@@ -23,7 +23,7 @@ let
   patches = [
     # Python 3.8 compatibility
     (fetchpatch {
-      url = https://github.com/sambayless/monosat/commit/a5079711d0df0451f9840f3a41248e56dbb03967.patch;
+      url = "https://github.com/sambayless/monosat/commit/a5079711d0df0451f9840f3a41248e56dbb03967.patch";
       sha256 = "1p2y0jw8hb9c90nbffhn86k1dxd6f6hk5v70dfmpzka3y6g1ksal";
     })
   ];
@@ -50,7 +50,7 @@ let
       description = "SMT solver for Monotonic Theories";
       platforms   = platforms.unix;
       license     = if includeGplCode then licenses.gpl2 else licenses.mit;
-      homepage    = https://github.com/sambayless/monosat;
+      homepage    = "https://github.com/sambayless/monosat";
       maintainers = [ maintainers.acairncross ];
     };
   };
diff --git a/pkgs/applications/science/logic/open-wbo/default.nix b/pkgs/applications/science/logic/open-wbo/default.nix
index 32ce9fde0c31..c314127e74bf 100644
--- a/pkgs/applications/science/logic/open-wbo/default.nix
+++ b/pkgs/applications/science/logic/open-wbo/default.nix
@@ -22,6 +22,6 @@ stdenv.mkDerivation {
     maintainers = with maintainers; [ gebner ];
     platforms = platforms.unix;
     license = licenses.mit;
-    homepage = http://sat.inesc-id.pt/open-wbo/;
+    homepage = "http://sat.inesc-id.pt/open-wbo/";
   };
 }
diff --git a/pkgs/applications/science/logic/opensmt/default.nix b/pkgs/applications/science/logic/opensmt/default.nix
index 9e5ebe008b8f..03b3ce4ff0b7 100644
--- a/pkgs/applications/science/logic/opensmt/default.nix
+++ b/pkgs/applications/science/logic/opensmt/default.nix
@@ -18,7 +18,7 @@ stdenv.mkDerivation rec {
     maintainers = [ maintainers.raskin ];
     platforms = platforms.linux;
     license = licenses.gpl3;
-    homepage = http://code.google.com/p/opensmt/;
+    homepage = "http://code.google.com/p/opensmt/";
     broken = true;
     downloadPage = "http://code.google.com/p/opensmt/downloads/list";
   };
diff --git a/pkgs/applications/science/logic/ott/default.nix b/pkgs/applications/science/logic/ott/default.nix
index fa7c3dd5e95f..fa2ad9c4abc4 100644
--- a/pkgs/applications/science/logic/ott/default.nix
+++ b/pkgs/applications/science/logic/ott/default.nix
@@ -36,7 +36,7 @@ stdenv.mkDerivation rec {
       terms of the defined language, parsing them and replacing them by
       target-system terms.
     '';
-    homepage = http://www.cl.cam.ac.uk/~pes20/ott;
+    homepage = "http://www.cl.cam.ac.uk/~pes20/ott";
     license = stdenv.lib.licenses.bsd3;
     maintainers = with stdenv.lib.maintainers; [ jwiegley ];
     platforms = stdenv.lib.platforms.unix;
diff --git a/pkgs/applications/science/logic/picosat/default.nix b/pkgs/applications/science/logic/picosat/default.nix
index 547bd31e8b42..b13d871580c5 100644
--- a/pkgs/applications/science/logic/picosat/default.nix
+++ b/pkgs/applications/science/logic/picosat/default.nix
@@ -36,7 +36,7 @@ stdenv.mkDerivation rec {
 
   meta = {
     description = "SAT solver with proof and core support";
-    homepage    = http://fmv.jku.at/picosat/;
+    homepage    = "http://fmv.jku.at/picosat/";
     license     = stdenv.lib.licenses.mit;
     platforms   = stdenv.lib.platforms.unix;
     maintainers = with stdenv.lib.maintainers; [ roconnor thoughtpolice ];
diff --git a/pkgs/applications/science/logic/poly/default.nix b/pkgs/applications/science/logic/poly/default.nix
index c833b22e49b6..ee50a2d85040 100644
--- a/pkgs/applications/science/logic/poly/default.nix
+++ b/pkgs/applications/science/logic/poly/default.nix
@@ -2,13 +2,14 @@
 
 stdenv.mkDerivation rec {
   pname = "libpoly";
-  version = "0.1.7";
+  version = "0.1.8";
 
   src = fetchFromGitHub {
     owner = "SRI-CSL";
     repo = "libpoly";
-    rev = "v${version}";
-    sha256 = "0i5ar4lhs88glk0rvkmag656ii434i6i1q5dspx6d0kyg78fii64";
+    # they've pushed to the release branch, use explicit tag
+    rev = "refs/tags/v${version}";
+    sha256 = "1n3gijksnl2ybznq4lkwm2428f82423sxq18gnb2g1kiwqlzdaa3";
   };
 
   nativeBuildInputs = [ cmake ];
@@ -16,7 +17,7 @@ stdenv.mkDerivation rec {
   buildInputs = [ gmp python ];
 
   meta = with stdenv.lib; {
-    homepage = https://github.com/SRI-CSL/libpoly;
+    homepage = "https://github.com/SRI-CSL/libpoly";
     description = "C library for manipulating polynomials";
     license = licenses.lgpl3;
     platforms = platforms.all;
diff --git a/pkgs/applications/science/logic/potassco/clingcon.nix b/pkgs/applications/science/logic/potassco/clingcon.nix
new file mode 100644
index 000000000000..1203822d86e9
--- /dev/null
+++ b/pkgs/applications/science/logic/potassco/clingcon.nix
@@ -0,0 +1,43 @@
+{ stdenv
+, fetchFromGitHub
+, cmake
+, bison
+, re2c
+}:
+
+stdenv.mkDerivation rec {
+  pname = "clingcon";
+  version = "3.3.0";
+
+  src = fetchFromGitHub {
+    owner = "potassco";
+    repo = "${pname}";
+    rev = "v${version}";
+    fetchSubmodules = true;
+    sha256 = "1q7517h10jfvjdk2czq8d6y57r8kr1j1jj2k2ip2qxkpyfigk4rs";
+   };
+
+  # deal with clingcon through git submodules recursively importing
+  # an outdated version of libpotassco which uses deprecated <xlocale.h> header in .cpp files
+  postPatch = ''
+    find ./ -type f -exec sed -i 's/<xlocale.h>/<locale.h>/g' {} \;
+  '';
+
+  nativeBuildInputs = [ cmake bison re2c ];
+
+  cmakeFlags = [
+    "-DCLINGCON_MANAGE_RPATH=ON"
+    "-DCLINGO_BUILD_WITH_PYTHON=OFF"
+    "-DCLINGO_BUILD_WITH_LUA=OFF"
+  ];
+
+  meta = {
+    inherit version;
+    description = "Extension of clingo to handle constraints over integers";
+    license = stdenv.lib.licenses.gpl3; # for now GPL3, next version MIT!
+    platforms = stdenv.lib.platforms.unix;
+    homepage = "https://potassco.org/";
+    downloadPage = "https://github.com/potassco/clingcon/releases/";
+    changelog = "https://github.com/potassco/clingcon/releases/tag/v${version}";
+  };
+}
diff --git a/pkgs/applications/science/logic/prooftree/default.nix b/pkgs/applications/science/logic/prooftree/default.nix
index d4feb5c9e285..98313e48cb27 100644
--- a/pkgs/applications/science/logic/prooftree/default.nix
+++ b/pkgs/applications/science/logic/prooftree/default.nix
@@ -35,7 +35,7 @@ stdenv.mkDerivation rec {
       below the tree (on single click) or in a separate window (on double or
       shift-click).
     '';
-    homepage = http://askra.de/software/prooftree;
+    homepage = "http://askra.de/software/prooftree";
     platforms = platforms.unix;
     maintainers = [ maintainers.jwiegley ];
     license = licenses.gpl3;
diff --git a/pkgs/applications/science/logic/prover9/default.nix b/pkgs/applications/science/logic/prover9/default.nix
index 9528a5942a43..fcdff8558483 100644
--- a/pkgs/applications/science/logic/prover9/default.nix
+++ b/pkgs/applications/science/logic/prover9/default.nix
@@ -4,7 +4,7 @@ stdenv.mkDerivation {
   name = "prover9-2009-11a";
 
   src = fetchurl {
-    url = https://www.cs.unm.edu/~mccune/mace4/download/LADR-2009-11A.tar.gz;
+    url = "https://www.cs.unm.edu/~mccune/mace4/download/LADR-2009-11A.tar.gz";
     sha256 = "1l2i3d3h5z7nnbzilb6z92r0rbx0kh6yaxn2c5qhn3000xcfsay3";
   };
 
@@ -31,7 +31,7 @@ stdenv.mkDerivation {
   '';
 
   meta = {
-    homepage = https://www.cs.unm.edu/~mccune/mace4/;
+    homepage = "https://www.cs.unm.edu/~mccune/mace4/";
     license = "GPL";
     description = "Automated theorem prover for first-order and equational logic";
     longDescription = ''
diff --git a/pkgs/applications/science/logic/redprl/default.nix b/pkgs/applications/science/logic/redprl/default.nix
index 9da2647d1138..49245c73f2c4 100644
--- a/pkgs/applications/science/logic/redprl/default.nix
+++ b/pkgs/applications/science/logic/redprl/default.nix
@@ -20,7 +20,7 @@ stdenv.mkDerivation {
   '';
   meta = {
     description = "A proof assistant for Nominal Computational Type Theory";
-    homepage = http://www.redprl.org/;
+    homepage = "http://www.redprl.org/";
     license = stdenv.lib.licenses.mit;
     maintainers = [ stdenv.lib.maintainers.acowley ];
     platforms = stdenv.lib.platforms.unix;
diff --git a/pkgs/applications/science/logic/sad/default.nix b/pkgs/applications/science/logic/sad/default.nix
index 8e94356f376a..f9b82b5d733b 100644
--- a/pkgs/applications/science/logic/sad/default.nix
+++ b/pkgs/applications/science/logic/sad/default.nix
@@ -33,7 +33,7 @@ stdenv.mkDerivation {
       '';
     license = stdenv.lib.licenses.gpl3Plus;
     maintainers = [ stdenv.lib.maintainers.schmitthenner ];
-    homepage = http://nevidal.org/sad.en.html;
+    homepage = "http://nevidal.org/sad.en.html";
     platforms = stdenv.lib.platforms.linux;
   };
 }
diff --git a/pkgs/applications/science/logic/satallax/default.nix b/pkgs/applications/science/logic/satallax/default.nix
index 7249eb991d38..6c2b03b5b37d 100644
--- a/pkgs/applications/science/logic/satallax/default.nix
+++ b/pkgs/applications/science/logic/satallax/default.nix
@@ -9,6 +9,11 @@ stdenv.mkDerivation rec {
     sha256 = "1kvxn8mc35igk4vigi5cp7w3wpxk2z3bgwllfm4n3h2jfs0vkpib";
   };
 
+  patches = [
+    # GCC9 doesn't allow default value in friend declaration.
+    ./fix-declaration-gcc9.patch
+  ];
+
   preConfigure = ''
     mkdir fake-tools
     echo "echo 'Nix-build-host.localdomain'" > fake-tools/hostname
@@ -60,7 +65,7 @@ stdenv.mkDerivation rec {
     maintainers = [stdenv.lib.maintainers.raskin];
     platforms = stdenv.lib.platforms.linux;
     downloadPage = "http://www.ps.uni-saarland.de/~cebrown/satallax/downloads.php";
-    homepage = http://www.ps.uni-saarland.de/~cebrown/satallax/index.php;
+    homepage = "http://www.ps.uni-saarland.de/~cebrown/satallax/index.php";
     updateWalker = true;
   };
 }
diff --git a/pkgs/applications/science/logic/satallax/fix-declaration-gcc9.patch b/pkgs/applications/science/logic/satallax/fix-declaration-gcc9.patch
new file mode 100644
index 000000000000..1933fc25c4da
--- /dev/null
+++ b/pkgs/applications/science/logic/satallax/fix-declaration-gcc9.patch
@@ -0,0 +1,21 @@
+diff --git i/minisat/core/SolverTypes.h w/minisat/core/SolverTypes.h
+--- i/minisat/core/SolverTypes.h
++++ w/minisat/core/SolverTypes.h
+@@ -47,7 +47,7 @@ struct Lit {
+     int     x;
+ 
+     // Use this as a constructor:
+-    friend Lit mkLit(Var var, bool sign = false);
++    friend Lit mkLit(Var var, bool sign);
+ 
+     bool operator == (Lit p) const { return x == p.x; }
+     bool operator != (Lit p) const { return x != p.x; }
+@@ -55,7 +55,7 @@ struct Lit {
+ };
+ 
+ 
+-inline  Lit  mkLit     (Var var, bool sign) { Lit p; p.x = var + var + (int)sign; return p; }
++inline  Lit  mkLit     (Var var, bool sign = false) { Lit p; p.x = var + var + (int)sign; return p; }
+ inline  Lit  operator ~(Lit p)              { Lit q; q.x = p.x ^ 1; return q; }
+ inline  Lit  operator ^(Lit p, bool b)      { Lit q; q.x = p.x ^ (unsigned int)b; return q; }
+ inline  bool sign      (Lit p)              { return p.x & 1; }
diff --git a/pkgs/applications/science/logic/symbiyosys/default.nix b/pkgs/applications/science/logic/symbiyosys/default.nix
index 6b41a44a3583..b180cf307f0f 100644
--- a/pkgs/applications/science/logic/symbiyosys/default.nix
+++ b/pkgs/applications/science/logic/symbiyosys/default.nix
@@ -1,17 +1,17 @@
 { stdenv, fetchFromGitHub
 , bash, python3, yosys
-, yices, boolector, aiger, abc-verifier
+, yices, boolector, aiger
 }:
 
 stdenv.mkDerivation {
   pname = "symbiyosys";
-  version = "2020.02.08";
+  version = "2020.03.24";
 
   src = fetchFromGitHub {
     owner  = "YosysHQ";
     repo   = "SymbiYosys";
-    rev    = "500b526131f434b9679732fc89515dbed67c8d7d";
-    sha256 = "1pwbirszc80r288x81nx032snniqgmc80i09bbha2i3zd0c3pj5h";
+    rev    = "8a62780b9df4d2584e41cdd42cab92fddcd75b31";
+    sha256 = "0ss5mrzwff2dny8kfciqbrz67m6k52yvc1shd7gk3qb99x7g7fp8";
   };
 
   buildInputs = [ python3 ];
@@ -29,8 +29,8 @@ stdenv.mkDerivation {
       --replace ': "btormc"'       ': "${boolector}/bin/btormc"' \
       --replace ': "yosys"'        ': "${yosys}/bin/yosys"' \
       --replace ': "yosys-smtbmc"' ': "${yosys}/bin/yosys-smtbmc"' \
-      --replace ': "yosys-abc"' ': "${abc-verifier}/bin/abc"' \
-      --replace ': "aigbmc"' ': "${aiger}/bin/aigbmc"' \
+      --replace ': "yosys-abc"'    ': "${yosys}/bin/yosys-abc"' \
+      --replace ': "aigbmc"'       ': "${aiger}/bin/aigbmc"' \
   '';
 
   buildPhase = "true";
diff --git a/pkgs/applications/science/logic/tamarin-prover/default.nix b/pkgs/applications/science/logic/tamarin-prover/default.nix
index 9b87b8c899e5..857aba5a2607 100644
--- a/pkgs/applications/science/logic/tamarin-prover/default.nix
+++ b/pkgs/applications/science/logic/tamarin-prover/default.nix
@@ -18,7 +18,7 @@ let
     inherit pname version src;
 
     license     = lib.licenses.gpl3;
-    homepage    = https://tamarin-prover.github.io;
+    homepage    = "https://tamarin-prover.github.io";
     description = "Security protocol verification in the symbolic model";
     maintainers = [ lib.maintainers.thoughtpolice ];
   };
diff --git a/pkgs/applications/science/logic/tlaplus/default.nix b/pkgs/applications/science/logic/tlaplus/default.nix
index b1c72d7c5ee7..14944f5e19b0 100644
--- a/pkgs/applications/science/logic/tlaplus/default.nix
+++ b/pkgs/applications/science/logic/tlaplus/default.nix
@@ -1,24 +1,24 @@
 { stdenv, fetchFromGitHub, makeWrapper
-, jdk, jre, ant
+, adoptopenjdk-bin, jre, ant
 }:
 
 stdenv.mkDerivation rec {
   pname = "tlaplus";
-  version = "1.5.6";
+  version = "1.7.0";
 
   src = fetchFromGitHub {
     owner  = "tlaplus";
     repo   = "tlaplus";
     rev    = "refs/tags/v${version}";
-    sha256 = "0966mvgxamknj4hsp980qbxwda886w1dv309kn7isxn0420lfv4f";
+    sha256 = "1mm6r9bq79zks50yk0agcpdkw9yy994m38ibmgpb3bi3wkpq9891";
   };
 
-  buildInputs = [ makeWrapper jdk ant ];
+  buildInputs = [ makeWrapper adoptopenjdk-bin ant ];
 
-  buildPhase = "ant -f tlatools/customBuild.xml compile dist";
+  buildPhase = "ant -f tlatools/org.lamport.tlatools/customBuild.xml compile dist";
   installPhase = ''
     mkdir -p $out/share/java $out/bin
-    cp tlatools/dist/*.jar $out/share/java
+    cp tlatools/org.lamport.tlatools/dist/*.jar $out/share/java
 
     makeWrapper ${jre}/bin/java $out/bin/tlc2 \
       --add-flags "-cp $out/share/java/tla2tools.jar tlc2.TLC"
@@ -32,7 +32,7 @@ stdenv.mkDerivation rec {
 
   meta = {
     description = "An algorithm specification language with model checking tools";
-    homepage    = http://lamport.azurewebsites.net/tla/tla.html;
+    homepage    = "http://lamport.azurewebsites.net/tla/tla.html";
     license     = stdenv.lib.licenses.mit;
     platforms   = stdenv.lib.platforms.unix;
     maintainers = [ stdenv.lib.maintainers.thoughtpolice ];
diff --git a/pkgs/applications/science/logic/tlaplus/tlaps.nix b/pkgs/applications/science/logic/tlaplus/tlaps.nix
index 7c8389688d95..cbca37ea53d1 100644
--- a/pkgs/applications/science/logic/tlaplus/tlaps.nix
+++ b/pkgs/applications/science/logic/tlaplus/tlaps.nix
@@ -45,7 +45,7 @@ stdenv.mkDerivation rec {
       and scalable to large system specifications. It provides a
       consistent abstraction over the various “backend” verifiers.
     '';
-    homepage    = https://tla.msr-inria.inria.fr/tlaps/content/Home.html;
+    homepage    = "https://tla.msr-inria.inria.fr/tlaps/content/Home.html";
     license     = stdenv.lib.licenses.bsd2;
     platforms   = stdenv.lib.platforms.unix;
     maintainers = [ stdenv.lib.maintainers.badi ];
diff --git a/pkgs/applications/science/logic/tlaplus/toolbox.nix b/pkgs/applications/science/logic/tlaplus/toolbox.nix
index 91666e85d923..f326d62f8f0b 100644
--- a/pkgs/applications/science/logic/tlaplus/toolbox.nix
+++ b/pkgs/applications/science/logic/tlaplus/toolbox.nix
@@ -66,7 +66,7 @@ in stdenv.mkDerivation {
   '';
 
   meta = {
-    homepage = http://research.microsoft.com/en-us/um/people/lamport/tla/toolbox.html;
+    homepage = "http://research.microsoft.com/en-us/um/people/lamport/tla/toolbox.html";
     description = "IDE for the TLA+ tools";
     longDescription = ''
       Integrated development environment for the TLA+ tools, based on Eclipse. You can use it
diff --git a/pkgs/applications/science/logic/twelf/default.nix b/pkgs/applications/science/logic/twelf/default.nix
index 161da6e4b235..975b989bd94c 100644
--- a/pkgs/applications/science/logic/twelf/default.nix
+++ b/pkgs/applications/science/logic/twelf/default.nix
@@ -43,7 +43,7 @@ stdenv.mkDerivation rec {
       a foundational proof-carrying-code system, and a type safety proof for
       Standard ML.
     '';
-    homepage = http://twelf.org/wiki/Main_Page;
+    homepage = "http://twelf.org/wiki/Main_Page";
     license = stdenv.lib.licenses.mit;
     maintainers = with stdenv.lib.maintainers; [ jwiegley ];
     platforms = stdenv.lib.platforms.unix;
diff --git a/pkgs/applications/science/logic/vampire/default.nix b/pkgs/applications/science/logic/vampire/default.nix
index 42963fe5f9c6..e5941a35fd59 100644
--- a/pkgs/applications/science/logic/vampire/default.nix
+++ b/pkgs/applications/science/logic/vampire/default.nix
@@ -19,19 +19,19 @@ stdenv.mkDerivation rec {
     # https://github.com/vprover/vampire/pull/54
     (fetchpatch {
       name = "fix-apple-cygwin-defines.patch";
-      url = https://github.com/vprover/vampire/pull/54.patch;
+      url = "https://github.com/vprover/vampire/pull/54.patch";
       sha256 = "0i6nrc50wlg1dqxq38lkpx4rmfb3lf7s8f95l4jkvqp0nxa20cza";
     })
     # https://github.com/vprover/vampire/pull/55
     (fetchpatch {
       name = "fix-wait-any.patch";
-      url = https://github.com/vprover/vampire/pull/55.patch;
+      url = "https://github.com/vprover/vampire/pull/55.patch";
       sha256 = "1pwfpwpl23bqsgkmmvw6bnniyvp5j9v8l3z9s9pllfabnfcrcz9l";
     })
     # https://github.com/vprover/vampire/pull/56
     (fetchpatch {
       name = "fenv.patch";
-      url = https://github.com/vprover/vampire/pull/56.patch;
+      url = "https://github.com/vprover/vampire/pull/56.patch";
       sha256 = "0xl3jcyqmk146mg3qj5hdd0pbja6wbq3250zmfhbxqrjh40mm40g";
     })
   ];
diff --git a/pkgs/applications/science/logic/verifast/default.nix b/pkgs/applications/science/logic/verifast/default.nix
index c5e8078eff2a..49618d2586b1 100644
--- a/pkgs/applications/science/logic/verifast/default.nix
+++ b/pkgs/applications/science/logic/verifast/default.nix
@@ -43,7 +43,7 @@ stdenv.mkDerivation rec {
   meta = {
     description = "Verification for C and Java programs via separation logic";
     homepage    = "http://people.cs.kuleuven.be/~bart.jacobs/verifast/";
-    license     = stdenv.lib.licenses.msrla;
+    license     = stdenv.lib.licenses.mit;
     platforms   = [ "x86_64-linux" ];
     maintainers = [ stdenv.lib.maintainers.thoughtpolice ];
   };
diff --git a/pkgs/applications/science/logic/verit/default.nix b/pkgs/applications/science/logic/verit/default.nix
index 2c68191b800e..f20a83241571 100644
--- a/pkgs/applications/science/logic/verit/default.nix
+++ b/pkgs/applications/science/logic/verit/default.nix
@@ -23,7 +23,7 @@ stdenv.mkDerivation {
 
   meta = with stdenv.lib; {
     description = "An open, trustable and efficient SMT-solver";
-    homepage = http://www.verit-solver.org/;
+    homepage = "http://www.verit-solver.org/";
     license = licenses.bsd3;
     platforms = platforms.unix;
     maintainers = [ maintainers.gebner ];
diff --git a/pkgs/applications/science/logic/why3/default.nix b/pkgs/applications/science/logic/why3/default.nix
index eeb3a6b6d361..51cb2a456c19 100644
--- a/pkgs/applications/science/logic/why3/default.nix
+++ b/pkgs/applications/science/logic/why3/default.nix
@@ -1,4 +1,4 @@
-{ callPackage, fetchurl, stdenv
+{ callPackage, fetchurl, fetchpatch, stdenv
 , ocamlPackages, coqPackages, rubber, hevea, emacs }:
 
 stdenv.mkDerivation {
@@ -6,7 +6,7 @@ stdenv.mkDerivation {
   version = "1.2.1";
 
   src = fetchurl {
-    url = https://gforge.inria.fr/frs/download.php/file/38185/why3-1.2.1.tar.gz;
+    url = "https://gforge.inria.fr/frs/download.php/file/38185/why3-1.2.1.tar.gz";
     sha256 = "014gkwisjp05x3342zxkryb729p02ngx1hcjjsrplpa53jzgz647";
   };
 
@@ -30,7 +30,13 @@ stdenv.mkDerivation {
   enableParallelBuilding = true;
 
   # Remove unnecessary call to which
-  patches = [ ./configure.patch ];
+  patches = [ ./configure.patch
+    # Compatibility with js_of_ocaml 3.5
+    (fetchpatch {
+      url = "https://gitlab.inria.fr/why3/why3/commit/269ab313382fe3e64ef224813937314748bf7cf0.diff";
+      sha256 = "0i92wdnbh8pihvl93ac0ma1m5g95jgqqqj4kw6qqvbbjjqdgvzwa";
+    })
+  ];
 
   configureFlags = [ "--enable-verbose-make" ];
 
diff --git a/pkgs/applications/science/logic/workcraft/default.nix b/pkgs/applications/science/logic/workcraft/default.nix
index c0d6d541d6bd..685d6ee48619 100644
--- a/pkgs/applications/science/logic/workcraft/default.nix
+++ b/pkgs/applications/science/logic/workcraft/default.nix
@@ -2,11 +2,11 @@
 
 stdenv.mkDerivation rec {
   pname = "workcraft";
-  version = "3.2.5";
+  version = "3.2.6";
 
   src = fetchurl {
     url = "https://github.com/workcraft/workcraft/releases/download/v${version}/workcraft-v${version}-linux.tar.gz";
-    sha256 = "11dk00b17yhk7cv8zms4nlffc0qwgsapimzr8csb89qmgabd7rj3";
+    sha256 = "1sfbxmk71gp7paw4l5azqr0lsgsyp4308gx2jz8w4k3nasfshz25";
   };
 
   buildInputs = [ makeWrapper ];
@@ -23,7 +23,7 @@ stdenv.mkDerivation rec {
   '';
 
   meta = {
-    homepage = https://workcraft.org/;
+    homepage = "https://workcraft.org/";
     description = "Framework for interpreted graph modeling, verification and synthesis";
     platforms = stdenv.lib.platforms.linux;
     license = stdenv.lib.licenses.mit;
diff --git a/pkgs/applications/science/machine-learning/fasttext/default.nix b/pkgs/applications/science/machine-learning/fasttext/default.nix
index 0de54572862b..64124594e1e2 100644
--- a/pkgs/applications/science/machine-learning/fasttext/default.nix
+++ b/pkgs/applications/science/machine-learning/fasttext/default.nix
@@ -2,20 +2,20 @@
 
 stdenv.mkDerivation rec {
   pname = "fasttext";
-  version = "0.9.1";
+  version = "0.9.2";
 
   src = fetchFromGitHub {
     owner = "facebookresearch";
     repo = "fastText";
     rev = "v${version}";
-    sha256 = "1cbzz98qn8aypp4r5kwwwc9wiq5bwzv51kcsb15xjfs9lz8h3rii";
+    sha256 = "07cz2ghfq6amcljaxpdr5chbd64ph513y8zqmibfx2xwfp74xkhn";
   };
 
   nativeBuildInputs = [ cmake ];
 
   meta = with stdenv.lib; {
     description = "Library for text classification and representation learning";
-    homepage = https://fasttext.cc/;
+    homepage = "https://fasttext.cc/";
     license = licenses.mit;
     platforms = platforms.unix;
     maintainers = [ maintainers.danieldk ];
diff --git a/pkgs/applications/science/machine-learning/labelimg/default.nix b/pkgs/applications/science/machine-learning/labelimg/default.nix
index b1c89d299508..a952fb559ce6 100644
--- a/pkgs/applications/science/machine-learning/labelimg/default.nix
+++ b/pkgs/applications/science/machine-learning/labelimg/default.nix
@@ -18,7 +18,7 @@
     '';
     meta = with stdenv.lib; {
       description = "LabelImg is a graphical image annotation tool and label object bounding boxes in images";
-      homepage = https://github.com/tzutalin/labelImg;
+      homepage = "https://github.com/tzutalin/labelImg";
       license = licenses.mit;
       platforms = platforms.linux;
       maintainers = [ maintainers.cmcdragonkai ];
diff --git a/pkgs/applications/science/machine-learning/shogun/default.nix b/pkgs/applications/science/machine-learning/shogun/default.nix
index 988ea8c855c0..031ca55a0480 100644
--- a/pkgs/applications/science/machine-learning/shogun/default.nix
+++ b/pkgs/applications/science/machine-learning/shogun/default.nix
@@ -2,7 +2,7 @@
 # data, compression
 , bzip2, curl, hdf5, json_c, lzma, lzo, protobuf, snappy
 # maths
-, openblasCompat, eigen, nlopt, lp_solve, colpack, liblapack, glpk
+, blas, lapack, eigen, nlopt, lp_solve, colpack, glpk
 # libraries
 , libarchive, libxml2
 # extra support
@@ -13,6 +13,8 @@
 assert pythonSupport -> pythonPackages != null;
 assert opencvSupport -> opencv != null;
 
+assert (!blas.isILP64) && (!lapack.isILP64);
+
 let
   pname = "shogun";
   version = "6.1.4";
@@ -64,8 +66,8 @@ stdenv.mkDerivation rec {
   CCACHE_DIR=".ccache";
 
   buildInputs = with lib; [
-      openblasCompat bzip2 cmake colpack curl ctags eigen hdf5 json_c lp_solve lzma lzo
-      protobuf nlopt snappy swig (libarchive.dev) libxml2 liblapack glpk
+      blas lapack bzip2 cmake colpack curl ctags eigen hdf5 json_c lp_solve lzma lzo
+      protobuf nlopt snappy swig (libarchive.dev) libxml2 lapack glpk
     ]
     ++ optionals (pythonSupport) (with pythonPackages; [ python ply numpy ])
     ++ optional  (opencvSupport) opencv;
diff --git a/pkgs/applications/science/machine-learning/streamlit/default.nix b/pkgs/applications/science/machine-learning/streamlit/default.nix
index c7bdf0f12a40..3856b8ec841a 100644
--- a/pkgs/applications/science/machine-learning/streamlit/default.nix
+++ b/pkgs/applications/science/machine-learning/streamlit/default.nix
@@ -25,7 +25,7 @@ buildPythonApplication rec {
   '';
 
   meta = with lib; {
-    homepage = https://streamlit.io/;
+    homepage = "https://streamlit.io/";
     description = "The fastest way to build custom ML tools";
     maintainers = with maintainers; [ yrashk ];
     license = licenses.asl20;
diff --git a/pkgs/applications/science/math/LiE/default.nix b/pkgs/applications/science/math/LiE/default.nix
index d59ec57c1a85..f5f3bb0a42b1 100644
--- a/pkgs/applications/science/math/LiE/default.nix
+++ b/pkgs/applications/science/math/LiE/default.nix
@@ -9,7 +9,7 @@ stdenv.mkDerivation {
 
   meta = {
     description = "A Computer algebra package for Lie group computations";
-    homepage = http://wwwmathlabo.univ-poitiers.fr/~maavl/LiE/;
+    homepage = "http://wwwmathlabo.univ-poitiers.fr/~maavl/LiE/";
     license = stdenv.lib.licenses.lgpl3; # see the website
 
     longDescription = ''
diff --git a/pkgs/applications/science/math/R/0001-Disable-test-pending-upstream-fix.patch b/pkgs/applications/science/math/R/0001-Disable-test-pending-upstream-fix.patch
deleted file mode 100644
index 7bf32df0b7a3..000000000000
--- a/pkgs/applications/science/math/R/0001-Disable-test-pending-upstream-fix.patch
+++ /dev/null
@@ -1,26 +0,0 @@
-From 85ede2cf452800710de136f4f864921d3bb9773c Mon Sep 17 00:00:00 2001
-From: Tom Hall <tahall256@protonmail.ch>
-Date: Fri, 21 Feb 2020 22:56:06 +0000
-Subject: [PATCH] Disable test pending upstream fix
-
-See https://bugs.r-project.org/bugzilla/show_bug.cgi?id=17718
----
- tests/reg-tests-1d.R | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/tests/reg-tests-1d.R b/tests/reg-tests-1d.R
-index 9b551a1fc8..18ce6027ed 100644
---- a/tests/reg-tests-1d.R
-+++ b/tests/reg-tests-1d.R
-@@ -3079,7 +3079,7 @@ stopifnot(exprs = {
-     x[1:52] %% 3 == 2:1
-    -x[1:52] %% 3 == 1:2
- }) # larger x suffer from cancellation (well, warning too early now):
--tools::assertWarning(x[60:68] %% 3)
-+#tools::assertWarning(x[60:68] %% 3)
- 
- 
- ## Hilmar Berger's on R-devel list: 'data.frame() == NULL' etc
--- 
-2.24.1
-
diff --git a/pkgs/applications/science/math/R/default.nix b/pkgs/applications/science/math/R/default.nix
index f613f94b9ccd..52da3b4a1ac9 100644
--- a/pkgs/applications/science/math/R/default.nix
+++ b/pkgs/applications/science/math/R/default.nix
@@ -1,6 +1,6 @@
 { stdenv, fetchurl, bzip2, gfortran, libX11, libXmu, libXt, libjpeg, libpng
-, libtiff, ncurses, pango, pcre, perl, readline, tcl, texLive, tk, xz, zlib
-, less, texinfo, graphviz, icu, pkgconfig, bison, imake, which, jdk, openblas
+, libtiff, ncurses, pango, pcre2, perl, readline, tcl, texLive, tk, xz, zlib
+, less, texinfo, graphviz, icu, pkgconfig, bison, imake, which, jdk, blas, lapack
 , curl, Cocoa, Foundation, libobjc, libcxx, tzdata, fetchpatch
 , withRecommendedPackages ? true
 , enableStrictBarrier ? false
@@ -9,28 +9,27 @@
 , static ? false
 }:
 
+assert (!blas.isILP64) && (!lapack.isILP64);
+
 stdenv.mkDerivation rec {
-  name = "R-3.6.2";
+  name = "R-4.0.0";
 
   src = fetchurl {
-    url = "https://cran.r-project.org/src/base/R-3/${name}.tar.gz";
-    sha256 = "0m69pfi0nxyriyb2yz74xfzaxwfkinnf9kpvf1rz727vvmfa8rdx";
+    url = "https://cran.r-project.org/src/base/R-4/${name}.tar.gz";
+    sha256 = "0h1995smlyiyhx7gpg9paxsfqrcn6g9bbp5h9r47i6an3clv1gh6";
   };
 
   dontUseImakeConfigure = true;
 
   buildInputs = [
     bzip2 gfortran libX11 libXmu libXt libXt libjpeg libpng libtiff ncurses
-    pango pcre perl readline texLive xz zlib less texinfo graphviz icu
-    pkgconfig bison imake which openblas curl tcl tk jdk
+    pango pcre2 perl readline texLive xz zlib less texinfo graphviz icu
+    pkgconfig bison imake which blas lapack curl tcl tk jdk
   ] ++ stdenv.lib.optionals stdenv.isDarwin [ Cocoa Foundation libobjc libcxx ];
 
   patches = [
     ./no-usr-local-search-paths.patch
-  ] ++ stdenv.lib.optionals stdenv.hostPlatform.isAarch64 [
-    # Remove a test which fails on aarch64.
-    # See https://bugs.r-project.org/bugzilla/show_bug.cgi?id=17718
-    ./0001-Disable-test-pending-upstream-fix.patch
+    ./fix-failing-test.patch
   ];
 
   prePatch = stdenv.lib.optionalString stdenv.isDarwin ''
@@ -43,8 +42,8 @@ stdenv.mkDerivation rec {
     configureFlagsArray=(
       --disable-lto
       --with${stdenv.lib.optionalString (!withRecommendedPackages) "out"}-recommended-packages
-      --with-blas="-L${openblas}/lib -lopenblas"
-      --with-lapack="-L${openblas}/lib -lopenblas"
+      --with-blas="-L${blas}/lib -lblas"
+      --with-lapack="-L${lapack}/lib -llapack"
       --with-readline
       --with-tcltk --with-tcl-config="${tcl}/lib/tclConfig.sh" --with-tk-config="${tk}/lib/tkConfig.sh"
       --with-cairo
@@ -88,7 +87,7 @@ stdenv.mkDerivation rec {
   setupHook = ./setup-hook.sh;
 
   meta = with stdenv.lib; {
-    homepage = http://www.r-project.org/;
+    homepage = "http://www.r-project.org/";
     description = "Free software environment for statistical computing and graphics";
     license = licenses.gpl2Plus;
 
diff --git a/pkgs/applications/science/math/R/fix-failing-test.patch b/pkgs/applications/science/math/R/fix-failing-test.patch
new file mode 100644
index 000000000000..5fb3b3b9c317
--- /dev/null
+++ b/pkgs/applications/science/math/R/fix-failing-test.patch
@@ -0,0 +1,25 @@
+From e8f54bc562eb301d204b5f880614be58a2b39a2b Mon Sep 17 00:00:00 2001
+From: maechler <maechler@00db46b3-68df-0310-9c12-caf00c1e9a41>
+Date: Mon, 30 Mar 2020 19:15:59 +0000
+Subject: [PATCH] no longer fail in norm() check for broken OpenBLAS Lapack
+ 3.9.0
+
+git-svn-id: https://svn.r-project.org/R/trunk@78112 00db46b3-68df-0310-9c12-caf00c1e9a41
+---
+ tests/reg-tests-1d.R | 3 ++-
+ 1 file changed, 2 insertions(+), 1 deletion(-)
+
+diff --git a/tests/reg-tests-1d.R b/tests/reg-tests-1d.R
+index 6b7de765a95..fafd6911e7a 100644
+--- a/tests/reg-tests-1d.R
++++ b/tests/reg-tests-1d.R
+@@ -3836,7 +3836,8 @@ stopifnot(is.na( norm(diag(c(1, NA)), "2") ))
+ ## norm(<matrix-w-NA>, "F")
+ (m <- cbind(0, c(NA, 0), 0:-1))
+ nTypes <- eval(formals(base::norm)$type) # "O" "I" "F" "M" "2"
+-stopifnot(is.na( print(vapply(nTypes, norm, 0., x = m)) )) # print(): show NA *or* NaN
++print( # stopifnot( -- for now, as Lapack is still broken in some OpenBLAS -- FIXME
++    is.na( print(vapply(nTypes, norm, 0., x = m)) )) # print(): show NA *or* NaN
+ ## "F" gave non-NA with LAPACK 3.9.0, before our patch in R-devel and R-patched
+ 
+ 
diff --git a/pkgs/applications/science/math/almonds/default.nix b/pkgs/applications/science/math/almonds/default.nix
index b5d9632c551d..9edb0747b31e 100644
--- a/pkgs/applications/science/math/almonds/default.nix
+++ b/pkgs/applications/science/math/almonds/default.nix
@@ -19,7 +19,7 @@ with python3.pkgs; buildPythonApplication rec {
 
   meta = with stdenv.lib; {
     description = "Terminal Mandelbrot fractal viewer";
-    homepage = https://github.com/Tenchi2xh/Almonds;
+    homepage = "https://github.com/Tenchi2xh/Almonds";
     license = licenses.mit;
     maintainers = with maintainers; [ infinisil ];
   };
diff --git a/pkgs/applications/science/math/bcal/default.nix b/pkgs/applications/science/math/bcal/default.nix
index 74adcab4e705..18b6e051b3f2 100644
--- a/pkgs/applications/science/math/bcal/default.nix
+++ b/pkgs/applications/science/math/bcal/default.nix
@@ -26,7 +26,7 @@ stdenv.mkDerivation rec {
 
   meta = {
     description = "Storage conversion and expression calculator";
-    homepage = https://github.com/jarun/bcal;
+    homepage = "https://github.com/jarun/bcal";
     license = licenses.gpl3;
     platforms = [ "aarch64-linux" "x86_64-darwin" "x86_64-linux" ];
     maintainers = with maintainers; [ jfrankenau ];
diff --git a/pkgs/applications/science/math/bliss/default.nix b/pkgs/applications/science/math/bliss/default.nix
index 37504fceb141..361b08846626 100644
--- a/pkgs/applications/science/math/bliss/default.nix
+++ b/pkgs/applications/science/math/bliss/default.nix
@@ -30,7 +30,7 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "bliss is an open source tool for computing automorphism groups and canonical forms of graphs. It has both a command line user interface as well as C++ and C programming language APIs.";
-    homepage = http://www.tcs.hut.fi/Software/bliss/;
+    homepage = "http://www.tcs.hut.fi/Software/bliss/";
     license = licenses.lgpl3;
     platforms = [ "i686-linux" "x86_64-linux" ];
   };
diff --git a/pkgs/applications/science/math/caffe/default.nix b/pkgs/applications/science/math/caffe/default.nix
index 5068abbf3076..4a6a2dc6c7e0 100644
--- a/pkgs/applications/science/math/caffe/default.nix
+++ b/pkgs/applications/science/math/caffe/default.nix
@@ -9,7 +9,7 @@
 , opencv3
 , protobuf
 , doxygen
-, openblas
+, blas
 , Accelerate, CoreGraphics, CoreVideo
 , lmdbSupport ? true, lmdb
 , leveldbSupport ? true, leveldb, snappy
@@ -63,7 +63,7 @@ stdenv.mkDerivation rec {
       ++ ["-DUSE_LEVELDB=${toggle leveldbSupport}"]
       ++ ["-DUSE_LMDB=${toggle lmdbSupport}"];
 
-  buildInputs = [ boost gflags glog protobuf hdf5-cpp opencv3 openblas ]
+  buildInputs = [ boost gflags glog protobuf hdf5-cpp opencv3 blas ]
                 ++ lib.optional cudaSupport cudatoolkit
                 ++ lib.optional cudnnSupport cudnn
                 ++ lib.optional lmdbSupport lmdb
@@ -134,7 +134,7 @@ stdenv.mkDerivation rec {
       modularity in mind. It is developed by the Berkeley Vision and Learning
       Center (BVLC) and by community contributors.
     '';
-    homepage = http://caffe.berkeleyvision.org/;
+    homepage = "http://caffe.berkeleyvision.org/";
     maintainers = with maintainers; [ jb55 ];
     license = licenses.bsd2;
     platforms = platforms.linux ++ platforms.darwin;
diff --git a/pkgs/applications/science/math/calc/default.nix b/pkgs/applications/science/math/calc/default.nix
index 0d149eca3b63..8e50f48b286b 100644
--- a/pkgs/applications/science/math/calc/default.nix
+++ b/pkgs/applications/science/math/calc/default.nix
@@ -40,7 +40,7 @@ stdenv.mkDerivation rec {
 
   meta = with lib; {
     description = "C-style arbitrary precision calculator";
-    homepage = http://www.isthe.com/chongo/tech/comp/calc/;
+    homepage = "http://www.isthe.com/chongo/tech/comp/calc/";
     license = licenses.lgpl21;
     maintainers = with maintainers; [ matthewbauer ];
     platforms = platforms.all;
diff --git a/pkgs/applications/science/math/calculix/calculix.patch b/pkgs/applications/science/math/calculix/calculix.patch
index 311421f2ef54..5b8f492a8e7c 100644
--- a/pkgs/applications/science/math/calculix/calculix.patch
+++ b/pkgs/applications/science/math/calculix/calculix.patch
@@ -15,7 +15,7 @@ index 9cab2fc..6e977b8 100755
  OCCXMAIN = $(SCCXMAIN:.c=.o)
  
 -DIR=../../../SPOOLES.2.2
-+LIBS = -lpthread -lm -lc -lspooles -larpack -lopenblas
++LIBS = -lpthread -lm -lc -lspooles -larpack -lblas -llapack
  
 -LIBS = \
 -       $(DIR)/spooles.a \
diff --git a/pkgs/applications/science/math/calculix/default.nix b/pkgs/applications/science/math/calculix/default.nix
index 6f2d61cd80f0..44882594550b 100644
--- a/pkgs/applications/science/math/calculix/default.nix
+++ b/pkgs/applications/science/math/calculix/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchurl, gfortran, arpack, spooles, openblas }:
+{ stdenv, fetchurl, gfortran, arpack, spooles, blas, lapack }:
 
 stdenv.mkDerivation rec {
   pname = "calculix";
@@ -11,7 +11,7 @@ stdenv.mkDerivation rec {
 
   nativeBuildInputs = [ gfortran ];
 
-  buildInputs = [ arpack spooles openblas ];
+  buildInputs = [ arpack spooles blas lapack ];
 
   NIX_CFLAGS_COMPILE = "-I${spooles}/include/spooles";
 
diff --git a/pkgs/applications/science/math/cbc/default.nix b/pkgs/applications/science/math/cbc/default.nix
index e68ceb379b04..b75f3d3f7868 100644
--- a/pkgs/applications/science/math/cbc/default.nix
+++ b/pkgs/applications/science/math/cbc/default.nix
@@ -20,7 +20,7 @@ stdenv.mkDerivation rec {
   # FIXME: move share/coin/Data to a separate output?
 
   meta = {
-    homepage = https://projects.coin-or.org/Cbc;
+    homepage = "https://projects.coin-or.org/Cbc";
     license = lib.licenses.epl10;
     maintainers = [ lib.maintainers.eelco ];
     platforms = lib.platforms.linux ++ lib.platforms.darwin;
diff --git a/pkgs/applications/science/math/cemu/default.nix b/pkgs/applications/science/math/cemu/default.nix
new file mode 100644
index 000000000000..b41135229dd7
--- /dev/null
+++ b/pkgs/applications/science/math/cemu/default.nix
@@ -0,0 +1,53 @@
+{ fetchFromGitHub
+, stdenv
+, mkDerivation
+, SDL2
+, libGL
+, libarchive
+, libusb-compat-0_1
+, qtbase
+, qmake
+, git
+, libpng_apng
+, pkgconfig
+}:
+
+mkDerivation rec {
+  pname = "CEmu";
+  version = "1.3";
+  src = fetchFromGitHub {
+    owner = "CE-Programming";
+    repo = "CEmu";
+    rev = "v${version}";
+    sha256 = "1wcdnzcqscawj6jfdj5wwmw9g9vsd6a1rx0rrramakxzf8b7g47r";
+    fetchSubmodules = true;
+  };
+
+  nativeBuildInputs = [
+    qmake
+    git
+    pkgconfig
+  ];
+
+  buildInputs = [
+    SDL2
+    libGL
+    libarchive
+    libusb-compat-0_1
+    qtbase
+    libpng_apng
+  ];
+
+  qmakeFlags = [
+    "gui/qt"
+  ];
+
+  meta = with stdenv.lib; {
+    changelog = "https://github.com/CE-Programming/CEmu/releases/tag/v${version}";
+    description = "Third-party TI-84 Plus CE / TI-83 Premium CE emulator, focused on developer features";
+    homepage = "https://ce-programming.github.io/CEmu";
+    license = licenses.gpl3;
+    maintainers = with maintainers; [ luc65r ];
+    platforms = [ "x86_64-linux" "x86_64-darwin" ];
+  };
+}
diff --git a/pkgs/applications/science/math/cntk/default.nix b/pkgs/applications/science/math/cntk/default.nix
index ceb87b25ba85..401454a6b69b 100644
--- a/pkgs/applications/science/math/cntk/default.nix
+++ b/pkgs/applications/science/math/cntk/default.nix
@@ -1,11 +1,12 @@
 { lib, stdenv, fetchgit, fetchFromGitHub, cmake
-, openblas, opencv3, libzip, boost, protobuf, openmpi
+, openblas, blas, lapack, opencv3, libzip, boost, protobuf, openmpi
 , onebitSGDSupport ? false
 , cudaSupport ? false, addOpenGLRunpath, cudatoolkit, nvidia_x11
 , cudnnSupport ? cudaSupport, cudnn
 }:
 
 assert cudnnSupport -> cudaSupport;
+assert blas.implementation == "openblas" && lapack.implementation == "openblas";
 
 let
   # Old specific version required for CNTK.
@@ -95,7 +96,7 @@ in stdenv.mkDerivation rec {
     # Newer cub is included with cudatoolkit now and it breaks the build.
     # https://github.com/Microsoft/CNTK/issues/3191
     broken = cudaSupport;
-    homepage = https://github.com/Microsoft/CNTK;
+    homepage = "https://github.com/Microsoft/CNTK";
     description = "An open source deep-learning toolkit";
     license = if onebitSGDSupport then licenses.unfreeRedistributable else licenses.mit;
     platforms = [ "x86_64-linux" ];
diff --git a/pkgs/applications/science/math/csdp/default.nix b/pkgs/applications/science/math/csdp/default.nix
index 9b402fe0ac94..ef9d5e733ca7 100644
--- a/pkgs/applications/science/math/csdp/default.nix
+++ b/pkgs/applications/science/math/csdp/default.nix
@@ -1,4 +1,4 @@
-{ lib, stdenv, fetchurl, blas, gfortran, liblapack }:
+{ lib, stdenv, fetchurl, blas, gfortran, lapack }:
 
 stdenv.mkDerivation {
   name = "csdp-6.1.1";
@@ -8,7 +8,7 @@ stdenv.mkDerivation {
     sha256 = "1f9ql6cjy2gwiyc51ylfan24v1ca9sjajxkbhszlds1lqmma8n05";
   };
 
-  buildInputs = [ blas gfortran.cc.lib liblapack ];
+  buildInputs = [ blas gfortran.cc.lib lapack ];
 
   postPatch = ''
     substituteInPlace Makefile --replace /usr/local/bin $out/bin
@@ -20,7 +20,7 @@ stdenv.mkDerivation {
   '';
 
   meta = {
-    homepage = https://projects.coin-or.org/Csdp;
+    homepage = "https://projects.coin-or.org/Csdp";
     license = lib.licenses.cpl10;
     maintainers = [ lib.maintainers.roconnor ];
     description = "A C Library for Semidefinite Programming";
diff --git a/pkgs/applications/science/math/ecm/default.nix b/pkgs/applications/science/math/ecm/default.nix
index 7b768f7077e7..3e8e5879950b 100644
--- a/pkgs/applications/science/math/ecm/default.nix
+++ b/pkgs/applications/science/math/ecm/default.nix
@@ -24,7 +24,7 @@ stdenv.mkDerivation {
   meta = {
     description = "Elliptic Curve Method for Integer Factorization";
     license = stdenv.lib.licenses.gpl2Plus;
-    homepage = http://ecm.gforge.inria.fr/;
+    homepage = "http://ecm.gforge.inria.fr/";
     maintainers = [ stdenv.lib.maintainers.roconnor ];
     platforms = with stdenv.lib.platforms; linux ++ darwin;
   };
diff --git a/pkgs/applications/science/math/eukleides/default.nix b/pkgs/applications/science/math/eukleides/default.nix
index 6d1c778d1e0e..879ad96a9367 100644
--- a/pkgs/applications/science/math/eukleides/default.nix
+++ b/pkgs/applications/science/math/eukleides/default.nix
@@ -19,7 +19,7 @@ stdenv.mkDerivation {
 
   meta = {
     description = "Geometry Drawing Language";
-    homepage = http://www.eukleides.org/;
+    homepage = "http://www.eukleides.org/";
     license = stdenv.lib.licenses.gpl2;
 
     longDescription = ''
diff --git a/pkgs/applications/science/math/form/default.nix b/pkgs/applications/science/math/form/default.nix
index 0dbafebf2c06..091372792901 100644
--- a/pkgs/applications/science/math/form/default.nix
+++ b/pkgs/applications/science/math/form/default.nix
@@ -14,7 +14,7 @@ stdenv.mkDerivation {
 
   meta = with stdenv.lib; {
     description = "The FORM project for symbolic manipulation of very big expressions";
-    homepage = https://www.nikhef.nl/~form/;
+    homepage = "https://www.nikhef.nl/~form/";
     license = licenses.gpl3;
     maintainers = [ maintainers.veprbl ];
     platforms = platforms.unix;
diff --git a/pkgs/applications/science/math/fricas/default.nix b/pkgs/applications/science/math/fricas/default.nix
index 7d1f738641a6..39ca53c47e6e 100644
--- a/pkgs/applications/science/math/fricas/default.nix
+++ b/pkgs/applications/science/math/fricas/default.nix
@@ -17,7 +17,7 @@ stdenv.mkDerivation {
   dontStrip = true;
 
   meta = {
-    homepage = http://fricas.sourceforge.net/;
+    homepage = "http://fricas.sourceforge.net/";
     description = "An advanced computer algebra system";
     license = stdenv.lib.licenses.bsd3;
 
diff --git a/pkgs/applications/science/math/gap/default.nix b/pkgs/applications/science/math/gap/default.nix
index 7eb10d1f9525..87f4fa120387 100644
--- a/pkgs/applications/science/math/gap/default.nix
+++ b/pkgs/applications/science/math/gap/default.nix
@@ -175,6 +175,6 @@ stdenv.mkDerivation rec {
     # is reasonable and that way the binary cache doesn't get overloaded.
     hydraPlatforms = lib.optionals (!keepAllPackages) meta.platforms;
     license = licenses.gpl2;
-    homepage = http://gap-system.org/;
+    homepage = "http://gap-system.org/";
   };
 }
diff --git a/pkgs/applications/science/math/geogebra/default.nix b/pkgs/applications/science/math/geogebra/default.nix
index de84d35c2e89..1dd92267a837 100644
--- a/pkgs/applications/science/math/geogebra/default.nix
+++ b/pkgs/applications/science/math/geogebra/default.nix
@@ -2,7 +2,7 @@
 
 stdenv.mkDerivation rec {
   pname = "geogebra";
-  version = "5-0-573-0";
+  version = "5-0-574-0";
 
   preferLocalBuild = true;
 
@@ -11,7 +11,7 @@ stdenv.mkDerivation rec {
       "https://download.geogebra.org/installers/5.0/GeoGebra-Linux-Portable-${version}.tar.bz2"
       "http://web.archive.org/https://download.geogebra.org/installers/5.0/GeoGebra-Linux-Portable-${version}.tar.bz2"
     ];
-    sha256 = "0lj0k49sjsjqs716n74xbq6a4gids5903f5s6fhqyahrwyldhzrj";
+    sha256 = "0jbci4spqkf33yb079lsnsc684y4mdf1p8lm9r0037av8jlsrgrc";
   };
 
   srcIcon = fetchurl {
@@ -54,7 +54,7 @@ stdenv.mkDerivation rec {
       together geometry, algebra, spreadsheets, graphing, statistics and
       calculus in one easy-to-use package.
     '';
-    homepage = https://www.geogebra.org/;
+    homepage = "https://www.geogebra.org/";
     maintainers = with maintainers; [ ma27 ];
     license = with licenses; [ gpl3 cc-by-nc-sa-30 geogebra ];
     platforms = platforms.all;
diff --git a/pkgs/applications/science/math/getdp/default.nix b/pkgs/applications/science/math/getdp/default.nix
index 3ccd89cf2c13..ae93e89f1416 100644
--- a/pkgs/applications/science/math/getdp/default.nix
+++ b/pkgs/applications/science/math/getdp/default.nix
@@ -1,24 +1,27 @@
-{ stdenv, fetchurl, cmake, gfortran, openblas, openmpi, python3 }:
+{ stdenv, fetchurl, cmake, gfortran, blas, lapack, openmpi, petsc, python3 }:
 
 stdenv.mkDerivation rec {
-  pname = "getdp";
-  version = "3.0.4";
+  name = "getdp-${version}";
+  version = "3.3.0";
   src = fetchurl {
     url = "http://getdp.info/src/getdp-${version}-source.tgz";
-    sha256 = "0v3hg03lzw4hz28hm45hpv0gyydqz0wav7xvb5n0v0jrm47mrspv";
+    sha256 = "1pfviy2bw8z5y6c15czvlvyjjg9pvpgrj9fr54xfi2gmvs7zkgpf";
   };
 
-  nativeBuildInputs = [ cmake ];
-  buildInputs = [ gfortran openblas openmpi python3 ];
+  nativeBuildInputs = [ cmake gfortran ];
+  buildInputs = [ blas lapack openmpi petsc python3 ];
 
   meta = with stdenv.lib; {
     description = "A General Environment for the Treatment of Discrete Problems";
     longDescription = ''
-      GetDP is a free finite element solver using mixed elements to discretize de Rham-type complexes in one, two and three dimensions.
-      The main feature of GetDP is the closeness between the input data defining discrete problems (written by the user in ASCII data files) and the symbolic mathematical expressions of these problems.
+      GetDP is a free finite element solver using mixed elements to discretize
+      de Rham-type complexes in one, two and three dimensions.  The main
+      feature of GetDP is the closeness between the input data defining
+      discrete problems (written by the user in ASCII data files) and the
+      symbolic mathematical expressions of these problems.
     '';
-    homepage = http://getdp.info/;
-    license = stdenv.lib.licenses.gpl2Plus;
+    homepage = "http://getdp.info/";
+    license = licenses.gpl2Plus;
     maintainers = with maintainers; [ wucke13 ];
     platforms = platforms.linux;
   };
diff --git a/pkgs/applications/science/math/gfan/default.nix b/pkgs/applications/science/math/gfan/default.nix
index 33b003b2b562..72d1a548c530 100644
--- a/pkgs/applications/science/math/gfan/default.nix
+++ b/pkgs/applications/science/math/gfan/default.nix
@@ -22,6 +22,6 @@ stdenv.mkDerivation rec {
     license = stdenv.lib.licenses.gpl2 ;
     maintainers = [stdenv.lib.maintainers.raskin];
     platforms = stdenv.lib.platforms.unix;
-    homepage = http://home.math.au.dk/jensen/software/gfan/gfan.html;
+    homepage = "http://home.math.au.dk/jensen/software/gfan/gfan.html";
   };
 }
diff --git a/pkgs/applications/science/math/giac/default.nix b/pkgs/applications/science/math/giac/default.nix
index b3777528ecda..ea9c921f19e1 100644
--- a/pkgs/applications/science/math/giac/default.nix
+++ b/pkgs/applications/science/math/giac/default.nix
@@ -1,10 +1,11 @@
-{ stdenv, lib, fetchurl, fetchpatch, texlive, bison, flex, liblapack
-, gmp, mpfr, pari, ntl, gsl, blas, mpfi, ecm, glpk, nauty
+{ stdenv, lib, fetchurl, fetchpatch, texlive, bison, flex, lapack, blas
+, gmp, mpfr, pari, ntl, gsl, mpfi, ecm, glpk, nauty
 , readline, gettext, libpng, libao, gfortran, perl
 , enableGUI ? false, libGL ? null, libGLU ? null, xorg ? null, fltk ? null
 }:
 
 assert enableGUI -> libGLU != null && libGL != null && xorg != null && fltk != null;
+assert (!blas.isILP64) && (!lapack.isILP64);
 
 stdenv.mkDerivation rec {
   pname = "giac${lib.optionalString enableGUI "-with-xcas"}";
@@ -41,7 +42,7 @@ stdenv.mkDerivation rec {
     # gfortran.cc default output contains static libraries compiled without -fPIC
     # we want libgfortran.so.3 instead
     (stdenv.lib.getLib gfortran.cc)
-    liblapack
+    lapack blas
   ] ++ stdenv.lib.optionals enableGUI [
     libGL libGLU fltk xorg.libX11
   ];
diff --git a/pkgs/applications/science/math/ginac/default.nix b/pkgs/applications/science/math/ginac/default.nix
index 79f20f06b295..701445f90100 100644
--- a/pkgs/applications/science/math/ginac/default.nix
+++ b/pkgs/applications/science/math/ginac/default.nix
@@ -1,11 +1,11 @@
 { stdenv, fetchurl, cln, pkgconfig, readline, gmp, python }:
 
 stdenv.mkDerivation rec {
-  name = "ginac-1.7.8";
+  name = "ginac-1.7.9";
 
   src = fetchurl {
     url    = "${meta.homepage}/${name}.tar.bz2";
-    sha256 = "0rvhdagmrs8ynnylwnxnmmfz1j9zk1g2rr7w6xczsbn7lqd511hc";
+    sha256 = "08cqc87qq4w6z3l053x5gfqsa4zkgkicq8skxsbsj39nli1zzkb7";
   };
 
   propagatedBuildInputs = [ cln ];
@@ -20,7 +20,7 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "GiNaC is Not a CAS";
-    homepage    = http://www.ginac.de/;
+    homepage    = "http://www.ginac.de/";
     maintainers = with maintainers; [ lovek323 ];
     license = licenses.gpl2;
     platforms   = platforms.all;
diff --git a/pkgs/applications/science/math/glsurf/default.nix b/pkgs/applications/science/math/glsurf/default.nix
index c11110e4bc49..09d0d5241687 100644
--- a/pkgs/applications/science/math/glsurf/default.nix
+++ b/pkgs/applications/science/math/glsurf/default.nix
@@ -24,7 +24,7 @@ stdenv.mkDerivation {
   '';
 
   meta = {
-    homepage = https://raffalli.eu/~christophe/glsurf/;
+    homepage = "https://raffalli.eu/~christophe/glsurf/";
     description = "A program to draw implicit surfaces and curves";
     license = stdenv.lib.licenses.lgpl21;
   };
diff --git a/pkgs/applications/science/math/gmsh/default.nix b/pkgs/applications/science/math/gmsh/default.nix
index e55bcd8fe218..946beff8003f 100644
--- a/pkgs/applications/science/math/gmsh/default.nix
+++ b/pkgs/applications/science/math/gmsh/default.nix
@@ -1,16 +1,18 @@
-{ stdenv, fetchurl, cmake, openblasCompat, gfortran, gmm, fltk, libjpeg
+{ stdenv, fetchurl, cmake, blas, lapack, gfortran, gmm, fltk, libjpeg
 , zlib, libGL, libGLU, xorg, opencascade-occt }:
 
+assert (!blas.isILP64) && (!lapack.isILP64);
+
 stdenv.mkDerivation rec {
   pname = "gmsh";
-  version = "4.5.2";
+  version = "4.5.6";
 
   src = fetchurl {
     url = "http://gmsh.info/src/gmsh-${version}-source.tgz";
-    sha256 = "10i6i1s68lkccnl73lzr04cf1hc5rd8b7dpiaxs1vzrj1ljgw801";
+    sha256 = "0gs65bgr1ph5lz7r6manqj8cra30s7c94pxilkd2z0p5vq6fpsj6";
   };
 
-  buildInputs = [ openblasCompat gmm fltk libjpeg zlib libGLU libGL
+  buildInputs = [ blas lapack gmm fltk libjpeg zlib libGLU libGL
     libGLU xorg.libXrender xorg.libXcursor xorg.libXfixes xorg.libXext
     xorg.libXft xorg.libXinerama xorg.libX11 xorg.libSM xorg.libICE
     opencascade-occt
diff --git a/pkgs/applications/science/math/gurobi/default.nix b/pkgs/applications/science/math/gurobi/default.nix
index 4ac7c411c2dc..1aa7bce07c5d 100644
--- a/pkgs/applications/science/math/gurobi/default.nix
+++ b/pkgs/applications/science/math/gurobi/default.nix
@@ -50,7 +50,7 @@ in stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "Optimization solver for mathematical programming";
-    homepage = https://www.gurobi.com;
+    homepage = "https://www.gurobi.com";
     license = licenses.unfree;
     platforms = [ "x86_64-linux" ];
     maintainers = with maintainers; [ jfrankenau ];
diff --git a/pkgs/applications/science/math/hmetis/default.nix b/pkgs/applications/science/math/hmetis/default.nix
index 45a13d028894..b5e99a8dd75b 100644
--- a/pkgs/applications/science/math/hmetis/default.nix
+++ b/pkgs/applications/science/math/hmetis/default.nix
@@ -35,7 +35,7 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "hMETIS is a set of programs for partitioning hypergraphs";
-    homepage = http://glaros.dtc.umn.edu/gkhome/metis/hmetis/overview;
+    homepage = "http://glaros.dtc.umn.edu/gkhome/metis/hmetis/overview";
     license = licenses.unfree;
     platforms = [ "i686-linux" "x86_64-linux" ];
   };
diff --git a/pkgs/applications/science/math/jags/default.nix b/pkgs/applications/science/math/jags/default.nix
index 1d1fb96a4739..122c62888476 100644
--- a/pkgs/applications/science/math/jags/default.nix
+++ b/pkgs/applications/science/math/jags/default.nix
@@ -1,4 +1,4 @@
-{stdenv, fetchurl, gfortran, openblas}:
+{stdenv, fetchurl, gfortran, blas, lapack}:
 
 stdenv.mkDerivation rec {
   name = "JAGS-4.3.0";
@@ -6,13 +6,13 @@ stdenv.mkDerivation rec {
     url = "mirror://sourceforge/mcmc-jags/${name}.tar.gz";
     sha256 = "1z3icccg2ic56vmhyrpinlsvpq7kcaflk1731rgpvz9bk1bxvica";
   };
-  buildInputs = [gfortran openblas];
-  configureFlags = [ "--with-blas=-lopenblas" "--with-lapack=-lopenblas" ];
+  buildInputs = [gfortran blas lapack];
+  configureFlags = [ "--with-blas=-lblas" "--with-lapack=-llapack" ];
 
   meta = with stdenv.lib; {
     description = "Just Another Gibbs Sampler";
     license     = licenses.gpl2;
-    homepage    = http://mcmc-jags.sourceforge.net;
+    homepage    = "http://mcmc-jags.sourceforge.net";
     maintainers = [ maintainers.andres ];
     platforms = platforms.unix;
   };
diff --git a/pkgs/applications/science/math/lrcalc/default.nix b/pkgs/applications/science/math/lrcalc/default.nix
index f407358d8f26..438a84c0e0be 100644
--- a/pkgs/applications/science/math/lrcalc/default.nix
+++ b/pkgs/applications/science/math/lrcalc/default.nix
@@ -32,7 +32,7 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "Littlewood-Richardson calculator";
-    homepage = http://math.rutgers.edu/~asbuch/lrcalc/;
+    homepage = "http://math.rutgers.edu/~asbuch/lrcalc/";
     license = licenses.gpl2Plus;
     maintainers = with maintainers; [ timokau ];
     platforms = platforms.unix;
diff --git a/pkgs/applications/science/math/mathematica/10.nix b/pkgs/applications/science/math/mathematica/10.nix
index 4204b1399137..277fb1984c44 100644
--- a/pkgs/applications/science/math/mathematica/10.nix
+++ b/pkgs/applications/science/math/mathematica/10.nix
@@ -8,7 +8,7 @@
 , gcc
 , glib
 , ncurses
-, opencv
+, opencv2
 , openssl
 , unixODBC
 , xorg
@@ -49,7 +49,7 @@ stdenv.mkDerivation rec {
     gcc.libc
     glib
     ncurses
-    opencv
+    opencv2
     openssl
     unixODBC
     libxml2
@@ -130,7 +130,7 @@ stdenv.mkDerivation rec {
 
   meta = {
     description = "Wolfram Mathematica computational software system";
-    homepage = http://www.wolfram.com/mathematica/;
+    homepage = "http://www.wolfram.com/mathematica/";
     license = stdenv.lib.licenses.unfree;
   };
 }
diff --git a/pkgs/applications/science/math/mathematica/11.nix b/pkgs/applications/science/math/mathematica/11.nix
index 521cb70099b9..1c698a5e5428 100644
--- a/pkgs/applications/science/math/mathematica/11.nix
+++ b/pkgs/applications/science/math/mathematica/11.nix
@@ -10,7 +10,7 @@
 , gcc
 , glib
 , ncurses
-, opencv
+, opencv2
 , openssl
 , unixODBC
 , xkeyboard_config
@@ -46,7 +46,7 @@ stdenv.mkDerivation rec {
     gcc.libc
     glib
     ncurses
-    opencv
+    opencv2
     openssl
     unixODBC
     xkeyboard_config
@@ -144,7 +144,7 @@ stdenv.mkDerivation rec {
 
   meta = {
     description = "Wolfram Mathematica computational software system";
-    homepage = http://www.wolfram.com/mathematica/;
+    homepage = "http://www.wolfram.com/mathematica/";
     license = stdenv.lib.licenses.unfree;
   };
 }
diff --git a/pkgs/applications/science/math/mathematica/9.nix b/pkgs/applications/science/math/mathematica/9.nix
index aaa1c02ec0a0..d0967485c01f 100644
--- a/pkgs/applications/science/math/mathematica/9.nix
+++ b/pkgs/applications/science/math/mathematica/9.nix
@@ -8,7 +8,7 @@
 , gcc
 , glib
 , ncurses
-, opencv
+, opencv2
 , openssl
 , unixODBC
 , xorg
@@ -46,7 +46,7 @@ stdenv.mkDerivation rec {
     gcc.libc
     glib
     ncurses
-    opencv
+    opencv2
     openssl
     unixODBC
   ] ++ (with xorg; [
@@ -116,7 +116,7 @@ stdenv.mkDerivation rec {
 
   meta = {
     description = "Wolfram Mathematica computational software system";
-    homepage = http://www.wolfram.com/mathematica/;
+    homepage = "http://www.wolfram.com/mathematica/";
     license = stdenv.lib.licenses.unfree;
   };
 }
diff --git a/pkgs/applications/science/math/mathematica/default.nix b/pkgs/applications/science/math/mathematica/default.nix
index 7cd1b2eb99fa..94d72eec6ae4 100644
--- a/pkgs/applications/science/math/mathematica/default.nix
+++ b/pkgs/applications/science/math/mathematica/default.nix
@@ -9,8 +9,9 @@
 , freetype
 , gcc
 , glib
+, libssh2
 , ncurses
-, opencv
+, opencv2
 , openssl
 , unixODBC
 , xkeyboard_config
@@ -44,9 +45,11 @@ stdenv.mkDerivation rec {
     gcc.cc
     gcc.libc
     glib
+    libssh2
     ncurses
-    opencv
+    opencv2
     openssl
+    stdenv.cc.cc.lib
     unixODBC
     xkeyboard_config
     libxml2
@@ -93,7 +96,7 @@ stdenv.mkDerivation rec {
     # Fix library paths
     cd $out/libexec/Mathematica/Executables
     for path in mathematica MathKernel Mathematica WolframKernel wolfram math; do
-      sed -i -e "2iexport LD_LIBRARY_PATH=${zlib}/lib:\''${LD_LIBRARY_PATH}\n" $path
+      sed -i -e "2iexport LD_LIBRARY_PATH=${zlib}/lib:${stdenv.cc.cc.lib}/lib:${libssh2}/lib:\''${LD_LIBRARY_PATH}\n" $path
     done
 
     # Fix xkeyboard config path for Qt
@@ -102,7 +105,7 @@ stdenv.mkDerivation rec {
     done
 
     # Remove some broken libraries
-    rm $out/libexec/Mathematica/SystemFiles/Libraries/Linux-x86-64/libz.so*
+    rm -f $out/libexec/Mathematica/SystemFiles/Libraries/Linux-x86-64/libz.so*
   '';
 
   preFixup = ''
@@ -145,7 +148,7 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "Wolfram Mathematica computational software system";
-    homepage = http://www.wolfram.com/mathematica/;
+    homepage = "http://www.wolfram.com/mathematica/";
     license = licenses.unfree;
     maintainers = with maintainers; [ herberteuler ];
     platforms = [ "x86_64-linux" ];
diff --git a/pkgs/applications/science/math/mathematica/l10ns.nix b/pkgs/applications/science/math/mathematica/l10ns.nix
index 51fb489be7ec..c75c91be059c 100644
--- a/pkgs/applications/science/math/mathematica/l10ns.nix
+++ b/pkgs/applications/science/math/mathematica/l10ns.nix
@@ -8,6 +8,12 @@ let allVersions = with lib; flip map
   # N.B. Versions in this list should be ordered from newest to oldest.
   [
     {
+      version = "12.1.0";
+      lang = "en";
+      language = "English";
+      sha256 = "15m9l20jvkxh5w6mbp81ys7mx2lx5j8acw5gz0il89lklclgb8z7";
+    }
+    {
       version = "12.0.0";
       lang = "en";
       language = "English";
diff --git a/pkgs/applications/science/math/maxima/5.41.nix b/pkgs/applications/science/math/maxima/5.41.nix
index 583391d08dde..829dffc6116e 100644
--- a/pkgs/applications/science/math/maxima/5.41.nix
+++ b/pkgs/applications/science/math/maxima/5.41.nix
@@ -86,7 +86,7 @@ stdenv.mkDerivation ({
 
   meta = {
     description = "Computer algebra system";
-    homepage = http://maxima.sourceforge.net;
+    homepage = "http://maxima.sourceforge.net";
     license = stdenv.lib.licenses.gpl2;
 
     longDescription = ''
diff --git a/pkgs/applications/science/math/maxima/default.nix b/pkgs/applications/science/math/maxima/default.nix
index 5843f38a74a8..49ff0d5d5a05 100644
--- a/pkgs/applications/science/math/maxima/default.nix
+++ b/pkgs/applications/science/math/maxima/default.nix
@@ -88,7 +88,7 @@ stdenv.mkDerivation ({
 
   meta = {
     description = "Computer algebra system";
-    homepage = http://maxima.sourceforge.net;
+    homepage = "http://maxima.sourceforge.net";
     license = stdenv.lib.licenses.gpl2;
 
     longDescription = ''
diff --git a/pkgs/applications/science/math/msieve/default.nix b/pkgs/applications/science/math/msieve/default.nix
index 643d990feb8d..db7a1c149068 100644
--- a/pkgs/applications/science/math/msieve/default.nix
+++ b/pkgs/applications/science/math/msieve/default.nix
@@ -4,7 +4,7 @@ stdenv.mkDerivation {
   name = "msieve-1.53";
 
   src = fetchurl {
-    url = mirror://sourceforge/msieve/msieve/Msieve%20v1.53/msieve153_src.tar.gz;
+    url = "mirror://sourceforge/msieve/msieve/Msieve%20v1.53/msieve153_src.tar.gz";
     sha256 = "1d1vv7j4rh3nnxsmvafi73qy7lw7n3akjlm5pjl3m936yapvmz65";
   };
 
@@ -23,7 +23,7 @@ stdenv.mkDerivation {
   meta = {
     description = "A C library implementing a suite of algorithms to factor large integers";
     license = stdenv.lib.licenses.publicDomain;
-    homepage = http://msieve.sourceforge.net/;
+    homepage = "http://msieve.sourceforge.net/";
     maintainers = [ stdenv.lib.maintainers.roconnor ];
     platforms = [ "x86_64-linux" ] ++ stdenv.lib.platforms.darwin;
   };
diff --git a/pkgs/applications/science/math/mxnet/default.nix b/pkgs/applications/science/math/mxnet/default.nix
index bd4725ce73c6..b006a9dd18d1 100644
--- a/pkgs/applications/science/math/mxnet/default.nix
+++ b/pkgs/applications/science/math/mxnet/default.nix
@@ -1,5 +1,5 @@
 { config, stdenv, lib, fetchurl, bash, cmake
-, opencv3, gtest, openblas, liblapack, perl
+, opencv3, gtest, blas, perl
 , cudaSupport ? config.cudaSupport or false, cudatoolkit, nvidia_x11
 , cudnnSupport ? cudaSupport, cudnn
 }:
@@ -8,16 +8,16 @@ assert cudnnSupport -> cudaSupport;
 
 stdenv.mkDerivation rec {
   pname = "mxnet";
-  version = "1.4.1";
+  version = "1.6.0";
 
   src = fetchurl {
     url = "https://github.com/apache/incubator-mxnet/releases/download/${version}/apache-mxnet-src-${version}-incubating.tar.gz";
-    sha256 = "1d0lhlpdaxycjzpwwrpgjd3v2q2ka89v5rr13ddxayy7ld2hxiaj";
+    sha256 = "1vvdb7pfh63kb9fzs6gqp95q550a3ck4cj9mqxlk9wwhkh30dsq1";
   };
 
   nativeBuildInputs = [ cmake perl ];
 
-  buildInputs = [ opencv3 gtest openblas liblapack ]
+  buildInputs = [ opencv3 gtest blas ]
               ++ lib.optionals cudaSupport [ cudatoolkit nvidia_x11 ]
               ++ lib.optional cudnnSupport cudnn;
 
@@ -34,7 +34,7 @@ stdenv.mkDerivation rec {
     substituteInPlace 3rdparty/mkldnn/tests/CMakeLists.txt \
       --replace "/bin/bash" "${bash}/bin/bash"
 
-    # Build against the system version of OpenMP. 
+    # Build against the system version of OpenMP.
     # https://github.com/apache/incubator-mxnet/pull/12160
     rm -rf 3rdparty/openmp
   '';
@@ -47,7 +47,7 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "Lightweight, Portable, Flexible Distributed/Mobile Deep Learning with Dynamic, Mutation-aware Dataflow Dep Scheduler";
-    homepage = https://mxnet.incubator.apache.org/;
+    homepage = "https://mxnet.incubator.apache.org/";
     maintainers = with maintainers; [ abbradar ];
     license = licenses.asl20;
     platforms = platforms.linux;
diff --git a/pkgs/applications/science/math/nasc/default.nix b/pkgs/applications/science/math/nasc/default.nix
index a49217859568..002acbf3875f 100644
--- a/pkgs/applications/science/math/nasc/default.nix
+++ b/pkgs/applications/science/math/nasc/default.nix
@@ -1,5 +1,6 @@
 { stdenv
 , fetchFromGitHub
+, fetchpatch
 , pkgconfig
 , vala
 , gtk3
@@ -25,6 +26,14 @@ stdenv.mkDerivation rec {
     sha256 = "036v3dx8yasp19j88lflibqnpfi5d0nk7qkcnr80zn1lvawf4wgn";
   };
 
+  patches = [
+    # fix build with gcc9
+    (fetchpatch {
+      url = "https://github.com/parnold-x/nasc/commit/46b9b80e228b6b86001bded45d85e073a9411549.patch";
+      sha256 = "1sm2aw0xhw2chk036r231nmp2f2ypxcmzggwljkn7wfzgg3h1mx3";
+    })
+  ];
+
   nativeBuildInputs = [
     cmake
     vala
@@ -53,7 +62,7 @@ stdenv.mkDerivation rec {
       answers in to future equations and if that answer changes, so does
       the equations it’s used in.
     '';
-    homepage = https://github.com/parnold-x/nasc;
+    homepage = "https://github.com/parnold-x/nasc";
     maintainers = with maintainers; [ samdroid-apps ];
     platforms = platforms.linux;
     license = licenses.gpl3Plus;
diff --git a/pkgs/applications/science/math/nauty/default.nix b/pkgs/applications/science/math/nauty/default.nix
index 986610eea60d..64cc4a9aa003 100644
--- a/pkgs/applications/science/math/nauty/default.nix
+++ b/pkgs/applications/science/math/nauty/default.nix
@@ -37,6 +37,6 @@ stdenv.mkDerivation rec {
     license = licenses.asl20;
     maintainers = with maintainers; [ raskin timokau ];
     platforms = platforms.unix;
-    homepage = http://pallini.di.uniroma1.it/;
+    homepage = "http://pallini.di.uniroma1.it/";
   };
 }
diff --git a/pkgs/applications/science/math/palp/default.nix b/pkgs/applications/science/math/palp/default.nix
index e9fd21b46d8a..4912b82d158f 100644
--- a/pkgs/applications/science/math/palp/default.nix
+++ b/pkgs/applications/science/math/palp/default.nix
@@ -4,10 +4,12 @@
 , doSymlink ? true # symlink the executables to the default location (without dimension postfix)
 }:
 
+let
+  dim = toString dimensions;
+in
 stdenv.mkDerivation rec {
+  pname = "palp";
   version = "2.1";
-  dim = toString dimensions;
-  name = "palp-${dim}d-${version}";
 
   src = fetchurl {
     url = "http://hep.itp.tuwien.ac.at/~kreuzer/CY/palp/palp-${version}.tar.gz";
@@ -75,7 +77,7 @@ stdenv.mkDerivation rec {
       algorithms work in any dimension and our key routine for vertex and
       facet enumeration compares well with existing packages.
     '';
-    homepage = http://hep.itp.tuwien.ac.at/~kreuzer/CY/CYpalp.html;
+    homepage = "http://hep.itp.tuwien.ac.at/~kreuzer/CY/CYpalp.html";
     # Just a link on the website pointing to gpl -- now gplv3. When the last
     # version was released that pointed to gplv2 however, so thats probably
     # the right license.
diff --git a/pkgs/applications/science/math/pari/default.nix b/pkgs/applications/science/math/pari/default.nix
index 89ae354e7c76..8b5176c94f69 100644
--- a/pkgs/applications/science/math/pari/default.nix
+++ b/pkgs/applications/science/math/pari/default.nix
@@ -1,5 +1,6 @@
 { stdenv
 , fetchurl
+, fetchpatch
 , gmp
 , readline
 , libX11
@@ -12,13 +13,22 @@ assert withThread -> libpthreadstubs != null;
 
 stdenv.mkDerivation rec {
   pname = "pari";
-  version = "2.11.2";
+  version = "2.11.3";
 
   src = fetchurl {
     url = "https://pari.math.u-bordeaux.fr/pub/pari/unix/${pname}-${version}.tar.gz";
-    sha256 = "0fck8ssmirl8fy7s4mspgrxjs5sag76xbshqlqzkcl3kqyrk4raa";
+    sha256 = "1jd65h2psrmba2dx7rkf5qidf9ka0cwbsg20pd18k45ggr30l467";
   };
 
+  patches = [
+    # https://trac.sagemath.org/ticket/29313#comment:1
+    (fetchpatch {
+      name = "backport-bug-fix.patch";
+      url = "https://git.archlinux.org/svntogit/community.git/plain/repos/community-x86_64/c7a1d35f.patch?h=packages/pari&id=27893d227290dc3821d68aa25877d9765c204dad";
+      sha256 = "0vm0fwyzj66cr32imip6srksd47s2s2sjl1rb26ph8gpfi3nalii";
+    })
+  ];
+
   buildInputs = [
     gmp
     readline
@@ -71,8 +81,8 @@ stdenv.mkDerivation rec {
           run 3 or 4 times faster.) gp2c currently only understands a subset
            of the GP language.
     '';
-    homepage    = http://pari.math.u-bordeaux.fr;
-    downloadPage = http://pari.math.u-bordeaux.fr/download.html;
+    homepage    = "http://pari.math.u-bordeaux.fr";
+    downloadPage = "http://pari.math.u-bordeaux.fr/download.html";
     license     = licenses.gpl2Plus;
     maintainers = with maintainers; [ ertes raskin AndersonTorres timokau ];
     platforms   = platforms.linux ++ platforms.darwin;
diff --git a/pkgs/applications/science/math/pari/gp2c.nix b/pkgs/applications/science/math/pari/gp2c.nix
index e743c8ae95b6..4fa63e8edabd 100644
--- a/pkgs/applications/science/math/pari/gp2c.nix
+++ b/pkgs/applications/science/math/pari/gp2c.nix
@@ -4,11 +4,11 @@
 stdenv.mkDerivation rec {
 
   pname = "gp2c";
-  version = "0.0.11pl2";
+  version = "0.0.11pl3";
 
   src = fetchurl {
     url = "https://pari.math.u-bordeaux.fr/pub/pari/GP2C/${pname}-${version}.tar.gz";
-    sha256 = "0wqsf05wgkqvmmsx7jinvzdqav6rl56sr8haibgs31nzz4x9xz9g";
+    sha256 = "0yymbrgyjw500hqgmkj5m4nmscd7c9rs9w2c96lxgrcyab8krhrm";
   };
 
   buildInputs = [ pari perl ];
@@ -25,4 +25,3 @@ stdenv.mkDerivation rec {
     maintainers = with maintainers; [ AndersonTorres ];
   };
 }
-# TODO: add it as "source file" for default package
diff --git a/pkgs/applications/science/math/pcalc/default.nix b/pkgs/applications/science/math/pcalc/default.nix
index 51c93f197e4f..f372357fe7d8 100644
--- a/pkgs/applications/science/math/pcalc/default.nix
+++ b/pkgs/applications/science/math/pcalc/default.nix
@@ -7,7 +7,7 @@ stdenv.mkDerivation rec {
   version = "20141224";
 
   src = fetchgit {
-    url = git://git.code.sf.net/p/pcalc/code;
+    url = "git://git.code.sf.net/p/pcalc/code";
     rev = "181d60d3c880da4344fef7138065943eb3b9255f";
     sha256 = "1hd5bh20j5xzvv6qa0fmzmv0h8sf38r7zgi7y0b6nk17pjq33v90";
   };
@@ -16,7 +16,7 @@ stdenv.mkDerivation rec {
   buildInputs = [ bison flex ];
 
   meta = {
-    homepage = http://pcalc.sourceforge.net/;
+    homepage = "http://pcalc.sourceforge.net/";
     description = "Programmer's calculator";
     license = licenses.gpl2;
     maintainers = with stdenv.lib.maintainers; [ ftrvxmtrx ];
diff --git a/pkgs/applications/science/math/perseus/default.nix b/pkgs/applications/science/math/perseus/default.nix
index 2d150d0c30e9..55293e6c8a79 100644
--- a/pkgs/applications/science/math/perseus/default.nix
+++ b/pkgs/applications/science/math/perseus/default.nix
@@ -32,7 +32,7 @@ stdenv.mkDerivation {
       around datasets arising from point samples, images, distance
       matrices and so forth.
     '';
-    homepage = http://www.sas.upenn.edu/~vnanda/perseus/index.html;
+    homepage = "http://www.sas.upenn.edu/~vnanda/perseus/index.html";
     license = stdenv.lib.licenses.gpl3;
     maintainers = with stdenv.lib.maintainers; [erikryb];
     platforms = stdenv.lib.platforms.linux;
diff --git a/pkgs/applications/science/math/pspp/default.nix b/pkgs/applications/science/math/pspp/default.nix
index af338c74fd41..95c2c3931b3c 100644
--- a/pkgs/applications/science/math/pspp/default.nix
+++ b/pkgs/applications/science/math/pspp/default.nix
@@ -32,7 +32,7 @@ stdenv.mkDerivation rec {
   '';
 
   meta = {
-    homepage = https://www.gnu.org/software/pspp/;
+    homepage = "https://www.gnu.org/software/pspp/";
     description = "A free replacement for SPSS, a program for statistical analysis of sampled data";
     license = stdenv.lib.licenses.gpl3Plus;
 
diff --git a/pkgs/applications/science/math/pynac/default.nix b/pkgs/applications/science/math/pynac/default.nix
index 4022383dbc7d..82e331216712 100644
--- a/pkgs/applications/science/math/pynac/default.nix
+++ b/pkgs/applications/science/math/pynac/default.nix
@@ -40,7 +40,7 @@ stdenv.mkDerivation rec {
       It is a lite version of GiNaC as well, not implementing all the features
       of the full GiNaC, and it is *only* meant to be used as a Python library.
     '';
-    homepage    = http://pynac.org;
+    homepage    = "http://pynac.org";
     license = licenses.gpl3;
     maintainers = with maintainers; [ timokau ];
     platforms   = platforms.unix;
diff --git a/pkgs/applications/science/math/qalculate-gtk/default.nix b/pkgs/applications/science/math/qalculate-gtk/default.nix
index 8370685f00a1..e393111590a8 100644
--- a/pkgs/applications/science/math/qalculate-gtk/default.nix
+++ b/pkgs/applications/science/math/qalculate-gtk/default.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation rec {
   pname = "qalculate-gtk";
-  version = "3.7.0";
+  version = "3.8.0a";
 
   src = fetchFromGitHub {
     owner = "qalculate";
     repo = "qalculate-gtk";
     rev = "v${version}";
-    sha256 = "1zzvxkpman75lxhhvyggwzvrlc6v0rd5ak76rmcny51i4xirmrc0";
+    sha256 = "0bjd61bbc5b2i09kz3ss01c0xmxrhmiv5wpbhhplkp3yhw2qrf3m";
   };
 
   patchPhase = ''
@@ -23,7 +23,7 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "The ultimate desktop calculator";
-    homepage = http://qalculate.github.io;
+    homepage = "http://qalculate.github.io";
     maintainers = with maintainers; [ gebner ];
     platforms = platforms.all;
   };
diff --git a/pkgs/applications/science/math/ratpoints/default.nix b/pkgs/applications/science/math/ratpoints/default.nix
index 71d16fb626cd..fb205a69f038 100644
--- a/pkgs/applications/science/math/ratpoints/default.nix
+++ b/pkgs/applications/science/math/ratpoints/default.nix
@@ -31,7 +31,7 @@ stdenv.mkDerivation rec {
     license = stdenv.lib.licenses.gpl2Plus;
     maintainers = [stdenv.lib.maintainers.raskin];
     platforms = stdenv.lib.platforms.unix;
-    homepage = http://www.mathe2.uni-bayreuth.de/stoll/programs/;
+    homepage = "http://www.mathe2.uni-bayreuth.de/stoll/programs/";
     updateWalker = true;
   };
 }
diff --git a/pkgs/applications/science/math/ries/default.nix b/pkgs/applications/science/math/ries/default.nix
index b244ee75b304..4adf3ef2096e 100644
--- a/pkgs/applications/science/math/ries/default.nix
+++ b/pkgs/applications/science/math/ries/default.nix
@@ -11,7 +11,7 @@ stdenv.mkDerivation {
   makeFlags = [ "PREFIX=$(out)" ];
 
   meta = with stdenv.lib; {
-    homepage = https://mrob.com/pub/ries/;
+    homepage = "https://mrob.com/pub/ries/";
     description = "Tool to produce a list of equations that approximately solve to a given number";
     platforms = platforms.all;
     maintainers = with maintainers; [ symphorien ];
diff --git a/pkgs/applications/science/math/ripser/default.nix b/pkgs/applications/science/math/ripser/default.nix
index a42a5b710ce0..1c8ced5ed222 100644
--- a/pkgs/applications/science/math/ripser/default.nix
+++ b/pkgs/applications/science/math/ripser/default.nix
@@ -30,7 +30,7 @@ stdenv.mkDerivation {
   #Patch from dev branch to make compilation work.
   #Will be removed when it gets merged into master.
   patches = [(fetchurl {
-    url = https://github.com/Ripser/ripser/commit/dc78d8ce73ee35f3828f0aad67a4e53620277ebf.patch;
+    url = "https://github.com/Ripser/ripser/commit/dc78d8ce73ee35f3828f0aad67a4e53620277ebf.patch";
     sha256 = "1y93aqpqz8fm1cxxrf90dhh67im3ndkr8dnxgbw5y96296n4r924";
   })];
 
@@ -59,7 +59,7 @@ stdenv.mkDerivation {
 
   meta = {
     description = "A lean C++ code for the computation of Vietoris–Rips persistence barcodes";
-    homepage = https://github.com/Ripser/ripser;
+    homepage = "https://github.com/Ripser/ripser";
     license = stdenv.lib.licenses.lgpl3;
     maintainers = with stdenv.lib.maintainers; [erikryb];
     platforms = stdenv.lib.platforms.linux;
diff --git a/pkgs/applications/science/math/rofi-calc/0001-Patch-plugindir-to-output.patch b/pkgs/applications/science/math/rofi-calc/0001-Patch-plugindir-to-output.patch
new file mode 100644
index 000000000000..197d1347d535
--- /dev/null
+++ b/pkgs/applications/science/math/rofi-calc/0001-Patch-plugindir-to-output.patch
@@ -0,0 +1,25 @@
+From 0eaef67b683683fb423fcb2d5096b3cdf9a4a9cd Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Maciej=20Kr=C3=BCger?= <mkg20001@gmail.com>
+Date: Sun, 22 Mar 2020 12:26:10 +0100
+Subject: [PATCH] Patch plugindir to output
+
+---
+ configure.ac | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/configure.ac b/configure.ac
+index 50edb74..639ee86 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -50,7 +50,7 @@ PKG_CHECK_MODULES([glib],     [glib-2.0 >= 2.40 gio-unix-2.0 gmodule-2.0 ])
+ PKG_CHECK_MODULES([cairo],    [cairo])
+ PKG_CHECK_MODULES([rofi],     [rofi >= 1.5.4])
+ 
+-[rofi_PLUGIN_INSTALL_DIR]="`$PKG_CONFIG --variable=pluginsdir rofi`"
++[rofi_PLUGIN_INSTALL_DIR]="`echo $out/lib/rofi`"
+ AC_SUBST([rofi_PLUGIN_INSTALL_DIR])
+ 
+ LT_INIT([disable-static])
+-- 
+2.25.1
+
diff --git a/pkgs/applications/science/math/rofi-calc/default.nix b/pkgs/applications/science/math/rofi-calc/default.nix
new file mode 100644
index 000000000000..842265cf3d5f
--- /dev/null
+++ b/pkgs/applications/science/math/rofi-calc/default.nix
@@ -0,0 +1,54 @@
+{ stdenv
+, fetchFromGitHub
+, autoreconfHook
+, pkgconfig
+, rofi-unwrapped
+, libqalculate
+, glib
+, cairo
+, gobject-introspection
+, wrapGAppsHook
+}:
+
+stdenv.mkDerivation rec {
+  pname = "rofi-calc";
+  version = "1.6";
+
+  src = fetchFromGitHub {
+    owner = "svenstaro";
+    repo = pname;
+    rev = "v${version}";
+    sha256 = "00pz0s99pihjdjy8pl4ckg2qciyp32k439lmjb5iazwck512ar92";
+  };
+
+  nativeBuildInputs = [
+    autoreconfHook
+    pkgconfig
+    gobject-introspection
+    wrapGAppsHook
+  ];
+
+  buildInputs = [
+    rofi-unwrapped
+    libqalculate
+    glib
+    cairo
+  ];
+
+  patches = [
+    ./0001-Patch-plugindir-to-output.patch
+  ];
+
+  postPatch = ''
+    sed "s|qalc_binary = \"qalc\"|qalc_binary = \"${libqalculate}/bin/qalc\"|" -i src/calc.c
+  '';
+
+  meta = with stdenv.lib; {
+    description = "Do live calculations in rofi!";
+    homepage = "https://github.com/svenstaro/rofi-calc";
+    license = licenses.mit;
+    maintainers = with maintainers; [ luc65r albakham ];
+    platforms = [ "x86_64-linux" "x86_64-darwin" ];
+  };
+}
+
diff --git a/pkgs/applications/science/math/sage/flask-oldsessions.nix b/pkgs/applications/science/math/sage/flask-oldsessions.nix
index 0899c93602b9..403dc8708fab 100644
--- a/pkgs/applications/science/math/sage/flask-oldsessions.nix
+++ b/pkgs/applications/science/math/sage/flask-oldsessions.nix
@@ -31,6 +31,6 @@ buildPythonPackage rec {
     description = "Provides a session class that works like the one in Flask before 0.10.";
     license = licenses.bsd2;
     maintainers = with maintainers; [ timokau ];
-    homepage = https://github.com/mitsuhiko/flask-oldsessions;
+    homepage = "https://github.com/mitsuhiko/flask-oldsessions";
   };
 }
diff --git a/pkgs/applications/science/math/sage/flask-openid.nix b/pkgs/applications/science/math/sage/flask-openid.nix
index 9043fabd9b4a..527173dec80a 100644
--- a/pkgs/applications/science/math/sage/flask-openid.nix
+++ b/pkgs/applications/science/math/sage/flask-openid.nix
@@ -23,6 +23,6 @@ buildPythonPackage rec {
     description = "Adds openid support to flask applications";
     license = licenses.bsd2;
     maintainers = with maintainers; [ timokau ];
-    homepage = https://pythonhosted.org/Flask-OpenID/;
+    homepage = "https://pythonhosted.org/Flask-OpenID/";
   };
 }
diff --git a/pkgs/applications/science/math/sage/patches/docutils-0.15.patch b/pkgs/applications/science/math/sage/patches/docutils-0.15.patch
new file mode 100644
index 000000000000..63f5d2e146dd
--- /dev/null
+++ b/pkgs/applications/science/math/sage/patches/docutils-0.15.patch
@@ -0,0 +1,24 @@
+diff --git a/src/sage/misc/sphinxify.py b/src/sage/misc/sphinxify.py
+index 4849c2bffa..76b7bc8602 100644
+--- a/src/sage/misc/sphinxify.py
++++ b/src/sage/misc/sphinxify.py
+@@ -25,6 +25,7 @@ from __future__ import absolute_import, print_function
+ import os
+ import re
+ import shutil
++import warnings
+ from tempfile import mkdtemp
+ from sphinx.application import Sphinx
+ 
+@@ -120,7 +121,10 @@ smart_quotes = no""")
+     # buildername, confoverrides, status, warning, freshenv).
+     sphinx_app = Sphinx(srcdir, confdir, outdir, doctreedir, format,
+                         confoverrides, None, None, True)
+-    sphinx_app.build(None, [rst_name])
++    with warnings.catch_warnings():
++        # Quick and dirty workaround for https://trac.sagemath.org/ticket/28856#comment:19
++        warnings.simplefilter("ignore")
++        sphinx_app.build(None, [rst_name])
+     sys.path = old_sys_path
+ 
+     # We need to remove "_" from __builtin__ that the gettext module installs
diff --git a/pkgs/applications/science/math/sage/python-openid.nix b/pkgs/applications/science/math/sage/python-openid.nix
index 1bfe02f50df1..4c7fdadadaf0 100644
--- a/pkgs/applications/science/math/sage/python-openid.nix
+++ b/pkgs/applications/science/math/sage/python-openid.nix
@@ -35,6 +35,6 @@ buildPythonPackage rec {
     description = "OpenID library for Python";
     license = licenses.asl20;
     maintainers = with maintainers; [ timokau ];
-    homepage = https://github.com/openid/python-openid/;
+    homepage = "https://github.com/openid/python-openid/";
   };
 }
diff --git a/pkgs/applications/science/math/sage/sage-env.nix b/pkgs/applications/science/math/sage/sage-env.nix
index 68e0d134ace2..626e1bf1ea92 100644
--- a/pkgs/applications/science/math/sage/sage-env.nix
+++ b/pkgs/applications/science/math/sage/sage-env.nix
@@ -41,7 +41,8 @@
 , lcalc
 , rubiks
 , flintqs
-, openblasCompat
+, blas
+, lapack
 , flint
 , gmp
 , mpfr
@@ -53,6 +54,8 @@
 , less
 }:
 
+assert (!blas.isILP64) && (!lapack.isILP64);
+
 # This generates a `sage-env` shell file that will be sourced by sage on startup.
 # It sets up various environment variables, telling sage where to find its
 # dependencies.
@@ -114,7 +117,7 @@ writeTextFile rec {
         # testsuite instead, but since all the packages are also runtime
         # dependencies it doesn't really hurt to include them here.
         singular
-        openblasCompat
+        blas lapack
         fflas-ffpack givaro
         gd
         libpng zlib
diff --git a/pkgs/applications/science/math/sage/sage-src.nix b/pkgs/applications/science/math/sage/sage-src.nix
index 4530cbf69f4c..4791d12450a9 100644
--- a/pkgs/applications/science/math/sage/sage-src.nix
+++ b/pkgs/applications/science/math/sage/sage-src.nix
@@ -29,6 +29,14 @@ stdenv.mkDerivation rec {
       url = "https://git.sagemath.org/sage.git/patch?id2=8bdc326ba57d1bb9664f63cf165a9e9920cc1afc&id=dc673c17555efca611f68398d5013b66e9825463";
       sha256 = "1hhannz7xzprijakn2w2d0rhd5zv2zikik9p51i87bas3nc658f7";
     })
+    
+    # `is_unitary` test in `matrix_double_dense.pyx` fails with some BLAS implementations
+    # https://trac.sagemath.org/ticket/29297 should be included in 9.1
+    (fetchpatch {
+      name = "is_unitary-special-case.patch";
+      url = "https://git.sagemath.org/sage.git/patch?id=cc3eb9ffa991e328b09028d32aab7e7cc2ddbb6a";
+      sha256 = "0jq4w8hnp5c9q99011ldr4n3knvm1rx2g85z0hidv3i9x868p0ay";
+    })
 
     # Unfortunately inclusion in upstream sage was rejected. Instead the bug was
     # fixed in python, but of course not backported to 2.7. So we'll probably
@@ -52,6 +60,11 @@ stdenv.mkDerivation rec {
     # Parallelize docubuild using subprocesses, fixing an isolation issue. See
     # https://groups.google.com/forum/#!topic/sage-packaging/YGOm8tkADrE
     ./patches/sphinx-docbuild-subprocesses.patch
+
+    # Fix doctest failures with docutils 0.15:
+    # https://nix-cache.s3.amazonaws.com/log/dzmzrb2zvardsmpy7idg7djkizmkzdhs-sage-tests-8.9.drv
+    # https://trac.sagemath.org/ticket/28856#comment:19
+    ./patches/docutils-0.15.patch
   ];
 
   # Since sage unfortunately does not release bugfix releases, packagers must
@@ -125,6 +138,13 @@ stdenv.mkDerivation rec {
       url = "https://git.sagemath.org/sage.git/patch/?h=c6d0308db15efd611211d26cfcbefbd180fc0831";
       sha256 = "0nwai2jr22h49km4hx3kwafs3mzsc5kwsv7mqwjf6ibwfx2bbgyq";
     })
+
+    # https://trac.sagemath.org/ticket/29313 (patch from ArchLinux)
+    (fetchpatch {
+      name = "pari-2.11.3.patch";
+      url = "https://aur.archlinux.org/cgit/aur.git/plain/sagemath-pari-2.11.3.patch?h=sagemath-git&id=02e1d58bd1cd70935d69a4990469d18be6bd2c43";
+      sha256 = "0z07444zvijyw96d11q7j81pvg7ysd6ycf1bbbjr6za9y74hv7d2";
+    })
   ];
 
   patches = nixPatches ++ bugfixPatches ++ packageUpgradePatches;
diff --git a/pkgs/applications/science/math/sage/sage-with-env.nix b/pkgs/applications/science/math/sage/sage-with-env.nix
index 524085e8c012..87c1e07f5307 100644
--- a/pkgs/applications/science/math/sage/sage-with-env.nix
+++ b/pkgs/applications/science/math/sage/sage-with-env.nix
@@ -2,7 +2,8 @@
 , lib
 , makeWrapper
 , sage-env
-, openblasCompat
+, blas
+, lapack
 , pkg-config
 , three
 , singular
@@ -21,6 +22,9 @@
 , pythonEnv
 }:
 
+# lots of segfaults with (64 bit) blas
+assert (!blas.isILP64) && (!lapack.isILP64);
+
 # Wrapper that combined `sagelib` with `sage-env` to produce an actually
 # executable sage. No tests are run yet and no documentation is built.
 
@@ -29,7 +33,7 @@ let
     pythonEnv # for patchShebangs
     makeWrapper
     pkg-config
-    openblasCompat # lots of segfaults with regular (64 bit) openblas
+    blas lapack
     singular
     three
     pynac
diff --git a/pkgs/applications/science/math/sage/sagelib.nix b/pkgs/applications/science/math/sage/sagelib.nix
index 69f7624078ea..830d806a8bcd 100644
--- a/pkgs/applications/science/math/sage/sagelib.nix
+++ b/pkgs/applications/science/math/sage/sagelib.nix
@@ -3,7 +3,8 @@
 , perl
 , buildPythonPackage
 , arb
-, openblasCompat
+, blas
+, lapack
 , brial
 , cliquer
 , cypari2
@@ -52,6 +53,8 @@
 , pplpy
 }:
 
+assert (!blas.isILP64) && (!lapack.isILP64);
+
 # This is the core sage python package. Everything else is just wrappers gluing
 # stuff together. It is not very useful on its own though, since it will not
 # find many of its dependencies without `sage-env`, will not be tested without
@@ -103,7 +106,8 @@ buildPythonPackage rec {
     m4rie
     mpfi
     ntl
-    openblasCompat
+    blas
+    lapack
     pari
     planarity
     ppl
diff --git a/pkgs/applications/science/math/scilab-bin/default.nix b/pkgs/applications/science/math/scilab-bin/default.nix
index 8e85cece9b28..f9abdee2d148 100644
--- a/pkgs/applications/science/math/scilab-bin/default.nix
+++ b/pkgs/applications/science/math/scilab-bin/default.nix
@@ -96,7 +96,7 @@ stdenv.mkDerivation {
   '';
 
   meta = {
-    homepage = http://www.scilab.org/;
+    homepage = "http://www.scilab.org/";
     description = "Scientific software package for numerical computations (Matlab lookalike)";
     # see http://www.scilab.org/legal_notice
     license = "Scilab";
diff --git a/pkgs/applications/science/math/scilab/default.nix b/pkgs/applications/science/math/scilab/default.nix
index 02f1f4e58a9d..24b3feef51e1 100644
--- a/pkgs/applications/science/math/scilab/default.nix
+++ b/pkgs/applications/science/math/scilab/default.nix
@@ -57,7 +57,7 @@ stdenv.mkDerivation rec {
   makeFlags = [ "all" ];
 
   meta = {
-    homepage = http://www.scilab.org/;
+    homepage = "http://www.scilab.org/";
     description = "Scientific software package for numerical computations (Matlab lookalike)";
     # see http://www.scilab.org/legal
     license = "SciLab";
diff --git a/pkgs/applications/science/math/scotch/default.nix b/pkgs/applications/science/math/scotch/default.nix
index 610f1ef05c0f..75a6b2dba68c 100644
--- a/pkgs/applications/science/math/scotch/default.nix
+++ b/pkgs/applications/science/math/scotch/default.nix
@@ -27,7 +27,7 @@ stdenv.mkDerivation rec {
       Scotch is a software package for graph and mesh/hypergraph partitioning, graph clustering, 
       and sparse matrix ordering.
     '';
-    homepage = http://www.labri.fr/perso/pelegrin/scotch;
+    homepage = "http://www.labri.fr/perso/pelegrin/scotch";
     license = stdenv.lib.licenses.cecill-c;
     maintainers = [ stdenv.lib.maintainers.bzizou ];
     platforms = stdenv.lib.platforms.linux;
diff --git a/pkgs/applications/science/math/singular/default.nix b/pkgs/applications/science/math/singular/default.nix
index fccd1489e11c..a8c4f6bb9a09 100644
--- a/pkgs/applications/science/math/singular/default.nix
+++ b/pkgs/applications/science/math/singular/default.nix
@@ -112,7 +112,7 @@ stdenv.mkDerivation rec {
     # 32 bit x86 fails with some link error: `undefined reference to `__divmoddi4@GCC_7.0.0'`
     platforms = subtractLists platforms.i686 platforms.unix;
     license = licenses.gpl3; # Or GPLv2 at your option - but not GPLv4
-    homepage = http://www.singular.uni-kl.de;
+    homepage = "http://www.singular.uni-kl.de";
     downloadPage = "http://www.mathematik.uni-kl.de/ftp/pub/Math/Singular/SOURCES/";
   };
 }
diff --git a/pkgs/applications/science/math/speedcrunch/default.nix b/pkgs/applications/science/math/speedcrunch/default.nix
index 67561658eb25..4bb39ab73f5f 100644
--- a/pkgs/applications/science/math/speedcrunch/default.nix
+++ b/pkgs/applications/science/math/speedcrunch/default.nix
@@ -20,7 +20,7 @@ mkDerivation rec {
   '';
 
   meta = with lib; {
-    homepage    = http://speedcrunch.org;
+    homepage    = "http://speedcrunch.org";
     license     = licenses.gpl2Plus;
     description = "A fast power user calculator";
     longDescription = ''
diff --git a/pkgs/applications/science/math/symmetrica/default.nix b/pkgs/applications/science/math/symmetrica/default.nix
index 18daabb9e7e2..b363137fb99c 100644
--- a/pkgs/applications/science/math/symmetrica/default.nix
+++ b/pkgs/applications/science/math/symmetrica/default.nix
@@ -1,62 +1,36 @@
 { stdenv
-, fetchurl
+, lib
+, fetchFromGitLab
 , fetchpatch
+, autoreconfHook
 }:
 stdenv.mkDerivation rec {
   pname = "symmetrica";
-  version = "2.0";
-
-  src = fetchurl {
-    url = "http://www.algorithm.uni-bayreuth.de/en/research/SYMMETRICA/SYM2_0_tar.gz";
-    sha256 = "1qhfrbd5ybb0sinl9pad64rscr08qvlfzrzmi4p4hk61xn6phlmz";
-    name = "symmetrica-2.0.tar.gz";
+  version = "3.0.1";
+
+  # Fork of the original symmetrica, which can be found here
+  # http://www.algorithm.uni-bayreuth.de/en/research/SYMMETRICA/index.html
+  # "This fork was created to modernize the codebase, and to resume making
+  # releases with the fixes that have accrued over the years."
+  # Also see https://trac.sagemath.org/ticket/29061#comment:3.
+  src = fetchFromGitLab {
+    owner = "sagemath";
+    repo = "symmetrica";
+    rev = version;
+    sha256 = "0wfmrzw82f5i91d7rf24mcdqcj2fmgrgy02pw4pliz7ncwaq14w3";
   };
 
-  sourceRoot = ".";
-
-  patches = [
-      # don't show banner ("SYMMETRICA VERSION X - STARTING)
-      # it doesn't contain very much helpful information and a banner is not ideal for a library
-      (fetchpatch {
-        url = "https://git.sagemath.org/sage.git/plain/build/pkgs/symmetrica/patches/de.patch?id=07d6c37d18811e2b377a9689790a7c5e24da16ba";
-        sha256 = "0df0vqixcfpzny6dkhyj87h8aznz3xn3zfwwlj8pd10bpb90k6gb";
-      })
-
-      # use int32_t and uint32_t for type INT
-      # see https://trac.sagemath.org/ticket/13413
-      (fetchpatch {
-        name = "fix_64bit_integer_overflow.patch";
-        url = "https://git.sagemath.org/sage.git/plain/build/pkgs/symmetrica/patches/int32.patch?id=07d6c37d18811e2b377a9689790a7c5e24da16ba";
-        sha256 = "0p33c85ck4kd453z687ni4bdcqr1pqx2756j7aq11bf63vjz4cyz";
-      })
-
-      (fetchpatch {
-        url = "https://git.sagemath.org/sage.git/plain/build/pkgs/symmetrica/patches/return_values.patch?id=1615f58890e8f9881c4228c78a6b39b9aab1303a";
-        sha256 = "0dmczkicwl50sivc07w3wm3jpfk78wm576dr25999jdj2ipsb7nk";
-      })
+  nativeBuildInputs = [
+    autoreconfHook
   ];
 
-  postPatch = ''
-    substituteInPlace makefile --replace gcc cc
-  '';
-
   enableParallelBuilding = true;
 
-  installPhase = ''
-    mkdir -p "$out"/{lib,share/doc/symmetrica,include/symmetrica}
-    ar crs libsymmetrica.a *.o
-    ranlib libsymmetrica.a
-    cp libsymmetrica.a "$out/lib"
-    cp *.h "$out/include/symmetrica"
-    cp README *.doc "$out/share/doc/symmetrica"
-  '';
-
-  meta = {
-    inherit version;
+  meta = with lib; {
     description = ''A collection of routines for representation theory and combinatorics'';
-    license = stdenv.lib.licenses.publicDomain;
-    maintainers = [stdenv.lib.maintainers.raskin];
-    platforms = stdenv.lib.platforms.unix;
-    homepage = http://www.algorithm.uni-bayreuth.de/en/research/SYMMETRICA/index.html;
+    license = licenses.isc;
+    maintainers = with maintainers; [raskin timokau];
+    platforms = platforms.unix;
+    homepage = "https://gitlab.com/sagemath/symmetrica";
   };
 }
diff --git a/pkgs/applications/science/math/weka/default.nix b/pkgs/applications/science/math/weka/default.nix
index ec9ea0b85331..c4fc19d6c6b7 100644
--- a/pkgs/applications/science/math/weka/default.nix
+++ b/pkgs/applications/science/math/weka/default.nix
@@ -22,7 +22,7 @@ stdenv.mkDerivation rec {
   '';
 
   meta = {
-    homepage = http://www.cs.waikato.ac.nz/ml/weka/;
+    homepage = "http://www.cs.waikato.ac.nz/ml/weka/";
     description = "Collection of machine learning algorithms for data mining tasks";
     license = stdenv.lib.licenses.gpl2Plus;
     maintainers = [ stdenv.lib.maintainers.mimame ];
diff --git a/pkgs/applications/science/math/wxmaxima/default.nix b/pkgs/applications/science/math/wxmaxima/default.nix
index 406d74c4cd34..4d6e4bea34e6 100644
--- a/pkgs/applications/science/math/wxmaxima/default.nix
+++ b/pkgs/applications/science/math/wxmaxima/default.nix
@@ -4,13 +4,13 @@
 
 stdenv.mkDerivation rec {
   pname = "wxmaxima";
-  version = "19.03.0";
+  version = "20.02.4";
 
   src = fetchFromGitHub {
-    owner = "andrejv";
+    owner = "wxMaxima-developers";
     repo = "wxmaxima";
     rev = "Version-${version}";
-    sha256 = "0s7bdykc77slqix28cyaa6x8wvxrn8461mkdgxflvi2apwsl56aa";
+    sha256 = "106a7jrjwfmymzj70nsv44fm3jbxngr8pmkaghhpwy0ln38lhf54";
   };
 
   buildInputs = [ wxGTK maxima gnome3.adwaita-icon-theme ];
@@ -21,12 +21,10 @@ stdenv.mkDerivation rec {
     gappsWrapperArgs+=(--prefix PATH ":" ${maxima}/bin)
   '';
 
-  enableParallelBuilding = true;
-
   meta = with stdenv.lib; {
     description = "Cross platform GUI for the computer algebra system Maxima";
     license = licenses.gpl2;
-    homepage = https://wxmaxima-developers.github.io/wxmaxima/;
+    homepage = "https://wxmaxima-developers.github.io/wxmaxima/";
     platforms = platforms.linux;
     maintainers = [ maintainers.peti ];
   };
diff --git a/pkgs/applications/science/math/yacas/default.nix b/pkgs/applications/science/math/yacas/default.nix
index ed680b1b4cde..c19d8f0fbc17 100644
--- a/pkgs/applications/science/math/yacas/default.nix
+++ b/pkgs/applications/science/math/yacas/default.nix
@@ -30,7 +30,7 @@ stdenv.mkDerivation rec {
 
   meta = {
     description = "Easy to use, general purpose Computer Algebra System";
-    homepage = http://www.yacas.org/;
+    homepage = "http://www.yacas.org/";
     license = stdenv.lib.licenses.gpl2Plus;
     maintainers = with stdenv.lib.maintainers; [viric];
     platforms = with stdenv.lib.platforms; linux;
diff --git a/pkgs/applications/science/medicine/aliza/default.nix b/pkgs/applications/science/medicine/aliza/default.nix
index e135534d1acf..279f602e3fd5 100644
--- a/pkgs/applications/science/medicine/aliza/default.nix
+++ b/pkgs/applications/science/medicine/aliza/default.nix
@@ -46,7 +46,7 @@ stdenv.mkDerivation {
 
   meta = {
     description = "Medical imaging software with 2D, 3D and 4D capabilities";
-    homepage = https://www.aliza-dicom-viewer.com;
+    homepage = "https://www.aliza-dicom-viewer.com";
     license = licenses.unfreeRedistributable;
     maintainers = with maintainers; [ mounium ];
     platforms = platforms.linux;
diff --git a/pkgs/applications/science/misc/boinc/default.nix b/pkgs/applications/science/misc/boinc/default.nix
index 38b9b8ec66d1..802abae80e1d 100644
--- a/pkgs/applications/science/misc/boinc/default.nix
+++ b/pkgs/applications/science/misc/boinc/default.nix
@@ -39,7 +39,7 @@ stdenv.mkDerivation rec {
 
   meta = {
     description = "Free software for distributed and grid computing";
-    homepage = https://boinc.berkeley.edu/;
+    homepage = "https://boinc.berkeley.edu/";
     license = stdenv.lib.licenses.lgpl2Plus;
     platforms = stdenv.lib.platforms.linux;  # arbitrary choice
   };
diff --git a/pkgs/applications/science/misc/colmap/default.nix b/pkgs/applications/science/misc/colmap/default.nix
index da118f6bca57..02adb689e20b 100644
--- a/pkgs/applications/science/misc/colmap/default.nix
+++ b/pkgs/applications/science/misc/colmap/default.nix
@@ -36,7 +36,7 @@ mkDerivation rec {
        COLMAP is a general-purpose Structure-from-Motion (SfM) and Multi-View Stereo (MVS) pipeline
        with a graphical and command-line interface.
     '';
-    homepage = https://colmap.github.io/index.html;
+    homepage = "https://colmap.github.io/index.html";
     license = licenses.bsd2;
     platforms = platforms.linux;
     maintainers = with maintainers; [ lebastr ];
diff --git a/pkgs/applications/science/misc/cytoscape/default.nix b/pkgs/applications/science/misc/cytoscape/default.nix
index 8ed3deed804c..b4e4adbfa6f2 100644
--- a/pkgs/applications/science/misc/cytoscape/default.nix
+++ b/pkgs/applications/science/misc/cytoscape/default.nix
@@ -25,7 +25,7 @@ stdenv.mkDerivation rec {
   '';
 
   meta = {
-    homepage = http://www.cytoscape.org;
+    homepage = "http://www.cytoscape.org";
     description = "A general platform for complex network analysis and visualization";
     license = stdenv.lib.licenses.lgpl21;
     maintainers = [stdenv.lib.maintainers.mimame];
diff --git a/pkgs/applications/science/misc/fityk/default.nix b/pkgs/applications/science/misc/fityk/default.nix
index 8d0336f58282..18def1d24e2f 100644
--- a/pkgs/applications/science/misc/fityk/default.nix
+++ b/pkgs/applications/science/misc/fityk/default.nix
@@ -22,7 +22,7 @@ stdenv.mkDerivation {
   meta = {
     description = "Curve fitting and peak fitting software";
     license = stdenv.lib.licenses.gpl2;
-    homepage = http://fityk.nieto.pl/;
+    homepage = "http://fityk.nieto.pl/";
     platforms = stdenv.lib.platforms.linux;
   };
 }
diff --git a/pkgs/applications/science/misc/foldingathome/client.nix b/pkgs/applications/science/misc/foldingathome/client.nix
new file mode 100644
index 000000000000..74a53902ee09
--- /dev/null
+++ b/pkgs/applications/science/misc/foldingathome/client.nix
@@ -0,0 +1,59 @@
+{ stdenv
+, autoPatchelfHook
+, buildFHSUserEnv
+, dpkg
+, fetchurl
+, gcc-unwrapped
+, ocl-icd
+, zlib
+, extraPkgs ? []
+}:
+let
+  majMin = stdenv.lib.versions.majorMinor version;
+  version = "7.6.9";
+
+  fahclient = stdenv.mkDerivation rec {
+    inherit version;
+    pname = "fahclient";
+
+    src = fetchurl {
+      url = "https://download.foldingathome.org/releases/public/release/fahclient/debian-stable-64bit/v${majMin}/fahclient_${version}_amd64.deb";
+      sha256 = "1v4yijjjdq9qx1fp60flp9ya6ywl9qdsgkzwmzjzp8sd5gfvhyr6";
+    };
+
+    nativeBuildInputs = [
+      autoPatchelfHook
+      dpkg
+    ];
+
+    buildInputs = [
+      gcc-unwrapped.lib
+      zlib
+    ];
+
+    unpackPhase = "dpkg-deb -x ${src} ./";
+    installPhase = "cp -ar usr $out";
+  };
+in
+buildFHSUserEnv {
+  name = fahclient.name;
+
+  targetPkgs = pkgs': [
+    fahclient
+    ocl-icd
+  ] ++ extraPkgs;
+
+  runScript = "/bin/FAHClient";
+
+  extraInstallCommands = ''
+    mv $out/bin/$name $out/bin/FAHClient
+  '';
+
+  meta = {
+    description = "Folding@home client";
+    homepage = "https://foldingathome.org/";
+    license = stdenv.lib.licenses.unfree;
+    maintainers = [ stdenv.lib.maintainers.zimbatm ];
+    platforms = [ "x86_64-linux" ];
+  };
+}
diff --git a/pkgs/applications/science/misc/foldingathome/control.nix b/pkgs/applications/science/misc/foldingathome/control.nix
new file mode 100644
index 000000000000..72217689ff18
--- /dev/null
+++ b/pkgs/applications/science/misc/foldingathome/control.nix
@@ -0,0 +1,60 @@
+{ stdenv
+, autoPatchelfHook
+, dpkg
+, fahviewer
+, fetchurl
+, makeWrapper
+, python2
+}:
+let
+  majMin = stdenv.lib.versions.majorMinor version;
+  version = "7.6.9";
+
+  python = python2.withPackages
+    (
+      ps: [
+        ps.pycairo
+        ps.pygobject2
+        ps.pygtk
+      ]
+    );
+in
+stdenv.mkDerivation rec {
+  inherit version;
+  pname = "fahcontrol";
+
+  src = fetchurl {
+    url = "https://download.foldingathome.org/releases/public/release/fahcontrol/debian-stable-64bit/v${majMin}/fahcontrol_${version}-1_all.deb";
+    sha256 = "1fh7ybbp3qlqzh18c4gva3aaymv7d31mqchrv235a1axldha1s9s";
+  };
+
+  nativeBuildInputs = [
+    dpkg
+    makeWrapper
+  ];
+
+  buildInputs = [ fahviewer python ];
+
+  doBuild = false;
+
+  unpackPhase = ''
+    dpkg-deb -x ${src} ./
+  '';
+
+  installPhase = "cp -ar usr $out";
+
+  postFixup = ''
+    sed -e 's|/usr/bin|$out/bin|g' -i $out/share/applications/FAHControl.desktop
+    wrapProgram "$out/bin/FAHControl" \
+      --suffix PATH : "${fahviewer.outPath}/bin" \
+      --set PYTHONPATH "$out/lib/python2.7/dist-packages"
+  '';
+
+  meta = {
+    description = "Folding@home control";
+    homepage = "https://foldingathome.org/";
+    license = stdenv.lib.licenses.unfree;
+    maintainers = [ stdenv.lib.maintainers.zimbatm ];
+    platforms = [ "x86_64-linux" ];
+  };
+}
diff --git a/pkgs/applications/science/misc/foldingathome/viewer.nix b/pkgs/applications/science/misc/foldingathome/viewer.nix
new file mode 100644
index 000000000000..a35df650300b
--- /dev/null
+++ b/pkgs/applications/science/misc/foldingathome/viewer.nix
@@ -0,0 +1,55 @@
+{ stdenv
+, autoPatchelfHook
+, dpkg
+, fetchurl
+, freeglut
+, gcc-unwrapped
+, libGL
+, libGLU
+, makeWrapper
+, zlib
+}:
+let
+  majMin = stdenv.lib.versions.majorMinor version;
+  version = "7.6.9";
+in
+stdenv.mkDerivation rec {
+  inherit version;
+  pname = "fahviewer";
+
+  src = fetchurl {
+    url = "https://download.foldingathome.org/releases/public/release/fahviewer/debian-stable-64bit/v${majMin}/fahviewer_${version}_amd64.deb";
+    sha256 = "04wr86g11wpmsczzwzak4gvalcihb47rn3zp6qriawhxyac9nf93";
+  };
+
+  nativeBuildInputs = [
+    autoPatchelfHook
+    dpkg
+    makeWrapper
+  ];
+
+  buildInputs = [
+    freeglut
+    gcc-unwrapped.lib
+    libGL
+    libGLU
+    zlib
+  ];
+
+  unpackPhase = ''
+    dpkg-deb -x ${src} ./
+    sed -e 's|/usr/bin|$out/bin|g' -i usr/share/applications/FAHViewer.desktop
+  '';
+
+  installPhase = ''
+    cp -ar usr $out
+  '';
+
+  meta = {
+    description = "Folding@home viewer";
+    homepage = "https://foldingathome.org/";
+    license = stdenv.lib.licenses.unfree;
+    maintainers = [ stdenv.lib.maintainers.zimbatm ];
+    platforms = [ "x86_64-linux" ];
+  };
+}
diff --git a/pkgs/applications/science/misc/gephi/default.nix b/pkgs/applications/science/misc/gephi/default.nix
index 577c8ecfa058..b6b53013cb4b 100644
--- a/pkgs/applications/science/misc/gephi/default.nix
+++ b/pkgs/applications/science/misc/gephi/default.nix
@@ -57,7 +57,7 @@ stdenv.mkDerivation {
 
   meta = with stdenv.lib; {
     description = "A platform for visualizing and manipulating large graphs";
-    homepage = https://gephi.org;
+    homepage = "https://gephi.org";
     license = licenses.gpl3;
     maintainers = [ maintainers.taeer ];
     platforms = [ "x86_64-linux" ];
diff --git a/pkgs/applications/science/misc/gplates/default.nix b/pkgs/applications/science/misc/gplates/default.nix
index 9b510d432fb3..592e36370e0f 100644
--- a/pkgs/applications/science/misc/gplates/default.nix
+++ b/pkgs/applications/science/misc/gplates/default.nix
@@ -21,7 +21,7 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "Desktop software for the interactive visualisation of plate-tectonics";
-    homepage = https://www.gplates.org;
+    homepage = "https://www.gplates.org";
     license = licenses.gpl2;
     platforms = platforms.all;
     broken = true;
diff --git a/pkgs/applications/science/misc/megam/default.nix b/pkgs/applications/science/misc/megam/default.nix
index 6cdc86d20eb2..8bb64932f20e 100644
--- a/pkgs/applications/science/misc/megam/default.nix
+++ b/pkgs/applications/science/misc/megam/default.nix
@@ -37,7 +37,7 @@ stdenv.mkDerivation {
           than the iterative scaling techniques used in almost every
           other maxent package out there.  '';
 
-    homepage = http://www.umiacs.umd.edu/~hal/megam;
+    homepage = "http://www.umiacs.umd.edu/~hal/megam";
 
     license = "non-commercial";
 
diff --git a/pkgs/applications/science/misc/netlogo/default.nix b/pkgs/applications/science/misc/netlogo/default.nix
index 9b0279bd4d09..af892441a472 100644
--- a/pkgs/applications/science/misc/netlogo/default.nix
+++ b/pkgs/applications/science/misc/netlogo/default.nix
@@ -50,7 +50,7 @@ stdenv.mkDerivation rec {
       NetLogo is a multi-agent programmable modeling environment. It is used by
       many tens of thousands of students, teachers and researchers worldwide.
     '';
-    homepage = https://ccl.northwestern.edu/netlogo/index.shtml;
+    homepage = "https://ccl.northwestern.edu/netlogo/index.shtml";
     license = licenses.gpl2;
     maintainers = [ maintainers.dpaetzel ];
     platforms = platforms.linux;
diff --git a/pkgs/applications/science/misc/openmodelica/default.nix b/pkgs/applications/science/misc/openmodelica/default.nix
index ed4101bdb47c..50d4dcc1a9ff 100644
--- a/pkgs/applications/science/misc/openmodelica/default.nix
+++ b/pkgs/applications/science/misc/openmodelica/default.nix
@@ -1,5 +1,5 @@
 {stdenv, fetchgit, fetchsvn, autoconf, automake, libtool, gfortran, clang, cmake, gnumake,
-hwloc, jre, liblapack, blas, hdf5, expat, ncurses, readline, qt4, webkitgtk, which,
+hwloc, jre, lapack, blas, hdf5, expat, ncurses, readline, qt4, webkitgtk, which,
 lp_solve, omniorb, sqlite, libatomic_ops, pkgconfig, file, gettext, flex, bison,
 doxygen, boost, openscenegraph, gnome2, xorg, git, bash, gtk2, makeWrapper }:
 
@@ -15,7 +15,7 @@ stdenv.mkDerivation {
   src = fetchgit (import ./src-main.nix);
 
   buildInputs = [autoconf cmake automake libtool gfortran clang gnumake
-    hwloc jre liblapack blas hdf5 expat ncurses readline qt4 webkitgtk which
+    hwloc jre lapack blas hdf5 expat ncurses readline qt4 webkitgtk which
     lp_solve omniorb sqlite libatomic_ops pkgconfig file gettext flex bison
     doxygen boost openscenegraph gnome2.gtkglext xorg.libXmu
     git gtk2 makeWrapper];
@@ -40,7 +40,7 @@ stdenv.mkDerivation {
     for e in $(cd $out/bin && ls); do
       wrapProgram $out/bin/$e \
         --prefix PATH : "${gnumake}/bin" \
-        --prefix LIBRARY_PATH : "${stdenv.lib.makeLibraryPath [ liblapack blas ]}"
+        --prefix LIBRARY_PATH : "${stdenv.lib.makeLibraryPath [ lapack blas ]}"
     done
   '';
 
@@ -53,5 +53,3 @@ stdenv.mkDerivation {
     broken      = true;
   };
 }
-
-
diff --git a/pkgs/applications/science/misc/openmvg/default.nix b/pkgs/applications/science/misc/openmvg/default.nix
index 121e953f43af..aea376301abd 100644
--- a/pkgs/applications/science/misc/openmvg/default.nix
+++ b/pkgs/applications/science/misc/openmvg/default.nix
@@ -42,7 +42,7 @@ stdenv.mkDerivation rec {
 
   meta = {
     description = "A library for computer-vision scientists and targeted for the Multiple View Geometry community";
-    homepage = https://openmvg.readthedocs.io/en/latest/;
+    homepage = "https://openmvg.readthedocs.io/en/latest/";
     license = stdenv.lib.licenses.mpl20;
     platforms = stdenv.lib.platforms.linux;
     maintainers = with stdenv.lib.maintainers; [ mdaiter ];
diff --git a/pkgs/applications/science/misc/openmvs/default.nix b/pkgs/applications/science/misc/openmvs/default.nix
index bb067fbca7a9..efdd86f0ab2d 100644
--- a/pkgs/applications/science/misc/openmvs/default.nix
+++ b/pkgs/applications/science/misc/openmvs/default.nix
@@ -54,7 +54,7 @@ stdenv.mkDerivation {
 
   meta = with stdenv.lib; {
     description = "A library for computer-vision scientists and especially targeted to the Multi-View Stereo reconstruction community";
-    homepage = http://cdcseacave.github.io/openMVS/;
+    homepage = "http://cdcseacave.github.io/openMVS/";
     license = licenses.agpl3;
     platforms = platforms.linux;
     maintainers = with maintainers; [ mdaiter ];
diff --git a/pkgs/applications/science/misc/rink/default.nix b/pkgs/applications/science/misc/rink/default.nix
index 4c759308a5c6..5d592c233b62 100644
--- a/pkgs/applications/science/misc/rink/default.nix
+++ b/pkgs/applications/science/misc/rink/default.nix
@@ -10,22 +10,21 @@ rustPlatform.buildRustPackage rec {
     rev = "v${version}";
     sha256 = "0vl996y58a9b62d8sqrpfn2h8qkya7qbg5zqsmy7nxhph1vhbspj";
   };
-  cargoPatches = [ ./cargo-lock.patch ];
 
-  # Delete this on next update; see #79975 for details
-  legacyCargoFetcher = true;
+  # Upstreamed in https://github.com/tiffany352/rink-rs/pull/53
+  cargoPatches = [ ./cargo-lock.patch ];
 
-  cargoSha256 = "0q2g1hkqyzq9lsas4fhsbpk3jn5hikchh6i1jf9c08ca2xm136c2";
+  cargoSha256 = "0shlh0m9k0iqxpv9zmiw7a6v197swrvpz9x6qzhximzkdwni9gz9";
 
-  buildInputs = [ pkgconfig ];
-  propagatedBuildInputs = [ openssl gmp ncurses ];
+  nativeBuildInputs = [ pkgconfig ];
+  buildInputs = [ openssl gmp ncurses ];
 
   # Some tests fail and/or attempt to use internet servers.
   doCheck = false;
 
   meta = with stdenv.lib; {
     description = "Unit-aware calculator";
-    homepage = "http://rink.tiffnix.com";
+    homepage = "https://rink.tiffnix.com";
     license = with licenses; [ mpl20 gpl3 ];
     maintainers = with maintainers; [ sb0 filalex77 ];
   };
diff --git a/pkgs/applications/science/misc/root/5.nix b/pkgs/applications/science/misc/root/5.nix
index 8422eb8752b1..fd06d721ebd1 100644
--- a/pkgs/applications/science/misc/root/5.nix
+++ b/pkgs/applications/science/misc/root/5.nix
@@ -88,7 +88,7 @@ stdenv.mkDerivation rec {
   setupHook = ./setup-hook.sh;
 
   meta = with stdenv.lib; {
-    homepage = https://root.cern.ch/;
+    homepage = "https://root.cern.ch/";
     description = "A data analysis framework";
     platforms = platforms.unix;
     maintainers = with maintainers; [ veprbl ];
diff --git a/pkgs/applications/science/misc/root/default.nix b/pkgs/applications/science/misc/root/default.nix
index b901e40a194a..990952e21aca 100644
--- a/pkgs/applications/science/misc/root/default.nix
+++ b/pkgs/applications/science/misc/root/default.nix
@@ -84,7 +84,7 @@ stdenv.mkDerivation rec {
   setupHook = ./setup-hook.sh;
 
   meta = with stdenv.lib; {
-    homepage = https://root.cern.ch/;
+    homepage = "https://root.cern.ch/";
     description = "A data analysis framework";
     platforms = platforms.unix;
     maintainers = [ maintainers.veprbl ];
diff --git a/pkgs/applications/science/misc/sasview/default.nix b/pkgs/applications/science/misc/sasview/default.nix
index ed6fa3ae886b..bbbe80eb6568 100644
--- a/pkgs/applications/science/misc/sasview/default.nix
+++ b/pkgs/applications/science/misc/sasview/default.nix
@@ -67,7 +67,7 @@ python.pkgs.buildPythonApplication rec {
   patches = [ ./pyparsing-fix.patch ./local_config.patch ];
 
   meta = with lib; {
-    homepage = https://www.sasview.org;
+    homepage = "https://www.sasview.org";
     description = "Fitting and data analysis for small angle scattering data";
     maintainers = with maintainers; [ rprospero ];
     license = licenses.bsd3;
diff --git a/pkgs/applications/science/misc/sasview/xhtml2pdf.nix b/pkgs/applications/science/misc/sasview/xhtml2pdf.nix
index 8eff2057928a..42b9560d9b8d 100644
--- a/pkgs/applications/science/misc/sasview/xhtml2pdf.nix
+++ b/pkgs/applications/science/misc/sasview/xhtml2pdf.nix
@@ -26,7 +26,7 @@ buildPythonPackage rec {
 
   meta = {
     description = "A pdf converter for the ReportLab Toolkit";
-    homepage = https://github.com/xhtml2pdf/xhtml2pdf;
+    homepage = "https://github.com/xhtml2pdf/xhtml2pdf";
     license = lib.licenses.asl20;
     maintainers = with lib.maintainers; [ rprospero ];
   };
diff --git a/pkgs/applications/science/misc/simgrid/default.nix b/pkgs/applications/science/misc/simgrid/default.nix
index b8aef4bd53fe..0ba1cd0d2faf 100644
--- a/pkgs/applications/science/misc/simgrid/default.nix
+++ b/pkgs/applications/science/misc/simgrid/default.nix
@@ -104,7 +104,7 @@ stdenv.mkDerivation rec {
       scheduling on distributed computing platforms ranging from simple
       network of workstations to Computational Grids.
     '';
-    homepage = https://simgrid.org/;
+    homepage = "https://simgrid.org/";
     license = licenses.lgpl2Plus;
     maintainers = with maintainers; [ mickours mpoquet ];
     platforms = ["x86_64-linux"];
diff --git a/pkgs/applications/science/misc/snakemake/default.nix b/pkgs/applications/science/misc/snakemake/default.nix
index c82a89e739ce..af4e225ca323 100644
--- a/pkgs/applications/science/misc/snakemake/default.nix
+++ b/pkgs/applications/science/misc/snakemake/default.nix
@@ -2,7 +2,7 @@
 
 python3Packages.buildPythonApplication rec {
   pname = "snakemake";
-  version = "5.9.1";
+  version = "5.15.0";
 
   propagatedBuildInputs = with python3Packages; [
     appdirs
@@ -11,22 +11,24 @@ python3Packages.buildPythonApplication rec {
     docutils
     GitPython
     jsonschema
+    nbformat
     psutil
     pyyaml
     ratelimiter
     requests
+    toposort
     wrapt
   ];
 
   src = python3Packages.fetchPypi {
     inherit pname version;
-    sha256 = "0s3y5pz9vqxpj5bx8y7ymh3zmsiyrk7sp8zwqwpva3mli7ky81pz";
+    sha256 = "10cd1k5vg8ra5fnpqpdbl04qwx6h2mmmqbn71pl8j69w9110dkys";
   };
 
   doCheck = false; # Tests depend on Google Cloud credentials at ${HOME}/gcloud-service-key.json
 
   meta = with stdenv.lib; {
-    homepage = http://snakemake.bitbucket.io;
+    homepage = "https://snakemake.readthedocs.io";
     license = licenses.mit;
     description = "Python-based execution environment for make-like workflows";
     longDescription = ''
@@ -36,6 +38,6 @@ python3Packages.buildPythonApplication rec {
       workflows are essentially Python scripts extended by declarative code to define
       rules. Rules describe how to create output files from input files.
     '';
-    maintainers = with maintainers; [ helkafen renatoGarcia ];
+    maintainers = with maintainers; [ helkafen renatoGarcia veprbl ];
   };
 }
diff --git a/pkgs/applications/science/misc/tulip/default.nix b/pkgs/applications/science/misc/tulip/default.nix
index 3f83f2f30a67..f29cd41169d4 100644
--- a/pkgs/applications/science/misc/tulip/default.nix
+++ b/pkgs/applications/science/misc/tulip/default.nix
@@ -29,7 +29,7 @@ stdenv.mkDerivation rec {
          data that can be tailored to the problems he or she is addressing.
       '';
 
-    homepage = http://tulip.labri.fr/;
+    homepage = "http://tulip.labri.fr/";
 
     license = stdenv.lib.licenses.gpl3Plus;
 
diff --git a/pkgs/applications/science/misc/vite/default.nix b/pkgs/applications/science/misc/vite/default.nix
index 3e7c7a42eb82..0d749bb9be4f 100644
--- a/pkgs/applications/science/misc/vite/default.nix
+++ b/pkgs/applications/science/misc/vite/default.nix
@@ -36,7 +36,7 @@ stdenv.mkDerivation {
       parallel or distributed applications.
     '';
 
-    homepage = http://vite.gforge.inria.fr/;
+    homepage = "http://vite.gforge.inria.fr/";
     license = stdenv.lib.licenses.cecill20;
     maintainers = with stdenv.lib.maintainers; [ ];
     platforms = stdenv.lib.platforms.linux;
diff --git a/pkgs/applications/science/molecular-dynamics/dl-poly-classic/default.nix b/pkgs/applications/science/molecular-dynamics/dl-poly-classic/default.nix
index b0ed5e946379..51978e95766d 100644
--- a/pkgs/applications/science/molecular-dynamics/dl-poly-classic/default.nix
+++ b/pkgs/applications/science/molecular-dynamics/dl-poly-classic/default.nix
@@ -28,7 +28,7 @@ stdenv.mkDerivation {
   '';
 
   meta = with stdenv.lib; {
-    homepage = https://www.ccp5.ac.uk/DL_POLY_C;
+    homepage = "https://www.ccp5.ac.uk/DL_POLY_C";
     description = "DL_POLY Classic is a general purpose molecular dynamics simulation package";
     license = licenses.bsdOriginal;
     platforms = [ "x86_64-linux" ];
diff --git a/pkgs/applications/science/molecular-dynamics/gromacs/default.nix b/pkgs/applications/science/molecular-dynamics/gromacs/default.nix
index 7536d071f6b3..d345827ed4eb 100644
--- a/pkgs/applications/science/molecular-dynamics/gromacs/default.nix
+++ b/pkgs/applications/science/molecular-dynamics/gromacs/default.nix
@@ -9,11 +9,11 @@
 }:
 
 stdenv.mkDerivation {
-  name = "gromacs-2020";
+  name = "gromacs-2020.2";
 
   src = fetchurl {
-    url = "ftp://ftp.gromacs.org/pub/gromacs/gromacs-2020.tar.gz";
-    sha256 = "00ds83n5wnm7g7wq91jycp8h82vnam5b4rwg3fv9rk9x5ca5czj7";
+    url = "ftp://ftp.gromacs.org/pub/gromacs/gromacs-2020.2.tar.gz";
+    sha256 = "1wyjgcdl30wy4hy6jvi9lkq53bqs9fgfq6fri52dhnb3c76y8rbl";
   };
 
   nativeBuildInputs = [ cmake ];
diff --git a/pkgs/applications/science/molecular-dynamics/lammps/default.nix b/pkgs/applications/science/molecular-dynamics/lammps/default.nix
index 234bbdab3158..5dc31695c60d 100644
--- a/pkgs/applications/science/molecular-dynamics/lammps/default.nix
+++ b/pkgs/applications/science/molecular-dynamics/lammps/default.nix
@@ -1,5 +1,5 @@
 { stdenv, fetchFromGitHub
-, libpng, gzip, fftw, openblas
+, libpng, gzip, fftw, blas, lapack
 , mpi ? null
 }:
 let packages = [
@@ -27,7 +27,7 @@ stdenv.mkDerivation rec {
     inherit packages;
   };
 
-  buildInputs = [ fftw libpng openblas gzip ]
+  buildInputs = [ fftw libpng blas lapack gzip ]
     ++ (stdenv.lib.optionals withMPI [ mpi ]);
 
   configurePhase = ''
@@ -59,7 +59,7 @@ stdenv.mkDerivation rec {
       funding from the DOE. It is an open-source code, distributed freely
       under the terms of the GNU Public License (GPL).
       '';
-    homepage = http://lammps.sandia.gov;
+    homepage = "http://lammps.sandia.gov";
     license = licenses.gpl2;
     platforms = platforms.linux;
     maintainers = [ maintainers.costrouc ];
diff --git a/pkgs/applications/science/physics/elmerfem/default.nix b/pkgs/applications/science/physics/elmerfem/default.nix
new file mode 100644
index 000000000000..642982830f70
--- /dev/null
+++ b/pkgs/applications/science/physics/elmerfem/default.nix
@@ -0,0 +1,49 @@
+{ stdenv, fetchFromGitHub, cmake, git, gfortran, openmpi, blas, liblapack, qt4, qwt6_qt4, pkg-config }:
+
+stdenv.mkDerivation rec {
+  pname = "elmerfem";
+  version = "8.4";
+
+  src = fetchFromGitHub {
+    owner = "elmercsc";
+    repo = "elmerfem";
+    rev = "release-${version}";
+    sha256 = "0vk31lplxlng173q8jjcpbyj1gaf98jvkqjvi9077d1nslya7vpm";
+  };
+
+  hardeningDisable = [ "format" ];
+
+  nativeBuildInputs = [ cmake pkg-config git ];
+  buildInputs = [ gfortran openmpi blas liblapack qt4 qwt6_qt4 ];
+
+  preConfigure = ''
+    patchShebangs ./
+  '';
+
+  storepath = placeholder "out";
+
+  cmakeFlags = [
+  "-DELMER_INSTALL_LIB_DIR=${storepath}/lib"
+  "-DWITH_OpenMP:BOOLEAN=TRUE"
+  "-DWITH_MPI:BOOLEAN=TRUE"
+  "-DWITH_ELMERGUI:BOOLEAN=TRUE"
+  "-DCMAKE_INSTALL_LIBDIR=lib"
+  "-DCMAKE_INSTALL_INCLUDEDIR=include"
+  "-DCMAKE_OpenGL_GL_PREFERENCE=GLVND"
+  ];
+
+  patches = [
+    ./fix-cmake.patch
+  ];
+
+  enableParallelBuilding = true;
+
+  meta = with stdenv.lib; {
+    homepage = http://www.elmerfem.org/;
+    description = "A finite element software for multiphysical problems.";
+    platforms = platforms.unix;
+    maintainers = [ maintainers.wulfsta ];
+    license = licenses.lgpl21;
+  };
+
+}
diff --git a/pkgs/applications/science/physics/elmerfem/fix-cmake.patch b/pkgs/applications/science/physics/elmerfem/fix-cmake.patch
new file mode 100644
index 000000000000..098f65207330
--- /dev/null
+++ b/pkgs/applications/science/physics/elmerfem/fix-cmake.patch
@@ -0,0 +1,13 @@
+diff --exclude '*~' -ruN A/torch/CMakeLists.txt B/torch/CMakeLists.txt
+--- A/fem/tests/CMakeLists.txt	2020-04-23 02:35:03.243388917 -0400
++++ B/fem/tests/CMakeLists.txt	2018-12-19 20:18:40.671857320 -0400
+@@ -14,7 +14,7 @@ 
+ SET(MESH2D_BIN "${CMAKE_BINARY_DIR}/meshgen2d/src/Mesh2D")
+
+ MACRO(SUBDIRLIST result curdir depth)
+   set(glob_pattern "*")
+-  FOREACH(D RANGE 1 depth)
++  FOREACH(D RANGE 1 ${depth})
+     FILE(GLOB children RELATIVE ${curdir} ${glob_pattern}) 
+     FOREACH(child ${children})
+       IF(IS_DIRECTORY ${curdir}/${child})
diff --git a/pkgs/applications/science/physics/quantomatic/default.nix b/pkgs/applications/science/physics/quantomatic/default.nix
index b22b9d412fdc..a9c83310b2ff 100644
--- a/pkgs/applications/science/physics/quantomatic/default.nix
+++ b/pkgs/applications/science/physics/quantomatic/default.nix
@@ -24,7 +24,7 @@ stdenv.mkDerivation rec {
   meta = with stdenv.lib; {
     description = "A piece of software for reasoning about monoidal theories; in particular, quantum information processing";
     license = licenses.gpl3;
-    homepage = https://quantomatic.github.io/;
+    homepage = "https://quantomatic.github.io/";
     maintainers = with maintainers; [ nickhu ];
     platforms = platforms.all;
   };
diff --git a/pkgs/applications/science/physics/sacrifice/default.nix b/pkgs/applications/science/physics/sacrifice/default.nix
index 80417f0fcc18..609fea9f7dca 100644
--- a/pkgs/applications/science/physics/sacrifice/default.nix
+++ b/pkgs/applications/science/physics/sacrifice/default.nix
@@ -40,7 +40,7 @@ stdenv.mkDerivation {
   meta = {
     description = "A standalone contribution to AGILe for steering Pythia 8";
     license     = stdenv.lib.licenses.gpl2;
-    homepage    = https://agile.hepforge.org/trac/wiki/Sacrifice;
+    homepage    = "https://agile.hepforge.org/trac/wiki/Sacrifice";
     platforms   = stdenv.lib.platforms.unix;
     maintainers = with stdenv.lib.maintainers; [ veprbl ];
   };
diff --git a/pkgs/applications/science/physics/sherpa/default.nix b/pkgs/applications/science/physics/sherpa/default.nix
index 04115399c1a7..314fc5225004 100644
--- a/pkgs/applications/science/physics/sherpa/default.nix
+++ b/pkgs/applications/science/physics/sherpa/default.nix
@@ -2,11 +2,11 @@
 
 stdenv.mkDerivation rec {
   pname = "sherpa";
-  version = "2.2.8";
+  version = "2.2.9";
 
   src = fetchurl {
     url = "https://www.hepforge.org/archive/sherpa/SHERPA-MC-${version}.tar.gz";
-    sha256 = "1al1imdrknvbcy8k113xysc14lln4msbv281bf0kx7p73wz59mv3";
+    sha256 = "1z7vws97k6zfzyqx0dkv2kq8d83dibi73i5jiqk5a22yplp6bnjh";
   };
 
   buildInputs = [ gfortran sqlite lhapdf rivet ];
@@ -21,13 +21,11 @@ stdenv.mkDerivation rec {
     "--enable-rivet=${rivet}"
   ];
 
-  CXXFLAGS = "-std=c++11"; # needed for rivet on OSX
-
-  meta = {
+  meta = with stdenv.lib; {
     description = "Simulation of High-Energy Reactions of PArticles in lepton-lepton, lepton-photon, photon-photon, lepton-hadron and hadron-hadron collisions";
-    license     = stdenv.lib.licenses.gpl2;
-    homepage    = https://gitlab.com/sherpa-team/sherpa;
-    platforms   = stdenv.lib.platforms.unix;
-    maintainers = with stdenv.lib.maintainers; [ veprbl ];
+    license = licenses.gpl2;
+    homepage = "https://gitlab.com/sherpa-team/sherpa";
+    platforms = platforms.unix;
+    maintainers = with maintainers; [ veprbl ];
   };
 }
diff --git a/pkgs/applications/science/physics/xfitter/default.nix b/pkgs/applications/science/physics/xfitter/default.nix
index 818bea7d0ff5..b992851e40a8 100644
--- a/pkgs/applications/science/physics/xfitter/default.nix
+++ b/pkgs/applications/science/physics/xfitter/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchurl, apfel, apfelgrid, applgrid, blas, gfortran, lhapdf, liblapack, libyaml, lynx, mela, root5, qcdnum, which }:
+{ stdenv, fetchurl, apfel, apfelgrid, applgrid, blas, gfortran, lhapdf, lapack, libyaml, lynx, mela, root5, qcdnum, which }:
 
 stdenv.mkDerivation rec {
   pname = "xfitter";
@@ -37,7 +37,7 @@ stdenv.mkDerivation rec {
 
   nativeBuildInputs = [ gfortran which ];
   buildInputs =
-    [ apfel apfelgrid applgrid blas lhapdf liblapack mela root5 qcdnum ]
+    [ apfel apfelgrid applgrid blas lhapdf lapack mela root5 qcdnum ]
     # pdf2yaml requires fmemopen and open_memstream which are not readily available on Darwin
     ++ stdenv.lib.optional (!stdenv.isDarwin) libyaml
     ;
@@ -50,7 +50,7 @@ stdenv.mkDerivation rec {
   meta = with stdenv.lib; {
     description = "The xFitter project is an open source QCD fit framework ready to extract PDFs and assess the impact of new data";
     license     = licenses.gpl3;
-    homepage    = https://www.xfitter.org/xFitter;
+    homepage    = "https://www.xfitter.org/xFitter";
     platforms   = platforms.unix;
     maintainers = with maintainers; [ veprbl ];
   };
diff --git a/pkgs/applications/science/programming/fdr/default.nix b/pkgs/applications/science/programming/fdr/default.nix
index 2c0bb84c801f..4eeca5c1759b 100644
--- a/pkgs/applications/science/programming/fdr/default.nix
+++ b/pkgs/applications/science/programming/fdr/default.nix
@@ -2,7 +2,7 @@
 stdenv.mkDerivation {
   name = "fdr-4.2.3";
   src = fetchurl {
-    url = https://www.cs.ox.ac.uk/projects/fdr/downloads/fdr-3789-linux-x86_64.tar.gz;
+    url = "https://www.cs.ox.ac.uk/projects/fdr/downloads/fdr-3789-linux-x86_64.tar.gz";
     sha256 = "0n2yqichym5xdawlgk3r7yha88k7ycnx6585jfrcm7043sls1i88";
   };
 
@@ -59,7 +59,7 @@ stdenv.mkDerivation {
   '';
 
   meta = with stdenv.lib; {
-    homepage = https://www.cs.ox.ac.uk/projects/fdr/;
+    homepage = "https://www.cs.ox.ac.uk/projects/fdr/";
     description = "The CSP refinement checker";
     license = licenses.unfreeRedistributable;
     platforms = platforms.linux;
diff --git a/pkgs/applications/science/programming/groove/default.nix b/pkgs/applications/science/programming/groove/default.nix
index e854f20d39a3..87b7b02317a2 100644
--- a/pkgs/applications/science/programming/groove/default.nix
+++ b/pkgs/applications/science/programming/groove/default.nix
@@ -46,7 +46,7 @@ in stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "GRaphs for Object-Oriented VErification";
-    homepage = http://groove.cs.utwente.nl/;
+    homepage = "http://groove.cs.utwente.nl/";
     license = licenses.asl20;
     platforms = platforms.all;
     maintainers = with maintainers; [ jfrankenau ];
diff --git a/pkgs/applications/science/programming/scyther/default.nix b/pkgs/applications/science/programming/scyther/default.nix
index b4daae1afc04..5cfe081072a4 100644
--- a/pkgs/applications/science/programming/scyther/default.nix
+++ b/pkgs/applications/science/programming/scyther/default.nix
@@ -14,7 +14,7 @@ let
 
   meta = with lib; {
     description = "Scyther is a tool for the automatic verification of security protocols.";
-    homepage = https://www.cs.ox.ac.uk/people/cas.cremers/scyther/;
+    homepage = "https://www.cs.ox.ac.uk/people/cas.cremers/scyther/";
     license = licenses.gpl2;
     maintainers = with maintainers; [ infinisil ];
     platforms = platforms.linux;
diff --git a/pkgs/applications/science/robotics/apmplanner2/default.nix b/pkgs/applications/science/robotics/apmplanner2/default.nix
index 0bc58c50335a..ede698e2b0b4 100644
--- a/pkgs/applications/science/robotics/apmplanner2/default.nix
+++ b/pkgs/applications/science/robotics/apmplanner2/default.nix
@@ -46,7 +46,7 @@ mkDerivation rec {
       A GUI ground control station for autonomous vehicles using the MAVLink protocol.
       Includes support for the APM and PX4 based controllers.
     '';
-    homepage = https://ardupilot.org/planner2/;
+    homepage = "https://ardupilot.org/planner2/";
     license = lib.licenses.gpl3;
     maintainers = with lib.maintainers; [ wucke13 ];
   };
diff --git a/pkgs/applications/science/robotics/betaflight-configurator/default.nix b/pkgs/applications/science/robotics/betaflight-configurator/default.nix
index 31295114375d..4684ba8c1937 100644
--- a/pkgs/applications/science/robotics/betaflight-configurator/default.nix
+++ b/pkgs/applications/science/robotics/betaflight-configurator/default.nix
@@ -41,7 +41,7 @@ stdenv.mkDerivation rec {
       Various types of aircraft are supported by the tool and by Betaflight, e.g. 
       quadcopters, hexacopters, octocopters and fixed-wing aircraft.
     '';
-    homepage    = https://github.com/betaflight/betaflight/wiki;
+    homepage    = "https://github.com/betaflight/betaflight/wiki";
     license     = licenses.gpl3;
     maintainers = with maintainers; [ wucke13 ];
     platforms   = platforms.linux;
diff --git a/pkgs/applications/science/robotics/gazebo/default.nix b/pkgs/applications/science/robotics/gazebo/default.nix
index a3ebda463b91..86572e73c756 100644
--- a/pkgs/applications/science/robotics/gazebo/default.nix
+++ b/pkgs/applications/science/robotics/gazebo/default.nix
@@ -1,7 +1,7 @@
 { stdenv, fetchurl, cmake, pkgconfig, boost, protobuf, freeimage
   , boost-build, boost_process
   , xorg_sys_opengl, tbb, ogre, tinyxml-2
-  , libtar, glxinfo,  libusb, libxslt, ignition
+  , libtar, glxinfo,  libusb-compat-0_1, libxslt, ignition
   , pythonPackages, utillinux
 
   # these deps are hidden; cmake doesn't catch them
@@ -52,7 +52,7 @@ stdenv.mkDerivation rec {
     tinyxml-2
     libtar
     glxinfo
-    libusb
+    libusb-compat-0_1
     libxslt
     ignition.math2
     sdformat
@@ -75,7 +75,7 @@ stdenv.mkDerivation rec {
     ++ optional withHdf5Support hdf5;
 
   meta = with stdenv.lib; {
-    homepage = http://gazebosim.org/;
+    homepage = "http://gazebosim.org/";
     description = "Multi-robot simulator for outdoor environments";
     license = licenses.asl20;
     maintainers = with maintainers; [ pxc ];
diff --git a/pkgs/applications/science/robotics/mavproxy/default.nix b/pkgs/applications/science/robotics/mavproxy/default.nix
index 0348d0153099..c354dad80428 100644
--- a/pkgs/applications/science/robotics/mavproxy/default.nix
+++ b/pkgs/applications/science/robotics/mavproxy/default.nix
@@ -3,11 +3,11 @@
 
 buildPythonApplication rec {
   pname = "MAVProxy";
-  version = "1.8.18";
+  version = "1.8.19";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "1fi4m3591wws5cq43q8aljf91mzs6i9yhn9rimhpfrskbyf9knvm";
+    sha256 = "1rbq2nm01212rp5xbl8p8kjl2mpgfppkwjsq3lnfw1v6g0m4359h";
   };
 
   propagatedBuildInputs = [
diff --git a/pkgs/applications/science/robotics/qgroundcontrol/default.nix b/pkgs/applications/science/robotics/qgroundcontrol/default.nix
index cbf7f4db8c41..c17ffb001182 100644
--- a/pkgs/applications/science/robotics/qgroundcontrol/default.nix
+++ b/pkgs/applications/science/robotics/qgroundcontrol/default.nix
@@ -27,6 +27,8 @@ mkDerivation rec {
     cd build
   '';
 
+  NIX_CFLAGS_COMPILE = [ "-Wno-address-of-packed-member" ]; # Don't litter logs with these warnings
+
   qmakeFlags = [
     # Default install tries to copy Qt files into package
     "CONFIG+=QGC_DISABLE_BUILD_SETUP"
diff --git a/pkgs/applications/science/robotics/yarp/default.nix b/pkgs/applications/science/robotics/yarp/default.nix
index d14c0bb0fe81..df2c569a31c7 100644
--- a/pkgs/applications/science/robotics/yarp/default.nix
+++ b/pkgs/applications/science/robotics/yarp/default.nix
@@ -28,7 +28,7 @@ stdenv.mkDerivation rec {
 
   meta = {
     description = "Yet Another Robot Platform";
-    homepage = http://yarp.it;
+    homepage = "http://yarp.it";
     license = stdenv.lib.licenses.lgpl21;
     platforms = stdenv.lib.platforms.linux;
     maintainers = [ stdenv.lib.maintainers.nico202 ];
diff --git a/pkgs/applications/search/doodle/default.nix b/pkgs/applications/search/doodle/default.nix
index 9d1da21492a2..9bf00801600f 100644
--- a/pkgs/applications/search/doodle/default.nix
+++ b/pkgs/applications/search/doodle/default.nix
@@ -11,7 +11,7 @@ stdenv.mkDerivation rec {
   };
 
   meta = {
-    homepage = https://grothoff.org/christian/doodle/;
+    homepage = "https://grothoff.org/christian/doodle/";
     description = "Tool to quickly index and search documents on a computer";
     license = stdenv.lib.licenses.gpl2Plus;
     maintainers = with stdenv.lib.maintainers; [viric];
diff --git a/pkgs/applications/search/grepcidr/default.nix b/pkgs/applications/search/grepcidr/default.nix
index 06b2aee03920..125e67938ecd 100644
--- a/pkgs/applications/search/grepcidr/default.nix
+++ b/pkgs/applications/search/grepcidr/default.nix
@@ -13,7 +13,7 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "Filter IPv4 and IPv6 addresses matching CIDR patterns";
-    homepage = http://www.pc-tools.net/unix/grepcidr/;
+    homepage = "http://www.pc-tools.net/unix/grepcidr/";
     license = licenses.gpl3;
     platforms = platforms.unix;
     maintainers = [ maintainers.fadenb ];
diff --git a/pkgs/applications/search/grepm/default.nix b/pkgs/applications/search/grepm/default.nix
index bad8d35623c0..d03d26d00004 100644
--- a/pkgs/applications/search/grepm/default.nix
+++ b/pkgs/applications/search/grepm/default.nix
@@ -25,7 +25,7 @@ stdenv.mkDerivation {
   
   meta = with stdenv.lib; {
     description = "Wrapper for grepmail utilizing mutt";
-    homepage = http://www.barsnick.net/sw/grepm.html;
+    homepage = "http://www.barsnick.net/sw/grepm.html";
     license = licenses.free;
     platforms = platforms.unix;
     maintainers = [ maintainers.romildo ];
diff --git a/pkgs/applications/search/recoll/default.nix b/pkgs/applications/search/recoll/default.nix
index 06f3733c8f79..425e82000b79 100644
--- a/pkgs/applications/search/recoll/default.nix
+++ b/pkgs/applications/search/recoll/default.nix
@@ -69,7 +69,7 @@ stdenv.mkDerivation rec {
       Recoll is an Xapian frontend that can search through files, archive
       members, email attachments. 
     '';
-    homepage = https://www.lesbonscomptes.com/recoll/;
+    homepage = "https://www.lesbonscomptes.com/recoll/";
     license = licenses.gpl2;
     platforms = platforms.unix;
     maintainers = [ maintainers.jcumming ];
diff --git a/pkgs/applications/system/glances/default.nix b/pkgs/applications/system/glances/default.nix
index 946cc1125863..3dfec185b572 100644
--- a/pkgs/applications/system/glances/default.nix
+++ b/pkgs/applications/system/glances/default.nix
@@ -8,31 +8,18 @@
 
 buildPythonApplication rec {
   pname = "glances";
-  version = "3.1.3";
+  version = "3.1.4.1";
   disabled = isPyPy;
 
   src = fetchFromGitHub {
     owner = "nicolargo";
     repo = "glances";
     rev = "v${version}";
-    sha256 = "15yz8sbw3k3n0729g2zcwsxc5iyhkyrhqza6fnipxxpsskwgqbwp";
+    sha256 = "04dc3pwj9qbbhxpihf13ckdgwz0qc771c7v7awni4vyzk3a9cdfb";
   };
 
   # Some tests fail in the sandbox (they e.g. require access to /sys/class/power_supply):
-  patches = lib.optional (doCheck && stdenv.isLinux) ./skip-failing-tests.patch
-    ++ [
-      (fetchpatch {
-        # Correct unitest
-        url = "https://github.com/nicolargo/glances/commit/abf64ffde31113f5f46ef286703ff061fc57395f.patch";
-        sha256 = "00krahqq89jvbgrqx2359cndmvq5maffhpj163z10s1n7q80kxp1";
-      })
-
-      (fetchpatch {
-        # Fix IP plugin initialization issue
-        url = "https://github.com/nicolargo/glances/commit/48cb5ef8053d823302e7e53490fb22cec2fabb0f.patch";
-        sha256 = "1590qgcr8w3d9ddpgd9mk5j6q6aq29341vr8bi202yjwwiv2bia9";
-      })
-    ];
+  patches = lib.optional (doCheck && stdenv.isLinux) ./skip-failing-tests.patch;
 
   # On Darwin this package segfaults due to mismatch of pure and impure
   # CoreFoundation. This issues was solved for binaries but for interpreted
@@ -64,6 +51,7 @@ buildPythonApplication rec {
   meta = with lib; {
     homepage = "https://nicolargo.github.io/glances/";
     description = "Cross-platform curses-based monitoring tool";
+    changelog = "https://github.com/nicolargo/glances/releases/tag/v${version}";
     license = licenses.lgpl3;
     maintainers = with maintainers; [ jonringer primeos koral ];
   };
diff --git a/pkgs/applications/system/glances/skip-failing-tests.patch b/pkgs/applications/system/glances/skip-failing-tests.patch
index e3116af6a2c2..f47f1218aea5 100644
--- a/pkgs/applications/system/glances/skip-failing-tests.patch
+++ b/pkgs/applications/system/glances/skip-failing-tests.patch
@@ -50,11 +50,3 @@ diff --git a/unitest.py b/unitest.py
      def test_006_swap(self):
          """Check MEMSWAP plugin."""
          stats_to_check = ['used', 'free', 'total']
-@@ -191,6 +196,7 @@ class TestGlances(unittest.TestCase):
-         self.assertTrue(type(stats_grab) is list, msg='Folders stats is not a list')
-         print('INFO: Folders stats: %s' % stats_grab)
- 
-+    @unittest.skip("Fails on NixOS (TODO)")
-     def test_012_ip(self):
-         """Check IP plugin."""
-         print('INFO: [TEST_012] Check IP stats')
diff --git a/pkgs/applications/system/monitor/default.nix b/pkgs/applications/system/monitor/default.nix
index 139a49d95053..3b3f1da1309a 100644
--- a/pkgs/applications/system/monitor/default.nix
+++ b/pkgs/applications/system/monitor/default.nix
@@ -18,13 +18,14 @@
 
 stdenv.mkDerivation rec {
   pname = "monitor";
-  version = "0.6.2";
+  version = "0.7.1";
 
   src = fetchFromGitHub {
     owner = "stsdc";
     repo = "monitor";
     rev = version;
-    sha256 = "0cqzxlzdbij26qgbbngqx6njcpcymkgvm29b7ipldgkssxp1mkkg";
+    sha256 ="194s9rjh3yd2c3rf3zwxsxr2lwqfswjazj39yiyccy0wcxmxpv34";
+    fetchSubmodules = true;
   };
 
   nativeBuildInputs = [
@@ -61,6 +62,11 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "Manage processes and monitor system resources";
+    longDescription = ''
+      Manage processes and monitor system resources.
+      To use the wingpanel indicator in this application, see the Pantheon
+      section in the NixOS manual.
+    '';
     homepage = "https://github.com/stsdc/monitor";
     maintainers = with maintainers; [ kjuvi ] ++ pantheon.maintainers;
     platforms = platforms.linux;
diff --git a/pkgs/applications/version-management/arch/default.nix b/pkgs/applications/version-management/arch/default.nix
index bc62004065b3..c161d8446acf 100644
--- a/pkgs/applications/version-management/arch/default.nix
+++ b/pkgs/applications/version-management/arch/default.nix
@@ -1,18 +1,19 @@
 { stdenv, fetchurl, which, diffutils, gnupatch, gnutar }:
 
 stdenv.mkDerivation rec {
-  name = "tla-1.3.5";
-  
+  pname = "tla";
+  version = "1.3.5";
+
   src = fetchurl {
-    url = "ftp://ftp.gnu.org/old-gnu/gnu-arch/" + name + ".tar.gz";
+    url = "https://ftp.gnu.org/old-gnu/gnu-arch/tla-${version}.tar.gz";
     sha256 = "01mfzj1i6p4s8191cgd5850hds1zls88hkf9rb6qx1vqjv585aj0";
   };
 
   patches = [ ./configure-tmpdir.patch ];
 
-  buildInputs = [which];
-  
-  propagatedBuildInputs = [diffutils gnupatch gnutar];
+  buildInputs = [ which ];
+
+  propagatedBuildInputs = [ diffutils gnupatch gnutar ];
 
   # Instead of GNU Autoconf, tla uses Tom Lord's now
   # defunct `package-framework'.
@@ -24,7 +25,7 @@ stdenv.mkDerivation rec {
 
   meta = {
     description = "GNU Arch (aka. `tla'), a distributed revision control system";
-    homepage = https://www.gnu.org/software/gnu-arch/;
+    homepage = "https://www.gnu.org/software/gnu-arch/";
     license = "GPL";
   };
 }
diff --git a/pkgs/applications/version-management/bazaar/default.nix b/pkgs/applications/version-management/bazaar/default.nix
index 097c1e86a897..fa0009d3ef03 100644
--- a/pkgs/applications/version-management/bazaar/default.nix
+++ b/pkgs/applications/version-management/bazaar/default.nix
@@ -28,7 +28,7 @@ python2Packages.buildPythonApplication rec {
   '';
 
   meta = with stdenv.lib; {
-    homepage = http://bazaar-vcs.org/;
+    homepage = "http://bazaar-vcs.org/";
     description = "A distributed version control system that Just Works";
     platforms = platforms.unix;
     license = licenses.gpl2Plus;
diff --git a/pkgs/applications/version-management/bazaar/tools.nix b/pkgs/applications/version-management/bazaar/tools.nix
index 0dfa19882028..d76260ad4be7 100644
--- a/pkgs/applications/version-management/bazaar/tools.nix
+++ b/pkgs/applications/version-management/bazaar/tools.nix
@@ -13,7 +13,7 @@ python2Packages.buildPythonApplication rec {
 
   meta = with stdenv.lib; {
     description = "Bazaar plugins";
-    homepage = http://wiki.bazaar.canonical.com/BzrTools;
+    homepage = "http://wiki.bazaar.canonical.com/BzrTools";
     platforms = platforms.unix;
     license = licenses.gpl2;
   };
diff --git a/pkgs/applications/version-management/bitkeeper/default.nix b/pkgs/applications/version-management/bitkeeper/default.nix
index e092a604142c..78f62ebcf25c 100644
--- a/pkgs/applications/version-management/bitkeeper/default.nix
+++ b/pkgs/applications/version-management/bitkeeper/default.nix
@@ -47,7 +47,7 @@ stdenv.mkDerivation rec {
       BitKeeper is a fast, enterprise-ready, distributed SCM that
       scales up to very large projects and down to tiny ones.
     '';
-    homepage    = https://www.bitkeeper.org/;
+    homepage    = "https://www.bitkeeper.org/";
     license     = stdenv.lib.licenses.asl20;
     platforms   = stdenv.lib.platforms.linux;
     maintainers = with stdenv.lib.maintainers; [ wscott thoughtpolice ];
diff --git a/pkgs/applications/version-management/cvs-fast-export/default.nix b/pkgs/applications/version-management/cvs-fast-export/default.nix
index fd4c9793d38b..5d3c3976f3ff 100644
--- a/pkgs/applications/version-management/cvs-fast-export/default.nix
+++ b/pkgs/applications/version-management/cvs-fast-export/default.nix
@@ -7,17 +7,17 @@ with stdenv; with lib;
 mkDerivation rec {
   name = "cvs-fast-export-${meta.version}";
   meta = {
-    version = "1.51";
+    version = "1.53";
     description = "Export an RCS or CVS history as a fast-import stream";
     license = licenses.gpl2Plus;
     maintainers = with maintainers; [ dfoxfranke ];
-    homepage = http://www.catb.org/esr/cvs-fast-export/;
+    homepage = "http://www.catb.org/esr/cvs-fast-export/";
     platforms = platforms.all;
   };
 
   src = fetchurl {
-    url = "http://www.catb.org/~esr/cvs-fast-export/cvs-fast-export-1.51.tar.gz";
-    sha256 = "0nn5cf8syb5nbjvkn8w561pk25clv187h4hs9pnc700g9w56chzf";
+    url = "http://www.catb.org/~esr/cvs-fast-export/cvs-fast-export-1.53.tar.gz";
+    sha256 = "01zda8qbi9cm2p23cxw0h5cx55ysr0v7dzzbpx9qa19wpv75kisb";
   };
 
   buildInputs = [
diff --git a/pkgs/applications/version-management/cvs/default.nix b/pkgs/applications/version-management/cvs/default.nix
index 2063149dd784..07a6b7c993c8 100644
--- a/pkgs/applications/version-management/cvs/default.nix
+++ b/pkgs/applications/version-management/cvs/default.nix
@@ -4,7 +4,7 @@ stdenv.mkDerivation {
   name = "cvs-1.12.13";
 
   src = fetchurl {
-    url = mirror://savannah/cvs/source/feature/1.12.13/cvs-1.12.13.tar.bz2;
+    url = "mirror://savannah/cvs/source/feature/1.12.13/cvs-1.12.13.tar.bz2";
     sha256 = "0pjir8cwn0087mxszzbsi1gyfc6373vif96cw4q3m1x6p49kd1bq";
   };
 
@@ -33,7 +33,7 @@ stdenv.mkDerivation {
   doCheck = false; # fails 1 of 1 tests
 
   meta = with stdenv.lib; {
-    homepage = http://cvs.nongnu.org;
+    homepage = "http://cvs.nongnu.org";
     description = "Concurrent Versions System - a source control system";
     license = licenses.gpl2; # library is GPLv2, main is GPLv1
     platforms = platforms.all;
diff --git a/pkgs/applications/version-management/cvs2svn/default.nix b/pkgs/applications/version-management/cvs2svn/default.nix
index 4c818060d220..68c4e72e5319 100644
--- a/pkgs/applications/version-management/cvs2svn/default.nix
+++ b/pkgs/applications/version-management/cvs2svn/default.nix
@@ -29,7 +29,7 @@ python2Packages.buildPythonApplication  rec {
 
   meta = with lib; {
     description = "A tool to convert CVS repositories to Subversion repositories";
-    homepage = http://cvs2svn.tigris.org/;
+    homepage = "http://cvs2svn.tigris.org/";
     maintainers = [ maintainers.makefu ];
     platforms = platforms.unix;
     license = licenses.asl20;
diff --git a/pkgs/applications/version-management/cvsps/default.nix b/pkgs/applications/version-management/cvsps/default.nix
index 71130a2e2830..133d8d7cbb4e 100644
--- a/pkgs/applications/version-management/cvsps/default.nix
+++ b/pkgs/applications/version-management/cvsps/default.nix
@@ -54,7 +54,7 @@ stdenv.mkDerivation rec {
       changes made to a collection of files, and all committed at the
       same time (using a single "cvs commit" command).
     '';
-    homepage = http://www.cobite.com/cvsps/;
+    homepage = "http://www.cobite.com/cvsps/";
     license = stdenv.lib.licenses.gpl2;
     platforms = stdenv.lib.platforms.unix;
   };
diff --git a/pkgs/applications/version-management/cvsq/default.nix b/pkgs/applications/version-management/cvsq/default.nix
index f9cabb94b978..a39c9ede5243 100644
--- a/pkgs/applications/version-management/cvsq/default.nix
+++ b/pkgs/applications/version-management/cvsq/default.nix
@@ -12,11 +12,11 @@
 
 stdenv.mkDerivation rec {
   pname = "cvsq";
-  version = "1.10";
+  version = "1.11";
 
   src = fetchurl {
     url = "http://www.linta.de/~aehlig/cvsq/cvsq-${version}.tgz";
-    sha256 = "1a2e5666d4d23f1eb673a505caeb771ac62a86ed69c9ab89c4e2696c2ccd0621";
+    sha256 = "0491k4skk3jyyd6plp2kcihmxxav9rsch7vd1yi697m2fqckp5ws";
   };
 
   nativeBuildInputs = [ makeWrapper ];
@@ -59,7 +59,7 @@ stdenv.mkDerivation rec {
       repository. This is useful for commands like log, diff, etc; however it cannot
       be used for commits (that's what cvsq is for).
     '';
-    homepage = https://www.linta.de/~aehlig/cvsq/;
+    homepage = "https://www.linta.de/~aehlig/cvsq/";
     license = stdenv.lib.licenses.bsd3;
     maintainers = with stdenv.lib.maintainers; [ clkamp ];
     platforms = stdenv.lib.platforms.all;
diff --git a/pkgs/applications/version-management/dvc/default.nix b/pkgs/applications/version-management/dvc/default.nix
index fe10551771cf..b9ac8b139cbb 100644
--- a/pkgs/applications/version-management/dvc/default.nix
+++ b/pkgs/applications/version-management/dvc/default.nix
@@ -59,7 +59,7 @@ buildPythonApplication rec {
   meta = with lib; {
     description = "Version Control System for Machine Learning Projects";
     license = licenses.asl20;
-    homepage = https://dvc.org;
+    homepage = "https://dvc.org";
     maintainers = with maintainers; [ cmcdragonkai ];
   };
 }
diff --git a/pkgs/applications/version-management/fossil/default.nix b/pkgs/applications/version-management/fossil/default.nix
index 8a41221a2671..fa715884b601 100644
--- a/pkgs/applications/version-management/fossil/default.nix
+++ b/pkgs/applications/version-management/fossil/default.nix
@@ -44,7 +44,7 @@ stdenv.mkDerivation rec {
       many such systems in use today. Fossil strives to distinguish itself
       from the others by being extremely simple to setup and operate.
     '';
-    homepage = http://www.fossil-scm.org/;
+    homepage = "http://www.fossil-scm.org/";
     license = stdenv.lib.licenses.bsd2;
     platforms = with stdenv.lib.platforms; all;
     maintainers = [ #Add your name here!
diff --git a/pkgs/applications/version-management/gerrit/default.nix b/pkgs/applications/version-management/gerrit/default.nix
index be84b7abc820..4382a638893e 100644
--- a/pkgs/applications/version-management/gerrit/default.nix
+++ b/pkgs/applications/version-management/gerrit/default.nix
@@ -2,11 +2,11 @@
 
 stdenv.mkDerivation rec {
   pname = "gerrit";
-  version = "3.1.2";
+  version = "3.1.4";
 
   src = fetchurl {
     url = "https://gerrit-releases.storage.googleapis.com/gerrit-${version}.war";
-    sha256 = "01hak4gqaqn40a0qvmg8a89ai3ndnjls5v64m8awig8j1yysz5vl";
+    sha256 = "1pi4252hsx1zcmarzzimds1pw34x3fwi96nh9xvxqvv2cjjlr2c1";
   };
 
   buildCommand = ''
@@ -14,6 +14,24 @@ stdenv.mkDerivation rec {
     ln -s ${src} "$out"/webapps/gerrit-${version}.war
   '';
 
+  passthru = {
+    # A list of plugins that are part of the gerrit.war file.
+    # Use `java -jar gerrit.war ls | grep plugins/` to generate that list.
+    plugins = [
+      "codemirror-editor"
+      "commit-message-length-validator"
+      "delete-project"
+      "download-commands"
+      "gitiles"
+      "hooks"
+      "plugin-manager"
+      "replication"
+      "reviewnotes"
+      "singleusergroup"
+      "webhooks"
+    ];
+  };
+
   meta = with stdenv.lib; {
     homepage = "https://www.gerritcodereview.com/index.md";
     license = licenses.asl20;
diff --git a/pkgs/applications/version-management/git-and-tools/bfg-repo-cleaner/default.nix b/pkgs/applications/version-management/git-and-tools/bfg-repo-cleaner/default.nix
index 0d7729684163..b225782f2864 100644
--- a/pkgs/applications/version-management/git-and-tools/bfg-repo-cleaner/default.nix
+++ b/pkgs/applications/version-management/git-and-tools/bfg-repo-cleaner/default.nix
@@ -27,7 +27,7 @@ in
     '';
 
     meta = with stdenv.lib; {
-      homepage = https://rtyley.github.io/bfg-repo-cleaner/;
+      homepage = "https://rtyley.github.io/bfg-repo-cleaner/";
       # Descriptions taken with minor modification from the homepage of bfg-repo-cleaner
       description = "Removes large or troublesome blobs in a git repository like git-filter-branch does, but faster";
       longDescription = ''
diff --git a/pkgs/applications/version-management/git-and-tools/bitbucket-server-cli/Gemfile.lock b/pkgs/applications/version-management/git-and-tools/bitbucket-server-cli/Gemfile.lock
index 61159eb3ee9e..27a6e2c8dd03 100644
--- a/pkgs/applications/version-management/git-and-tools/bitbucket-server-cli/Gemfile.lock
+++ b/pkgs/applications/version-management/git-and-tools/bitbucket-server-cli/Gemfile.lock
@@ -24,4 +24,4 @@ DEPENDENCIES
   atlassian-stash
 
 BUNDLED WITH
-   1.13.6
+   2.1.4
diff --git a/pkgs/applications/version-management/git-and-tools/bitbucket-server-cli/default.nix b/pkgs/applications/version-management/git-and-tools/bitbucket-server-cli/default.nix
index fda89e331809..68edb8503bfc 100644
--- a/pkgs/applications/version-management/git-and-tools/bitbucket-server-cli/default.nix
+++ b/pkgs/applications/version-management/git-and-tools/bitbucket-server-cli/default.nix
@@ -13,7 +13,7 @@ bundlerEnv rec {
 
   meta = with lib; {
     description = "A command line interface to interact with BitBucket Server (formerly Atlassian Stash)";
-    homepage    = https://bitbucket.org/atlassian/bitbucket-server-cli;
+    homepage    = "https://bitbucket.org/atlassian/bitbucket-server-cli";
     license     = licenses.mit;
     maintainers = with maintainers; [ jgertm nicknovitski ];
     platforms   = platforms.unix;
diff --git a/pkgs/applications/version-management/git-and-tools/cgit/default.nix b/pkgs/applications/version-management/git-and-tools/cgit/default.nix
index 203926550628..121a6cf64ea1 100644
--- a/pkgs/applications/version-management/git-and-tools/cgit/default.nix
+++ b/pkgs/applications/version-management/git-and-tools/cgit/default.nix
@@ -76,8 +76,8 @@ stdenv.mkDerivation rec {
   '';
 
   meta = {
-    homepage = https://git.zx2c4.com/cgit/about/;
-    repositories.git = git://git.zx2c4.com/cgit;
+    homepage = "https://git.zx2c4.com/cgit/about/";
+    repositories.git = "git://git.zx2c4.com/cgit";
     description = "Web frontend for git repositories";
     license = stdenv.lib.licenses.gpl2;
     platforms = stdenv.lib.platforms.linux;
diff --git a/pkgs/applications/version-management/git-and-tools/darcs-to-git/default.nix b/pkgs/applications/version-management/git-and-tools/darcs-to-git/default.nix
index 454458cdec66..22d289d549af 100644
--- a/pkgs/applications/version-management/git-and-tools/darcs-to-git/default.nix
+++ b/pkgs/applications/version-management/git-and-tools/darcs-to-git/default.nix
@@ -73,7 +73,7 @@ stdenv.mkDerivation {
 
   meta = {
     description = "Converts a Darcs repository into a Git repository";
-    homepage = http://www.sanityinc.com/articles/converting-darcs-repositories-to-git;
+    homepage = "http://www.sanityinc.com/articles/converting-darcs-repositories-to-git";
     license = stdenv.lib.licenses.mit;
     platforms = stdenv.lib.platforms.unix;
   };
diff --git a/pkgs/applications/version-management/git-and-tools/default.nix b/pkgs/applications/version-management/git-and-tools/default.nix
index a7008bf44b39..c591ef554ee4 100644
--- a/pkgs/applications/version-management/git-and-tools/default.nix
+++ b/pkgs/applications/version-management/git-and-tools/default.nix
@@ -68,8 +68,12 @@ let
   # support for bugzilla
   git-bz = callPackage ./git-bz { };
 
+  git-cinnabar = callPackage ./git-cinnabar { };
+
   git-codeowners = callPackage ./git-codeowners { };
 
+  git-codereview = callPackage ./git-codereview { };
+
   git-cola = callPackage ./git-cola { };
 
   git-crypt = callPackage ./git-crypt { };
@@ -138,6 +142,10 @@ let
 
   git-test = callPackage ./git-test { };
 
+  git-trim = callPackage ./git-trim {
+    inherit (darwin.apple_sdk.frameworks) Security;
+  };
+
   git-workspace = callPackage ./git-workspace {
     inherit (darwin.apple_sdk.frameworks) Security;
   };
@@ -159,26 +167,34 @@ let
 
   gita = python3Packages.callPackage ./gita {};
 
+  gitbatch = callPackage ./gitbatch { };
+
   gitflow = callPackage ./gitflow { };
 
   gitstatus = callPackage ./gitstatus { };
 
+  gitui = callPackage ./gitui {
+    inherit (darwin.apple_sdk.frameworks) Security;
+  };
+
   grv = callPackage ./grv { };
 
-  hub = callPackage ./hub {
-    inherit (darwin) Security;
-  };
+  hub = callPackage ./hub { };
 
   lab = callPackage ./lab { };
 
   lefthook = callPackage ./lefthook { };
 
+  legit = callPackage ./legit { };
+
   pass-git-helper = python3Packages.callPackage ./pass-git-helper { };
 
   pre-commit = pkgs.python3Packages.toPythonApplication pkgs.python3Packages.pre-commit;
 
   qgit = qt5.callPackage ./qgit { };
 
+  scmpuff = callPackage ./scmpuff { };
+
   stgit = callPackage ./stgit { };
 
   subgit = callPackage ./subgit { };
diff --git a/pkgs/applications/version-management/git-and-tools/delta/default.nix b/pkgs/applications/version-management/git-and-tools/delta/default.nix
index 91c448e78575..60950dc0465c 100644
--- a/pkgs/applications/version-management/git-and-tools/delta/default.nix
+++ b/pkgs/applications/version-management/git-and-tools/delta/default.nix
@@ -1,17 +1,26 @@
-{ lib, fetchFromGitHub, rustPlatform }:
+{ lib, fetchFromGitHub, rustPlatform, llvmPackages, installShellFiles }:
 
 rustPlatform.buildRustPackage rec {
   pname = "delta";
-  version = "0.0.16";
+  version = "0.1.1";
 
   src = fetchFromGitHub {
     owner = "dandavison";
     repo = pname;
     rev = version;
-    sha256 = "01jiqizg1ywvrrwhqzfqzbaqrzyfaqm66sixas0mpyzmd6cdwmh6";
+    sha256 = "1b5ap468d0gvgwkx6wqxvayzda2xw95lymd0kl38nq1fc0ica6hk";
   };
 
-  cargoSha256 = "0hah0qfgnl4w2h0djyh4xx1jks5dkzwin01qw001dqiasl60prn2";
+  LLVM_CONFIG_PATH = "${llvmPackages.llvm}/bin/llvm-config";
+  LIBCLANG_PATH = "${llvmPackages.libclang.lib}/lib";
+
+  cargoSha256 = "07mjl751r9d88fnmnan0ip0m3vxqf51vq2y7k3g3yywcgasj9jgr";
+
+  nativeBuildInputs = [ installShellFiles ];
+
+  postInstall = ''
+    installShellCompletion --bash --name delta.bash completion/bash/completion.sh
+  '';
 
   meta = with lib; {
     homepage = "https://github.com/dandavison/delta";
diff --git a/pkgs/applications/version-management/git-and-tools/diff-so-fancy/default.nix b/pkgs/applications/version-management/git-and-tools/diff-so-fancy/default.nix
index 96216e76fd31..c073edaee7d8 100644
--- a/pkgs/applications/version-management/git-and-tools/diff-so-fancy/default.nix
+++ b/pkgs/applications/version-management/git-and-tools/diff-so-fancy/default.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation rec {
   pname = "diff-so-fancy";
-  version = "1.2.7";
+  version = "1.3.0";
 
   src = fetchFromGitHub {
     owner = "so-fancy";
     repo = "diff-so-fancy";
     rev = "v${version}";
-    sha256 = "0y5cp236gi6h7llzai5d27086l4zz58mz1zs01r97xnnmjs9vw21";
+    sha256 = "0aavxahzha2mms4vdwysk79pa6wzswpfwgsq2hwaxnaf66maahfl";
   };
 
   # Perl is needed here for patchShebangs
@@ -35,7 +35,7 @@ stdenv.mkDerivation rec {
   '';
 
   meta = with stdenv.lib; {
-    homepage = https://github.com/so-fancy/diff-so-fancy;
+    homepage = "https://github.com/so-fancy/diff-so-fancy";
     description = "Good-looking diffs filter for git";
     license = licenses.mit;
     platforms = platforms.all;
diff --git a/pkgs/applications/version-management/git-and-tools/fast-export/default.nix b/pkgs/applications/version-management/git-and-tools/fast-export/default.nix
index c9fd33312d72..22009f10d44f 100644
--- a/pkgs/applications/version-management/git-and-tools/fast-export/default.nix
+++ b/pkgs/applications/version-management/git-and-tools/fast-export/default.nix
@@ -5,7 +5,7 @@ stdenv.mkDerivation rec {
   version = "190107";
 
   src = fetchgit {
-    url = git://repo.or.cz/fast-export.git;
+    url = "git://repo.or.cz/fast-export.git";
     rev = "v${version}";
     sha256 = "14azfps9jd5anivcvfwflgsvqdyy6gm9jy284kzx2ng9f7871d14";
   };
@@ -34,7 +34,7 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "Import mercurial into git";
-    homepage = https://repo.or.cz/w/fast-export.git;
+    homepage = "https://repo.or.cz/w/fast-export.git";
     license = licenses.gpl2;
     maintainers = [ maintainers.koral ];
     platforms = platforms.unix;
diff --git a/pkgs/applications/version-management/git-and-tools/gh/default.nix b/pkgs/applications/version-management/git-and-tools/gh/default.nix
index 03c7bdc1b6ea..597e0672073b 100644
--- a/pkgs/applications/version-management/git-and-tools/gh/default.nix
+++ b/pkgs/applications/version-management/git-and-tools/gh/default.nix
@@ -2,19 +2,19 @@
 
 buildGoModule rec {
   pname = "gh";
-  version = "0.6.0";
+  version = "0.7.0";
 
   src = fetchFromGitHub {
     owner = "cli";
     repo = "cli";
     rev = "v${version}";
-    sha256 = "0wqc9c30iydwylw53idff1ny2v410jcbhn7hpiinc4x5m3dy7827";
+    sha256 = "054mag8jgxkvx2f95ha10n45v4xv5lms69w76g95z18m62qhjcyl";
   };
 
-  modSha256 = "191ds0dkllc0l2lbqnwlca26js90b2g9f70jsid0zhmz3z9f1zh9";
+  modSha256 = "0v33x9bnwjfg4425vralnsb4i22c0g1rcmaga9911v0i7d51k0fn";
 
   buildFlagsArray = [
-    "-ldflags=-X github.com/cli/cli/command.Version=${version}"
+    "-ldflags=-s -w -X github.com/cli/cli/command.Version=${version}"
   ];
 
   subPackages = [ "cmd/gh" ];
diff --git a/pkgs/applications/version-management/git-and-tools/ghq/default.nix b/pkgs/applications/version-management/git-and-tools/ghq/default.nix
index d0c468ab68ea..f9d8eab8e55a 100644
--- a/pkgs/applications/version-management/git-and-tools/ghq/default.nix
+++ b/pkgs/applications/version-management/git-and-tools/ghq/default.nix
@@ -25,7 +25,7 @@ buildGoModule rec {
 
   meta = {
     description = "Remote repository management made easy";
-    homepage = https://github.com/x-motemen/ghq;
+    homepage = "https://github.com/x-motemen/ghq";
     maintainers = with stdenv.lib.maintainers; [ sigma ];
     license = stdenv.lib.licenses.mit;
   };
diff --git a/pkgs/applications/version-management/git-and-tools/git-annex-metadata-gui/default.nix b/pkgs/applications/version-management/git-and-tools/git-annex-metadata-gui/default.nix
index 3118eaab19b4..ad07a3dba3c8 100644
--- a/pkgs/applications/version-management/git-and-tools/git-annex-metadata-gui/default.nix
+++ b/pkgs/applications/version-management/git-and-tools/git-annex-metadata-gui/default.nix
@@ -18,7 +18,7 @@ buildPythonApplication rec {
   propagatedBuildInputs = [ pyqt5 git-annex-adapter ];
 
   meta = with stdenv.lib; {
-    homepage = https://github.com/alpernebbi/git-annex-metadata-gui;
+    homepage = "https://github.com/alpernebbi/git-annex-metadata-gui";
     description = "Graphical interface for git-annex metadata commands";
     maintainers = with maintainers; [ dotlambda ];
     license = licenses.gpl3Plus;
diff --git a/pkgs/applications/version-management/git-and-tools/git-annex-remote-dbx/default.nix b/pkgs/applications/version-management/git-and-tools/git-annex-remote-dbx/default.nix
index 8dd44287b509..addfd1f5041b 100644
--- a/pkgs/applications/version-management/git-and-tools/git-annex-remote-dbx/default.nix
+++ b/pkgs/applications/version-management/git-and-tools/git-annex-remote-dbx/default.nix
@@ -19,7 +19,7 @@ buildPythonApplication rec {
 
   meta = with lib; {
     description = "A git-annex special remote for Dropbox";
-    homepage = https://pypi.org/project/git-annex-remote-dbx/;
+    homepage = "https://pypi.org/project/git-annex-remote-dbx/";
     license = licenses.mit;
   };
 }
diff --git a/pkgs/applications/version-management/git-and-tools/git-annex-remote-rclone/default.nix b/pkgs/applications/version-management/git-and-tools/git-annex-remote-rclone/default.nix
index 5d4d9b86d83f..260e8024a8cc 100644
--- a/pkgs/applications/version-management/git-and-tools/git-annex-remote-rclone/default.nix
+++ b/pkgs/applications/version-management/git-and-tools/git-annex-remote-rclone/default.nix
@@ -24,7 +24,7 @@ stdenv.mkDerivation rec {
   '';
 
   meta = with stdenv.lib; {
-    homepage = https://github.com/DanielDent/git-annex-remote-rclone;
+    homepage = "https://github.com/DanielDent/git-annex-remote-rclone";
     description = "Use rclone supported cloud storage providers with git-annex";
     license = licenses.gpl3;
     maintainers = [ maintainers.montag451 ];
diff --git a/pkgs/applications/version-management/git-and-tools/git-annex-utils/default.nix b/pkgs/applications/version-management/git-and-tools/git-annex-utils/default.nix
index 081341957035..bcfc33e55e4c 100644
--- a/pkgs/applications/version-management/git-and-tools/git-annex-utils/default.nix
+++ b/pkgs/applications/version-management/git-and-tools/git-annex-utils/default.nix
@@ -4,7 +4,7 @@ stdenv.mkDerivation rec {
   pname = "git-annex-utils";
   version = "0.04-3-g531bb33";
   src = fetchgit {
-    url = http://git.mysteryvortex.com/repositories/git-annex-utils.git;
+    url = "http://git.mysteryvortex.com/repositories/git-annex-utils.git";
     rev = "531bb33";
     sha256 = "1sv7s2ykc840cjwbfn7ayy743643x9i1lvk4cd55w9l052xvzj65";
   };
@@ -17,7 +17,7 @@ stdenv.mkDerivation rec {
       This is a set of utilities that are handy to use with git-annex repositories.
       Currently there is only one utility gadu, a du like utility for annexed files.
     '';
-    homepage = http://git-annex.mysteryvortex.com/git-annex-utils.html;
+    homepage = "http://git-annex.mysteryvortex.com/git-annex-utils.html";
     license = stdenv.lib.licenses.gpl3;
     maintainers = with stdenv.lib.maintainers; [ woffs ];
     platforms = stdenv.lib.platforms.all;
diff --git a/pkgs/applications/version-management/git-and-tools/git-appraise/default.nix b/pkgs/applications/version-management/git-and-tools/git-appraise/default.nix
index daa0af43879d..7796f08c8a46 100644
--- a/pkgs/applications/version-management/git-and-tools/git-appraise/default.nix
+++ b/pkgs/applications/version-management/git-and-tools/git-appraise/default.nix
@@ -16,7 +16,7 @@ buildGoPackage rec {
 
   meta = {
     description = "Distributed code review system for Git repos";
-    homepage = https://github.com/google/git-appraise;
+    homepage = "https://github.com/google/git-appraise";
     license = stdenv.lib.licenses.asl20;
     platforms = stdenv.lib.platforms.all;
     maintainers = [ stdenv.lib.maintainers.vdemeester ];
diff --git a/pkgs/applications/version-management/git-and-tools/git-big-picture/default.nix b/pkgs/applications/version-management/git-and-tools/git-big-picture/default.nix
index 32b9c8a980dc..cd35c98a9696 100644
--- a/pkgs/applications/version-management/git-and-tools/git-big-picture/default.nix
+++ b/pkgs/applications/version-management/git-and-tools/git-big-picture/default.nix
@@ -22,7 +22,7 @@ python2Packages.buildPythonApplication rec {
 
   meta = {
     description = "Tool for visualization of Git repositories";
-    homepage = https://github.com/esc/git-big-picture;
+    homepage = "https://github.com/esc/git-big-picture";
     license = stdenv.lib.licenses.gpl3;
     platforms = stdenv.lib.platforms.linux;
     maintainers = [ stdenv.lib.maintainers.nthorne ];
diff --git a/pkgs/applications/version-management/git-and-tools/git-bug/default.nix b/pkgs/applications/version-management/git-and-tools/git-bug/default.nix
index fa3970c4b158..3ca25d6cf13e 100644
--- a/pkgs/applications/version-management/git-and-tools/git-bug/default.nix
+++ b/pkgs/applications/version-management/git-and-tools/git-bug/default.nix
@@ -1,35 +1,36 @@
-{ stdenv, buildGoPackage, fetchFromGitHub }:
+{ stdenv, buildGoModule, fetchFromGitHub }:
 
-buildGoPackage rec {
+buildGoModule rec {
   pname = "git-bug";
-  version = "0.6.0";
-  rev = "fc568209f073b9d775a09e0dbb8289cf9e5749bf";
+  version = "0.7.1"; # the `rev` below pins the version of the source to get
+  rev = "2d64b85db71a17ff3277bbbf7ac9d8e81f8e416c";
   goPackagePath = "github.com/MichaelMure/git-bug";
 
   src = fetchFromGitHub {
     inherit rev;
     owner = "MichaelMure";
     repo = "git-bug";
-    sha256 = "1s18lzip52qpf52ad6m20j306mr16vnwhz9f7rirsa6b7srmcgli";
+    sha256 = "01ab3mlwh5g1vr3x85fppflg18gb8ip9mjfsp2b5rfigd9lxyyns";
   };
 
+  modSha256 = "05wxvzsbhvz15596019vs7h09kynfsfjx3i5xyrl5xjzdxbaqbrq";
+
   buildFlagsArray = ''
-    -ldflags= 
+    -ldflags=
       -X ${goPackagePath}/commands.GitCommit=${rev}
       -X ${goPackagePath}/commands.GitLastTag=${version}
       -X ${goPackagePath}/commands.GitExactTag=${version}
   '';
 
   postInstall = ''
-    cd go/src/${goPackagePath}
-    install -D -m 0644 misc/bash_completion/git-bug "$bin/etc/bash_completion.d/git-bug"
-    install -D -m 0644 misc/zsh_completion/git-bug "$bin/share/zsh/site-functions/git-bug"
-    install -D -m 0644 -t "$bin/share/man/man1" doc/man/*
+    install -D -m 0644 misc/bash_completion/git-bug "$out/etc/bash_completion.d/git-bug"
+    install -D -m 0644 misc/zsh_completion/git-bug "$out/share/zsh/site-functions/git-bug"
+    install -D -m 0644 -t "$out/share/man/man1" doc/man/*
   '';
 
   meta = with stdenv.lib; {
     description = "Distributed bug tracker embedded in Git";
-    homepage = https://github.com/MichaelMure/git-bug;
+    homepage = "https://github.com/MichaelMure/git-bug";
     license = licenses.gpl3;
     platforms = platforms.all;
     maintainers = with maintainers; [ royneary ];
diff --git a/pkgs/applications/version-management/git-and-tools/git-bz/default.nix b/pkgs/applications/version-management/git-and-tools/git-bz/default.nix
index 5edf9a7b5a53..7f199894924e 100644
--- a/pkgs/applications/version-management/git-and-tools/git-bz/default.nix
+++ b/pkgs/applications/version-management/git-and-tools/git-bz/default.nix
@@ -47,7 +47,7 @@ stdenv.mkDerivation {
       Chromium on Linux.
     '';
     license = licenses.gpl2Plus;
-    homepage = http://git.fishsoup.net/cgit/git-bz/;
+    homepage = "http://git.fishsoup.net/cgit/git-bz/";
 
     platforms = platforms.linux;
   };
diff --git a/pkgs/applications/version-management/git-and-tools/git-cinnabar/default.nix b/pkgs/applications/version-management/git-and-tools/git-cinnabar/default.nix
new file mode 100644
index 000000000000..679e8dbdf507
--- /dev/null
+++ b/pkgs/applications/version-management/git-and-tools/git-cinnabar/default.nix
@@ -0,0 +1,50 @@
+{ stdenv, lib, fetchFromGitHub, autoconf, makeWrapper
+, curl, libiconv, mercurial, zlib
+}:
+
+let
+  python3 = mercurial.python;
+in
+
+stdenv.mkDerivation rec {
+  pname = "git-cinnabar";
+  version = "0.5.4";
+
+  src = fetchFromGitHub {
+    owner = "glandium";
+    repo = "git-cinnabar";
+    rev = version;
+    sha256 = "1cjn2cc6mj4m736wxab9s6qx83p5n5ha8cr3x84s9ra6rxs8d7pi";
+    fetchSubmodules = true;
+  };
+
+  nativeBuildInputs = [ autoconf makeWrapper ];
+  buildInputs = [ curl zlib ] ++ lib.optional stdenv.isDarwin libiconv;
+
+  # Ignore submodule status failing due to no git in environment.
+  makeFlags = [ "SUBMODULE_STATUS=yes" ];
+
+  enableParallelBuilding = true;
+
+  installPhase = ''
+    mkdir -p $out/bin $out/libexec
+    install git-cinnabar-helper $out/bin
+    install git-cinnabar git-remote-hg $out/libexec
+    cp -r cinnabar mercurial $out/libexec
+
+    for pythonBin in git-cinnabar git-remote-hg; do
+        makeWrapper $out/libexec/$pythonBin $out/bin/$pythonBin \
+            --prefix PATH : ${lib.getBin python3}/bin \
+            --prefix GIT_CINNABAR_EXPERIMENTS , python3 \
+            --set PYTHONPATH ${mercurial}/${python3.sitePackages}
+    done
+  '';
+
+  meta = with lib; {
+    homepage = "https://github.com/glandium/git-cinnabar";
+    description = "git remote helper to interact with mercurial repositories";
+    license = licenses.gpl2;
+    maintainers = with maintainers; [ qyliss ];
+    platforms = platforms.all;
+  };
+}
diff --git a/pkgs/applications/version-management/git-and-tools/git-codereview/default.nix b/pkgs/applications/version-management/git-and-tools/git-codereview/default.nix
new file mode 100644
index 000000000000..902814078485
--- /dev/null
+++ b/pkgs/applications/version-management/git-and-tools/git-codereview/default.nix
@@ -0,0 +1,21 @@
+{ lib, buildGoPackage, fetchFromGitHub }:
+
+buildGoPackage {
+  pname = "git-codereview";
+  version = "2020-01-15";
+  goPackagePath = "golang.org/x/review";
+
+  src = fetchFromGitHub {
+    owner = "golang";
+    repo = "review";
+    rev = "f51a73253c4da005cfdf18a036e11185c04c8ce3";
+    sha256 = "0c4vsyy5zp7pngqn4q87xipndghxyw2x57dkv1kxnrffckx1s3pc";
+  };
+
+  meta = with lib; {
+    description = "Manage the code review process for Git changes using a Gerrit server";
+    homepage = "https://golang.org/x/review/git-codereview";
+    license = licenses.bsd3;
+    maintainers = [ maintainers.edef ];
+  };
+}
diff --git a/pkgs/applications/version-management/git-and-tools/git-cola/default.nix b/pkgs/applications/version-management/git-and-tools/git-cola/default.nix
index 5d1a06e03974..858383f96641 100644
--- a/pkgs/applications/version-management/git-and-tools/git-cola/default.nix
+++ b/pkgs/applications/version-management/git-and-tools/git-cola/default.nix
@@ -27,7 +27,7 @@ in buildPythonApplication rec {
   '';
 
   meta = with stdenv.lib; {
-    homepage = https://github.com/git-cola/git-cola;
+    homepage = "https://github.com/git-cola/git-cola";
     description = "A sleek and powerful Git GUI";
     license = licenses.gpl2;
     platforms = platforms.linux;
diff --git a/pkgs/applications/version-management/git-and-tools/git-crypt/default.nix b/pkgs/applications/version-management/git-and-tools/git-crypt/default.nix
index df0b1e78d274..487f9b9625f4 100644
--- a/pkgs/applications/version-management/git-and-tools/git-crypt/default.nix
+++ b/pkgs/applications/version-management/git-and-tools/git-crypt/default.nix
@@ -33,7 +33,7 @@ stdenv.mkDerivation rec {
   '';
 
   meta = with stdenv.lib; {
-    homepage = https://www.agwa.name/projects/git-crypt;
+    homepage = "https://www.agwa.name/projects/git-crypt";
     description = "Transparent file encryption in git";
     longDescription = ''
       git-crypt enables transparent encryption and decryption of files in a git
diff --git a/pkgs/applications/version-management/git-and-tools/git-dit/default.nix b/pkgs/applications/version-management/git-and-tools/git-dit/default.nix
index 571125ee1134..9ec4e2530424 100644
--- a/pkgs/applications/version-management/git-and-tools/git-dit/default.nix
+++ b/pkgs/applications/version-management/git-and-tools/git-dit/default.nix
@@ -26,10 +26,7 @@ buildRustPackage rec {
     sha256 = "1sx6sc2dj3l61gbiqz8vfyhw5w4xjdyfzn1ixz0y8ipm579yc7a2";
   };
 
-  # Delete this on next update; see #79975 for details
-  legacyCargoFetcher = true;
-
-  cargoSha256 = "10852131aizfw9j1yl4gz180h4gd8y5ymx3wmf5v9cmqiqxy8bgy";
+  cargoSha256 = "1wjbwd3scx71l2fpxgvgwaw05lkpw13rm6d2i1x5crhs7py96ky6";
 
   nativeBuildInputs = [
     cmake
@@ -51,6 +48,10 @@ buildRustPackage rec {
   meta = with stdenv.lib; {
     inherit (src.meta) homepage;
     description = "Decentralized Issue Tracking for git";
+    # This has not had a release in years and its cargo vendored dependencies
+    # fail to compile. It also depends on an unsupported openssl:
+    # https://github.com/NixOS/nixpkgs/issues/77503
+    broken = true;
     license = licenses.gpl2;
     maintainers = with maintainers; [ Profpatsch matthiasbeyer ];
   };
diff --git a/pkgs/applications/version-management/git-and-tools/git-extras/default.nix b/pkgs/applications/version-management/git-and-tools/git-extras/default.nix
index cfdcd80f38b7..f2afdd941fe4 100644
--- a/pkgs/applications/version-management/git-and-tools/git-extras/default.nix
+++ b/pkgs/applications/version-management/git-and-tools/git-extras/default.nix
@@ -25,7 +25,7 @@ stdenv.mkDerivation rec {
   '';
 
   meta = with stdenv.lib; {
-    homepage = https://github.com/tj/git-extras;
+    homepage = "https://github.com/tj/git-extras";
     description = "GIT utilities -- repo summary, repl, changelog population, author commit percentages and more";
     license = licenses.mit;
     platforms = platforms.all;
diff --git a/pkgs/applications/version-management/git-and-tools/git-fame/Gemfile.lock b/pkgs/applications/version-management/git-and-tools/git-fame/Gemfile.lock
index 0ac7907fe55d..12c58d72103a 100644
--- a/pkgs/applications/version-management/git-and-tools/git-fame/Gemfile.lock
+++ b/pkgs/applications/version-management/git-and-tools/git-fame/Gemfile.lock
@@ -23,4 +23,4 @@ DEPENDENCIES
   git_fame
 
 BUNDLED WITH
-   1.14.6
+   2.1.4
diff --git a/pkgs/applications/version-management/git-and-tools/git-fame/default.nix b/pkgs/applications/version-management/git-and-tools/git-fame/default.nix
index f4aa4878f62f..782579c70446 100644
--- a/pkgs/applications/version-management/git-and-tools/git-fame/default.nix
+++ b/pkgs/applications/version-management/git-and-tools/git-fame/default.nix
@@ -13,7 +13,7 @@ bundlerEnv {
     description = ''
       A command-line tool that helps you summarize and pretty-print collaborators based on contributions
       '';
-    homepage    = http://oleander.io/git-fame-rb;
+    homepage    = "http://oleander.io/git-fame-rb";
     license     = licenses.mit;
     maintainers = with maintainers; [ expipiplus1 nicknovitski ];
     platforms   = platforms.unix;
diff --git a/pkgs/applications/version-management/git-and-tools/git-filter-repo/default.nix b/pkgs/applications/version-management/git-and-tools/git-filter-repo/default.nix
index af21296cffa4..0439669f9da5 100644
--- a/pkgs/applications/version-management/git-and-tools/git-filter-repo/default.nix
+++ b/pkgs/applications/version-management/git-and-tools/git-filter-repo/default.nix
@@ -2,11 +2,11 @@
 
 stdenv.mkDerivation rec {
   pname = "git-filter-repo";
-  version = "2.25.0";
+  version = "2.26.0";
 
   src = fetchurl {
     url = "https://github.com/newren/git-filter-repo/releases/download/v${version}/${pname}-${version}.tar.xz";
-    sha256 = "1772if8ajaw80dsdw4ic6vjw24dq0b9w87qlkn0iw4b8r9yxp37a";
+    sha256 = "15d07i66b090bhjfj9s4s2s38k75mhxmddzyn44bnnyb967w6yjk";
   };
 
   buildInputs = [ pythonPackages.python ];
diff --git a/pkgs/applications/version-management/git-and-tools/git-gone/default.nix b/pkgs/applications/version-management/git-and-tools/git-gone/default.nix
index aaf22c940cb1..32350fa538db 100644
--- a/pkgs/applications/version-management/git-and-tools/git-gone/default.nix
+++ b/pkgs/applications/version-management/git-and-tools/git-gone/default.nix
@@ -1,23 +1,27 @@
-{ stdenv, fetchFromGitHub, rustPlatform, pkgconfig, makeWrapper, openssl, git, libiconv, Security }:
+{ stdenv, fetchFromGitHub, rustPlatform, pkgconfig, makeWrapper, openssl, git, libiconv, Security, installShellFiles }:
 
 rustPlatform.buildRustPackage rec {
   pname = "git-gone";
-  version = "0.3.0";
+  version = "0.3.2";
 
   src = fetchFromGitHub {
     owner = "lunaryorn";
     repo = pname;
     rev = "v${version}";
-    sha256 = "05wlng563p9iy0ky3z23a4jakcix887fb45r7j2mk0fp5ykdjmzh";
+    sha256 = "0zc4cb1dg30np5yc4ymkr894qs2bk0r123i302md00niayk4njyd";
   };
 
-  cargoSha256 = "1scp9rzn59akxsf9p48j1zq6clbwdyasnyi4j28nj03ghvdv2i33";
+  cargoSha256 = "1d892889ml7sqyxzmjipq5fvizb4abqhmmn450qm7yam9fn5q5wf";
 
-  nativeBuildInputs = [ pkgconfig makeWrapper ];
+  nativeBuildInputs = [ pkgconfig makeWrapper installShellFiles ];
 
   buildInputs = [ openssl ]
     ++ stdenv.lib.optionals stdenv.isDarwin [ libiconv Security ];
 
+  postInstall = ''
+    installManPage git-gone.1
+  '';
+
   postFixup = ''
     wrapProgram $out/bin/git-gone --prefix PATH : "${stdenv.lib.makeBinPath [ git ]}"
   '';
diff --git a/pkgs/applications/version-management/git-and-tools/git-ignore/default.nix b/pkgs/applications/version-management/git-and-tools/git-ignore/default.nix
index d8125f604bf6..93d152baa003 100644
--- a/pkgs/applications/version-management/git-and-tools/git-ignore/default.nix
+++ b/pkgs/applications/version-management/git-and-tools/git-ignore/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchFromGitHub, rustPlatform, pkgconfig, openssl, darwin }:
+{ stdenv, fetchFromGitHub, installShellFiles, rustPlatform, pkgconfig, openssl, darwin }:
 
 with rustPlatform;
 
@@ -15,7 +15,7 @@ buildRustPackage rec {
 
   cargoSha256 = "0vcg2pl0s329fr8p23pwdx2jy7qahbr7n337ib61f69aaxi1xmq0";
 
-  nativeBuildInputs = [ pkgconfig ];
+  nativeBuildInputs = [ pkgconfig installShellFiles ];
   buildInputs = [ openssl ]
   ++ stdenv.lib.optionals stdenv.isDarwin [
     darwin.apple_sdk.frameworks.Security
@@ -23,13 +23,12 @@ buildRustPackage rec {
 
   outputs = [ "out" "man" ];
   preFixup = ''
-    mkdir -p "$man/man/man1"
-    cp target/release/build/git-ignore-*/out/git-ignore.1 "$man/man/man1/"
+    installManPage $releaseDir/build/git-ignore-*/out/git-ignore.1
   '';
 
   meta = with stdenv.lib; {
     description = "Quickly and easily fetch .gitignore templates from gitignore.io";
-    homepage = https://github.com/sondr3/git-ignore;
+    homepage = "https://github.com/sondr3/git-ignore";
     license = licenses.gpl3Plus;
     platforms = platforms.all;
     maintainers = [ maintainers.sondr3 ];
diff --git a/pkgs/applications/version-management/git-and-tools/git-imerge/default.nix b/pkgs/applications/version-management/git-and-tools/git-imerge/default.nix
index 528a96c9903a..721a7784e9ca 100644
--- a/pkgs/applications/version-management/git-and-tools/git-imerge/default.nix
+++ b/pkgs/applications/version-management/git-and-tools/git-imerge/default.nix
@@ -16,7 +16,7 @@ stdenv.mkDerivation rec {
   makeFlags = [ "PREFIX=" "DESTDIR=$(out)" ] ; 
  
   meta = with stdenv.lib; {
-    homepage = https://github.com/mhagger/git-imerge;
+    homepage = "https://github.com/mhagger/git-imerge";
     description = "Perform a merge between two branches incrementally";
     license = licenses.gpl2;
     platforms = platforms.all;
diff --git a/pkgs/applications/version-management/git-and-tools/git-machete/default.nix b/pkgs/applications/version-management/git-and-tools/git-machete/default.nix
index e420fe405cf0..42be3f7d3547 100644
--- a/pkgs/applications/version-management/git-and-tools/git-machete/default.nix
+++ b/pkgs/applications/version-management/git-and-tools/git-machete/default.nix
@@ -4,11 +4,11 @@
 
 buildPythonApplication rec {
   pname = "git-machete";
-  version = "2.13.5";
+  version = "2.13.6";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "1ll5l1f3vcib9a8qsqm8bfzz4g4q1dnr389x7x26kl13n6a50wib";
+    sha256 = "0n07gm05676vgfh6vlym59jwwzym9xmibhr0zpf0drlx02fr47qy";
   };
 
   nativeBuildInputs = [ installShellFiles pbr ];
@@ -24,8 +24,8 @@ buildPythonApplication rec {
   '';
 
   meta = with lib; {
-    homepage = https://github.com/VirtusLab/git-machete;
-    description = "Git repository organizer and rebase workflow automation tool";
+    homepage = "https://github.com/VirtusLab/git-machete";
+    description = "Git repository organizer and rebase/merge workflow automation tool";
     license = licenses.mit;
     platforms = platforms.all;
     maintainers = [ maintainers.blitz ];
diff --git a/pkgs/applications/version-management/git-and-tools/git-my/default.nix b/pkgs/applications/version-management/git-and-tools/git-my/default.nix
index 8a5ec250932d..2a8a262bf304 100644
--- a/pkgs/applications/version-management/git-and-tools/git-my/default.nix
+++ b/pkgs/applications/version-management/git-and-tools/git-my/default.nix
@@ -20,7 +20,7 @@ stdenv.mkDerivation rec {
   meta = with stdenv.lib; {
     description =
       "List remote branches if they're merged and/or available locally";
-    homepage = https://github.com/davidosomething/git-my;
+    homepage = "https://github.com/davidosomething/git-my";
     license = licenses.free;
     maintainers = with maintainers; [ bb010g ];
     platforms = platforms.all;
diff --git a/pkgs/applications/version-management/git-and-tools/git-octopus/default.nix b/pkgs/applications/version-management/git-and-tools/git-octopus/default.nix
index a7abd1eeaf46..d5278d9d2417 100644
--- a/pkgs/applications/version-management/git-and-tools/git-octopus/default.nix
+++ b/pkgs/applications/version-management/git-and-tools/git-octopus/default.nix
@@ -25,7 +25,7 @@ stdenv.mkDerivation rec {
   };
 
   meta = {
-    homepage = https://github.com/lesfurets/git-octopus;
+    homepage = "https://github.com/lesfurets/git-octopus";
     description = "The continuous merge workflow";
     license = licenses.lgpl3;
     platforms = platforms.unix;
diff --git a/pkgs/applications/version-management/git-and-tools/git-open/default.nix b/pkgs/applications/version-management/git-and-tools/git-open/default.nix
index 1cc3f365ea88..10f221b63882 100644
--- a/pkgs/applications/version-management/git-and-tools/git-open/default.nix
+++ b/pkgs/applications/version-management/git-and-tools/git-open/default.nix
@@ -23,7 +23,7 @@ stdenv.mkDerivation rec {
   '';
 
   meta = with stdenv.lib; {
-    homepage = https://github.com/paulirish/git-open;
+    homepage = "https://github.com/paulirish/git-open";
     description = "Open the GitHub page or website for a repository in your browser";
     license = licenses.mit;
     platforms = platforms.all;
diff --git a/pkgs/applications/version-management/git-and-tools/git-radar/default.nix b/pkgs/applications/version-management/git-and-tools/git-radar/default.nix
index 9fb9d4de6e3d..fc4b5850f5c7 100644
--- a/pkgs/applications/version-management/git-and-tools/git-radar/default.nix
+++ b/pkgs/applications/version-management/git-and-tools/git-radar/default.nix
@@ -20,7 +20,7 @@ stdenv.mkDerivation rec {
   '';
 
   meta = with stdenv.lib; {
-    homepage = https://github.com/michaeldfallen/git-radar;
+    homepage = "https://github.com/michaeldfallen/git-radar";
     license = licenses.mit;
     description = "A tool you can add to your prompt to provide at-a-glance information on your git repo";
     platforms = with platforms; linux ++ darwin;
diff --git a/pkgs/applications/version-management/git-and-tools/git-recent/default.nix b/pkgs/applications/version-management/git-and-tools/git-recent/default.nix
index 628c7dbac7f3..99b64e012eae 100644
--- a/pkgs/applications/version-management/git-and-tools/git-recent/default.nix
+++ b/pkgs/applications/version-management/git-and-tools/git-recent/default.nix
@@ -26,7 +26,7 @@ stdenv.mkDerivation rec {
   '';
 
   meta = with stdenv.lib; {
-    homepage = https://github.com/paulirish/git-recent;
+    homepage = "https://github.com/paulirish/git-recent";
     description = "See your latest local git branches, formatted real fancy";
     license = licenses.mit;
     platforms = platforms.all;
diff --git a/pkgs/applications/version-management/git-and-tools/git-remote-gcrypt/default.nix b/pkgs/applications/version-management/git-and-tools/git-remote-gcrypt/default.nix
index 4e6e450657d2..04787b0ce25b 100644
--- a/pkgs/applications/version-management/git-and-tools/git-remote-gcrypt/default.nix
+++ b/pkgs/applications/version-management/git-and-tools/git-remote-gcrypt/default.nix
@@ -27,7 +27,7 @@ stdenv.mkDerivation rec {
   '';
 
   meta = with stdenv.lib; {
-    homepage = https://spwhitton.name/tech/code/git-remote-gcrypt;
+    homepage = "https://spwhitton.name/tech/code/git-remote-gcrypt";
     description = "A git remote helper for GPG-encrypted remotes";
     license = licenses.gpl3;
     maintainers = with maintainers; [ ellis montag451 ];
diff --git a/pkgs/applications/version-management/git-and-tools/git-remote-hg/default.nix b/pkgs/applications/version-management/git-and-tools/git-remote-hg/default.nix
index 28e63c4f1662..37c06d3a85e2 100644
--- a/pkgs/applications/version-management/git-and-tools/git-remote-hg/default.nix
+++ b/pkgs/applications/version-management/git-and-tools/git-remote-hg/default.nix
@@ -27,7 +27,7 @@ stdenv.mkDerivation rec {
   '';
 
   meta = with lib; {
-    homepage = https://github.com/mnauw/git-remote-hg;
+    homepage = "https://github.com/mnauw/git-remote-hg";
     description = "Semi-official Mercurial bridge from Git project";
     license = licenses.gpl2;
     maintainers = [ ];
diff --git a/pkgs/applications/version-management/git-and-tools/git-secret/default.nix b/pkgs/applications/version-management/git-and-tools/git-secret/default.nix
index 8477dfac5856..140c2647be22 100644
--- a/pkgs/applications/version-management/git-and-tools/git-secret/default.nix
+++ b/pkgs/applications/version-management/git-and-tools/git-secret/default.nix
@@ -28,7 +28,7 @@ in stdenv.mkDerivation {
 
   meta = {
     description = "A bash-tool to store your private data inside a git repository";
-    homepage = https://git-secret.io;
+    homepage = "https://git-secret.io";
     license = stdenv.lib.licenses.mit;
     maintainers = [ stdenv.lib.maintainers.lo1tuma ];
     platforms = stdenv.lib.platforms.all;
diff --git a/pkgs/applications/version-management/git-and-tools/git-secrets/default.nix b/pkgs/applications/version-management/git-and-tools/git-secrets/default.nix
index 1da8f2a4a5ed..1beff2a118df 100644
--- a/pkgs/applications/version-management/git-and-tools/git-secrets/default.nix
+++ b/pkgs/applications/version-management/git-and-tools/git-secrets/default.nix
@@ -25,7 +25,7 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "Prevents you from committing secrets and credentials into git repositories";
-    homepage = https://github.com/awslabs/git-secrets;
+    homepage = "https://github.com/awslabs/git-secrets";
     license = licenses.asl20;
     platforms = platforms.all;
   };
diff --git a/pkgs/applications/version-management/git-and-tools/git-standup/default.nix b/pkgs/applications/version-management/git-and-tools/git-standup/default.nix
index c7488e84d5d0..ceb734f0f67f 100644
--- a/pkgs/applications/version-management/git-and-tools/git-standup/default.nix
+++ b/pkgs/applications/version-management/git-and-tools/git-standup/default.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation rec {
   pname = "git-standup";
-  version = "2.3.1";
+  version = "2.3.2";
 
   src = fetchFromGitHub {
     owner = "kamranahmedse";
     repo = pname;
     rev = version;
-    sha256 = "0wx9ypyxhpjbrasl6264jmj9fjrpg3gn93dg00cakabz3r7yxxq3";
+    sha256 = "1xnn0jjha56v7l2vj45zzxncl6m5x2hq6nkffgc1bcikhp1pidn7";
   };
 
   nativeBuildInputs = [ makeWrapper ];
diff --git a/pkgs/applications/version-management/git-and-tools/git-stree/default.nix b/pkgs/applications/version-management/git-and-tools/git-stree/default.nix
index ae40e011f858..dc636571acc0 100644
--- a/pkgs/applications/version-management/git-and-tools/git-stree/default.nix
+++ b/pkgs/applications/version-management/git-and-tools/git-stree/default.nix
@@ -19,7 +19,7 @@ stdenv.mkDerivation {
 
   meta = with lib; {
     description = "A better Git subtree helper command";
-    homepage = http://deliciousinsights.github.io/git-stree;
+    homepage = "http://deliciousinsights.github.io/git-stree";
     license = licenses.mit;
     maintainers = [ maintainers.benley ];
     platforms = platforms.unix;
diff --git a/pkgs/applications/version-management/git-and-tools/git-subrepo/default.nix b/pkgs/applications/version-management/git-and-tools/git-subrepo/default.nix
index 54543bb48419..708014e4af8d 100644
--- a/pkgs/applications/version-management/git-and-tools/git-subrepo/default.nix
+++ b/pkgs/applications/version-management/git-and-tools/git-subrepo/default.nix
@@ -49,7 +49,7 @@ stdenv.mkDerivation rec {
   '';
 
   meta = with stdenv.lib; {
-    homepage = https://github.com/ingydotnet/git-subrepo;
+    homepage = "https://github.com/ingydotnet/git-subrepo";
     description = "Git submodule alternative";
     license = licenses.mit;
     platforms = platforms.unix ++ platforms.darwin;
diff --git a/pkgs/applications/version-management/git-and-tools/git-subtrac/default.nix b/pkgs/applications/version-management/git-and-tools/git-subtrac/default.nix
index 07c63ea0119b..a5097697a867 100644
--- a/pkgs/applications/version-management/git-and-tools/git-subtrac/default.nix
+++ b/pkgs/applications/version-management/git-and-tools/git-subtrac/default.nix
@@ -2,13 +2,13 @@
 
 buildGoModule rec {
   pname = "git-subtrac";
-  version = "0.01";
+  version = "0.02";
 
   src = fetchFromGitHub {
     owner = "apenwarr";
     repo = pname;
     rev = "v${version}";
-    sha256 = "1w6gd0x1902lzpqr74gsdrnxq36f6v14bv8h0vhlrfhbwbsih7n6";
+    sha256 = "1nj950r38sxzrgw69m1xphm7a4km2g29iw2897gfx4wx57jl957k";
   };
 
   modSha256 = "147vzllp1gydk2156hif313vwykagrj35vaiqy1swqczxs7p9hhs";
diff --git a/pkgs/applications/version-management/git-and-tools/git-sync/default.nix b/pkgs/applications/version-management/git-and-tools/git-sync/default.nix
index 7fa15c668099..bba355095558 100644
--- a/pkgs/applications/version-management/git-and-tools/git-sync/default.nix
+++ b/pkgs/applications/version-management/git-and-tools/git-sync/default.nix
@@ -37,7 +37,7 @@ stdenv.mkDerivation rec {
 
   meta = {
     description = "A script to automatically synchronize a git repository";
-    homepage = https://github.com/simonthum/git-sync;
+    homepage = "https://github.com/simonthum/git-sync";
     maintainers = with stdenv.lib.maintainers; [ imalison ];
     license = stdenv.lib.licenses.cc0;
     platforms = with stdenv.lib.platforms; unix;
diff --git a/pkgs/applications/version-management/git-and-tools/git-test/default.nix b/pkgs/applications/version-management/git-and-tools/git-test/default.nix
index e55799c27521..27f9bcffa34e 100644
--- a/pkgs/applications/version-management/git-and-tools/git-test/default.nix
+++ b/pkgs/applications/version-management/git-and-tools/git-test/default.nix
@@ -25,7 +25,7 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "Test your commits";
-    homepage = https://github.com/spotify/git-test;
+    homepage = "https://github.com/spotify/git-test";
     license = licenses.asl20;
     maintainers = [ maintainers.marsam ];
     platforms = platforms.all;
diff --git a/pkgs/applications/version-management/git-and-tools/git-trim/default.nix b/pkgs/applications/version-management/git-and-tools/git-trim/default.nix
new file mode 100644
index 000000000000..d843cdc307c0
--- /dev/null
+++ b/pkgs/applications/version-management/git-and-tools/git-trim/default.nix
@@ -0,0 +1,33 @@
+{ stdenv, rustPlatform, fetchFromGitHub, pkg-config, openssl, libiconv, Security }:
+
+rustPlatform.buildRustPackage rec {
+  pname = "git-trim";
+  version = "0.3.2";
+
+  src = fetchFromGitHub {
+    owner = "foriequal0";
+    repo = pname;
+    rev = "v${version}";
+    sha256 = "079kavm3n776wvmy25jq1g4qdvmhh3d3x1vdpb1f6pw5rkky8lyw";
+  };
+
+  cargoSha256 = "1ii5l7z9avg0gzlaav2gnfbr8wkbp008i5rz6k6bs2sfqnpnn5k6";
+
+  nativeBuildInputs = [ pkg-config ];
+
+  buildInputs = [ openssl ] ++ stdenv.lib.optionals stdenv.isDarwin [ libiconv Security ];
+
+  postInstall = ''
+    install -Dm644 -t $out/share/man/man1/ docs/git-trim.1
+  '';
+
+  # fails with sandbox
+  doCheck = false;
+
+  meta = with stdenv.lib; {
+    description = "Automatically trims your branches whose tracking remote refs are merged or gone";
+    homepage = "https://github.com/foriequal0/git-trim";
+    license = licenses.mit;
+    maintainers = [ maintainers.marsam ];
+  };
+}
diff --git a/pkgs/applications/version-management/git-and-tools/git-workspace/default.nix b/pkgs/applications/version-management/git-and-tools/git-workspace/default.nix
index b93163e239ad..8894c4f0f7ad 100644
--- a/pkgs/applications/version-management/git-and-tools/git-workspace/default.nix
+++ b/pkgs/applications/version-management/git-and-tools/git-workspace/default.nix
@@ -6,16 +6,16 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "git-workspace";
-  version = "0.5.0";
+  version = "0.6.0";
 
   src = fetchFromGitHub {
     owner = "orf";
     repo = pname;
     rev = "v${version}";
-    sha256 = "0pl5z0gx2ypkrgq7vj1cxj5iwj06vcd06x3b3nh0g7w7q7nl8pr4";
+    sha256 = "0n025bnisg724d9pjcindxagj1ry63sxr0pplpkh2f2qffzm78pi";
   };
 
-  cargoSha256 = "1z4cb7rcb7ldj16xxynrjh4hg872rj39rbbp0vy15kdp3ifyi466";
+  cargoSha256 = "0ikyp6pdlw2c1gr1n1snjbdmblm0fs5swx5awy36jskii99q6kr1";
 
   buildInputs = with stdenv; lib.optional isDarwin Security;
 
diff --git a/pkgs/applications/version-management/git-and-tools/git/default.nix b/pkgs/applications/version-management/git-and-tools/git/default.nix
index 5ccd5c9c59ea..8b8dbef12ab4 100644
--- a/pkgs/applications/version-management/git-and-tools/git/default.nix
+++ b/pkgs/applications/version-management/git-and-tools/git/default.nix
@@ -21,7 +21,7 @@ assert sendEmailSupport -> perlSupport;
 assert svnSupport -> perlSupport;
 
 let
-  version = "2.25.1";
+  version = "2.26.2";
   svn = subversionClient.override { perlBindings = perlSupport; };
 
   gitwebPerlLibs = with perlPackages; [ CGI HTMLParser CGIFast FCGI FCGIProcManager HTMLTagCloud ];
@@ -33,7 +33,7 @@ stdenv.mkDerivation {
 
   src = fetchurl {
     url = "https://www.kernel.org/pub/software/scm/git/git-${version}.tar.xz";
-    sha256 = "09lzwa183nblr6l8ib35g2xrjf9wm9yhk3szfvyzkwivdv69c9r2";
+    sha256 = "0j685w6pzkn926z5nf5r8fij4ziipvw4c9yb0wc577nzf4j16rbd";
   };
 
   outputs = [ "out" ];
@@ -80,6 +80,8 @@ stdenv.mkDerivation {
   configureFlags = stdenv.lib.optionals (stdenv.buildPlatform != stdenv.hostPlatform) [
     "ac_cv_fread_reads_directories=yes"
     "ac_cv_snprintf_returns_bogus=no"
+    "ac_cv_iconv_omits_bom=no"
+    "ac_cv_prog_CURL_CONFIG=${curl.dev}/bin/curl-config"
   ];
 
   preBuild = ''
@@ -95,7 +97,15 @@ stdenv.mkDerivation {
   ++ stdenv.lib.optionals stdenv.isSunOS ["INSTALL=install" "NO_INET_NTOP=" "NO_INET_PTON="]
   ++ (if stdenv.isDarwin then ["NO_APPLE_COMMON_CRYPTO=1"] else ["sysconfdir=/etc"])
   ++ stdenv.lib.optionals stdenv.hostPlatform.isMusl ["NO_SYS_POLL_H=1" "NO_GETTEXT=YesPlease"]
-  ++ stdenv.lib.optional withpcre2 "USE_LIBPCRE2=1";
+  ++ stdenv.lib.optional withpcre2 "USE_LIBPCRE2=1"
+  # git-gui refuses to start with the version of tk distributed with
+  # macOS Catalina. We can prevent git from building the .app bundle
+  # by specifying an invalid tk framework. The postInstall step will
+  # then ensure that git-gui uses tcl/tk from nixpkgs, which is an
+  # acceptable version.
+  #
+  # See https://github.com/Homebrew/homebrew-core/commit/dfa3ccf1e7d3901e371b5140b935839ba9d8b706
+  ++ stdenv.lib.optional stdenv.isDarwin "TKFRAMEWORK=/nonexistent";
 
 
   postBuild = ''
@@ -181,7 +191,7 @@ stdenv.mkDerivation {
       ln -s $out/libexec/git-core/git-http-backend $out/bin/git-http-backend
     '' + stdenv.lib.optionalString perlSupport ''
       # wrap perl commands
-      makeWrapper "$out/share/git/contrib/credential/netrc/git-credential-netrc" $out/bin/git-credential-netrc \
+      makeWrapper "$out/share/git/contrib/credential/netrc/git-credential-netrc.perl" $out/bin/git-credential-netrc \
                   --set PERL5LIB   "$out/${perlPackages.perl.libPrefix}:${perlPackages.makePerlPath perlLibs}"
       wrapProgram $out/libexec/git-core/git-cvsimport \
                   --set GITPERLLIB "$out/${perlPackages.perl.libPrefix}:${perlPackages.makePerlPath perlLibs}"
@@ -232,7 +242,6 @@ stdenv.mkDerivation {
        for prog in bin/gitk libexec/git-core/{git-gui,git-citool,git-gui--askpass}; do
          sed -i -e "s|exec 'wish'|exec '${tk}/bin/wish'|g" \
                 -e "s|exec wish|exec '${tk}/bin/wish'|g" \
-                -e "s|exec \"[^\"]*/MacOS/Wish\"|exec '${tk}/bin/wish'|g" \
                 "$out/$prog"
        done
        ln -s $out/share/git/contrib/completion/git-completion.bash $out/share/bash-completion/completions/gitk
@@ -323,9 +332,10 @@ stdenv.mkDerivation {
 
 
   meta = {
-    homepage = https://git-scm.com/;
+    homepage = "https://git-scm.com/";
     description = "Distributed version control system";
     license = stdenv.lib.licenses.gpl2;
+    changelog = "https://raw.githubusercontent.com/git/git/${version}/Documentation/RelNotes/${version}.txt";
 
     longDescription = ''
       Git, a popular distributed version control system designed to
diff --git a/pkgs/applications/version-management/git-and-tools/git/update.sh b/pkgs/applications/version-management/git-and-tools/git/update.sh
index a9fa18be1558..54574722b02b 100755
--- a/pkgs/applications/version-management/git-and-tools/git/update.sh
+++ b/pkgs/applications/version-management/git-and-tools/git/update.sh
@@ -4,15 +4,16 @@
 set -eu -o pipefail
 
 oldVersion="$(nix-instantiate --eval -E "with import ./. {}; lib.getVersion git" | tr -d '"')"
-latestTag="$(git ls-remote --tags --sort="v:refname" git://github.com/git/git.git | grep -v '\{\}' | grep -v '\-rc' | tail -1 | sed 's|^.*/v\(.*\)|\1|')"
+latestTag="$(git ls-remote --tags --sort="v:refname" https://github.com/git/git.git | grep -v '\{\}' | grep -v '\-rc' | tail -1 | sed 's|^.*/v\(.*\)|\1|')"
+targetVersion="${1:-$latestTag}"
 
-if [ ! "${oldVersion}" = "${latestTag}" ]; then
-  update-source-version git "${latestTag}"
+if [ ! "${oldVersion}" = "${targetVersion}" ]; then
+  update-source-version git "${targetVersion}"
   nixpkgs="$(git rev-parse --show-toplevel)"
   default_nix="$nixpkgs/pkgs/applications/version-management/git-and-tools/git/default.nix"
   nix-build -A git
   git add "${default_nix}"
-  git commit -m "git: ${oldVersion} -> ${latestTag}"
+  git commit -m "git: ${oldVersion} -> ${targetVersion}"
 else
   echo "git is already up-to-date"
 fi
diff --git a/pkgs/applications/version-management/git-and-tools/git2cl/default.nix b/pkgs/applications/version-management/git-and-tools/git2cl/default.nix
index 036f8b4114e2..34417cfaa8c8 100644
--- a/pkgs/applications/version-management/git-and-tools/git2cl/default.nix
+++ b/pkgs/applications/version-management/git-and-tools/git2cl/default.nix
@@ -16,7 +16,7 @@ stdenv.mkDerivation {
   '';
 
   meta = {
-    homepage = https://savannah.nongnu.org/projects/git2cl;
+    homepage = "https://savannah.nongnu.org/projects/git2cl";
     description = "Convert git logs to GNU style ChangeLog files";
     platforms = stdenv.lib.platforms.unix;
   };
diff --git a/pkgs/applications/version-management/git-and-tools/gita/default.nix b/pkgs/applications/version-management/git-and-tools/gita/default.nix
index 22bd0e66c151..c9d188e10e5a 100644
--- a/pkgs/applications/version-management/git-and-tools/gita/default.nix
+++ b/pkgs/applications/version-management/git-and-tools/gita/default.nix
@@ -6,12 +6,12 @@
 }:
 
 buildPythonApplication rec {
-  version = "0.9.9";
+  version = "0.10.5";
   pname = "gita";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "1si2f9nyisbrvv8cvrjxj8r4cbrgc97ic0wdlbf34gvp020dsmgv";
+    sha256 = "1xggslmrrfszpl190klkc97fnl88gml1bnkmkzp6aimdch66g4jg";
   };
 
   propagatedBuildInputs = [
@@ -21,7 +21,7 @@ buildPythonApplication rec {
 
   meta = with lib; {
     description = "A command-line tool to manage multiple git repos";
-    homepage = https://github.com/nosarthur/gita;
+    homepage = "https://github.com/nosarthur/gita";
     license = licenses.mit;
     maintainers = with maintainers; [ seqizz ];
   };
diff --git a/pkgs/applications/version-management/git-and-tools/gitbatch/default.nix b/pkgs/applications/version-management/git-and-tools/gitbatch/default.nix
new file mode 100644
index 000000000000..2b372cc0e213
--- /dev/null
+++ b/pkgs/applications/version-management/git-and-tools/gitbatch/default.nix
@@ -0,0 +1,25 @@
+{ stdenv, buildGoPackage, fetchFromGitHub }:
+
+buildGoPackage rec {
+  pname = "gitbatch-unstable";
+  version = "2019-12-19";
+
+  goPackagePath = "github.com/isacikgoz/gitbatch";
+
+  goDeps = ./deps.nix;
+
+  src = fetchFromGitHub {
+    owner = "isacikgoz";
+    repo = "gitbatch";
+    rev = "381b0df7f86056c625c0d4d2d979733c1ee5def7";
+    sha256 = "sha256:0613vfqdn3k0w7fm25rqnqdr67w9vii3i56dfslqcn1vqjfrff3q";
+  };
+
+  meta = with stdenv.lib; {
+    description = "Running git UI commands";
+    homepage = "https://github.com/isacikgoz/gitbatch";
+    license = licenses.mit;
+    maintainers = with maintainers; [ teto ];
+    platforms = with platforms; linux;
+  };
+}
diff --git a/pkgs/applications/version-management/git-and-tools/gitbatch/deps.nix b/pkgs/applications/version-management/git-and-tools/gitbatch/deps.nix
new file mode 100644
index 000000000000..53784b4eacf0
--- /dev/null
+++ b/pkgs/applications/version-management/git-and-tools/gitbatch/deps.nix
@@ -0,0 +1,543 @@
+# file generated from go.mod using vgo2nix (https://github.com/adisbladis/vgo2nix)
+[
+  {
+    goPackagePath = "github.com/alcortesm/tgz";
+    fetch = {
+      type = "git";
+      url = "https://github.com/alcortesm/tgz";
+      rev = "9c5fe88206d7";
+      sha256 = "04dcwnz2c2i4wbq2vx3g2wrdgqpncr2r1h6p1k08rdwk4bq1h8c5";
+    };
+  }
+  {
+    goPackagePath = "github.com/alecthomas/template";
+    fetch = {
+      type = "git";
+      url = "https://github.com/alecthomas/template";
+      rev = "a0175ee3bccc";
+      sha256 = "0qjgvvh26vk1cyfq9fadyhfgdj36f1iapbmr5xp6zqipldz8ffxj";
+    };
+  }
+  {
+    goPackagePath = "github.com/alecthomas/units";
+    fetch = {
+      type = "git";
+      url = "https://github.com/alecthomas/units";
+      rev = "2efee857e7cf";
+      sha256 = "1j65b91qb9sbrml9cpabfrcf07wmgzzghrl7809hjjhrmbzri5bl";
+    };
+  }
+  {
+    goPackagePath = "github.com/anmitsu/go-shlex";
+    fetch = {
+      type = "git";
+      url = "https://github.com/anmitsu/go-shlex";
+      rev = "648efa622239";
+      sha256 = "10rgdp5d106iisgz25ic8k6f44s9adh4sjh6fyxq9ccm21gw49b7";
+    };
+  }
+  {
+    goPackagePath = "github.com/armon/consul-api";
+    fetch = {
+      type = "git";
+      url = "https://github.com/armon/consul-api";
+      rev = "eb2c6b5be1b6";
+      sha256 = "1j6fdr1sg36qy4n4xjl7brq739fpm5npq98cmvklzjc9qrx98nk9";
+    };
+  }
+  {
+    goPackagePath = "github.com/coreos/etcd";
+    fetch = {
+      type = "git";
+      url = "https://github.com/coreos/etcd";
+      rev = "v3.3.10";
+      sha256 = "1x2ii1hj8jraba8rbxz6dmc03y3sjxdnzipdvg6fywnlq1f3l3wl";
+    };
+  }
+  {
+    goPackagePath = "github.com/coreos/go-etcd";
+    fetch = {
+      type = "git";
+      url = "https://github.com/coreos/go-etcd";
+      rev = "v2.0.0";
+      sha256 = "1xb34hzaa1lkbq5vkzy9vcz6gqwj7hp6cdbvyack2bf28dwn33jj";
+    };
+  }
+  {
+    goPackagePath = "github.com/coreos/go-semver";
+    fetch = {
+      type = "git";
+      url = "https://github.com/coreos/go-semver";
+      rev = "v0.2.0";
+      sha256 = "1gghi5bnqj50hfxhqc1cxmynqmh2yk9ii7ab9gsm75y5cp94ymk0";
+    };
+  }
+  {
+    goPackagePath = "github.com/davecgh/go-spew";
+    fetch = {
+      type = "git";
+      url = "https://github.com/davecgh/go-spew";
+      rev = "v1.1.1";
+      sha256 = "0hka6hmyvp701adzag2g26cxdj47g21x6jz4sc6jjz1mn59d474y";
+    };
+  }
+  {
+    goPackagePath = "github.com/emirpasic/gods";
+    fetch = {
+      type = "git";
+      url = "https://github.com/emirpasic/gods";
+      rev = "v1.9.0";
+      sha256 = "1zhkppqzy149fp561pif8d5d92jd9chl3l9z4yi5f8n60ibdmmjf";
+    };
+  }
+  {
+    goPackagePath = "github.com/fatih/color";
+    fetch = {
+      type = "git";
+      url = "https://github.com/fatih/color";
+      rev = "v1.7.0";
+      sha256 = "0v8msvg38r8d1iiq2i5r4xyfx0invhc941kjrsg5gzwvagv55inv";
+    };
+  }
+  {
+    goPackagePath = "github.com/flynn/go-shlex";
+    fetch = {
+      type = "git";
+      url = "https://github.com/flynn/go-shlex";
+      rev = "3f9db97f8568";
+      sha256 = "1j743lysygkpa2s2gii2xr32j7bxgc15zv4113b0q9jhn676ysia";
+    };
+  }
+  {
+    goPackagePath = "github.com/fsnotify/fsnotify";
+    fetch = {
+      type = "git";
+      url = "https://github.com/fsnotify/fsnotify";
+      rev = "v1.4.7";
+      sha256 = "07va9crci0ijlivbb7q57d2rz9h27zgn2fsm60spjsqpdbvyrx4g";
+    };
+  }
+  {
+    goPackagePath = "github.com/gliderlabs/ssh";
+    fetch = {
+      type = "git";
+      url = "https://github.com/gliderlabs/ssh";
+      rev = "v0.1.1";
+      sha256 = "0bylkc7yg8bxxffhchikcnzwli5n95cfmbji6v2a4mn1h5n36mdm";
+    };
+  }
+  {
+    goPackagePath = "github.com/google/go-cmp";
+    fetch = {
+      type = "git";
+      url = "https://github.com/google/go-cmp";
+      rev = "v0.2.0";
+      sha256 = "1fbv0x27k9sn8svafc0hjwsnckk864lv4yi7bvzrxvmd3d5hskds";
+    };
+  }
+  {
+    goPackagePath = "github.com/hashicorp/hcl";
+    fetch = {
+      type = "git";
+      url = "https://github.com/hashicorp/hcl";
+      rev = "v1.0.0";
+      sha256 = "0q6ml0qqs0yil76mpn4mdx4lp94id8vbv575qm60jzl1ijcl5i66";
+    };
+  }
+  {
+    goPackagePath = "github.com/jbenet/go-context";
+    fetch = {
+      type = "git";
+      url = "https://github.com/jbenet/go-context";
+      rev = "d14ea06fba99";
+      sha256 = "0q91f5549n81w3z5927n4a1mdh220bdmgl42zi3h992dcc4ls0sl";
+    };
+  }
+  {
+    goPackagePath = "github.com/jessevdk/go-flags";
+    fetch = {
+      type = "git";
+      url = "https://github.com/jessevdk/go-flags";
+      rev = "v1.4.0";
+      sha256 = "0algnnigph27spgn655zm4723yfjxjjvlf4k14z9drj3682df25a";
+    };
+  }
+  {
+    goPackagePath = "github.com/jroimartin/gocui";
+    fetch = {
+      type = "git";
+      url = "https://github.com/jroimartin/gocui";
+      rev = "v0.4.0";
+      sha256 = "1b1cbjg925l1c5v3ls8amni9716190yzf847cqs9wjnj82z8qa47";
+    };
+  }
+  {
+    goPackagePath = "github.com/kevinburke/ssh_config";
+    fetch = {
+      type = "git";
+      url = "https://github.com/kevinburke/ssh_config";
+      rev = "81db2a75821e";
+      sha256 = "0hwmv2h83aa7r6l7yqwsxdyldnlhb4gbbkc3ww9nys7impjcjnsp";
+    };
+  }
+  {
+    goPackagePath = "github.com/konsorten/go-windows-terminal-sequences";
+    fetch = {
+      type = "git";
+      url = "https://github.com/konsorten/go-windows-terminal-sequences";
+      rev = "v1.0.1";
+      sha256 = "1lchgf27n276vma6iyxa0v1xds68n2g8lih5lavqnx5x6q5pw2ip";
+    };
+  }
+  {
+    goPackagePath = "github.com/kr/pretty";
+    fetch = {
+      type = "git";
+      url = "https://github.com/kr/pretty";
+      rev = "v0.1.0";
+      sha256 = "18m4pwg2abd0j9cn5v3k2ksk9ig4vlwxmlw9rrglanziv9l967qp";
+    };
+  }
+  {
+    goPackagePath = "github.com/kr/pty";
+    fetch = {
+      type = "git";
+      url = "https://github.com/kr/pty";
+      rev = "v1.1.1";
+      sha256 = "0383f0mb9kqjvncqrfpidsf8y6ns5zlrc91c6a74xpyxjwvzl2y6";
+    };
+  }
+  {
+    goPackagePath = "github.com/kr/text";
+    fetch = {
+      type = "git";
+      url = "https://github.com/kr/text";
+      rev = "v0.1.0";
+      sha256 = "1gm5bsl01apvc84bw06hasawyqm4q84vx1pm32wr9jnd7a8vjgj1";
+    };
+  }
+  {
+    goPackagePath = "github.com/magiconair/properties";
+    fetch = {
+      type = "git";
+      url = "https://github.com/magiconair/properties";
+      rev = "v1.8.0";
+      sha256 = "1a10362wv8a8qwb818wygn2z48lgzch940hvpv81hv8gc747ajxn";
+    };
+  }
+  {
+    goPackagePath = "github.com/mattn/go-colorable";
+    fetch = {
+      type = "git";
+      url = "https://github.com/mattn/go-colorable";
+      rev = "v0.1.1";
+      sha256 = "0l640974j804c1yyjfgyxqlsivz0yrzmbql4mhcw2azryigkp08p";
+    };
+  }
+  {
+    goPackagePath = "github.com/mattn/go-isatty";
+    fetch = {
+      type = "git";
+      url = "https://github.com/mattn/go-isatty";
+      rev = "v0.0.7";
+      sha256 = "1i77aq4gf9as03m8fpfh8fq49n4z9j7548blrcsidm1xhslzk5xd";
+    };
+  }
+  {
+    goPackagePath = "github.com/mattn/go-runewidth";
+    fetch = {
+      type = "git";
+      url = "https://github.com/mattn/go-runewidth";
+      rev = "v0.0.4";
+      sha256 = "00b3ssm7wiqln3k54z2wcnxr3k3c7m1ybyhb9h8ixzbzspld0qzs";
+    };
+  }
+  {
+    goPackagePath = "github.com/mitchellh/go-homedir";
+    fetch = {
+      type = "git";
+      url = "https://github.com/mitchellh/go-homedir";
+      rev = "v1.0.0";
+      sha256 = "0f0z0aa4wivk4z1y503dmnw0k0g0g403dly8i4q263gfshs82sbq";
+    };
+  }
+  {
+    goPackagePath = "github.com/mitchellh/mapstructure";
+    fetch = {
+      type = "git";
+      url = "https://github.com/mitchellh/mapstructure";
+      rev = "v1.1.2";
+      sha256 = "03bpv28jz9zhn4947saqwi328ydj7f6g6pf1m2d4m5zdh5jlfkrr";
+    };
+  }
+  {
+    goPackagePath = "github.com/nsf/termbox-go";
+    fetch = {
+      type = "git";
+      url = "https://github.com/nsf/termbox-go";
+      rev = "288510b9734e";
+      sha256 = "0hdyisfaf8yb55h3p03p4sbq19546mp9fy28f2kn659mycmhxqk4";
+    };
+  }
+  {
+    goPackagePath = "github.com/pelletier/go-buffruneio";
+    fetch = {
+      type = "git";
+      url = "https://github.com/pelletier/go-buffruneio";
+      rev = "v0.2.0";
+      sha256 = "0l83p1gg6g5mmhmxjisrhfimhbm71lwn1r2w7d6siwwqm9q08sd2";
+    };
+  }
+  {
+    goPackagePath = "github.com/pelletier/go-toml";
+    fetch = {
+      type = "git";
+      url = "https://github.com/pelletier/go-toml";
+      rev = "v1.2.0";
+      sha256 = "1fjzpcjng60mc3a4b2ql5a00d5gah84wj740dabv9kq67mpg8fxy";
+    };
+  }
+  {
+    goPackagePath = "github.com/pkg/errors";
+    fetch = {
+      type = "git";
+      url = "https://github.com/pkg/errors";
+      rev = "v0.8.0";
+      sha256 = "001i6n71ghp2l6kdl3qq1v2vmghcz3kicv9a5wgcihrzigm75pp5";
+    };
+  }
+  {
+    goPackagePath = "github.com/pmezard/go-difflib";
+    fetch = {
+      type = "git";
+      url = "https://github.com/pmezard/go-difflib";
+      rev = "v1.0.0";
+      sha256 = "0c1cn55m4rypmscgf0rrb88pn58j3ysvc2d0432dp3c6fqg6cnzw";
+    };
+  }
+  {
+    goPackagePath = "github.com/sergi/go-diff";
+    fetch = {
+      type = "git";
+      url = "https://github.com/sergi/go-diff";
+      rev = "v1.0.0";
+      sha256 = "0swiazj8wphs2zmk1qgq75xza6m19snif94h2m6fi8dqkwqdl7c7";
+    };
+  }
+  {
+    goPackagePath = "github.com/sirupsen/logrus";
+    fetch = {
+      type = "git";
+      url = "https://github.com/sirupsen/logrus";
+      rev = "v1.4.0";
+      sha256 = "1y1qjcg19z7q9sy32rhc148kdql2aw7xkcm9d6r1blrl0mdgpx0w";
+    };
+  }
+  {
+    goPackagePath = "github.com/spf13/afero";
+    fetch = {
+      type = "git";
+      url = "https://github.com/spf13/afero";
+      rev = "v1.1.2";
+      sha256 = "0miv4faf5ihjfifb1zv6aia6f6ik7h1s4954kcb8n6ixzhx9ck6k";
+    };
+  }
+  {
+    goPackagePath = "github.com/spf13/cast";
+    fetch = {
+      type = "git";
+      url = "https://github.com/spf13/cast";
+      rev = "v1.3.0";
+      sha256 = "0xq1ffqj8y8h7dcnm0m9lfrh0ga7pssnn2c1dnr09chqbpn4bdc5";
+    };
+  }
+  {
+    goPackagePath = "github.com/spf13/jwalterweatherman";
+    fetch = {
+      type = "git";
+      url = "https://github.com/spf13/jwalterweatherman";
+      rev = "v1.0.0";
+      sha256 = "093fmmvavv84pv4q84hav7ph3fmrq87bvspjj899q0qsx37yvdr8";
+    };
+  }
+  {
+    goPackagePath = "github.com/spf13/pflag";
+    fetch = {
+      type = "git";
+      url = "https://github.com/spf13/pflag";
+      rev = "v1.0.3";
+      sha256 = "1cj3cjm7d3zk0mf1xdybh0jywkbbw7a6yr3y22x9sis31scprswd";
+    };
+  }
+  {
+    goPackagePath = "github.com/spf13/viper";
+    fetch = {
+      type = "git";
+      url = "https://github.com/spf13/viper";
+      rev = "v1.3.2";
+      sha256 = "1829hvf805kda65l59r17wvid7y0vr390s23zfhf4w7vdb4wp3zh";
+    };
+  }
+  {
+    goPackagePath = "github.com/src-d/gcfg";
+    fetch = {
+      type = "git";
+      url = "https://github.com/src-d/gcfg";
+      rev = "v1.4.0";
+      sha256 = "044j95skmyrwjw5fwjk6ka32rjgsg0ar0mfp9np19sh1acwv4x4r";
+    };
+  }
+  {
+    goPackagePath = "github.com/stretchr/objx";
+    fetch = {
+      type = "git";
+      url = "https://github.com/stretchr/objx";
+      rev = "v0.1.1";
+      sha256 = "0iph0qmpyqg4kwv8jsx6a56a7hhqq8swrazv40ycxk9rzr0s8yls";
+    };
+  }
+  {
+    goPackagePath = "github.com/stretchr/testify";
+    fetch = {
+      type = "git";
+      url = "https://github.com/stretchr/testify";
+      rev = "v1.2.2";
+      sha256 = "0dlszlshlxbmmfxj5hlwgv3r22x0y1af45gn1vd198nvvs3pnvfs";
+    };
+  }
+  {
+    goPackagePath = "github.com/ugorji/go";
+    fetch = {
+      type = "git";
+      url = "https://github.com/ugorji/go";
+      rev = "d75b2dcb6bc8";
+      sha256 = "0di1k35gpq9bp958ywranpbskx2vdwlb38s22vl9rybm3wa5g3ps";
+    };
+  }
+  {
+    goPackagePath = "github.com/xanzy/ssh-agent";
+    fetch = {
+      type = "git";
+      url = "https://github.com/xanzy/ssh-agent";
+      rev = "v0.2.0";
+      sha256 = "069nlriymqswg52ggiwi60qhwrin9nzhd2g65a7h59z2qbcvk2hy";
+    };
+  }
+  {
+    goPackagePath = "github.com/xordataexchange/crypt";
+    fetch = {
+      type = "git";
+      url = "https://github.com/xordataexchange/crypt";
+      rev = "b2862e3d0a77";
+      sha256 = "04q3856anpzl4gdfgmg7pbp9cx231nkz3ymq2xp27rnmmwhfxr8y";
+    };
+  }
+  {
+    goPackagePath = "golang.org/x/crypto";
+    fetch = {
+      type = "git";
+      url = "https://go.googlesource.com/crypto";
+      rev = "505ab145d0a9";
+      sha256 = "1vbsvcvmjz6c00p5vf8ls533p52fx2y3gy6v4k5qrdlzl4wf0i5s";
+    };
+  }
+  {
+    goPackagePath = "golang.org/x/net";
+    fetch = {
+      type = "git";
+      url = "https://go.googlesource.com/net";
+      rev = "161cd47e91fd";
+      sha256 = "0254ld010iijygbzykib2vags1dc0wlmcmhgh4jl8iny159lhbcv";
+    };
+  }
+  {
+    goPackagePath = "golang.org/x/sync";
+    fetch = {
+      type = "git";
+      url = "https://go.googlesource.com/sync";
+      rev = "e225da77a7e6";
+      sha256 = "0bh3583smcfw6jw3w6lp0za93rz7hpxfdz8vhxng75b7a6vdlw4p";
+    };
+  }
+  {
+    goPackagePath = "golang.org/x/sys";
+    fetch = {
+      type = "git";
+      url = "https://go.googlesource.com/sys";
+      rev = "a9d3bda3a223";
+      sha256 = "1w45zc13xrjzl19s1sx74r5mg3lf2z2nm13wygcdq5r5pyjlhdz9";
+    };
+  }
+  {
+    goPackagePath = "golang.org/x/text";
+    fetch = {
+      type = "git";
+      url = "https://go.googlesource.com/text";
+      rev = "v0.3.0";
+      sha256 = "0r6x6zjzhr8ksqlpiwm5gdd7s209kwk5p4lw54xjvz10cs3qlq19";
+    };
+  }
+  {
+    goPackagePath = "gopkg.in/alecthomas/kingpin.v2";
+    fetch = {
+      type = "git";
+      url = "https://gopkg.in/alecthomas/kingpin.v2";
+      rev = "v2.2.6";
+      sha256 = "0mndnv3hdngr3bxp7yxfd47cas4prv98sqw534mx7vp38gd88n5r";
+    };
+  }
+  {
+    goPackagePath = "gopkg.in/check.v1";
+    fetch = {
+      type = "git";
+      url = "https://gopkg.in/check.v1";
+      rev = "788fd7840127";
+      sha256 = "0v3bim0j375z81zrpr5qv42knqs0y2qv2vkjiqi5axvb78slki1a";
+    };
+  }
+  {
+    goPackagePath = "gopkg.in/src-d/go-billy.v4";
+    fetch = {
+      type = "git";
+      url = "https://gopkg.in/src-d/go-billy.v4";
+      rev = "v4.2.1";
+      sha256 = "1n8nc0m2hidbrlcl643cd0bdm07pjr0qji47gbfpfj99791sv1d1";
+    };
+  }
+  {
+    goPackagePath = "gopkg.in/src-d/go-git-fixtures.v3";
+    fetch = {
+      type = "git";
+      url = "https://gopkg.in/src-d/go-git-fixtures.v3";
+      rev = "v3.1.1";
+      sha256 = "1fq3j5chck6883jbn33gwm6dxdgzsphjq97psyn81hz9bc1ili8p";
+    };
+  }
+  {
+    goPackagePath = "gopkg.in/src-d/go-git.v4";
+    fetch = {
+      type = "git";
+      url = "https://gopkg.in/src-d/go-git.v4";
+      rev = "v4.10.0";
+      sha256 = "18bx3m5ddvb20figd8pc3lgf9hn85pifc6xy72bb83lv2nxii2rx";
+    };
+  }
+  {
+    goPackagePath = "gopkg.in/warnings.v0";
+    fetch = {
+      type = "git";
+      url = "https://gopkg.in/warnings.v0";
+      rev = "v0.1.2";
+      sha256 = "1kzj50jn708cingn7a13c2wdlzs6qv89dr2h4zj8d09647vlnd81";
+    };
+  }
+  {
+    goPackagePath = "gopkg.in/yaml.v2";
+    fetch = {
+      type = "git";
+      url = "https://gopkg.in/yaml.v2";
+      rev = "v2.2.2";
+      sha256 = "01wj12jzsdqlnidpyjssmj0r4yavlqy7dwrg7adqd8dicjc4ncsa";
+    };
+  }
+]
diff --git a/pkgs/applications/version-management/git-and-tools/gitflow/default.nix b/pkgs/applications/version-management/git-and-tools/gitflow/default.nix
index 57af13f597a7..1307573990a9 100644
--- a/pkgs/applications/version-management/git-and-tools/gitflow/default.nix
+++ b/pkgs/applications/version-management/git-and-tools/gitflow/default.nix
@@ -26,7 +26,7 @@ stdenv.mkDerivation rec {
   '';
 
   meta = with stdenv.lib; {
-    homepage = https://github.com/petervanderdoes/gitflow;
+    homepage = "https://github.com/petervanderdoes/gitflow";
     description = "Extend git with the Gitflow branching model";
     longDescription = ''
       A set of scripts that provide high-level repository operations
diff --git a/pkgs/applications/version-management/git-and-tools/gitstatus/default.nix b/pkgs/applications/version-management/git-and-tools/gitstatus/default.nix
index ee4cc61c63f9..eab382386ef6 100644
--- a/pkgs/applications/version-management/git-and-tools/gitstatus/default.nix
+++ b/pkgs/applications/version-management/git-and-tools/gitstatus/default.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation {
   pname = "gitstatus";
-  version = "unstable-2020-02-26";
+  version = "unstable-2020-04-21";
 
   src = fetchFromGitHub {
     owner = "romkatv";
     repo = "gitstatus";
-    rev = "c0e5a24299c1a1a71434dac1de6ea650e80fbe49";
-    sha256 = "0fj84cvr5a895jqgg86raakx6lqyyhahf1dgzgx05y2gfvnxxh8m";
+    rev = "3494f25b0b3b2eac241cf669d1fea2b49ea42fb3";
+    sha256 = "0b4g14dkkgih6zps2w1krl9xf44ysj02617zj1k51z127v2lpm1f";
   };
 
   buildInputs = [ (callPackage ./romkatv_libgit2.nix {}) ];
@@ -16,13 +16,13 @@ stdenv.mkDerivation {
     sed -i "1i GITSTATUS_DAEMON=$out/bin/gitstatusd" gitstatus.plugin.zsh
   '';
   installPhase = ''
-    install -Dm755 gitstatusd $out/bin/gitstatusd
+    install -Dm755 usrbin/gitstatusd $out/bin/gitstatusd
     install -Dm444 gitstatus.plugin.zsh $out
   '';
 
   meta = with stdenv.lib; {
     description = "10x faster implementation of `git status` command";
-    homepage = https://github.com/romkatv/gitstatus;
+    homepage = "https://github.com/romkatv/gitstatus";
     license = [ licenses.gpl3 ];
 
     maintainers = with maintainers; [ mmlb hexa ];
diff --git a/pkgs/applications/version-management/git-and-tools/gitstatus/romkatv_libgit2.nix b/pkgs/applications/version-management/git-and-tools/gitstatus/romkatv_libgit2.nix
index 1279e5dd6c99..e4cd58bf0f02 100644
--- a/pkgs/applications/version-management/git-and-tools/gitstatus/romkatv_libgit2.nix
+++ b/pkgs/applications/version-management/git-and-tools/gitstatus/romkatv_libgit2.nix
@@ -2,13 +2,15 @@
 
 libgit2.overrideAttrs (oldAttrs: {
   cmakeFlags = oldAttrs.cmakeFlags ++ [
+    "-DBUILD_CLAR=OFF"
+    "-DBUILD_SHARED_LIBS=OFF"
+    "-DREGEX_BACKEND=builtin"
     "-DUSE_BUNDLED_ZLIB=ON"
+    "-DUSE_HTTPS=OFF"
+    "-DUSE_HTTP_PARSER=builtin"  # overwritten from libgit2
     "-DUSE_ICONV=OFF"
-    "-DBUILD_CLAR=OFF"
     "-DUSE_SSH=OFF"
-    "-DUSE_HTTPS=OFF"
-    "-DBUILD_SHARED_LIBS=OFF"
-    "-DUSE_EXT_HTTP_PARSER=OFF"
+    "-DZERO_NSEC=ON"
   ];
   src = fetchFromGitHub {
     owner = "romkatv";
diff --git a/pkgs/applications/version-management/git-and-tools/gitui/default.nix b/pkgs/applications/version-management/git-and-tools/gitui/default.nix
new file mode 100644
index 000000000000..f215b7986f89
--- /dev/null
+++ b/pkgs/applications/version-management/git-and-tools/gitui/default.nix
@@ -0,0 +1,24 @@
+{ stdenv, rustPlatform, fetchFromGitHub, libiconv, Security }:
+
+rustPlatform.buildRustPackage rec {
+  pname = "gitui";
+  version = "0.2.0";
+
+  src = fetchFromGitHub {
+    owner = "extrawurst";
+    repo = pname;
+    rev = "v${version}";
+    sha256 = "06x4a7ynq6vznjwdm0dhzlj9353skxz65xabwr5xxa85zp2a7vcm";
+  };
+
+  cargoSha256 = "08z3z1m0ik62gzj146a4imk4xx5n8sbvjs0w7gkclvlsvm9dp8q4";
+
+  buildInputs = stdenv.lib.optionals stdenv.isDarwin [ libiconv Security ];
+
+  meta = with stdenv.lib; {
+    description = "Blazing fast terminal-ui for git written in rust";
+    homepage = "https://github.com/extrawurst/gitui";
+    license = licenses.mit;
+    maintainers = with maintainers; [ filalex77 ];
+  };
+}
diff --git a/pkgs/applications/version-management/git-and-tools/grv/default.nix b/pkgs/applications/version-management/git-and-tools/grv/default.nix
index e6b746233fe1..64a4f8a823ce 100644
--- a/pkgs/applications/version-management/git-and-tools/grv/default.nix
+++ b/pkgs/applications/version-management/git-and-tools/grv/default.nix
@@ -1,13 +1,14 @@
-{ stdenv, buildGoPackage, fetchFromGitHub, curl, libgit2, ncurses, pkgconfig, readline }:
+{ stdenv, buildGoPackage, fetchFromGitHub, curl, ncurses, pkgconfig, readline
+, cmake }:
 let
-  version = "0.3.1";
+  version = "0.3.2";
 in
 buildGoPackage {
   pname = "grv";
   inherit version;
 
-  buildInputs = [ ncurses readline curl libgit2 ];
-  nativeBuildInputs = [ pkgconfig ];
+  buildInputs = [ ncurses readline curl ];
+  nativeBuildInputs = [ pkgconfig cmake ];
 
   goPackagePath = "github.com/rgburke/grv";
 
@@ -15,7 +16,7 @@ buildGoPackage {
     owner = "rgburke";
     repo = "grv";
     rev = "v${version}";
-    sha256 = "16ylapsibqrqwx45l4ypr3av07rd1haf10v838mjqsakf8l1xc0b";
+    sha256 = "0bpjsk35rlp56z8149z890adnhmxyh743vsls3q86j4682b83kyf";
     fetchSubmodules = true;
   };
 
@@ -23,11 +24,25 @@ buildGoPackage {
     rm util/update_latest_release.go
   '';
 
-  buildFlagsArray = [ "-ldflags=" "-X main.version=${version}" ];
+  postConfigure = ''
+    cd $NIX_BUILD_TOP/go/src/$goPackagePath
+  '';
+
+  buildPhase = ''
+    runHook preBuild
+    make build-only
+    runHook postBuild
+  '';
+
+  installPhase = ''
+    runHook preInstall
+    install -D grv $out/bin/grv
+    runHook postInstall
+  '';
 
   meta = with stdenv.lib; {
     description = "GRV is a terminal interface for viewing Git repositories";
-    homepage = https://github.com/rgburke/grv;
+    homepage = "https://github.com/rgburke/grv";
     license = licenses.gpl3;
     platforms = platforms.unix;
     maintainers = with maintainers; [ andir ];
diff --git a/pkgs/applications/version-management/git-and-tools/hub/default.nix b/pkgs/applications/version-management/git-and-tools/hub/default.nix
index 1b67b933cb1c..9dbb497c8c9e 100644
--- a/pkgs/applications/version-management/git-and-tools/hub/default.nix
+++ b/pkgs/applications/version-management/git-and-tools/hub/default.nix
@@ -1,8 +1,8 @@
-{ stdenv, buildGoPackage, fetchFromGitHub, groff, Security, utillinux }:
+{ stdenv, buildGoPackage, fetchFromGitHub, groff, installShellFiles, utillinux }:
 
 buildGoPackage rec {
   pname = "hub";
-  version = "2.14.1";
+  version = "2.14.2";
 
   goPackagePath = "github.com/github/hub";
 
@@ -13,11 +13,10 @@ buildGoPackage rec {
     owner = "github";
     repo = pname;
     rev = "v${version}";
-    sha256 = "0b179sp8z2blzh4a0c2pjbbiya68x2i4cnmcci58r8k0mwrx6mw1";
+    sha256 = "1qjab3dpia1jdlszz3xxix76lqrm4zbmqzd9ymld7h06awzsg2vh";
   };
 
-  nativeBuildInputs = [ groff utillinux ];
-  buildInputs = stdenv.lib.optional stdenv.isDarwin Security;
+  nativeBuildInputs = [ groff installShellFiles utillinux ];
 
   postPatch = ''
     patchShebangs .
@@ -25,19 +24,19 @@ buildGoPackage rec {
 
   postInstall = ''
     cd go/src/${goPackagePath}
-    install -D etc/hub.zsh_completion "$bin/share/zsh/site-functions/_hub"
-    install -D etc/hub.bash_completion.sh "$bin/share/bash-completion/completions/hub"
-    install -D etc/hub.fish_completion  "$bin/share/fish/vendor_completions.d/hub.fish"
+    installShellCompletion --zsh --name _hub etc/hub.zsh_completion
+    installShellCompletion --bash --name hub etc/hub.bash_completion.sh
+    installShellCompletion --fish --name hub.fish etc/hub.fish_completion
 
     LC_ALL=C.UTF8 \
     make man-pages
-    cp -vr --parents share/man/man[1-9]/*.[1-9] $bin/
+    installManPage share/man/man[1-9]/*.[1-9]
   '';
 
   meta = with stdenv.lib; {
     description = "Command-line wrapper for git that makes you better at GitHub";
     license = licenses.mit;
-    homepage = https://hub.github.com/;
+    homepage = "https://hub.github.com/";
     maintainers = with maintainers; [ the-kenny globin ];
     platforms = with platforms; unix;
   };
diff --git a/pkgs/applications/version-management/git-and-tools/lab/default.nix b/pkgs/applications/version-management/git-and-tools/lab/default.nix
index 3e47631caf69..5a00d6b1f86f 100644
--- a/pkgs/applications/version-management/git-and-tools/lab/default.nix
+++ b/pkgs/applications/version-management/git-and-tools/lab/default.nix
@@ -26,7 +26,7 @@ buildGoModule rec {
 
   meta = with stdenv.lib; {
     description = "Lab wraps Git or Hub, making it simple to clone, fork, and interact with repositories on GitLab";
-    homepage = https://zaquestion.github.io/lab;
+    homepage = "https://zaquestion.github.io/lab";
     license = licenses.cc0;
     maintainers = with maintainers; [ marsam dtzWill ];
     platforms = platforms.all;
diff --git a/pkgs/applications/version-management/git-and-tools/lefthook/default.nix b/pkgs/applications/version-management/git-and-tools/lefthook/default.nix
index 04ba4c7c48fd..9fc89d520ae9 100644
--- a/pkgs/applications/version-management/git-and-tools/lefthook/default.nix
+++ b/pkgs/applications/version-management/git-and-tools/lefthook/default.nix
@@ -2,16 +2,16 @@
 
 buildGoModule rec {
   pname = "lefthook";
-  version = "0.6.3";
+  version = "0.7.1";
 
   src = fetchFromGitHub {
     rev = "v${version}";
     owner = "Arkweid";
     repo = "lefthook";
-    sha256 = "01zvlw2yyxjg92d1qag1b42kc2kd68h4fmrv9y6ar7z0rw3p9a5d";
+    sha256 = "14rcvbzzrx0m3xijl8qhw5l2h0q10hqzad2hqm3079g893f2qad0";
   };
 
-  modSha256 = "0mjhw778x40c2plmjlkiry4rwvr9xkz65b88a61j86liv2plbmq2";
+  modSha256 = "0ih11gw2y9dhv3zw1fzjmdfjln5h6zg1bj7sl68cglf6743siqnq";
 
   meta = with stdenv.lib; {
     description = "Fast and powerful Git hooks manager for any type of projects";
diff --git a/pkgs/applications/version-management/git-and-tools/legit/default.nix b/pkgs/applications/version-management/git-and-tools/legit/default.nix
new file mode 100644
index 000000000000..7dbdd6071a57
--- /dev/null
+++ b/pkgs/applications/version-management/git-and-tools/legit/default.nix
@@ -0,0 +1,30 @@
+{ lib, python3Packages }:
+
+python3Packages.buildPythonApplication rec {
+  pname = "legit";
+  version = "1.2.0";
+  src = python3Packages.fetchPypi {
+    inherit pname version;
+    sha256 = "0ngh3ar6v15516f52j21k6qz7hykmxfjadhb2rakvl27b5xvjy1c";
+  };
+
+  propagatedBuildInputs = with python3Packages; [
+    click
+    clint
+    crayons
+    GitPython
+    six
+  ];
+
+  # Prevent tests from trying to create configuration in /homeless-shelter.
+  preCheck = ''
+    export HOME=$PWD/test-home
+  '';
+
+  meta = with lib; {
+    homepage = "https://github.com/frostming/legit";
+    description = "Git for Humans, Inspired by GitHub for Mac";
+    license = licenses.bsd3;
+    maintainers = with maintainers; [ ryneeverett ];
+  };
+}
diff --git a/pkgs/applications/version-management/git-and-tools/qgit/default.nix b/pkgs/applications/version-management/git-and-tools/qgit/default.nix
index 74fad30b8a9a..24743b21a4dd 100644
--- a/pkgs/applications/version-management/git-and-tools/qgit/default.nix
+++ b/pkgs/applications/version-management/git-and-tools/qgit/default.nix
@@ -17,7 +17,7 @@ mkDerivation rec {
 
   meta = with lib; {
     license = licenses.gpl2;
-    homepage = https://github.com/tibirna/qgit;
+    homepage = "https://github.com/tibirna/qgit";
     description = "Graphical front-end to Git";
     maintainers = with maintainers; [ peterhoeg markuskowa ];
     inherit (qtbase.meta) platforms;
diff --git a/pkgs/applications/version-management/git-and-tools/scmpuff/default.nix b/pkgs/applications/version-management/git-and-tools/scmpuff/default.nix
new file mode 100644
index 000000000000..de8cb396b7fc
--- /dev/null
+++ b/pkgs/applications/version-management/git-and-tools/scmpuff/default.nix
@@ -0,0 +1,24 @@
+{ stdenv, buildGoPackage, fetchFromGitHub }:
+
+buildGoPackage rec {
+  pname = "scmpuff";
+  version = "0.3.0";
+  goPackagePath = "github.com/mroth/scmpuff";
+
+  goDeps = ./deps.nix;
+
+  src = fetchFromGitHub {
+    owner = "mroth";
+    repo = pname;
+    rev = "56dc2041f2c45ab15d41e63058c1c44fff905e81";
+    sha256 = "0zrzzcs0i13pfwcqh8qb0sji54vh37rdr7qasg57y56cqpx16vl3";
+  };
+
+  meta = with stdenv.lib; {
+    description = "Add numbered shortcuts to common git commands";
+    homepage = "https://github.com/mroth/scmpuff";
+    license = licenses.mit;
+    maintainers = with maintainers; [ cpcloud ];
+    platforms = concatLists (with platforms; [ linux darwin windows ]);
+  };
+}
diff --git a/pkgs/applications/version-management/git-and-tools/scmpuff/deps.nix b/pkgs/applications/version-management/git-and-tools/scmpuff/deps.nix
new file mode 100644
index 000000000000..da9052f9bb7b
--- /dev/null
+++ b/pkgs/applications/version-management/git-and-tools/scmpuff/deps.nix
@@ -0,0 +1,273 @@
+# file generated from go.mod using vgo2nix (https://github.com/adisbladis/vgo2nix)
+[
+  {
+    goPackagePath = "github.com/BurntSushi/toml";
+    fetch = {
+      type = "git";
+      url = "https://github.com/BurntSushi/toml";
+      rev = "v0.3.1";
+      sha256 = "1fjdwwfzyzllgiwydknf1pwjvy49qxfsczqx5gz3y0izs7as99j6";
+    };
+  }
+  {
+    goPackagePath = "github.com/armon/consul-api";
+    fetch = {
+      type = "git";
+      url = "https://github.com/armon/consul-api";
+      rev = "eb2c6b5be1b6";
+      sha256 = "1j6fdr1sg36qy4n4xjl7brq739fpm5npq98cmvklzjc9qrx98nk9";
+    };
+  }
+  {
+    goPackagePath = "github.com/coreos/etcd";
+    fetch = {
+      type = "git";
+      url = "https://github.com/coreos/etcd";
+      rev = "v3.3.10";
+      sha256 = "1x2ii1hj8jraba8rbxz6dmc03y3sjxdnzipdvg6fywnlq1f3l3wl";
+    };
+  }
+  {
+    goPackagePath = "github.com/coreos/go-etcd";
+    fetch = {
+      type = "git";
+      url = "https://github.com/coreos/go-etcd";
+      rev = "v2.0.0";
+      sha256 = "1xb34hzaa1lkbq5vkzy9vcz6gqwj7hp6cdbvyack2bf28dwn33jj";
+    };
+  }
+  {
+    goPackagePath = "github.com/coreos/go-semver";
+    fetch = {
+      type = "git";
+      url = "https://github.com/coreos/go-semver";
+      rev = "v0.2.0";
+      sha256 = "1gghi5bnqj50hfxhqc1cxmynqmh2yk9ii7ab9gsm75y5cp94ymk0";
+    };
+  }
+  {
+    goPackagePath = "github.com/cpuguy83/go-md2man";
+    fetch = {
+      type = "git";
+      url = "https://github.com/cpuguy83/go-md2man";
+      rev = "v1.0.10";
+      sha256 = "1bqkf2bvy1dns9zd24k81mh2p1zxsx2nhq5cj8dz2vgkv1xkh60i";
+    };
+  }
+  {
+    goPackagePath = "github.com/davecgh/go-spew";
+    fetch = {
+      type = "git";
+      url = "https://github.com/davecgh/go-spew";
+      rev = "v1.1.1";
+      sha256 = "0hka6hmyvp701adzag2g26cxdj47g21x6jz4sc6jjz1mn59d474y";
+    };
+  }
+  {
+    goPackagePath = "github.com/fsnotify/fsnotify";
+    fetch = {
+      type = "git";
+      url = "https://github.com/fsnotify/fsnotify";
+      rev = "v1.4.7";
+      sha256 = "07va9crci0ijlivbb7q57d2rz9h27zgn2fsm60spjsqpdbvyrx4g";
+    };
+  }
+  {
+    goPackagePath = "github.com/hashicorp/hcl";
+    fetch = {
+      type = "git";
+      url = "https://github.com/hashicorp/hcl";
+      rev = "v1.0.0";
+      sha256 = "0q6ml0qqs0yil76mpn4mdx4lp94id8vbv575qm60jzl1ijcl5i66";
+    };
+  }
+  {
+    goPackagePath = "github.com/inconshreveable/mousetrap";
+    fetch = {
+      type = "git";
+      url = "https://github.com/inconshreveable/mousetrap";
+      rev = "v1.0.0";
+      sha256 = "1mn0kg48xkd74brf48qf5hzp0bc6g8cf5a77w895rl3qnlpfw152";
+    };
+  }
+  {
+    goPackagePath = "github.com/magiconair/properties";
+    fetch = {
+      type = "git";
+      url = "https://github.com/magiconair/properties";
+      rev = "v1.8.0";
+      sha256 = "1a10362wv8a8qwb818wygn2z48lgzch940hvpv81hv8gc747ajxn";
+    };
+  }
+  {
+    goPackagePath = "github.com/mitchellh/go-homedir";
+    fetch = {
+      type = "git";
+      url = "https://github.com/mitchellh/go-homedir";
+      rev = "v1.1.0";
+      sha256 = "0ydzkipf28hwj2bfxqmwlww47khyk6d152xax4bnyh60f4lq3nx1";
+    };
+  }
+  {
+    goPackagePath = "github.com/mitchellh/mapstructure";
+    fetch = {
+      type = "git";
+      url = "https://github.com/mitchellh/mapstructure";
+      rev = "v1.1.2";
+      sha256 = "03bpv28jz9zhn4947saqwi328ydj7f6g6pf1m2d4m5zdh5jlfkrr";
+    };
+  }
+  {
+    goPackagePath = "github.com/pelletier/go-toml";
+    fetch = {
+      type = "git";
+      url = "https://github.com/pelletier/go-toml";
+      rev = "v1.2.0";
+      sha256 = "1fjzpcjng60mc3a4b2ql5a00d5gah84wj740dabv9kq67mpg8fxy";
+    };
+  }
+  {
+    goPackagePath = "github.com/pmezard/go-difflib";
+    fetch = {
+      type = "git";
+      url = "https://github.com/pmezard/go-difflib";
+      rev = "v1.0.0";
+      sha256 = "0c1cn55m4rypmscgf0rrb88pn58j3ysvc2d0432dp3c6fqg6cnzw";
+    };
+  }
+  {
+    goPackagePath = "github.com/russross/blackfriday";
+    fetch = {
+      type = "git";
+      url = "https://github.com/russross/blackfriday";
+      rev = "v1.5.2";
+      sha256 = "0jzbfzcywqcrnym4gxlz6nphmm1grg6wsl4f0r9x384rn83wkj7c";
+    };
+  }
+  {
+    goPackagePath = "github.com/spf13/afero";
+    fetch = {
+      type = "git";
+      url = "https://github.com/spf13/afero";
+      rev = "v1.1.2";
+      sha256 = "0miv4faf5ihjfifb1zv6aia6f6ik7h1s4954kcb8n6ixzhx9ck6k";
+    };
+  }
+  {
+    goPackagePath = "github.com/spf13/cast";
+    fetch = {
+      type = "git";
+      url = "https://github.com/spf13/cast";
+      rev = "v1.3.0";
+      sha256 = "0xq1ffqj8y8h7dcnm0m9lfrh0ga7pssnn2c1dnr09chqbpn4bdc5";
+    };
+  }
+  {
+    goPackagePath = "github.com/spf13/cobra";
+    fetch = {
+      type = "git";
+      url = "https://github.com/spf13/cobra";
+      rev = "v0.0.4";
+      sha256 = "1k7dq78fjz94lzifsprkmiv93swwzwcbg1vd64v20wvnga8v254b";
+    };
+  }
+  {
+    goPackagePath = "github.com/spf13/jwalterweatherman";
+    fetch = {
+      type = "git";
+      url = "https://github.com/spf13/jwalterweatherman";
+      rev = "v1.0.0";
+      sha256 = "093fmmvavv84pv4q84hav7ph3fmrq87bvspjj899q0qsx37yvdr8";
+    };
+  }
+  {
+    goPackagePath = "github.com/spf13/pflag";
+    fetch = {
+      type = "git";
+      url = "https://github.com/spf13/pflag";
+      rev = "v1.0.3";
+      sha256 = "1cj3cjm7d3zk0mf1xdybh0jywkbbw7a6yr3y22x9sis31scprswd";
+    };
+  }
+  {
+    goPackagePath = "github.com/spf13/viper";
+    fetch = {
+      type = "git";
+      url = "https://github.com/spf13/viper";
+      rev = "v1.3.2";
+      sha256 = "1829hvf805kda65l59r17wvid7y0vr390s23zfhf4w7vdb4wp3zh";
+    };
+  }
+  {
+    goPackagePath = "github.com/stretchr/testify";
+    fetch = {
+      type = "git";
+      url = "https://github.com/stretchr/testify";
+      rev = "v1.2.2";
+      sha256 = "0dlszlshlxbmmfxj5hlwgv3r22x0y1af45gn1vd198nvvs3pnvfs";
+    };
+  }
+  {
+    goPackagePath = "github.com/ugorji/go";
+    fetch = {
+      type = "git";
+      url = "https://github.com/ugorji/go";
+      rev = "d75b2dcb6bc8";
+      sha256 = "0di1k35gpq9bp958ywranpbskx2vdwlb38s22vl9rybm3wa5g3ps";
+    };
+  }
+  {
+    goPackagePath = "github.com/xordataexchange/crypt";
+    fetch = {
+      type = "git";
+      url = "https://github.com/xordataexchange/crypt";
+      rev = "b2862e3d0a77";
+      sha256 = "04q3856anpzl4gdfgmg7pbp9cx231nkz3ymq2xp27rnmmwhfxr8y";
+    };
+  }
+  {
+    goPackagePath = "golang.org/x/crypto";
+    fetch = {
+      type = "git";
+      url = "https://go.googlesource.com/crypto";
+      rev = "505ab145d0a9";
+      sha256 = "1vbsvcvmjz6c00p5vf8ls533p52fx2y3gy6v4k5qrdlzl4wf0i5s";
+    };
+  }
+  {
+    goPackagePath = "golang.org/x/sys";
+    fetch = {
+      type = "git";
+      url = "https://go.googlesource.com/sys";
+      rev = "a5c9d58dba9a";
+      sha256 = "02qv5i7yps35p7fa81345qz7k8i73gkigj69anwmpw9rhpmzayf9";
+    };
+  }
+  {
+    goPackagePath = "golang.org/x/text";
+    fetch = {
+      type = "git";
+      url = "https://go.googlesource.com/text";
+      rev = "v0.3.0";
+      sha256 = "0r6x6zjzhr8ksqlpiwm5gdd7s209kwk5p4lw54xjvz10cs3qlq19";
+    };
+  }
+  {
+    goPackagePath = "gopkg.in/check.v1";
+    fetch = {
+      type = "git";
+      url = "https://gopkg.in/check.v1";
+      rev = "20d25e280405";
+      sha256 = "0k1m83ji9l1a7ng8a7v40psbymxasmssbrrhpdv2wl4rhs0nc3np";
+    };
+  }
+  {
+    goPackagePath = "gopkg.in/yaml.v2";
+    fetch = {
+      type = "git";
+      url = "https://gopkg.in/yaml.v2";
+      rev = "v2.2.2";
+      sha256 = "01wj12jzsdqlnidpyjssmj0r4yavlqy7dwrg7adqd8dicjc4ncsa";
+    };
+  }
+]
diff --git a/pkgs/applications/version-management/git-and-tools/stgit/default.nix b/pkgs/applications/version-management/git-and-tools/stgit/default.nix
index 3a354133e875..d356991815e7 100644
--- a/pkgs/applications/version-management/git-and-tools/stgit/default.nix
+++ b/pkgs/applications/version-management/git-and-tools/stgit/default.nix
@@ -2,7 +2,7 @@
 
 let
   name = "stgit-${version}";
-  version = "0.21";
+  version = "0.22";
 in
 stdenv.mkDerivation {
   inherit name;
@@ -11,7 +11,7 @@ stdenv.mkDerivation {
     owner = "ctmarinas";
     repo = "stgit";
     rev = "v${version}";
-    sha256 = "16gwdad18rc9bivyzrjccp83iccmqr45fp2zawycmrfp2ancffc7";
+    sha256 = "0xpvs5fa50rrvl2c8naha1nblk5ip2mgg63a9srqqxfx6z8qmrfz";
   };
 
   buildInputs = [ python2 git ];
@@ -28,7 +28,7 @@ stdenv.mkDerivation {
 
   meta = with stdenv.lib; {
     description = "A patch manager implemented on top of Git";
-    homepage = http://procode.org/stgit/;
+    homepage = "http://procode.org/stgit/";
     license = licenses.gpl2;
     maintainers = with maintainers; [ the-kenny ];
     platforms = platforms.unix;
diff --git a/pkgs/applications/version-management/git-and-tools/subgit/default.nix b/pkgs/applications/version-management/git-and-tools/subgit/default.nix
index ac11e7469e50..1fd70aab4611 100644
--- a/pkgs/applications/version-management/git-and-tools/subgit/default.nix
+++ b/pkgs/applications/version-management/git-and-tools/subgit/default.nix
@@ -6,7 +6,7 @@ stdenv.mkDerivation rec {
   meta = {
     description = "A tool for a smooth, stress-free SVN to Git migration";
     longDescription = "Create writable Git mirror of a local or remote Subversion repository and use both Subversion and Git as long as you like. You may also do a fast one-time import from Subversion to Git.";
-    homepage = http://subgit.com;
+    homepage = "http://subgit.com";
     license = stdenv.lib.licenses.unfree;
     platforms = stdenv.lib.platforms.all;
   };
diff --git a/pkgs/applications/version-management/git-and-tools/svn-all-fast-export/default.nix b/pkgs/applications/version-management/git-and-tools/svn-all-fast-export/default.nix
index 92d7fd4e3dab..fc33478964f6 100644
--- a/pkgs/applications/version-management/git-and-tools/svn-all-fast-export/default.nix
+++ b/pkgs/applications/version-management/git-and-tools/svn-all-fast-export/default.nix
@@ -26,7 +26,7 @@ stdenv.mkDerivation {
   NIX_LDFLAGS = "-lsvn_fs-1";
 
   meta = with stdenv.lib; {
-    homepage = https://github.com/svn-all-fast-export/svn2git;
+    homepage = "https://github.com/svn-all-fast-export/svn2git";
     description = "A fast-import based converter for an svn repo to git repos";
     license = licenses.gpl3;
     platforms = platforms.all;
diff --git a/pkgs/applications/version-management/git-and-tools/svn2git/default.nix b/pkgs/applications/version-management/git-and-tools/svn2git/default.nix
index 821ecf3e3d8f..1683a9bea137 100644
--- a/pkgs/applications/version-management/git-and-tools/svn2git/default.nix
+++ b/pkgs/applications/version-management/git-and-tools/svn2git/default.nix
@@ -31,7 +31,7 @@ stdenv.mkDerivation {
   '';
 
   meta = {
-    homepage = https://github.com/nirvdrum/svn2git;
+    homepage = "https://github.com/nirvdrum/svn2git";
     description = "Tool for importing Subversion repositories into git";
     license = stdenv.lib.licenses.mit;
 
diff --git a/pkgs/applications/version-management/git-and-tools/thicket/default.nix b/pkgs/applications/version-management/git-and-tools/thicket/default.nix
index 42819043d58b..4a02baa465c6 100644
--- a/pkgs/applications/version-management/git-and-tools/thicket/default.nix
+++ b/pkgs/applications/version-management/git-and-tools/thicket/default.nix
@@ -1,9 +1,12 @@
 { lib
 , fetchFromGitHub
-, crystal
+, crystal_0_33
 }:
 
-crystal.buildCrystalPackage rec {
+let
+  crystal = crystal_0_33;
+
+in crystal.buildCrystalPackage rec {
   pname = "thicket";
   version = "0.1.3";
 
@@ -14,13 +17,18 @@ crystal.buildCrystalPackage rec {
     sha256 = "0hkmmssiwipx373d0zw9a2yn72gqzqzcvwkqbs522m5adz6qmkzw";
   };
 
+  format = "shards";
+
   shardsFile = ./shards.nix;
   crystalBinaries.thicket.src = "src/thicket.cr";
 
+  # there is one test that tries to clone a repo
+  doCheck = false;
+
   meta = with lib; {
     description = "A better one-line git log";
     homepage = "https://github.com/taylorthurlow/thicket";
     license = licenses.mit;
     maintainers = with maintainers; [ filalex77 ];
   };
-}
\ No newline at end of file
+}
diff --git a/pkgs/applications/version-management/git-and-tools/tig/default.nix b/pkgs/applications/version-management/git-and-tools/tig/default.nix
index 424694d7262b..cb03a9b42a25 100644
--- a/pkgs/applications/version-management/git-and-tools/tig/default.nix
+++ b/pkgs/applications/version-management/git-and-tools/tig/default.nix
@@ -1,16 +1,16 @@
-{ stdenv, fetchFromGitHub, ncurses, asciidoc, xmlto, docbook_xsl, docbook_xml_dtd_45, fetchpatch
+{ stdenv, fetchFromGitHub, ncurses, asciidoc, xmlto, docbook_xsl, docbook_xml_dtd_45
 , readline, makeWrapper, git, libiconv, autoreconfHook, findXMLCatalogs, pkgconfig
 }:
 
 stdenv.mkDerivation rec {
   pname = "tig";
-  version = "2.5.0";
+  version = "2.5.1";
 
   src = fetchFromGitHub {
     owner = "jonas";
     repo = pname;
     rev = "${pname}-${version}";
-    sha256 = "1lrzgnq8ywq28qd4xyd0y5qfv3j25ra81lcbdqqfywasl8lwz3lf";
+    sha256 = "0wxcbfqsk8p84zizy6lf3gp5j122wrf8c7xlipki6nhcfhksn33b";
   };
 
   nativeBuildInputs = [ makeWrapper autoreconfHook asciidoc xmlto docbook_xsl docbook_xml_dtd_45 findXMLCatalogs pkgconfig ];
@@ -25,24 +25,19 @@ stdenv.mkDerivation rec {
       rm -f contrib/config.make-*
   '';
 
-  patches = [
-    # Fix memory leak. Remove with the next release
-    (fetchpatch {
-      url = "https://github.com/jonas/tig/commit/6202c6032f17438a2facb23f02e330b9d0566d9d.patch";
-      sha256 = "15zn8hw9y7bqa1np4mj0qnm2z86nif7qwh7wc4vgy2rwxdil85bd";
-    })
-  ];
-
   enableParallelBuilding = true;
 
   installPhase = ''
     make install
     make install-doc
 
+    # fixes tig-completion __git-complete dependency
+    sed -i '1s;^;source ${git}/share/bash-completion/completions/git\n;' contrib/tig-completion.bash
+
     substituteInPlace contrib/tig-completion.zsh \
-      --replace 'e=$(dirname ''${funcsourcetrace[1]%:*})/tig-completion.bash' "e=$out/etc/bash_completion.d/tig-completion.bash"
+      --replace 'e=$(dirname ''${funcsourcetrace[1]%:*})/tig-completion.bash' "e=$out/share/bash-completion/completions/tig"
 
-    install -D contrib/tig-completion.bash $out/etc/bash_completion.d/tig-completion.bash
+    install -D contrib/tig-completion.bash $out/share/bash-completion/completions/tig
     install -D contrib/tig-completion.zsh $out/share/zsh/site-functions/_tig
     cp contrib/vim.tigrc $out/etc/
 
@@ -51,7 +46,7 @@ stdenv.mkDerivation rec {
   '';
 
   meta = with stdenv.lib; {
-    homepage = https://jonas.github.io/tig/;
+    homepage = "https://jonas.github.io/tig/";
     description = "Text-mode interface for git";
     maintainers = with maintainers; [ bjornfor domenkozar qknight globin ];
     license = licenses.gpl2;
diff --git a/pkgs/applications/version-management/git-and-tools/transcrypt/default.nix b/pkgs/applications/version-management/git-and-tools/transcrypt/default.nix
index 3b8affb57edf..589d53b3cfaa 100644
--- a/pkgs/applications/version-management/git-and-tools/transcrypt/default.nix
+++ b/pkgs/applications/version-management/git-and-tools/transcrypt/default.nix
@@ -41,7 +41,7 @@ stdenv.mkDerivation rec {
       encryption password can safely commit changes to the repository's
       non-encrypted files.
     '';
-    homepage = https://github.com/elasticdog/transcrypt;
+    homepage = "https://github.com/elasticdog/transcrypt";
     license = licenses.mit;
     maintainers = [ maintainers.elasticdog ];
     platforms = platforms.all;
diff --git a/pkgs/applications/version-management/git-crecord/default.nix b/pkgs/applications/version-management/git-crecord/default.nix
index ec03c5bed5b1..9481f3ebd928 100644
--- a/pkgs/applications/version-management/git-crecord/default.nix
+++ b/pkgs/applications/version-management/git-crecord/default.nix
@@ -14,7 +14,7 @@ pythonPackages.buildPythonApplication rec {
   propagatedBuildInputs = with pythonPackages; [ docutils ];
 
   meta = {
-    homepage = https://github.com/andrewshadura/git-crecord;
+    homepage = "https://github.com/andrewshadura/git-crecord";
     description = "Git subcommand to interactively select changes to commit or stage";
     license = stdenv.lib.licenses.gpl2Plus;
   };
diff --git a/pkgs/applications/version-management/git-lfs/1.nix b/pkgs/applications/version-management/git-lfs/1.nix
index e3190667259e..5b2a9906a4f8 100644
--- a/pkgs/applications/version-management/git-lfs/1.nix
+++ b/pkgs/applications/version-management/git-lfs/1.nix
@@ -4,7 +4,7 @@ buildGoPackage rec {
   pname = "git-lfs";
   version = "1.5.6";
   rev = "0d02fb7d9a1c599bbf8c55e146e2845a908e04e0";
-  
+
   goPackagePath = "github.com/git-lfs/git-lfs";
 
   src = fetchFromGitHub {
@@ -14,8 +14,7 @@ buildGoPackage rec {
     sha256 = "0wddry1lqjccf4522fvhx6grx8h57xsz17lkaf5aybnrgw677w3d";
   };
 
-  # Tests fail with 'lfstest-gitserver.go:46: main redeclared in this block'
-  excludedPackages = [ "test" ];
+  subPackages = [ "." ];
 
   preBuild = ''
     pushd go/src/github.com/git-lfs/git-lfs
@@ -23,12 +22,9 @@ buildGoPackage rec {
     popd
   '';
 
-  postInstall = ''
-    rm -v $bin/bin/{man,script}
-  '';
   meta = with stdenv.lib; {
     description = "Git extension for versioning large files";
-    homepage    = https://git-lfs.github.com/;
+    homepage    = "https://git-lfs.github.com/";
     license     = [ licenses.mit ];
     maintainers = [ maintainers.twey ];
   };
diff --git a/pkgs/applications/version-management/git-lfs/default.nix b/pkgs/applications/version-management/git-lfs/default.nix
index f2d87fd69dde..cdd7cd01d066 100644
--- a/pkgs/applications/version-management/git-lfs/default.nix
+++ b/pkgs/applications/version-management/git-lfs/default.nix
@@ -1,29 +1,36 @@
-{ stdenv, buildGoPackage, fetchFromGitHub }:
+{ stdenv, buildGoPackage, fetchFromGitHub, ronn, installShellFiles }:
 
 buildGoPackage rec {
   pname = "git-lfs";
-  version = "2.8.0";
+  version = "2.10.0";
 
   src = fetchFromGitHub {
     rev = "v${version}";
     owner = "git-lfs";
     repo = "git-lfs";
-    sha256 = "17x9q4g1acf51bxr9lfmd2ym7w740n4ghdi0ncmma77kwabw9d3x";
+    sha256 = "1y5ryk0iz5g5sqaw79ml6fr5kvjgzcah481pk5qmnb2ipb1xlng9";
   };
 
   goPackagePath = "github.com/git-lfs/git-lfs";
 
+  nativeBuildInputs = [ ronn installShellFiles ];
+
+  buildFlagsArray = [ "-ldflags=-s -w -X ${goPackagePath}/config.Vendor=${version} -X ${goPackagePath}/config.GitCommit=${src.rev}" ];
+
   subPackages = [ "." ];
 
-  preBuild = ''
-    cd go/src/${goPackagePath}
-    go generate ./commands
+  postBuild = ''
+    make -C go/src/${goPackagePath} man
+  '';
+
+  postInstall = ''
+    installManPage go/src/${goPackagePath}/man/*.{1,5}
   '';
 
   meta = with stdenv.lib; {
     description = "Git extension for versioning large files";
-    homepage    = https://git-lfs.github.com/;
+    homepage    = "https://git-lfs.github.com/";
     license     = [ licenses.mit ];
-    maintainers = [ maintainers.twey ];
+    maintainers = [ maintainers.twey maintainers.marsam ];
   };
 }
diff --git a/pkgs/applications/version-management/git-repo/default.nix b/pkgs/applications/version-management/git-repo/default.nix
index 543ca58401a9..9488bb8ff78a 100644
--- a/pkgs/applications/version-management/git-repo/default.nix
+++ b/pkgs/applications/version-management/git-repo/default.nix
@@ -4,13 +4,13 @@
 
 stdenv.mkDerivation rec {
   pname = "git-repo";
-  version = "2.4.1";
+  version = "2.7";
 
   src = fetchFromGitHub {
     owner = "android";
     repo = "tools_repo";
     rev = "v${version}";
-    sha256 = "0khg1731927gvin73dcbw1657kbfq4k7agla5rpzqcnwkk5agzg3";
+    sha256 = "19wn16m9sy8fv31zl90av5la60l5hsf5fvvfpgiy0470rkagvz6j";
   };
 
   patches = [ ./import-ssl-module.patch ];
@@ -43,7 +43,7 @@ stdenv.mkDerivation rec {
       parts of the development workflow. Repo is not meant to replace Git, only
       to make it easier to work with Git.
     '';
-    homepage = https://android.googlesource.com/tools/repo;
+    homepage = "https://android.googlesource.com/tools/repo";
     license = licenses.asl20;
     maintainers = [ maintainers.primeos ];
     platforms = platforms.unix;
diff --git a/pkgs/applications/version-management/git-review/default.nix b/pkgs/applications/version-management/git-review/default.nix
index c48f455a64a3..c7702cfa1951 100644
--- a/pkgs/applications/version-management/git-review/default.nix
+++ b/pkgs/applications/version-management/git-review/default.nix
@@ -21,7 +21,7 @@ pythonPackages.buildPythonApplication rec {
   doCheck = false;
 
   meta = {
-    homepage = https://github.com/openstack-infra/git-review;
+    homepage = "https://github.com/openstack-infra/git-review";
     description = "Tool to submit code to Gerrit";
     license = stdenv.lib.licenses.asl20;
   };
diff --git a/pkgs/applications/version-management/git-up/default.nix b/pkgs/applications/version-management/git-up/default.nix
index 5812ff8c1d1d..faed3d25a8ad 100644
--- a/pkgs/applications/version-management/git-up/default.nix
+++ b/pkgs/applications/version-management/git-up/default.nix
@@ -27,7 +27,7 @@ pythonPackages.buildPythonApplication rec {
   '';
 
   meta = with stdenv.lib; {
-    homepage = https://github.com/msiemens/PyGitUp;
+    homepage = "https://github.com/msiemens/PyGitUp";
     description = "A git pull replacement that rebases all local branches when pulling.";
     license = licenses.mit;
     maintainers = with maintainers; [ peterhoeg ];
diff --git a/pkgs/applications/version-management/gitea/default.nix b/pkgs/applications/version-management/gitea/default.nix
index 2bd1f6434b7b..b18ac2510161 100644
--- a/pkgs/applications/version-management/gitea/default.nix
+++ b/pkgs/applications/version-management/gitea/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, buildGoPackage, fetchFromGitHub, makeWrapper
+{ stdenv, buildGoPackage, fetchurl, makeWrapper
 , git, bash, gzip, openssh, pam
 , sqliteSupport ? true
 , pamSupport ? true
@@ -8,23 +8,20 @@ with stdenv.lib;
 
 buildGoPackage rec {
   pname = "gitea";
-  version = "1.10.3";
+  version = "1.11.4";
 
-  src = fetchFromGitHub {
-    owner = "go-gitea";
-    repo = "gitea";
-    rev = "v${version}";
-    sha256 = "04jg1b0d1fbhnk434dnffc2c118gs084za3m33lxwf5lxzlbbimc";
-    # Required to generate the same checksum on MacOS due to unicode encoding differences
-    # More information: https://github.com/NixOS/nixpkgs/pull/48128
-    extraPostFetch = ''
-      rm -rf $out/integrations
-      rm -rf $out/vendor/github.com/Unknown/cae/tz/testdata
-      rm -rf $out/vendor/github.com/Unknown/cae/zip/testdata
-      rm -rf $out/vendor/gopkg.in/macaron.v1/fixtures
-    '';
+  src = fetchurl {
+    url = "https://github.com/go-gitea/gitea/releases/download/v${version}/gitea-src-${version}.tar.gz";
+    sha256 = "18k6kcdq0ijpzgay2aq1w95qkgfvrn1dgh4cxyj9c4i0pwb3ar7f";
   };
 
+  unpackPhase = ''
+    mkdir source/
+    tar xvf $src -C source/
+  '';
+
+  sourceRoot = "source";
+
   patches = [ ./static-root-path.patch ];
 
   postPatch = ''
@@ -32,8 +29,9 @@ buildGoPackage rec {
     substituteInPlace modules/setting/setting.go --subst-var data
   '';
 
-  nativeBuildInputs = [ makeWrapper ]
-    ++ optional pamSupport pam;
+  nativeBuildInputs = [ makeWrapper ];
+
+  buildInputs = optional pamSupport pam;
 
   preBuild = let
     tags = optional pamSupport "pam"
@@ -46,15 +44,15 @@ buildGoPackage rec {
     )
   '';
 
-  outputs = [ "bin" "out" "data" ];
+  outputs = [ "out" "data" ];
 
   postInstall = ''
     mkdir $data
-    cp -R $src/{public,templates,options} $data
+    cp -R ./go/src/${goPackagePath}/{public,templates,options} $data
     mkdir -p $out
-    cp -R $src/options/locale $out/locale
+    cp -R ./go/src/${goPackagePath}/options/locale $out/locale
 
-    wrapProgram $bin/bin/gitea \
+    wrapProgram $out/bin/gitea \
       --prefix PATH : ${makeBinPath [ bash git gzip openssh ]}
   '';
 
@@ -64,6 +62,6 @@ buildGoPackage rec {
     description = "Git with a cup of tea";
     homepage = "https://gitea.io";
     license = licenses.mit;
-    maintainers = with maintainers; [ disassembler kolaente ];
+    maintainers = with maintainers; [ disassembler kolaente ma27 ];
   };
 }
diff --git a/pkgs/applications/version-management/gitea/static-root-path.patch b/pkgs/applications/version-management/gitea/static-root-path.patch
index 7c36afdff84c..985dbe04082c 100644
--- a/pkgs/applications/version-management/gitea/static-root-path.patch
+++ b/pkgs/applications/version-management/gitea/static-root-path.patch
@@ -1,13 +1,13 @@
-diff --git i/modules/setting/setting.go w/modules/setting/setting.go
-index aafe2d1b..1e4a8064 100644
---- i/modules/setting/setting.go
-+++ w/modules/setting/setting.go
-@@ -730,7 +730,7 @@ func NewContext() {
- 	LocalURL = sec.Key("LOCAL_ROOT_URL").MustString(defaultLocalURL)
+diff --git a/modules/setting/setting.go b/modules/setting/setting.go
+index 714015c47..a2f85337e 100644
+--- a/modules/setting/setting.go
++++ b/modules/setting/setting.go
+@@ -641,7 +641,7 @@ func NewContext() {
+ 	PortToRedirect = sec.Key("PORT_TO_REDIRECT").MustString("80")
  	OfflineMode = sec.Key("OFFLINE_MODE").MustBool()
  	DisableRouterLog = sec.Key("DISABLE_ROUTER_LOG").MustBool()
 -	StaticRootPath = sec.Key("STATIC_ROOT_PATH").MustString(AppWorkPath)
 +	StaticRootPath = sec.Key("STATIC_ROOT_PATH").MustString("@data@")
-	AppDataPath = sec.Key("APP_DATA_PATH").MustString(path.Join(AppWorkPath, "data"))
+ 	StaticCacheTime = sec.Key("STATIC_CACHE_TIME").MustDuration(6 * time.Hour)
+ 	AppDataPath = sec.Key("APP_DATA_PATH").MustString(path.Join(AppWorkPath, "data"))
  	EnableGzip = sec.Key("ENABLE_GZIP").MustBool()
- 	EnablePprof = sec.Key("ENABLE_PPROF").MustBool(false)
diff --git a/pkgs/applications/version-management/gitinspector/default.nix b/pkgs/applications/version-management/gitinspector/default.nix
index 4467e9746ce9..ac9670601553 100644
--- a/pkgs/applications/version-management/gitinspector/default.nix
+++ b/pkgs/applications/version-management/gitinspector/default.nix
@@ -16,7 +16,7 @@ python2Packages.buildPythonApplication rec {
   ];
 
   meta = with stdenv.lib; {
-    homepage = https://github.com/ejwa/gitinspector;
+    homepage = "https://github.com/ejwa/gitinspector";
     description = "Statistical analysis tool for git repositories";
     license = licenses.gpl3;
     platforms = platforms.all;
diff --git a/pkgs/applications/version-management/gitkraken/default.nix b/pkgs/applications/version-management/gitkraken/default.nix
index b14d183705c6..c8b906c055aa 100644
--- a/pkgs/applications/version-management/gitkraken/default.nix
+++ b/pkgs/applications/version-management/gitkraken/default.nix
@@ -13,11 +13,11 @@ let
 in
 stdenv.mkDerivation rec {
   pname = "gitkraken";
-  version = "6.5.3";
+  version = "6.5.4";
 
   src = fetchzip {
     url = "https://release.axocdn.com/linux/GitKraken-v${version}.tar.gz";
-    sha256 = "0pw39cxh6p49h8gxxqfn1a2qf3gpxr5naz2cffd7dz0gwslgia2d";
+    sha256 = "0hrxkhxp6kp82jg1pkcl6vxa5mjpgncx0k353bcnm4986ysizhj4";
   };
 
   dontBuild = true;
@@ -108,7 +108,7 @@ stdenv.mkDerivation rec {
   '';
 
   meta = {
-    homepage = https://www.gitkraken.com/;
+    homepage = "https://www.gitkraken.com/";
     description = "The downright luxurious and most popular Git client for Windows, Mac & Linux";
     license = licenses.unfree;
     platforms = platforms.linux;
diff --git a/pkgs/applications/version-management/gitlab/data.json b/pkgs/applications/version-management/gitlab/data.json
index 87c37f1c75f4..d3f2db5e5ad2 100644
--- a/pkgs/applications/version-management/gitlab/data.json
+++ b/pkgs/applications/version-management/gitlab/data.json
@@ -1,13 +1,13 @@
 {
-  "version": "12.8.1",
-  "repo_hash": "1h844a79scf3an5rv0wi332lrf7mv1zcv2mg6zllk82f7nf341gn",
+  "version": "12.8.10",
+  "repo_hash": "1njkihj66d8fnk1l0r5pys38akf5srqlrgj2hzc68l5m8d51dk15",
   "owner": "gitlab-org",
   "repo": "gitlab",
-  "rev": "v12.8.1-ee",
+  "rev": "v12.8.10-ee",
   "passthru": {
-    "GITALY_SERVER_VERSION": "12.8.1",
+    "GITALY_SERVER_VERSION": "12.8.10",
     "GITLAB_PAGES_VERSION": "1.16.0",
     "GITLAB_SHELL_VERSION": "11.0.0",
-    "GITLAB_WORKHORSE_VERSION": "8.21.0"
+    "GITLAB_WORKHORSE_VERSION": "8.21.2"
   }
 }
\ No newline at end of file
diff --git a/pkgs/applications/version-management/gitlab/default.nix b/pkgs/applications/version-management/gitlab/default.nix
index 36859892e8c4..f3ecc6df6400 100644
--- a/pkgs/applications/version-management/gitlab/default.nix
+++ b/pkgs/applications/version-management/gitlab/default.nix
@@ -174,7 +174,7 @@ stdenv.mkDerivation {
   };
 
   meta = with lib; {
-    homepage = http://www.gitlab.com/;
+    homepage = "http://www.gitlab.com/";
     platforms = platforms.linux;
     maintainers = with maintainers; [ fpletz globin krav talyz ];
   } // (if gitlabEnterprise then
diff --git a/pkgs/applications/version-management/gitlab/gitaly/Gemfile.lock b/pkgs/applications/version-management/gitlab/gitaly/Gemfile.lock
index e3f7865226a2..0c125f5a0bf9 100644
--- a/pkgs/applications/version-management/gitlab/gitaly/Gemfile.lock
+++ b/pkgs/applications/version-management/gitlab/gitaly/Gemfile.lock
@@ -114,7 +114,7 @@ GEM
     minitest (5.14.0)
     msgpack (1.3.1)
     multipart-post (2.0.0)
-    nokogiri (1.10.7)
+    nokogiri (1.10.9)
       mini_portile2 (~> 2.4.0)
     nokogumbo (1.5.0)
       nokogiri
@@ -242,4 +242,4 @@ DEPENDENCIES
   webmock (~> 3.4.0)
 
 BUNDLED WITH
-   1.17.3
+   2.1.4
diff --git a/pkgs/applications/version-management/gitlab/gitaly/default.nix b/pkgs/applications/version-management/gitlab/gitaly/default.nix
index bac51cd278c2..7c84acc8f05f 100644
--- a/pkgs/applications/version-management/gitlab/gitaly/default.nix
+++ b/pkgs/applications/version-management/gitlab/gitaly/default.nix
@@ -28,14 +28,14 @@ let
     };
   });
 in buildGoPackage rec {
-  version = "12.8.1";
+  version = "12.8.10";
   pname = "gitaly";
 
   src = fetchFromGitLab {
     owner = "gitlab-org";
     repo = "gitaly";
     rev = "v${version}";
-    sha256 = "0sjkh0j36dpakqmq7l5gd1ydmx1kxgij53bjvvn37r19liqdijnx";
+    sha256 = "1vhnpyggh2ch93i75np11rjzvq8d6pwv2kzvwh7ak3fa02w9qdfs";
   };
 
   # Fix a check which assumes that hook files are writeable by their
@@ -65,10 +65,10 @@ in buildGoPackage rec {
        "'/run/gitlab/shell-config.yml'"
   '';
 
-  outputs = [ "bin" "out" "ruby" ];
+  outputs = [ "out" "ruby" ];
 
   meta = with stdenv.lib; {
-    homepage = https://gitlab.com/gitlab-org/gitaly;
+    homepage = "https://gitlab.com/gitlab-org/gitaly";
     description = "A Git RPC service for handling all the git calls made by GitLab";
     platforms = platforms.linux;
     maintainers = with maintainers; [ roblabla globin fpletz talyz ];
diff --git a/pkgs/applications/version-management/gitlab/gitaly/gemset.nix b/pkgs/applications/version-management/gitlab/gitaly/gemset.nix
index d91c84b1fa29..7719a90abb5d 100644
--- a/pkgs/applications/version-management/gitlab/gitaly/gemset.nix
+++ b/pkgs/applications/version-management/gitlab/gitaly/gemset.nix
@@ -515,10 +515,10 @@
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "0r0qpgf80h764k176yr63gqbs2z0xbsp8vlvs2a79d5r9vs83kln";
+      sha256 = "12j76d0bp608932xkzmfi638c7aqah57l437q8494znzbj610qnm";
       type = "gem";
     };
-    version = "1.10.7";
+    version = "1.10.9";
   };
   nokogumbo = {
     dependencies = ["nokogiri"];
diff --git a/pkgs/applications/version-management/gitlab/gitlab-shell/default.nix b/pkgs/applications/version-management/gitlab/gitlab-shell/default.nix
index 7327f7e02a8f..2b4fddaa9c84 100644
--- a/pkgs/applications/version-management/gitlab/gitlab-shell/default.nix
+++ b/pkgs/applications/version-management/gitlab/gitlab-shell/default.nix
@@ -18,13 +18,13 @@ buildGoPackage rec {
   goDeps = ./deps.nix;
 
   postInstall = ''
-    cp -r "$NIX_BUILD_TOP/go/src/$goPackagePath"/bin/* $bin/bin
-    cp -r "$NIX_BUILD_TOP/go/src/$goPackagePath"/{support,VERSION} $bin/
+    cp -r "$NIX_BUILD_TOP/go/src/$goPackagePath"/bin/* $out/bin
+    cp -r "$NIX_BUILD_TOP/go/src/$goPackagePath"/{support,VERSION} $out/
   '';
 
   meta = with stdenv.lib; {
     description = "SSH access and repository management app for GitLab";
-    homepage = http://www.gitlab.com/;
+    homepage = "http://www.gitlab.com/";
     platforms = platforms.linux;
     maintainers = with maintainers; [ fpletz globin talyz ];
     license = licenses.mit;
diff --git a/pkgs/applications/version-management/gitlab/gitlab-workhorse/default.nix b/pkgs/applications/version-management/gitlab/gitlab-workhorse/default.nix
index 937c3576fc33..dda678335675 100644
--- a/pkgs/applications/version-management/gitlab/gitlab-workhorse/default.nix
+++ b/pkgs/applications/version-management/gitlab/gitlab-workhorse/default.nix
@@ -3,13 +3,13 @@
 buildGoPackage rec {
   pname = "gitlab-workhorse";
 
-  version = "8.21.0";
+  version = "8.21.2";
 
   src = fetchFromGitLab {
     owner = "gitlab-org";
     repo = "gitlab-workhorse";
     rev = "v${version}";
-    sha256 = "04vhshm9lwnx77q9l7znxwkvvwm3gxgxw12y1xwahfilj352xr7q";
+    sha256 = "065yy8zfxahpybk3mbvc492by1lvssqcbqm8i4yp09m669rk239w";
   };
 
   goPackagePath = "gitlab.com/gitlab-org/gitlab-workhorse";
@@ -28,7 +28,7 @@ buildGoPackage rec {
   '';
 
   meta = with stdenv.lib; {
-    homepage = http://www.gitlab.com/;
+    homepage = "http://www.gitlab.com/";
     platforms = platforms.linux;
     maintainers = with maintainers; [ fpletz globin talyz ];
     license = licenses.mit;
diff --git a/pkgs/applications/version-management/gitlab/rubyEnv/Gemfile b/pkgs/applications/version-management/gitlab/rubyEnv/Gemfile
index 20c713e8c39d..e8a58a6d59bb 100644
--- a/pkgs/applications/version-management/gitlab/rubyEnv/Gemfile
+++ b/pkgs/applications/version-management/gitlab/rubyEnv/Gemfile
@@ -163,7 +163,7 @@ gem 'diffy', '~> 3.1.0'
 gem 'diff_match_patch', '~> 0.1.0'
 
 # Application server
-gem 'rack', '~> 2.0.7'
+gem 'rack', '~> 2.0.9'
 
 group :unicorn do
   gem 'unicorn', '~> 5.4.1'
diff --git a/pkgs/applications/version-management/gitlab/rubyEnv/Gemfile.lock b/pkgs/applications/version-management/gitlab/rubyEnv/Gemfile.lock
index aa33bd4cd68a..4d7b3d32a6b8 100644
--- a/pkgs/applications/version-management/gitlab/rubyEnv/Gemfile.lock
+++ b/pkgs/applications/version-management/gitlab/rubyEnv/Gemfile.lock
@@ -173,7 +173,7 @@ GEM
     concord (0.1.5)
       adamantium (~> 0.2.0)
       equalizer (~> 0.0.9)
-    concurrent-ruby (1.1.5)
+    concurrent-ruby (1.1.6)
     connection_pool (2.2.2)
     contracts (0.11.0)
     cork (0.3.0)
@@ -652,7 +652,7 @@ GEM
     netrc (0.11.0)
     nio4r (2.5.2)
     no_proxy_fix (0.1.2)
-    nokogiri (1.10.7)
+    nokogiri (1.10.8)
       mini_portile2 (~> 2.4.0)
     nokogumbo (1.5.0)
       nokogiri
@@ -783,7 +783,7 @@ GEM
     public_suffix (4.0.3)
     pyu-ruby-sasl (0.0.3.3)
     raabro (1.1.6)
-    rack (2.0.7)
+    rack (2.0.9)
     rack-accept (0.4.5)
       rack (>= 0.4)
     rack-attack (6.2.0)
@@ -854,17 +854,17 @@ GEM
       json
     recursive-open-struct (1.1.0)
     redis (4.1.3)
-    redis-actionpack (5.1.0)
-      actionpack (>= 4.0, < 7)
-      redis-rack (>= 1, < 3)
+    redis-actionpack (5.2.0)
+      actionpack (>= 5, < 7)
+      redis-rack (>= 2.1.0, < 3)
       redis-store (>= 1.1.0, < 2)
     redis-activesupport (5.2.0)
       activesupport (>= 3, < 7)
       redis-store (>= 1.3, < 2)
     redis-namespace (1.6.0)
       redis (>= 3.0.4)
-    redis-rack (2.0.6)
-      rack (>= 1.5, < 3)
+    redis-rack (2.1.2)
+      rack (>= 2.0.8, < 3)
       redis-store (>= 1.2, < 2)
     redis-rails (5.0.2)
       redis-actionpack (>= 5.0, < 6)
@@ -1325,7 +1325,7 @@ DEPENDENCIES
   prometheus-client-mmap (~> 0.10.0)
   pry-byebug (~> 3.5.1)
   pry-rails (~> 0.3.9)
-  rack (~> 2.0.7)
+  rack (~> 2.0.9)
   rack-attack (~> 6.2.0)
   rack-cors (~> 1.0.6)
   rack-oauth2 (~> 1.9.3)
@@ -1404,4 +1404,4 @@ DEPENDENCIES
   wikicloth (= 0.8.1)
 
 BUNDLED WITH
-   1.17.3
+   2.1.4
diff --git a/pkgs/applications/version-management/gitlab/rubyEnv/gemset.nix b/pkgs/applications/version-management/gitlab/rubyEnv/gemset.nix
index efba20ab0822..dec89c43a824 100644
--- a/pkgs/applications/version-management/gitlab/rubyEnv/gemset.nix
+++ b/pkgs/applications/version-management/gitlab/rubyEnv/gemset.nix
@@ -763,10 +763,10 @@
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "1x07r23s7836cpp5z9yrlbpljcxpax14yw4fy4bnp6crhr6x24an";
+      sha256 = "094387x4yasb797mv07cs3g6f08y56virc2rjcpb1k79rzaj3nhl";
       type = "gem";
     };
-    version = "1.1.5";
+    version = "1.1.6";
   };
   connection_pool = {
     groups = ["default"];
@@ -2927,10 +2927,10 @@
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "0r0qpgf80h764k176yr63gqbs2z0xbsp8vlvs2a79d5r9vs83kln";
+      sha256 = "1yi8j8hwrlc3rg5v3w52gxndmwifyk7m732q9yfbal0qajqbh1h8";
       type = "gem";
     };
-    version = "1.10.7";
+    version = "1.10.8";
   };
   nokogumbo = {
     dependencies = ["nokogiri"];
@@ -3501,10 +3501,10 @@
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "0z90vflxbgjy2n84r7mbyax3i2vyvvrxxrf86ljzn5rw65jgnn2i";
+      sha256 = "1mxzk12xylrz6d4n9jj5jasfscbf1pbk4idrb0nlf327lx9rwfkk";
       type = "gem";
     };
-    version = "2.0.7";
+    version = "2.0.9";
   };
   rack-accept = {
     dependencies = ["rack"];
@@ -3803,10 +3803,10 @@
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "1hvai5ygkyii9wq8h98wim8shgrm7vkv0js62zpm85vdl1xzvphz";
+      sha256 = "0c2276zzc0044zh37a8frx1v7hnra7z7k126154ps7njbqngfdv3";
       type = "gem";
     };
-    version = "5.1.0";
+    version = "5.2.0";
   };
   redis-activesupport = {
     dependencies = ["activesupport" "redis-store"];
@@ -3836,10 +3836,10 @@
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "1pa19ydbk0l6wilwbxcjn6knfs4ffgj0rhaaldrlhf76pjgkaiqb";
+      sha256 = "0ldw5sxyd80pv0gr89kvn6ziszlbs8lv1a573fkm6d0f11fps413";
       type = "gem";
     };
-    version = "2.0.6";
+    version = "2.1.2";
   };
   redis-rails = {
     dependencies = ["redis-actionpack" "redis-activesupport" "redis-store"];
diff --git a/pkgs/applications/version-management/gitlab/update.py b/pkgs/applications/version-management/gitlab/update.py
index dc2d1e29719d..4c7bcefacb0d 100755
--- a/pkgs/applications/version-management/gitlab/update.py
+++ b/pkgs/applications/version-management/gitlab/update.py
@@ -1,5 +1,5 @@
 #!/usr/bin/env nix-shell
-#! nix-shell -i python3 -p bundix common-updater-scripts nix nix-prefetch-git python3 python3Packages.requests python3Packages.lxml python3Packages.click python3Packages.click-log vgo2nix yarn2nix
+#! nix-shell -i python3 -p bundix bundler common-updater-scripts nix nix-prefetch-git python3 python3Packages.requests python3Packages.click python3Packages.click-log vgo2nix yarn2nix
 
 import click
 import click_log
@@ -13,7 +13,6 @@ from distutils.version import LooseVersion
 from typing import Iterable
 
 import requests
-from xml.etree import ElementTree
 
 logger = logging.getLogger(__name__)
 
@@ -30,12 +29,11 @@ class GitLabRepo:
 
     @property
     def tags(self) -> Iterable[str]:
-        r = requests.get(self.url + "/tags?format=atom", stream=True)
+        r = requests.get(self.url + "/refs?sort=updated_desc&ref=master").json()
+        tags = r.get("Tags", [])
 
-        tree = ElementTree.fromstring(r.content)
-        versions = [e.text for e in tree.findall('{http://www.w3.org/2005/Atom}entry/{http://www.w3.org/2005/Atom}title')]
         # filter out versions not matching version_regex
-        versions = list(filter(self.version_regex.match, versions))
+        versions = list(filter(self.version_regex.match, tags))
 
         # sort, but ignore v and -ee for sorting comparisons
         versions.sort(key=lambda x: LooseVersion(x.replace("v", "").replace("-ee", "")), reverse=True)
@@ -100,7 +98,7 @@ def cli():
 
 
 @cli.command('update-data')
-@click.option('--rev', default='latest', help='The rev to use, \'latest\' points to the latest (stable) tag')
+@click.option('--rev', default='latest', help='The rev to use (vX.Y.Z-ee), or \'latest\'')
 def update_data(rev: str):
     """Update data.nix"""
     repo = GitLabRepo()
@@ -135,6 +133,7 @@ def update_rubyenv():
         with open(rubyenv_dir / fn, 'w') as f:
             f.write(repo.get_file(fn, rev))
 
+    subprocess.check_output(['bundle', 'lock'], cwd=rubyenv_dir)
     subprocess.check_output(['bundix'], cwd=rubyenv_dir)
 
 
@@ -174,7 +173,10 @@ def update_gitaly():
         with open(gitaly_dir / fn, 'w') as f:
             f.write(repo.get_file(fn, f"v{gitaly_server_version}"))
 
+    subprocess.check_output(['bundle', 'lock'], cwd=gitaly_dir)
     subprocess.check_output(['bundix'], cwd=gitaly_dir)
+
+    os.environ['GOROOT'] = ""
     subprocess.check_output(['vgo2nix'], cwd=gitaly_dir)
 
     for fn in ['go.mod', 'go.sum']:
@@ -197,6 +199,7 @@ def update_gitlab_shell():
         with open(gitlab_shell_dir / fn, 'w') as f:
             f.write(repo.get_file(fn, f"v{gitlab_shell_version}"))
 
+    os.environ['GOROOT'] = ""
     subprocess.check_output(['vgo2nix'], cwd=gitlab_shell_dir)
 
     for fn in ['go.mod', 'go.sum']:
@@ -217,16 +220,18 @@ def update_gitlab_workhorse():
         with open(gitlab_workhorse_dir / fn, 'w') as f:
             f.write(repo.get_file(fn, f"v{gitlab_workhorse_version}"))
 
+    os.environ['GOROOT'] = ""
     subprocess.check_output(['vgo2nix'], cwd=gitlab_workhorse_dir)
 
     for fn in ['go.mod', 'go.sum']:
         os.unlink(gitlab_workhorse_dir / fn)
 
 @cli.command('update-all')
+@click.option('--rev', default='latest', help='The rev to use (vX.Y.Z-ee), or \'latest\'')
 @click.pass_context
-def update_all(ctx):
+def update_all(ctx, rev: str):
     """Update all gitlab components to the latest stable release"""
-    ctx.invoke(update_data, rev='latest')
+    ctx.invoke(update_data, rev=rev)
     ctx.invoke(update_rubyenv)
     ctx.invoke(update_yarnpkgs)
     ctx.invoke(update_gitaly)
diff --git a/pkgs/applications/version-management/gitless/default.nix b/pkgs/applications/version-management/gitless/default.nix
index fe1cce9ba84b..0cead50f0326 100644
--- a/pkgs/applications/version-management/gitless/default.nix
+++ b/pkgs/applications/version-management/gitless/default.nix
@@ -17,7 +17,7 @@ buildPythonApplication rec {
   doCheck = false;
 
   meta = with stdenv.lib; {
-    homepage = https://gitless.com/;
+    homepage = "https://gitless.com/";
     description = "A version control system built on top of Git";
     license = licenses.gpl2;
     platforms = platforms.all;
diff --git a/pkgs/applications/version-management/gitolite/default.nix b/pkgs/applications/version-management/gitolite/default.nix
index 9f298e0129ed..60fed6954dc5 100644
--- a/pkgs/applications/version-management/gitolite/default.nix
+++ b/pkgs/applications/version-management/gitolite/default.nix
@@ -40,7 +40,7 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "Finely-grained git repository hosting";
-    homepage    = https://gitolite.com/gitolite/index.html;
+    homepage    = "https://gitolite.com/gitolite/index.html";
     license     = licenses.gpl2;
     platforms   = platforms.unix;
     maintainers = [ maintainers.thoughtpolice maintainers.lassulus maintainers.tomberek ];
diff --git a/pkgs/applications/version-management/gitstats/default.nix b/pkgs/applications/version-management/gitstats/default.nix
index 5d29c8fcb6c3..b7432385a232 100644
--- a/pkgs/applications/version-management/gitstats/default.nix
+++ b/pkgs/applications/version-management/gitstats/default.nix
@@ -30,7 +30,7 @@ stdenv.mkDerivation rec {
   '';
 
   meta = with stdenv.lib; {
-    homepage = http://gitstats.sourceforge.net/;
+    homepage = "http://gitstats.sourceforge.net/";
     description = "Git history statistics generator";
     license = licenses.gpl2Plus;
     platforms = platforms.all;
diff --git a/pkgs/applications/version-management/gogs/default.nix b/pkgs/applications/version-management/gogs/default.nix
index fedb000e42de..48667ad8be39 100644
--- a/pkgs/applications/version-management/gogs/default.nix
+++ b/pkgs/applications/version-management/gogs/default.nix
@@ -24,8 +24,9 @@ buildGoPackage rec {
     substituteInPlace pkg/setting/setting.go --subst-var data
   '';
 
-  nativeBuildInputs = [ makeWrapper ]
-    ++ optional pamSupport pam;
+  nativeBuildInputs = [ makeWrapper ];
+
+  buildInputs = optional pamSupport pam;
 
   buildFlags = [ "-tags" ];
 
@@ -33,13 +34,13 @@ buildGoPackage rec {
     (  optional sqliteSupport "sqlite"
     ++ optional pamSupport "pam");
 
-  outputs = [ "bin" "out" "data" ];
+  outputs = [ "out" "data" ];
 
   postInstall = ''
     mkdir $data
     cp -R $src/{public,templates} $data
 
-    wrapProgram $bin/bin/gogs \
+    wrapProgram $out/bin/gogs \
       --prefix PATH : ${makeBinPath [ bash git gzip openssh ]}
   '';
 
@@ -47,7 +48,7 @@ buildGoPackage rec {
 
   meta = {
     description = "A painless self-hosted Git service";
-    homepage = https://gogs.io;
+    homepage = "https://gogs.io";
     license = licenses.mit;
     maintainers = [ maintainers.schneefux ];
   };
diff --git a/pkgs/applications/version-management/gource/default.nix b/pkgs/applications/version-management/gource/default.nix
index 2ce855d3a7f8..683ad8711bf0 100644
--- a/pkgs/applications/version-management/gource/default.nix
+++ b/pkgs/applications/version-management/gource/default.nix
@@ -22,7 +22,7 @@ stdenv.mkDerivation rec {
   enableParallelBuilding = true;
 
   meta = with stdenv.lib; {
-    homepage = https://gource.io/;
+    homepage = "https://gource.io/";
     description = "A Software version control visualization tool";
     license = licenses.gpl3Plus;
     longDescription = ''
diff --git a/pkgs/applications/version-management/guitone/default.nix b/pkgs/applications/version-management/guitone/default.nix
index 92bc9f51cac7..1ff1030150f3 100644
--- a/pkgs/applications/version-management/guitone/default.nix
+++ b/pkgs/applications/version-management/guitone/default.nix
@@ -26,8 +26,8 @@ stdenv.mkDerivation {
 
   meta = {
     description = "Qt4 based GUI for monotone";
-    homepage = https://guitone.thomaskeller.biz;
-    downloadPage = https://code.monotone.ca/p/guitone/;
+    homepage = "https://guitone.thomaskeller.biz";
+    downloadPage = "https://code.monotone.ca/p/guitone/";
     license = stdenv.lib.licenses.gpl3;
     inherit (qt4.meta) platforms;
   };
diff --git a/pkgs/applications/version-management/meld/default.nix b/pkgs/applications/version-management/meld/default.nix
index be1e8ff841dd..3c46db6352e8 100644
--- a/pkgs/applications/version-management/meld/default.nix
+++ b/pkgs/applications/version-management/meld/default.nix
@@ -57,7 +57,7 @@ python3.pkgs.buildPythonApplication rec {
 
   meta = with stdenv.lib; {
     description = "Visual diff and merge tool";
-    homepage = http://meldmerge.org/;
+    homepage = "http://meldmerge.org/";
     license = licenses.gpl2;
     platforms = platforms.linux ++ platforms.darwin;
     maintainers = with maintainers; [ jtojnar mimame ];
diff --git a/pkgs/applications/version-management/mercurial/4.9.nix b/pkgs/applications/version-management/mercurial/4.9.nix
index b8fc767bd3a2..f0918ab69a62 100644
--- a/pkgs/applications/version-management/mercurial/4.9.nix
+++ b/pkgs/applications/version-management/mercurial/4.9.nix
@@ -60,8 +60,8 @@ in python2Packages.buildPythonApplication {
   meta = {
     inherit (mercurialSrc.meta) version;
     description = "A fast, lightweight SCM system for very large distributed projects";
-    homepage = https://www.mercurial-scm.org;
-    downloadPage = https://www.mercurial-scm.org/release/;
+    homepage = "https://www.mercurial-scm.org";
+    downloadPage = "https://www.mercurial-scm.org/release/";
     license = stdenv.lib.licenses.gpl2;
     maintainers = [ stdenv.lib.maintainers.eraserhd ];
     updateWalker = true;
diff --git a/pkgs/applications/version-management/mercurial/default.nix b/pkgs/applications/version-management/mercurial/default.nix
index 3edfe3994347..ffbd98791358 100644
--- a/pkgs/applications/version-management/mercurial/default.nix
+++ b/pkgs/applications/version-management/mercurial/default.nix
@@ -8,11 +8,11 @@ let
 
 in python3Packages.buildPythonApplication rec {
   pname = "mercurial";
-  version = "5.3";
+  version = "5.3.1";
 
   src = fetchurl {
     url = "https://mercurial-scm.org/release/mercurial-${version}.tar.gz";
-    sha256 = "1fgr8k2ra7hs2dm8048pw01anmd41as246a5vm4m2sb7dcfzczz5";
+    sha256 = "1nbjpzjrzgql4hrvslpxwbcgn885ikq6ba1yb4w6p78rw9nzkhgp";
   };
 
   format = "other";
@@ -56,8 +56,8 @@ in python3Packages.buildPythonApplication rec {
   meta = {
     inherit version;
     description = "A fast, lightweight SCM system for very large distributed projects";
-    homepage = https://www.mercurial-scm.org;
-    downloadPage = https://www.mercurial-scm.org/release/;
+    homepage = "https://www.mercurial-scm.org";
+    downloadPage = "https://www.mercurial-scm.org/release/";
     license = stdenv.lib.licenses.gpl2;
     maintainers = [ stdenv.lib.maintainers.eelco ];
     updateWalker = true;
diff --git a/pkgs/applications/version-management/monotone-viz/default.nix b/pkgs/applications/version-management/monotone-viz/default.nix
index c23feec6f436..03b98694eaf3 100644
--- a/pkgs/applications/version-management/monotone-viz/default.nix
+++ b/pkgs/applications/version-management/monotone-viz/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchurl, ocamlPackages, gnome2, pkgconfig, makeWrapper
+{ stdenv, fetchurl, ocamlPackages, gnome2, pkgconfig, makeWrapper, glib
 , libtool, libpng, yacc, expat, fontconfig, gd, pango, libjpeg, libwebp, xlibsWrapper, libXaw
 }:
 # We need an old version of Graphviz for format compatibility reasons.
@@ -7,7 +7,7 @@ let graphviz_2_0 = import ./graphviz-2.0.nix {
       inherit stdenv fetchurl pkgconfig xlibsWrapper libpng libjpeg expat libXaw
         yacc libtool fontconfig pango gd libwebp;
     }; in
-let inherit (gnome2) libgnomecanvas glib; in
+let inherit (gnome2) libgnomecanvas; in
 let inherit (ocamlPackages) ocaml lablgtk camlp4; in
 stdenv.mkDerivation rec {
   version = "1.0.2";
diff --git a/pkgs/applications/version-management/monotone-viz/graphviz-2.0.nix b/pkgs/applications/version-management/monotone-viz/graphviz-2.0.nix
index 73acc3a6b36f..816bfcde67f7 100644
--- a/pkgs/applications/version-management/monotone-viz/graphviz-2.0.nix
+++ b/pkgs/applications/version-management/monotone-viz/graphviz-2.0.nix
@@ -34,7 +34,7 @@ stdenv.mkDerivation rec {
 
   meta = {
     description = "A program for visualising graphs";
-    homepage = http://www.graphviz.org/;
+    homepage = "http://www.graphviz.org/";
     branch = "2.0";
     platforms = stdenv.lib.platforms.unix;
   };
diff --git a/pkgs/applications/version-management/mr/default.nix b/pkgs/applications/version-management/mr/default.nix
index 66e63fcc3750..05ef7021f164 100644
--- a/pkgs/applications/version-management/mr/default.nix
+++ b/pkgs/applications/version-management/mr/default.nix
@@ -30,7 +30,7 @@ stdenv.mkDerivation {
       bzr, darcs, fossil and veracity repositories, and support for
       other version control systems can easily be added.
     '';
-    homepage = http://myrepos.branchable.com/;
+    homepage = "http://myrepos.branchable.com/";
     license = stdenv.lib.licenses.gpl2Plus;
     platforms = stdenv.lib.platforms.unix;
     maintainers = with stdenv.lib.maintainers; [ antono henrytill ];
diff --git a/pkgs/applications/version-management/nbstripout/default.nix b/pkgs/applications/version-management/nbstripout/default.nix
index 797bc7824962..07f9b442a74a 100644
--- a/pkgs/applications/version-management/nbstripout/default.nix
+++ b/pkgs/applications/version-management/nbstripout/default.nix
@@ -2,7 +2,7 @@
 
 with python.pkgs;
 buildPythonApplication rec {
-  version = "0.3.6";
+  version = "0.3.7";
   pname = "nbstripout";
 
   # Mercurial should be added as a build input but because it's a Python
@@ -14,7 +14,7 @@ buildPythonApplication rec {
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "1x6010akw7iqxn7ba5m6malfr2fvaf0bjp3cdh983qn1s7vwlq0r";
+    sha256 = "13w2zhw8vrfv6637bw5ygygj1dky55fvvncz11hq0abwkkzb3wb2";
   };
 
   # for some reason, darwin uses /bin/sh echo native instead of echo binary, so
@@ -31,7 +31,7 @@ buildPythonApplication rec {
   meta = {
     inherit version;
     description = "Strip output from Jupyter and IPython notebooks";
-    homepage = https://github.com/kynan/nbstripout;
+    homepage = "https://github.com/kynan/nbstripout";
     license = lib.licenses.mit;
     maintainers = with lib.maintainers; [ jluttine ];
   };
diff --git a/pkgs/applications/version-management/nitpick/default.nix b/pkgs/applications/version-management/nitpick/default.nix
index db9afdc0a74f..bcb16ea86788 100644
--- a/pkgs/applications/version-management/nitpick/default.nix
+++ b/pkgs/applications/version-management/nitpick/default.nix
@@ -33,7 +33,7 @@ buildPythonPackage rec {
       should pick. It's intended to be used with source code such that the issues can
       follow the code via whatever VCS or distribution mechanism.
     '';
-    homepage = http://travisbrown.ca/projects/nitpick/docs/nitpick.html;
+    homepage = "http://travisbrown.ca/projects/nitpick/docs/nitpick.html";
     license = with stdenv.lib.licenses; gpl2;
     maintainers = [];
   };
diff --git a/pkgs/applications/version-management/p4v/default.nix b/pkgs/applications/version-management/p4v/default.nix
index 317cbfde85b0..148f122f7c8b 100644
--- a/pkgs/applications/version-management/p4v/default.nix
+++ b/pkgs/applications/version-management/p4v/default.nix
@@ -40,7 +40,7 @@ stdenv.mkDerivation rec {
 
   meta = {
     description = "Perforce Visual Client";
-    homepage = https://www.perforce.com;
+    homepage = "https://www.perforce.com";
     license = stdenv.lib.licenses.unfreeRedistributable;
     platforms = [ "x86_64-linux" ];
     maintainers = with stdenv.lib.maintainers; [ nathyong nioncode ];
diff --git a/pkgs/applications/version-management/peru/default.nix b/pkgs/applications/version-management/peru/default.nix
index ea34617dc8b1..4cf2a2e864ca 100644
--- a/pkgs/applications/version-management/peru/default.nix
+++ b/pkgs/applications/version-management/peru/default.nix
@@ -19,7 +19,7 @@ python3Packages.buildPythonApplication rec {
   doCheck = false;
 
   meta = with stdenv.lib; {
-    homepage = https://github.com/buildinspace/peru;
+    homepage = "https://github.com/buildinspace/peru";
     description = "A tool for including other people's code in your projects";
     license = licenses.mit;
     platforms = platforms.unix;
diff --git a/pkgs/applications/version-management/pijul/default.nix b/pkgs/applications/version-management/pijul/default.nix
index c6c0f0a52f4b..74b793f0e77b 100644
--- a/pkgs/applications/version-management/pijul/default.nix
+++ b/pkgs/applications/version-management/pijul/default.nix
@@ -57,7 +57,7 @@ in rustPlatform.buildRustPackage rec {
 
   meta = with stdenv.lib; {
     description = "A distributed version control system";
-    homepage = https://pijul.org;
+    homepage = "https://pijul.org";
     license = with licenses; [ gpl2Plus ];
     maintainers = [ maintainers.gal_bolle ];
     platforms = platforms.all;
diff --git a/pkgs/applications/version-management/rabbitvcs/default.nix b/pkgs/applications/version-management/rabbitvcs/default.nix
index e9950c32549a..2c58e15c443d 100644
--- a/pkgs/applications/version-management/rabbitvcs/default.nix
+++ b/pkgs/applications/version-management/rabbitvcs/default.nix
@@ -34,7 +34,7 @@ python2Packages.buildPythonApplication rec {
 
   meta = {
     description = "Graphical tools for working with version control systems";
-    homepage = http://rabbitvcs.org/;
+    homepage = "http://rabbitvcs.org/";
     license = lib.licenses.gpl2Plus;
     platforms = lib.platforms.linux;
     maintainers = [ lib.maintainers.mathnerd314 ];
diff --git a/pkgs/applications/version-management/rapidsvn/default.nix b/pkgs/applications/version-management/rapidsvn/default.nix
index 60486e201165..fc6a8adc2add 100644
--- a/pkgs/applications/version-management/rapidsvn/default.nix
+++ b/pkgs/applications/version-management/rapidsvn/default.nix
@@ -20,7 +20,7 @@ stdenv.mkDerivation rec {
 
   meta = {
     description = "Multi-platform GUI front-end for the Subversion revision system";
-    homepage = http://rapidsvn.tigris.org/;
+    homepage = "http://rapidsvn.tigris.org/";
     license = stdenv.lib.licenses.gpl3Plus;
     maintainers = [ stdenv.lib.maintainers.viric ];
   };
diff --git a/pkgs/applications/version-management/rcs/default.nix b/pkgs/applications/version-management/rcs/default.nix
index 3283a3c046a4..404d6ae09bce 100644
--- a/pkgs/applications/version-management/rcs/default.nix
+++ b/pkgs/applications/version-management/rcs/default.nix
@@ -56,7 +56,7 @@ stdenv.mkDerivation rec {
   hardeningDisable = stdenv.lib.optional stdenv.cc.isClang "format";
 
   meta = {
-    homepage = https://www.gnu.org/software/rcs/;
+    homepage = "https://www.gnu.org/software/rcs/";
     description = "Revision control system";
     longDescription =
       '' The GNU Revision Control System (RCS) manages multiple revisions of
diff --git a/pkgs/applications/version-management/redmine/Gemfile b/pkgs/applications/version-management/redmine/Gemfile
index b1c651695c79..beff147c374a 100644
--- a/pkgs/applications/version-management/redmine/Gemfile
+++ b/pkgs/applications/version-management/redmine/Gemfile
@@ -1,8 +1,10 @@
 source 'https://rubygems.org'
 
+ruby '>= 2.3.0', '< 2.7.0' if Bundler::VERSION >= '1.12.0'
 gem "bundler", ">= 1.5.0"
 
-gem "rails", "5.2.4.1"
+gem 'rails', '5.2.4.2'
+gem 'sprockets', '~> 3.7.2' if RUBY_VERSION < '2.5'
 gem "rouge", "~> 3.12.0"
 gem "request_store", "~> 1.4.1"
 gem "mini_mime", "~> 1.0.1"
diff --git a/pkgs/applications/version-management/redmine/Gemfile.lock b/pkgs/applications/version-management/redmine/Gemfile.lock
index 806847a298e9..60aed5e17922 100644
--- a/pkgs/applications/version-management/redmine/Gemfile.lock
+++ b/pkgs/applications/version-management/redmine/Gemfile.lock
@@ -1,19 +1,19 @@
 GEM
   remote: https://rubygems.org/
   specs:
-    actioncable (5.2.4.1)
-      actionpack (= 5.2.4.1)
+    actioncable (5.2.4.2)
+      actionpack (= 5.2.4.2)
       nio4r (~> 2.0)
       websocket-driver (>= 0.6.1)
-    actionmailer (5.2.4.1)
-      actionpack (= 5.2.4.1)
-      actionview (= 5.2.4.1)
-      activejob (= 5.2.4.1)
+    actionmailer (5.2.4.2)
+      actionpack (= 5.2.4.2)
+      actionview (= 5.2.4.2)
+      activejob (= 5.2.4.2)
       mail (~> 2.5, >= 2.5.4)
       rails-dom-testing (~> 2.0)
-    actionpack (5.2.4.1)
-      actionview (= 5.2.4.1)
-      activesupport (= 5.2.4.1)
+    actionpack (5.2.4.2)
+      actionview (= 5.2.4.2)
+      activesupport (= 5.2.4.2)
       rack (~> 2.0, >= 2.0.8)
       rack-test (>= 0.6.3)
       rails-dom-testing (~> 2.0)
@@ -21,26 +21,26 @@ GEM
     actionpack-xml_parser (2.0.1)
       actionpack (>= 5.0)
       railties (>= 5.0)
-    actionview (5.2.4.1)
-      activesupport (= 5.2.4.1)
+    actionview (5.2.4.2)
+      activesupport (= 5.2.4.2)
       builder (~> 3.1)
       erubi (~> 1.4)
       rails-dom-testing (~> 2.0)
       rails-html-sanitizer (~> 1.0, >= 1.0.3)
-    activejob (5.2.4.1)
-      activesupport (= 5.2.4.1)
+    activejob (5.2.4.2)
+      activesupport (= 5.2.4.2)
       globalid (>= 0.3.6)
-    activemodel (5.2.4.1)
-      activesupport (= 5.2.4.1)
-    activerecord (5.2.4.1)
-      activemodel (= 5.2.4.1)
-      activesupport (= 5.2.4.1)
+    activemodel (5.2.4.2)
+      activesupport (= 5.2.4.2)
+    activerecord (5.2.4.2)
+      activemodel (= 5.2.4.2)
+      activesupport (= 5.2.4.2)
       arel (>= 9.0)
-    activestorage (5.2.4.1)
-      actionpack (= 5.2.4.1)
-      activerecord (= 5.2.4.1)
+    activestorage (5.2.4.2)
+      actionpack (= 5.2.4.2)
+      activerecord (= 5.2.4.2)
       marcel (~> 0.3.1)
-    activesupport (5.2.4.1)
+    activesupport (5.2.4.2)
       concurrent-ruby (~> 1.0, >= 1.0.2)
       i18n (>= 0.7, < 2)
       minitest (~> 5.1)
@@ -59,8 +59,8 @@ GEM
       regexp_parser (~> 1.5)
       xpath (~> 3.2)
     childprocess (3.0.0)
-    concurrent-ruby (1.1.5)
-    crass (1.0.5)
+    concurrent-ruby (1.1.6)
+    crass (1.0.6)
     css_parser (1.7.1)
       addressable
     csv (3.1.2)
@@ -73,58 +73,58 @@ GEM
       concurrent-ruby (~> 1.0)
     jaro_winkler (1.5.4)
     json (2.3.0)
-    loofah (2.4.0)
+    loofah (2.5.0)
       crass (~> 1.0.2)
       nokogiri (>= 1.5.9)
     mail (2.7.1)
       mini_mime (>= 0.1.1)
     marcel (0.3.3)
       mimemagic (~> 0.3.2)
-    method_source (0.9.2)
-    mimemagic (0.3.3)
+    method_source (1.0.0)
+    mimemagic (0.3.4)
     mini_magick (4.9.5)
     mini_mime (1.0.2)
     mini_portile2 (2.4.0)
-    minitest (5.13.0)
-    mocha (1.11.1)
+    minitest (5.14.0)
+    mocha (1.11.2)
     mysql2 (0.5.3)
     net-ldap (0.16.2)
     nio4r (2.5.2)
-    nokogiri (1.10.7)
+    nokogiri (1.10.9)
       mini_portile2 (~> 2.4.0)
     parallel (1.19.1)
-    parser (2.6.5.0)
+    parser (2.7.1.0)
       ast (~> 2.4.0)
     pg (1.1.4)
-    public_suffix (4.0.1)
-    puma (3.12.2)
-    rack (2.0.8)
+    public_suffix (4.0.4)
+    puma (3.12.4)
+    rack (2.2.2)
     rack-openid (1.4.2)
       rack (>= 1.1.0)
       ruby-openid (>= 2.1.8)
     rack-test (1.1.0)
       rack (>= 1.0, < 3)
-    rails (5.2.4.1)
-      actioncable (= 5.2.4.1)
-      actionmailer (= 5.2.4.1)
-      actionpack (= 5.2.4.1)
-      actionview (= 5.2.4.1)
-      activejob (= 5.2.4.1)
-      activemodel (= 5.2.4.1)
-      activerecord (= 5.2.4.1)
-      activestorage (= 5.2.4.1)
-      activesupport (= 5.2.4.1)
+    rails (5.2.4.2)
+      actioncable (= 5.2.4.2)
+      actionmailer (= 5.2.4.2)
+      actionpack (= 5.2.4.2)
+      actionview (= 5.2.4.2)
+      activejob (= 5.2.4.2)
+      activemodel (= 5.2.4.2)
+      activerecord (= 5.2.4.2)
+      activestorage (= 5.2.4.2)
+      activesupport (= 5.2.4.2)
       bundler (>= 1.3.0)
-      railties (= 5.2.4.1)
+      railties (= 5.2.4.2)
       sprockets-rails (>= 2.0.0)
     rails-dom-testing (2.0.3)
       activesupport (>= 4.2.0)
       nokogiri (>= 1.6)
     rails-html-sanitizer (1.3.0)
       loofah (~> 2.3)
-    railties (5.2.4.1)
-      actionpack (= 5.2.4.1)
-      activesupport (= 5.2.4.1)
+    railties (5.2.4.2)
+      actionpack (= 5.2.4.2)
+      activesupport (= 5.2.4.2)
       method_source
       rake (>= 0.8.7)
       thor (>= 0.19.0, < 2.0)
@@ -135,15 +135,15 @@ GEM
       rbpdf-font (~> 1.19.0)
     rbpdf-font (1.19.1)
     redcarpet (3.5.0)
-    regexp_parser (1.6.0)
+    regexp_parser (1.7.0)
     request_store (1.4.1)
       rack (>= 1.4)
-    roadie (3.5.1)
+    roadie (4.0.0)
       css_parser (~> 1.4)
       nokogiri (~> 1.8)
-    roadie-rails (2.1.0)
+    roadie-rails (2.1.1)
       railties (>= 5.1, < 6.1)
-      roadie (~> 3.1)
+      roadie (>= 3.1, < 5.0)
     rouge (3.12.0)
     rubocop (0.76.0)
       jaro_winkler (~> 1.5.1)
@@ -152,15 +152,15 @@ GEM
       rainbow (>= 2.2.2, < 4.0)
       ruby-progressbar (~> 1.7)
       unicode-display_width (>= 1.4.0, < 1.7)
-    rubocop-performance (1.5.1)
+    rubocop-performance (1.5.2)
       rubocop (>= 0.71.0)
     rubocop-rails (2.3.2)
       rack (>= 1.1)
       rubocop (>= 0.72.0)
     ruby-openid (2.9.2)
     ruby-progressbar (1.10.1)
-    rubyzip (2.0.0)
-    selenium-webdriver (3.142.6)
+    rubyzip (2.3.0)
+    selenium-webdriver (3.142.7)
       childprocess (>= 0.5, < 4.0)
       rubyzip (>= 1.2.2)
     simplecov (0.17.1)
@@ -177,15 +177,15 @@ GEM
       sprockets (>= 3.0.0)
     thor (1.0.1)
     thread_safe (0.3.6)
-    tzinfo (1.2.5)
+    tzinfo (1.2.7)
       thread_safe (~> 0.1)
-    unicode-display_width (1.6.0)
+    unicode-display_width (1.6.1)
     websocket-driver (0.7.1)
       websocket-extensions (>= 0.1.0)
     websocket-extensions (0.1.4)
     xpath (3.2.0)
       nokogiri (~> 1.8)
-    yard (0.9.20)
+    yard (0.9.24)
 
 PLATFORMS
   ruby
@@ -208,7 +208,7 @@ DEPENDENCIES
   pg (~> 1.1.4)
   puma (~> 3.7)
   rack-openid
-  rails (= 5.2.4.1)
+  rails (= 5.2.4.2)
   rails-dom-testing
   rbpdf (~> 1.20.0)
   redcarpet (~> 3.5.0)
@@ -224,5 +224,8 @@ DEPENDENCIES
   tzinfo-data
   yard
 
+RUBY VERSION
+   ruby 2.6.6p146
+
 BUNDLED WITH
-   1.16.3
+   2.1.4
diff --git a/pkgs/applications/version-management/redmine/default.nix b/pkgs/applications/version-management/redmine/default.nix
index a133a9a6a2a9..2344e8dbd4b8 100644
--- a/pkgs/applications/version-management/redmine/default.nix
+++ b/pkgs/applications/version-management/redmine/default.nix
@@ -1,13 +1,13 @@
 { stdenv, fetchurl, bundlerEnv, ruby }:
 
 let
-  version = "4.1.0";
+  version = "4.1.1";
   rubyEnv = bundlerEnv {
     name = "redmine-env-${version}";
 
     inherit ruby;
     gemdir = ./.;
-    groups = [ "ldap" "openid" ];
+    groups = [ "development" "ldap" "markdown" "minimagick" "openid" "test" ];
   };
 in
   stdenv.mkDerivation rec {
@@ -16,7 +16,7 @@ in
 
     src = fetchurl {
       url = "https://www.redmine.org/releases/${pname}-${version}.tar.gz";
-      sha256 = "1fxc0xql54cfvj4g8v31vsv19jbij326qkgdz2h5xlp09r821wli";
+      sha256 = "1nndy5hz8zvfglxf1f3bsb1pkrfwinfxzkdan1vjs3rkckkszyh5";
     };
 
     buildInputs = [ rubyEnv rubyEnv.wrappedRuby rubyEnv.bundler ];
@@ -36,7 +36,7 @@ in
     '';
 
     meta = with stdenv.lib; {
-      homepage = https://www.redmine.org/;
+      homepage = "https://www.redmine.org/";
       platforms = platforms.linux;
       maintainers = [ maintainers.aanderse ];
       license = licenses.gpl2;
diff --git a/pkgs/applications/version-management/redmine/gemset.nix b/pkgs/applications/version-management/redmine/gemset.nix
index e69cbb0e1c23..9a4deb7e155a 100644
--- a/pkgs/applications/version-management/redmine/gemset.nix
+++ b/pkgs/applications/version-management/redmine/gemset.nix
@@ -1,33 +1,41 @@
 {
   actioncable = {
     dependencies = ["actionpack" "nio4r" "websocket-driver"];
+    groups = ["default"];
+    platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "1yz5mcjl4is99650vq6rkv539xccq8mp5zsbvzh43wqzfga1llwm";
+      sha256 = "0q4by8d41n972j8cdcddrwsh7qphcki50xvgm1syrawyck6w1f5v";
       type = "gem";
     };
-    version = "5.2.4.1";
+    version = "5.2.4.2";
   };
   actionmailer = {
     dependencies = ["actionpack" "actionview" "activejob" "mail" "rails-dom-testing"];
+    groups = ["default"];
+    platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "1dbw3q3yyh7m7wgc4196hc3v86v123z0xz40llmic8iwx3d9vnda";
+      sha256 = "0kg2nayy8wmxhfp52217h80yqr0mcg793xw3cjlfg9lkvdh0nb5z";
       type = "gem";
     };
-    version = "5.2.4.1";
+    version = "5.2.4.2";
   };
   actionpack = {
     dependencies = ["actionview" "activesupport" "rack" "rack-test" "rails-dom-testing" "rails-html-sanitizer"];
+    groups = ["default"];
+    platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "0f5pm62y08j679k3vhcml8436f92kripd6j3v5dyvn760kwzz72z";
+      sha256 = "1w1l9i6q9xns4yl41l582pyc5i1xi40yyyq802drm58gwylv3wax";
       type = "gem";
     };
-    version = "5.2.4.1";
+    version = "5.2.4.2";
   };
   actionpack-xml_parser = {
     dependencies = ["actionpack" "railties"];
+    groups = ["default"];
+    platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
       sha256 = "1rnm6jrw3mzcf2g3q498igmhsn0kfkxq79w0nm532iclx4g4djs0";
@@ -37,60 +45,74 @@
   };
   actionview = {
     dependencies = ["activesupport" "builder" "erubi" "rails-dom-testing" "rails-html-sanitizer"];
+    groups = ["default"];
+    platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "0hnkyx268czfb6ljv6ipcnz9dbgsb1z9n1gcr6279z9wx9550zij";
+      sha256 = "0fp3my6216lb9gp800s46y0404jwfl6xb3j9rvx4zf087497q8lp";
       type = "gem";
     };
-    version = "5.2.4.1";
+    version = "5.2.4.2";
   };
   activejob = {
     dependencies = ["activesupport" "globalid"];
+    groups = ["default"];
+    platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "0k4j3fcfc8m4hxwhs8xnbxazra760j3amn5r2zm2d5r1a1nqfh91";
+      sha256 = "1qsvb89rwqrp779mvpn67qbzidg2q6d1fa8kwybvpc93nzb9zpvi";
       type = "gem";
     };
-    version = "5.2.4.1";
+    version = "5.2.4.2";
   };
   activemodel = {
     dependencies = ["activesupport"];
+    groups = ["default"];
+    platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "0sg1yyz710pxhq9z0jsbpbgn666y8iv4aj7pywglydipp4i0bpx1";
+      sha256 = "0jcfdv00kmifj86d0z347nw55q1f8vwzr1aa9jrfnwz47ndi22di";
       type = "gem";
     };
-    version = "5.2.4.1";
+    version = "5.2.4.2";
   };
   activerecord = {
     dependencies = ["activemodel" "activesupport" "arel"];
+    groups = ["default"];
+    platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "1p35d6pj1370mnlppqq9lhr7m1ck82xvv621wq6hy12v41qfdnrg";
+      sha256 = "1yaqrh23c8krrjw6rvxv7pvnkpp46nk5aq9z2daby640si4xpmp5";
       type = "gem";
     };
-    version = "5.2.4.1";
+    version = "5.2.4.2";
   };
   activestorage = {
     dependencies = ["actionpack" "activerecord" "marcel"];
+    groups = ["default"];
+    platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "0dd8k91b88b875mypwqific2jilgzj5bx1637cwmzi4c0cy1v17f";
+      sha256 = "1d51zp17c9k4brivm8y46rszcz07s5rb75gmkm0dpzg3rz3v38s9";
       type = "gem";
     };
-    version = "5.2.4.1";
+    version = "5.2.4.2";
   };
   activesupport = {
     dependencies = ["concurrent-ruby" "i18n" "minitest" "tzinfo"];
+    groups = ["default" "test"];
+    platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "0lmlnx79sv18xv1ddm4vq7z3mwdfa4468mq5186av0k8n1k471sp";
+      sha256 = "0y1397g5xxinjyxjsdmp8c92yn0y3bd2hl4wbmmrpd08bggy6flc";
       type = "gem";
     };
-    version = "5.2.4.1";
+    version = "5.2.4.2";
   };
   addressable = {
     dependencies = ["public_suffix"];
+    groups = ["default" "test"];
+    platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
       sha256 = "1fvchp2rhp2rmigx7qglf69xvjqvzq7x0g49naliw29r2bz656sy";
@@ -99,6 +121,8 @@
     version = "2.7.0";
   };
   arel = {
+    groups = ["default"];
+    platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
       sha256 = "1jk7wlmkr61f6g36w9s2sn46nmdg6wn2jfssrhbhirv5x9n95nk0";
@@ -107,6 +131,8 @@
     version = "9.0.0";
   };
   ast = {
+    groups = ["default" "test"];
+    platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
       sha256 = "184ssy3w93nkajlz2c70ifm79jp3j737294kbc5fjw69v1w0n9x7";
@@ -115,6 +141,8 @@
     version = "2.4.0";
   };
   builder = {
+    groups = ["default"];
+    platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
       sha256 = "045wzckxpwcqzrjr353cxnyaxgf0qg22jh00dcx7z38cys5g1jlr";
@@ -124,6 +152,8 @@
   };
   capybara = {
     dependencies = ["addressable" "mini_mime" "nokogiri" "rack" "rack-test" "regexp_parser" "xpath"];
+    groups = ["test"];
+    platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
       sha256 = "1bq1y3gy98rqgw8z69b42isc2klb75fvlwvpi36vycf1yk0sfmmx";
@@ -132,6 +162,8 @@
     version = "3.25.0";
   };
   childprocess = {
+    groups = ["default" "test"];
+    platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
       sha256 = "1ic028k8xgm2dds9mqnvwwx3ibaz32j8455zxr9f4bcnviyahya5";
@@ -140,23 +172,29 @@
     version = "3.0.0";
   };
   concurrent-ruby = {
+    groups = ["default" "test"];
+    platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "1x07r23s7836cpp5z9yrlbpljcxpax14yw4fy4bnp6crhr6x24an";
+      sha256 = "094387x4yasb797mv07cs3g6f08y56virc2rjcpb1k79rzaj3nhl";
       type = "gem";
     };
-    version = "1.1.5";
+    version = "1.1.6";
   };
   crass = {
+    groups = ["default"];
+    platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "030sc98kjrb36rh7g21qsbdfxrj6knsjkx0mn3b7gig8zknwhp2f";
+      sha256 = "0pfl5c0pyqaparxaqxi6s4gfl21bdldwiawrc0aknyvflli60lfw";
       type = "gem";
     };
-    version = "1.0.5";
+    version = "1.0.6";
   };
   css_parser = {
     dependencies = ["addressable"];
+    groups = ["default"];
+    platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
       sha256 = "04c4dl8cm5rjr50k9qa6yl9r05fk9zcb1zxh0y0cdahxlsgcydfw";
@@ -165,6 +203,8 @@
     version = "1.7.1";
   };
   csv = {
+    groups = ["default"];
+    platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
       sha256 = "00szzw96bqz59r0kaab4p75qb0wq54iahmq37wpdg96bxc8y80f5";
@@ -173,6 +213,8 @@
     version = "3.1.2";
   };
   docile = {
+    groups = ["default" "test"];
+    platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
       sha256 = "0qrwiyagxzl8zlx3dafb0ay8l14ib7imb2rsmx70i5cp420v8gif";
@@ -181,6 +223,8 @@
     version = "1.3.2";
   };
   erubi = {
+    groups = ["default"];
+    platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
       sha256 = "1nwzxnqhr31fn7nbqmffcysvxjdfl3bhxi0bld5qqhcnfc1xd13x";
@@ -190,6 +234,8 @@
   };
   globalid = {
     dependencies = ["activesupport"];
+    groups = ["default"];
+    platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
       sha256 = "1zkxndvck72bfw235bd9nl2ii0lvs5z88q14706cmn702ww2mxv1";
@@ -198,6 +244,8 @@
     version = "0.4.2";
   };
   htmlentities = {
+    groups = ["default"];
+    platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
       sha256 = "1nkklqsn8ir8wizzlakncfv42i32wc0w9hxp00hvdlgjr7376nhj";
@@ -207,6 +255,8 @@
   };
   i18n = {
     dependencies = ["concurrent-ruby"];
+    groups = ["default" "test"];
+    platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
       sha256 = "1hfxnlyr618s25xpafw9mypa82qppjccbh292c4l3bj36az7f6wl";
@@ -215,6 +265,8 @@
     version = "1.6.0";
   };
   jaro_winkler = {
+    groups = ["default" "test"];
+    platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
       sha256 = "1y8l6k34svmdyqxya3iahpwbpvmn3fswhwsvrz0nk1wyb8yfihsh";
@@ -223,6 +275,8 @@
     version = "1.5.4";
   };
   json = {
+    groups = ["default" "test"];
+    platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
       sha256 = "0nrmw2r4nfxlfgprfgki3hjifgrcrs3l5zvm3ca3gb4743yr25mn";
@@ -232,15 +286,19 @@
   };
   loofah = {
     dependencies = ["crass" "nokogiri"];
+    groups = ["default"];
+    platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "1g7ps9m3s14cajhxrfgbzahv9i3gy47s4hqrv3mpybpj5cyr0srn";
+      sha256 = "0jk9fgn5ayzbqvzqm11gbkqvas77zdbpkvynlylyiwynclgrn040";
       type = "gem";
     };
-    version = "2.4.0";
+    version = "2.5.0";
   };
   mail = {
     dependencies = ["mini_mime"];
+    groups = ["default"];
+    platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
       sha256 = "00wwz6ys0502dpk8xprwcqfwyf3hmnx6lgxaiq6vj43mkx43sapc";
@@ -250,6 +308,8 @@
   };
   marcel = {
     dependencies = ["mimemagic"];
+    groups = ["default"];
+    platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
       sha256 = "1nxbjmcyg8vlw6zwagf17l9y2mwkagmmkg95xybpn4bmf3rfnksx";
@@ -258,22 +318,28 @@
     version = "0.3.3";
   };
   method_source = {
+    groups = ["default"];
+    platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "1pviwzvdqd90gn6y7illcdd9adapw8fczml933p5vl739dkvl3lq";
+      sha256 = "1pnyh44qycnf9mzi1j6fywd5fkskv3x7nmsqrrws0rjn5dd4ayfp";
       type = "gem";
     };
-    version = "0.9.2";
+    version = "1.0.0";
   };
   mimemagic = {
+    groups = ["default"];
+    platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "04cp5sfbh1qx82yqxn0q75c7hlcx8y1dr5g3kyzwm4mx6wi2gifw";
+      sha256 = "0frrfvz52fh4v1sb2xr9pyxhrxm5f7jppqxagpmd7c5ific66l9p";
       type = "gem";
     };
-    version = "0.3.3";
+    version = "0.3.4";
   };
   mini_magick = {
+    groups = ["minimagick"];
+    platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
       sha256 = "0qy09qrd5bwh8mkbj514n5vcw9ni73218h9s3zmvbpmdwrnzi8j4";
@@ -282,6 +348,8 @@
     version = "4.9.5";
   };
   mini_mime = {
+    groups = ["default" "test"];
+    platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
       sha256 = "1axm0rxyx3ss93wbmfkm78a6x03l8y4qy60rhkkiq0aza0vwq3ha";
@@ -290,6 +358,8 @@
     version = "1.0.2";
   };
   mini_portile2 = {
+    groups = ["default" "test"];
+    platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
       sha256 = "15zplpfw3knqifj9bpf604rb3wc1vhq6363pd6lvhayng8wql5vy";
@@ -298,22 +368,36 @@
     version = "2.4.0";
   };
   minitest = {
+    groups = ["default" "test"];
+    platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "0w16p7cvslh3hxd3cia8jg4pd85z7rz7xqb16vh42gj4rijn8rmi";
+      sha256 = "0g73x65hmjph8dg1h3rkzfg7ys3ffxm35hj35grw75fixmq53qyz";
       type = "gem";
     };
-    version = "5.13.0";
+    version = "5.14.0";
   };
   mocha = {
+    groups = ["test"];
+    platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "06i2q5qjr9mvjgjc8w41pdf3qalw340y33wjvzc0rp4a1cbbb7pp";
+      sha256 = "0hxmkm8qxd04vwj8mqnpyrf2dwy7g1k9zipdfhl4y71cw7ijm9n4";
       type = "gem";
     };
-    version = "1.11.1";
+    version = "1.11.2";
   };
   mysql2 = {
+    groups = ["default"];
+    platforms = [{
+      engine = "maglev";
+    } {
+      engine = "mingw";
+    } {
+      engine = "mingw";
+    } {
+      engine = "ruby";
+    }];
     source = {
       remotes = ["https://rubygems.org"];
       sha256 = "0d14pcy5m4hjig0zdxnl9in5f4izszc7v9zcczf2gyi5kiyxk8jw";
@@ -322,6 +406,8 @@
     version = "0.5.3";
   };
   net-ldap = {
+    groups = ["ldap"];
+    platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
       sha256 = "1vzfhivjfr9q65hkln7xig3qcba6fw9y4kb4384fpm7d7ww0b7xg";
@@ -330,6 +416,8 @@
     version = "0.16.2";
   };
   nio4r = {
+    groups = ["default"];
+    platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
       sha256 = "0gnmvbryr521r135yz5bv8354m7xn6miiapfgpg1bnwsvxz8xj6c";
@@ -339,14 +427,18 @@
   };
   nokogiri = {
     dependencies = ["mini_portile2"];
+    groups = ["default" "test"];
+    platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "0r0qpgf80h764k176yr63gqbs2z0xbsp8vlvs2a79d5r9vs83kln";
+      sha256 = "12j76d0bp608932xkzmfi638c7aqah57l437q8494znzbj610qnm";
       type = "gem";
     };
-    version = "1.10.7";
+    version = "1.10.9";
   };
   parallel = {
+    groups = ["default" "test"];
+    platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
       sha256 = "12jijkap4akzdv11lm08dglsc8jmc87xcgq6947i1s3qb69f4zn2";
@@ -356,14 +448,26 @@
   };
   parser = {
     dependencies = ["ast"];
+    groups = ["default" "test"];
+    platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "09davv4ld6caqlczw64vhwf8hr41apys3cj8v2h96yxs4qg1m2iw";
+      sha256 = "07awrcwm2xibglrh7qwpj24vwzn9p64m7bmfr9xbrlffaznr0ii7";
       type = "gem";
     };
-    version = "2.6.5.0";
+    version = "2.7.1.0";
   };
   pg = {
+    groups = ["default"];
+    platforms = [{
+      engine = "maglev";
+    } {
+      engine = "mingw";
+    } {
+      engine = "mingw";
+    } {
+      engine = "ruby";
+    }];
     source = {
       remotes = ["https://rubygems.org"];
       sha256 = "0fmnyxcyrvgdbgq7m09whgn9i8rwfybk0w8aii1nc4g5kqw0k2jy";
@@ -372,31 +476,39 @@
     version = "1.1.4";
   };
   public_suffix = {
+    groups = ["default" "test"];
+    platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "0xnfv2j2bqgdpg2yq9i2rxby0w2sc9h5iyjkpaas2xknwrgmhdb0";
+      sha256 = "1l1kqw75asziwmzrig8rywxswxz8l91sc3pvns02ffsqac1a3wiz";
       type = "gem";
     };
-    version = "4.0.1";
+    version = "4.0.4";
   };
   puma = {
+    groups = ["test"];
+    platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "07sb9xqc9bn5lvl9ia25w8x1fwzk52p5vgysnvjlc3hvn0r00ysj";
+      sha256 = "0mg8yh478mh55pg7pv8z7xyvk35ra98hy61z9lwkfr8fzyyz57zs";
       type = "gem";
     };
-    version = "3.12.2";
+    version = "3.12.4";
   };
   rack = {
+    groups = ["default" "openid" "test"];
+    platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "1id0jsslx1ipv0pbqjfn7mjbb2vx2xybk7qypq59a17163xp30gr";
+      sha256 = "10mp9s48ssnw004aksq90gvhdvwczh8j6q82q2kqiqq92jd1zxbp";
       type = "gem";
     };
-    version = "2.0.8";
+    version = "2.2.2";
   };
   rack-openid = {
     dependencies = ["rack" "ruby-openid"];
+    groups = ["openid"];
+    platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
       sha256 = "0sg85yn981j3a0iri3ch4znzdwscvz29l7vrk3dafqw4fdg31llc";
@@ -406,6 +518,8 @@
   };
   rack-test = {
     dependencies = ["rack"];
+    groups = ["default" "test"];
+    platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
       sha256 = "0rh8h376mx71ci5yklnpqqn118z3bl67nnv5k801qaqn1zs62h8m";
@@ -415,15 +529,19 @@
   };
   rails = {
     dependencies = ["actioncable" "actionmailer" "actionpack" "actionview" "activejob" "activemodel" "activerecord" "activestorage" "activesupport" "railties" "sprockets-rails"];
+    groups = ["default"];
+    platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "1198azwbhlhq2n9xmpb19709d6smkanimip9cagvnlihagw80b20";
+      sha256 = "1x8k6n4yziwf386prhvr9d9plc9fwv0j8spw2bnmkwhf54v2ias4";
       type = "gem";
     };
-    version = "5.2.4.1";
+    version = "5.2.4.2";
   };
   rails-dom-testing = {
     dependencies = ["activesupport" "nokogiri"];
+    groups = ["test"];
+    platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
       sha256 = "1lfq2a7kp2x64dzzi5p4cjcbiv62vxh9lyqk2f0rqq3fkzrw8h5i";
@@ -433,6 +551,8 @@
   };
   rails-html-sanitizer = {
     dependencies = ["loofah"];
+    groups = ["default"];
+    platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
       sha256 = "1icpqmxbppl4ynzmn6dx7wdil5hhq6fz707m9ya6d86c7ys8sd4f";
@@ -442,14 +562,18 @@
   };
   railties = {
     dependencies = ["actionpack" "activesupport" "method_source" "rake" "thor"];
+    groups = ["default"];
+    platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "1iqsqyyjscwnj2d3i0zl2k9apgsm7bb92l5h4wv1zbpdbb30wsqb";
+      sha256 = "1p2rnd1xdqlk19k3m5gd058yzvwjj25k5hwn4km683b5dhylpd16";
       type = "gem";
     };
-    version = "5.2.4.1";
+    version = "5.2.4.2";
   };
   rainbow = {
+    groups = ["default" "test"];
+    platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
       sha256 = "0bb2fpjspydr6x0s8pn1pqkzmxszvkfapv0p4627mywl7ky4zkhk";
@@ -458,6 +582,8 @@
     version = "3.0.0";
   };
   rake = {
+    groups = ["default"];
+    platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
       sha256 = "0w6qza25bq1s825faaglkx1k6d59aiyjjk3yw3ip5sb463mhhai9";
@@ -467,6 +593,8 @@
   };
   rbpdf = {
     dependencies = ["htmlentities" "rbpdf-font"];
+    groups = ["default"];
+    platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
       sha256 = "0sdj8frakpdms820rwlil38h9bh3p24xmwnjrxsjc1p9irc3za71";
@@ -475,6 +603,8 @@
     version = "1.20.1";
   };
   rbpdf-font = {
+    groups = ["default"];
+    platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
       sha256 = "0pxlr0l4vf785qpy55m439dyii63a26l0sd0yyhbwwcy9zm9hd1v";
@@ -483,6 +613,8 @@
     version = "1.19.1";
   };
   redcarpet = {
+    groups = ["markdown"];
+    platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
       sha256 = "0skcyx1h8b5ms0rp2zm3ql6g322b8c1adnkwkqyv7z3kypb4bm7k";
@@ -491,15 +623,19 @@
     version = "3.5.0";
   };
   regexp_parser = {
+    groups = ["default" "test"];
+    platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "1l44ml30jvqpdi3707x1n1dinq7fx9887pv3q2ywyfmi4kja7yf2";
+      sha256 = "0l2vcj9qffj5b3v9jsyi4k994bdj3rjz7l9ql8x04lndqxfrrrv2";
       type = "gem";
     };
-    version = "1.6.0";
+    version = "1.7.0";
   };
   request_store = {
     dependencies = ["rack"];
+    groups = ["default"];
+    platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
       sha256 = "1963330z03fk382fi8y231ygcbnh86m91dqlp5rh1mwy9ihzzl6d";
@@ -509,23 +645,29 @@
   };
   roadie = {
     dependencies = ["css_parser" "nokogiri"];
+    groups = ["default"];
+    platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "1zihd316bkbnrinz5s1s7pg7s0cadhhj6qs7wmc713j0g6ai1k9r";
+      sha256 = "01kld3drqfiih5x8c13cvr6dpvdl7jml0v9bcw4fsy322lax3kn0";
       type = "gem";
     };
-    version = "3.5.1";
+    version = "4.0.0";
   };
   roadie-rails = {
     dependencies = ["railties" "roadie"];
+    groups = ["default"];
+    platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "0hdkmnxrmw31dn9jq43xiypz2v6rbvg4x2yd2hgl2xbl3lm1ln7i";
+      sha256 = "1fmn7kkbpgipjsx65rw7hqa3bwinlqykx5qf1x28ya9ag8v2q0ph";
       type = "gem";
     };
-    version = "2.1.0";
+    version = "2.1.1";
   };
   rouge = {
+    groups = ["default"];
+    platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
       sha256 = "08fpnxbhqv5sqpnfjasl1ysxafssyq4q1yhcqamqqzmb9czj1czw";
@@ -535,6 +677,8 @@
   };
   rubocop = {
     dependencies = ["jaro_winkler" "parallel" "parser" "rainbow" "ruby-progressbar" "unicode-display_width"];
+    groups = ["test"];
+    platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
       sha256 = "07x51ixlx76y194xsszh5lbkaqakz44ykbrjxg3qaggbs18790q0";
@@ -544,15 +688,19 @@
   };
   rubocop-performance = {
     dependencies = ["rubocop"];
+    groups = ["test"];
+    platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "1kn6rb0ma32gjp5qdvrbbb9ckh66rm6xpfrw8h3kr7svirsww2h8";
+      sha256 = "1fk9nd3b24avgsqp726hy2pl1iyfjrh6jni97wkky6kqy0lq6zq2";
       type = "gem";
     };
-    version = "1.5.1";
+    version = "1.5.2";
   };
   rubocop-rails = {
     dependencies = ["rack" "rubocop"];
+    groups = ["test"];
+    platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
       sha256 = "1q7ffsq1cjm4m949nh935kjzv4zf1pacnrl00siwh8flhcn3mmjf";
@@ -561,6 +709,8 @@
     version = "2.3.2";
   };
   ruby-openid = {
+    groups = ["openid"];
+    platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
       sha256 = "190p1m0bxd9xkfk1j6cpcv3x5c367g36nsglg4m1fcwqdd13k3kz";
@@ -569,6 +719,8 @@
     version = "2.9.2";
   };
   ruby-progressbar = {
+    groups = ["default" "test"];
+    platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
       sha256 = "1k77i0d4wsn23ggdd2msrcwfy0i376cglfqypkk2q77r2l3408zf";
@@ -577,24 +729,30 @@
     version = "1.10.1";
   };
   rubyzip = {
+    groups = ["default" "test"];
+    platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "1gz0ri0pa2xr7b6bf66yjc2wfvk51f4gi6yk7bklwl1nr65zc4gz";
+      sha256 = "0590m2pr9i209pp5z4mx0nb1961ishdiqb28995hw1nln1d1b5ji";
       type = "gem";
     };
-    version = "2.0.0";
+    version = "2.3.0";
   };
   selenium-webdriver = {
     dependencies = ["childprocess" "rubyzip"];
+    groups = ["test"];
+    platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "11abil34dr8p1kw7hlaqd6kr430v4srmhzf72zzqvhcimlfvm4yb";
+      sha256 = "0adcvp86dinaqq3nhf8p3m0rl2g6q0a4h52k0i7kdnsg1qz9k86y";
       type = "gem";
     };
-    version = "3.142.6";
+    version = "3.142.7";
   };
   simplecov = {
     dependencies = ["docile" "json" "simplecov-html"];
+    groups = ["test"];
+    platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
       sha256 = "1135k46nik05sdab30yxb8264lqiz01c8v000g16cl9pjc4mxrdw";
@@ -603,6 +761,8 @@
     version = "0.17.1";
   };
   simplecov-html = {
+    groups = ["default" "test"];
+    platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
       sha256 = "1lihraa4rgxk8wbfl77fy9sf0ypk31iivly8vl3w04srd7i0clzn";
@@ -612,6 +772,8 @@
   };
   sprockets = {
     dependencies = ["concurrent-ruby" "rack"];
+    groups = ["default"];
+    platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
       sha256 = "0jm37zpvvm1arxjwrd6am0wrdbfhrhc5y0l4p2i3p11z04bsvgap";
@@ -621,6 +783,8 @@
   };
   sprockets-rails = {
     dependencies = ["actionpack" "activesupport" "sprockets"];
+    groups = ["default"];
+    platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
       sha256 = "0ab42pm8p5zxpv3sfraq45b9lj39cz9mrpdirm30vywzrwwkm5p1";
@@ -629,6 +793,8 @@
     version = "3.2.1";
   };
   thor = {
+    groups = ["default"];
+    platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
       sha256 = "1xbhkmyhlxwzshaqa7swy2bx6vd64mm0wrr8g3jywvxy7hg0cwkm";
@@ -637,6 +803,8 @@
     version = "1.0.1";
   };
   thread_safe = {
+    groups = ["default" "test"];
+    platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
       sha256 = "0nmhcgq6cgz44srylra07bmaw99f5271l0dpsvl5f75m44l0gmwy";
@@ -646,23 +814,29 @@
   };
   tzinfo = {
     dependencies = ["thread_safe"];
+    groups = ["default" "test"];
+    platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "1fjx9j327xpkkdlxwmkl3a8wqj7i4l4jwlrv3z13mg95z9wl253z";
+      sha256 = "1i3jh086w1kbdj3k5l60lc3nwbanmzdf8yjj3mlrx9b2gjjxhi9r";
       type = "gem";
     };
-    version = "1.2.5";
+    version = "1.2.7";
   };
   unicode-display_width = {
+    groups = ["default" "test"];
+    platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "08kfiniak1pvg3gn5k6snpigzvhvhyg7slmm0s2qx5zkj62c1z2w";
+      sha256 = "1pppclzq4qb26g321553nm9xqca3zgllvpwb2kqxsdadwj51s09x";
       type = "gem";
     };
-    version = "1.6.0";
+    version = "1.6.1";
   };
   websocket-driver = {
     dependencies = ["websocket-extensions"];
+    groups = ["default"];
+    platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
       sha256 = "1bxamwqldmy98hxs5pqby3andws14hl36ch78g0s81gaz9b91nj2";
@@ -671,6 +845,8 @@
     version = "0.7.1";
   };
   websocket-extensions = {
+    groups = ["default"];
+    platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
       sha256 = "00i624ng1nvkz1yckj3f8yxxp6hi7xaqf40qh9q3hj2n1l9i8g6m";
@@ -680,6 +856,8 @@
   };
   xpath = {
     dependencies = ["nokogiri"];
+    groups = ["default" "test"];
+    platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
       sha256 = "0bh8lk9hvlpn7vmi6h4hkcwjzvs2y0cmkk3yjjdr8fxvj6fsgzbd";
@@ -688,11 +866,13 @@
     version = "3.2.0";
   };
   yard = {
+    groups = ["development"];
+    platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "0rxqwry3h2hjz069f0kfr140wgx1khgljnqf112dk5x9rm4l0xny";
+      sha256 = "1g0bw2qcl48fxawrdf68l229508z53mrqisavji2lkxzv4w4j2pp";
       type = "gem";
     };
-    version = "0.9.20";
+    version = "0.9.24";
   };
 }
\ No newline at end of file
diff --git a/pkgs/applications/version-management/reposurgeon/default.nix b/pkgs/applications/version-management/reposurgeon/default.nix
index 8dd46405d31f..fb5b72be4eb8 100644
--- a/pkgs/applications/version-management/reposurgeon/default.nix
+++ b/pkgs/applications/version-management/reposurgeon/default.nix
@@ -13,7 +13,7 @@ in mkDerivation rec {
     description = "A tool for editing version-control repository history";
     version = "3.44";
     license = licenses.bsd3;
-    homepage = http://www.catb.org/esr/reposurgeon/;
+    homepage = "http://www.catb.org/esr/reposurgeon/";
     maintainers = with maintainers; [ dfoxfranke ];
     platforms = platforms.all;
   };
diff --git a/pkgs/applications/version-management/sit/default.nix b/pkgs/applications/version-management/sit/default.nix
index 0a1f4c72da6f..67bda7a4fddc 100644
--- a/pkgs/applications/version-management/sit/default.nix
+++ b/pkgs/applications/version-management/sit/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchFromGitHub, rustPlatform, cmake, libzip, gnupg, 
+{ stdenv, fetchFromGitHub, rustPlatform, cmake, libzip, gnupg,
   # Darwin
   libiconv, CoreFoundation, Security }:
 
@@ -20,16 +20,16 @@ rustPlatform.buildRustPackage rec {
     export HOME=$(mktemp -d)
   '';
 
-  # Delete this on next update; see #79975 for details
-  legacyCargoFetcher = true;
-
-  cargoSha256 = "0kijx7s7zh6yisrsjz213h9x5jx43ixr44vy5rb3wwbn9dgsr528";
+  cargoSha256 = "092yfpr2svp1qy7xis1q0sdkbsjmmswmdwb0rklrc0yhydcsghp9";
 
   meta = with stdenv.lib; {
     description = "Serverless Information Tracker";
-    homepage = https://sit.fyi/;
+    homepage = "https://sit.fyi/";
     license = with licenses; [ asl20 /* or */ mit ];
     maintainers = with maintainers; [ dywedir yrashk ];
     platforms = platforms.all;
+    # Upstream has not had a release in several years, and dependencies no
+    # longer compile with the latest Rust compiler.
+    broken = true;
   };
 }
diff --git a/pkgs/applications/version-management/smartgithg/default.nix b/pkgs/applications/version-management/smartgithg/default.nix
index df55f20783fa..51fe70d3952f 100644
--- a/pkgs/applications/version-management/smartgithg/default.nix
+++ b/pkgs/applications/version-management/smartgithg/default.nix
@@ -86,7 +86,7 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "GUI for Git, Mercurial, Subversion";
-    homepage = https://www.syntevo.com/smartgit/;
+    homepage = "https://www.syntevo.com/smartgit/";
     license = licenses.unfree;
     platforms = platforms.linux;
     maintainers = with stdenv.lib.maintainers; [ jraygauthier ];
diff --git a/pkgs/applications/version-management/sourcehut/builds.nix b/pkgs/applications/version-management/sourcehut/builds.nix
index 07935336c1e2..99907993104f 100644
--- a/pkgs/applications/version-management/sourcehut/builds.nix
+++ b/pkgs/applications/version-management/sourcehut/builds.nix
@@ -4,14 +4,14 @@
 , srht, redis, celery, pyyaml, markdown }:
 
 let
-  version = "0.52.5";
+  version = "0.56.13";
 
   buildWorker = src: buildGoModule {
     inherit src version;
     pname = "builds-sr-ht-worker";
     goPackagePath = "git.sr.ht/~sircmpwn/builds.sr.ht/worker";
 
-    modSha256 = "1dwp87zsbh4a48q0pacssy329kchrd4sa47c5a1k8smbqn078424";
+    modSha256 = "10is7siscids9qz6jh9m1i17749dafqqkg4b3sslmxaxyn16yj97";
   };
 in buildPythonPackage rec {
   inherit version;
@@ -20,7 +20,7 @@ in buildPythonPackage rec {
   src = fetchgit {
     url = "https://git.sr.ht/~sircmpwn/builds.sr.ht";
     rev = version;
-    sha256 = "142aycnary6yfi0y1i3zgpyndi0756fingavcz2dnqi36pkajaaj";
+    sha256 = "uFoS9xaVXsZZf4neZQcUyTqKo2RshOQeifD27kaKSVE=";
   };
 
   patches = [
@@ -52,7 +52,7 @@ in buildPythonPackage rec {
   '';
 
   meta = with stdenv.lib; {
-    homepage = https://git.sr.ht/~sircmpwn/builds.sr.ht;
+    homepage = "https://git.sr.ht/~sircmpwn/builds.sr.ht";
     description = "Continuous integration service for the sr.ht network";
     license = licenses.agpl3;
     maintainers = with maintainers; [ eadwu ];
diff --git a/pkgs/applications/version-management/sourcehut/core.nix b/pkgs/applications/version-management/sourcehut/core.nix
index 8a6c3e6feb4e..76a81ce89683 100644
--- a/pkgs/applications/version-management/sourcehut/core.nix
+++ b/pkgs/applications/version-management/sourcehut/core.nix
@@ -1,18 +1,18 @@
 { stdenv, fetchgit, fetchNodeModules, buildPythonPackage
-, pgpy, flask, bleach, misaka, humanize, markdown, psycopg2, pygments, requests
-, sqlalchemy, cryptography, beautifulsoup4, sqlalchemy-utils, celery, alembic
-, importlib-metadata
+, pgpy, flask, bleach, misaka, humanize, html5lib, markdown, psycopg2, pygments
+, requests, sqlalchemy, cryptography, beautifulsoup4, sqlalchemy-utils, prometheus_client
+, celery, alembic, importlib-metadata
 , sassc, nodejs
 , writeText }:
 
 buildPythonPackage rec {
   pname = "srht";
-  version = "0.57.2";
+  version = "0.59.13";
 
   src = fetchgit {
     url = "https://git.sr.ht/~sircmpwn/core.sr.ht";
     rev = version;
-    sha256 = "11rfpb0wf1xzrhcnpahaghmi5626snzph0vsbxlmmqx75wf0p6mf";
+    sha256 = "5jc6MtG/cBry05Sq51UAFzSBvKKkdNTA67UIDvJt9uU=";
   };
 
   node_modules = fetchNodeModules {
@@ -36,6 +36,7 @@ buildPythonPackage rec {
     bleach
     misaka
     humanize
+    html5lib
     markdown
     psycopg2
     pygments
@@ -44,6 +45,7 @@ buildPythonPackage rec {
     cryptography
     beautifulsoup4
     sqlalchemy-utils
+    prometheus_client
 
     # Unofficial runtime dependencies?
     celery
@@ -60,7 +62,7 @@ buildPythonPackage rec {
   dontUseSetuptoolsCheck = true;
 
   meta = with stdenv.lib; {
-    homepage = https://git.sr.ht/~sircmpwn/srht;
+    homepage = "https://git.sr.ht/~sircmpwn/srht";
     description = "Core modules for sr.ht";
     license = licenses.bsd3;
     maintainers = with maintainers; [ eadwu ];
diff --git a/pkgs/applications/version-management/sourcehut/dispatch.nix b/pkgs/applications/version-management/sourcehut/dispatch.nix
index a078c5acb4f3..52a49d4a0845 100644
--- a/pkgs/applications/version-management/sourcehut/dispatch.nix
+++ b/pkgs/applications/version-management/sourcehut/dispatch.nix
@@ -4,12 +4,12 @@
 
 buildPythonPackage rec {
   pname = "dispatchsrht";
-  version = "0.13.3";
+  version = "0.14.1";
 
   src = fetchgit {
     url = "https://git.sr.ht/~sircmpwn/dispatch.sr.ht";
     rev = version;
-    sha256 = "08asayfwpzafscpli5grx1p0y1ryz7pqkznf5bd9j8ir2iyhbc10";
+    sha256 = "eJ+oHs9m74Q8V6fUBLOA1ksUiwdaR1/Bxlf3jcexdkA=";
   };
 
   patches = [
@@ -30,7 +30,7 @@ buildPythonPackage rec {
   '';
 
   meta = with stdenv.lib; {
-    homepage = https://dispatch.sr.ht/~sircmpwn/dispatch.sr.ht;
+    homepage = "https://dispatch.sr.ht/~sircmpwn/dispatch.sr.ht";
     description = "Task dispatcher and service integration tool for the sr.ht network";
     license = licenses.agpl3;
     maintainers = with maintainers; [ eadwu ];
diff --git a/pkgs/applications/version-management/sourcehut/git.nix b/pkgs/applications/version-management/sourcehut/git.nix
index 93ab499e14e3..de4656e58816 100644
--- a/pkgs/applications/version-management/sourcehut/git.nix
+++ b/pkgs/applications/version-management/sourcehut/git.nix
@@ -1,10 +1,10 @@
 { stdenv, fetchgit, buildPythonPackage
 , python
 , buildGoModule
-, srht, pygit2, scmsrht }:
+, srht, minio, pygit2, scmsrht }:
 
 let
-  version = "0.43.3";
+  version = "0.50.3";
 
   buildShell = src: buildGoModule {
     inherit src version;
@@ -44,7 +44,7 @@ in buildPythonPackage rec {
   src = fetchgit {
     url = "https://git.sr.ht/~sircmpwn/git.sr.ht";
     rev = version;
-    sha256 = "1f9wfyri85bq4zi9xkbfcfb69q4abh0hz7p3lghj460hh9zxc57w";
+    sha256 = "dmcTee3hp6ZkwwunG4ouEVmCxQ1a9LfQ7oWpHxnKumc=";
   };
 
   patches = [
@@ -55,6 +55,7 @@ in buildPythonPackage rec {
 
   propagatedBuildInputs = [
     srht
+    minio
     pygit2
     scmsrht
   ];
@@ -73,7 +74,7 @@ in buildPythonPackage rec {
   '';
 
   meta = with stdenv.lib; {
-    homepage = https://git.sr.ht/~sircmpwn/git.sr.ht;
+    homepage = "https://git.sr.ht/~sircmpwn/git.sr.ht";
     description = "Git repository hosting service for the sr.ht network";
     license = licenses.agpl3;
     maintainers = with maintainers; [ eadwu ];
diff --git a/pkgs/applications/version-management/sourcehut/hg.nix b/pkgs/applications/version-management/sourcehut/hg.nix
index 2d57012d071d..ee6dd2707591 100644
--- a/pkgs/applications/version-management/sourcehut/hg.nix
+++ b/pkgs/applications/version-management/sourcehut/hg.nix
@@ -4,12 +4,12 @@
 
 buildPythonPackage rec {
   pname = "hgsrht";
-  version = "0.21.1";
+  version = "0.26.0";
 
   src = fetchhg {
     url = "https://hg.sr.ht/~sircmpwn/hg.sr.ht";
     rev = version;
-    sha256 = "19r8zcy4xf9imqifqw3b7ylxd46i025ncns69kn5xp11damilz66";
+    sha256 = "kX0KZSEzYQ/hxL2vKh+mpaRuG16qbBKN2Xwp+e9pTxs=";
   };
 
   patches = [
@@ -31,7 +31,7 @@ buildPythonPackage rec {
   '';
 
   meta = with stdenv.lib; {
-    homepage = https://git.sr.ht/~sircmpwn/hg.sr.ht;
+    homepage = "https://git.sr.ht/~sircmpwn/hg.sr.ht";
     description = "Mercurial repository hosting service for the sr.ht network";
     license = licenses.agpl3;
     maintainers = with maintainers; [ eadwu ];
diff --git a/pkgs/applications/version-management/sourcehut/lists.nix b/pkgs/applications/version-management/sourcehut/lists.nix
index a7915a917baf..1d915e915b10 100644
--- a/pkgs/applications/version-management/sourcehut/lists.nix
+++ b/pkgs/applications/version-management/sourcehut/lists.nix
@@ -4,12 +4,12 @@
 
 buildPythonPackage rec {
   pname = "listssrht";
-  version = "0.40.3";
+  version = "0.41.8";
 
   src = fetchgit {
     url = "https://git.sr.ht/~sircmpwn/lists.sr.ht";
     rev = version;
-    sha256 = "1s736i5wm04pqa5k7455bdjdi7vjgvq32q1v6mdsp1w7jhgy1ags";
+    sha256 = "Gmt6ttupyhZhpyH/IASEt8SZGrlQmEEtV5bE11yIiXQ=";
   };
 
   patches = [
@@ -32,7 +32,7 @@ buildPythonPackage rec {
   '';
 
   meta = with stdenv.lib; {
-    homepage = https://git.sr.ht/~sircmpwn/lists.sr.ht;
+    homepage = "https://git.sr.ht/~sircmpwn/lists.sr.ht";
     description = "Mailing list service for the sr.ht network";
     license = licenses.agpl3;
     maintainers = with maintainers; [ eadwu ];
diff --git a/pkgs/applications/version-management/sourcehut/man.nix b/pkgs/applications/version-management/sourcehut/man.nix
index 7ed4c6a5a248..a150b774f614 100644
--- a/pkgs/applications/version-management/sourcehut/man.nix
+++ b/pkgs/applications/version-management/sourcehut/man.nix
@@ -4,12 +4,12 @@
 
 buildPythonPackage rec {
   pname = "mansrht";
-  version = "0.14.1";
+  version = "0.14.7";
 
   src = fetchgit {
     url = "https://git.sr.ht/~sircmpwn/man.sr.ht";
     rev = version;
-    sha256 = "13yar0sa24jyiq0l4p4bgq6p5crj148f26sxwyi37g76jqba4rfi";
+    sha256 = "CKXWVXr2P1D6Nz9/S5rOkuOi9piy66RreQv2RQ0KSfs=";
   };
 
   patches = [
@@ -29,7 +29,7 @@ buildPythonPackage rec {
   '';
 
   meta = with stdenv.lib; {
-    homepage = https://git.sr.ht/~sircmpwn/man.sr.ht;
+    homepage = "https://git.sr.ht/~sircmpwn/man.sr.ht";
     description = "Wiki service for the sr.ht network";
     license = licenses.agpl3;
     maintainers = with maintainers; [ eadwu ];
diff --git a/pkgs/applications/version-management/sourcehut/meta.nix b/pkgs/applications/version-management/sourcehut/meta.nix
index 17b4c91446f6..5b75b5818d72 100644
--- a/pkgs/applications/version-management/sourcehut/meta.nix
+++ b/pkgs/applications/version-management/sourcehut/meta.nix
@@ -1,16 +1,16 @@
 { stdenv, fetchgit, buildPythonPackage
 , python
 , pgpy, srht, redis, bcrypt, qrcode, stripe, zxcvbn, alembic, pystache
-, sshpubkeys, weasyprint, prometheus_client }:
+, sshpubkeys, weasyprint }:
 
 buildPythonPackage rec {
   pname = "metasrht";
-  version = "0.41.10";
+  version = "0.42.13";
 
   src = fetchgit {
     url = "https://git.sr.ht/~sircmpwn/meta.sr.ht";
     rev = version;
-    sha256 = "1srzrajgwq85kjryxykj708m2c98r6a84x4k4a5grwznqw3mwm6p";
+    sha256 = "p7WgnfOsX09YxJJclHwdIky/jYkTOxibbYmXwcmE2S4=";
   };
 
   nativeBuildInputs = srht.nativeBuildInputs;
@@ -27,7 +27,6 @@ buildPythonPackage rec {
     pystache
     sshpubkeys
     weasyprint
-    prometheus_client
   ];
 
   patches = [
@@ -40,7 +39,7 @@ buildPythonPackage rec {
   '';
 
   meta = with stdenv.lib; {
-    homepage = https://git.sr.ht/~sircmpwn/meta.sr.ht;
+    homepage = "https://git.sr.ht/~sircmpwn/meta.sr.ht";
     description = "Account management service for the sr.ht network";
     license = licenses.agpl3;
     maintainers = with maintainers; [ eadwu ];
diff --git a/pkgs/applications/version-management/sourcehut/paste.nix b/pkgs/applications/version-management/sourcehut/paste.nix
index b629ca9bca30..e05dec5d6aaa 100644
--- a/pkgs/applications/version-management/sourcehut/paste.nix
+++ b/pkgs/applications/version-management/sourcehut/paste.nix
@@ -4,12 +4,12 @@
 
 buildPythonPackage rec {
   pname = "pastesrht";
-  version = "0.9.2";
+  version = "0.10.3";
 
   src = fetchgit {
     url = "https://git.sr.ht/~sircmpwn/paste.sr.ht";
     rev = version;
-    sha256 = "0hiv607a7446dba524kblmpswlcz0z4i1jr49ng7g90nhpsk8dy4";
+    sha256 = "i1M4L5NG152zkIEFj2vDHa9lr5aE1ioToDVPpkIqemk=";
   };
 
   patches = [
@@ -29,7 +29,7 @@ buildPythonPackage rec {
   '';
 
   meta = with stdenv.lib; {
-    homepage = https://git.sr.ht/~sircmpwn/paste.sr.ht;
+    homepage = "https://git.sr.ht/~sircmpwn/paste.sr.ht";
     description = "Ad-hoc text file hosting service for the sr.ht network";
     license = licenses.agpl3;
     maintainers = with maintainers; [ eadwu ];
diff --git a/pkgs/applications/version-management/sourcehut/scm.nix b/pkgs/applications/version-management/sourcehut/scm.nix
index add791da2840..e3210673cb73 100644
--- a/pkgs/applications/version-management/sourcehut/scm.nix
+++ b/pkgs/applications/version-management/sourcehut/scm.nix
@@ -4,12 +4,12 @@
 
 buildPythonPackage rec {
   pname = "scmsrht";
-  version = "0.18.1";
+  version = "0.19.11";
 
   src = fetchgit {
     url = "https://git.sr.ht/~sircmpwn/scm.sr.ht";
     rev = version;
-    sha256 = "1f0h8vbbqx34v1rgzqjkgbf0z7jhnp8hdlzmrxwhs74kj6zjb134";
+    sha256 = "a0JIZcO/3op409t+jq4/fImuppuGqfGxBPgBh67DGHM=";
   };
 
   nativeBuildInputs = srht.nativeBuildInputs;
@@ -28,7 +28,7 @@ buildPythonPackage rec {
   dontUseSetuptoolsCheck = true;
 
   meta = with stdenv.lib; {
-    homepage = https://git.sr.ht/~sircmpwn/git.sr.ht;
+    homepage = "https://git.sr.ht/~sircmpwn/git.sr.ht";
     description = "Shared support code for sr.ht source control services.";
     license = licenses.agpl3;
     maintainers = with maintainers; [ eadwu ];
diff --git a/pkgs/applications/version-management/sourcehut/todo.nix b/pkgs/applications/version-management/sourcehut/todo.nix
index 572c2919b16d..3a5bc2c105ea 100644
--- a/pkgs/applications/version-management/sourcehut/todo.nix
+++ b/pkgs/applications/version-management/sourcehut/todo.nix
@@ -5,12 +5,12 @@
 
 buildPythonPackage rec {
   pname = "todosrht";
-  version = "0.55.3";
+  version = "0.57.14";
 
   src = fetchgit {
     url = "https://git.sr.ht/~sircmpwn/todo.sr.ht";
     rev = version;
-    sha256 = "1j82yxdnag0q6rp0rpiq3ccn5maa1k58j2f1ilcsxf1gr13pycf5";
+    sha256 = "nlTf7KV6vjqqVEXZ6OOZ5dAj1iHTDPYj4DnAD2hGp5c=";
   };
 
   patches = [
@@ -40,7 +40,7 @@ buildPythonPackage rec {
   dontUseSetuptoolsCheck = true;
 
   meta = with stdenv.lib; {
-    homepage = https://todo.sr.ht/~sircmpwn/todo.sr.ht;
+    homepage = "https://todo.sr.ht/~sircmpwn/todo.sr.ht";
     description = "Ticket tracking service for the sr.ht network";
     license = licenses.agpl3;
     maintainers = with maintainers; [ eadwu ];
diff --git a/pkgs/applications/version-management/srcml/default.nix b/pkgs/applications/version-management/srcml/default.nix
index 693af89d9785..6deca94fc15c 100644
--- a/pkgs/applications/version-management/srcml/default.nix
+++ b/pkgs/applications/version-management/srcml/default.nix
@@ -27,7 +27,7 @@ stdenv.mkDerivation rec {
 
   meta = {
     description = "Infrastructure for exploration, analysis, and manipulation of source code";
-    homepage = https://www.srcml.org;
+    homepage = "https://www.srcml.org";
     license = licenses.gpl2Plus;
     maintainers = with maintainers; [ leenaars ];
   };
diff --git a/pkgs/applications/version-management/sublime-merge/common.nix b/pkgs/applications/version-management/sublime-merge/common.nix
index c095aa49eafb..173333fb75c7 100644
--- a/pkgs/applications/version-management/sublime-merge/common.nix
+++ b/pkgs/applications/version-management/sublime-merge/common.nix
@@ -109,7 +109,7 @@ in stdenv.mkDerivation (rec {
 
   meta = with stdenv.lib; {
     description = "Git client from the makers of Sublime Text";
-    homepage = https://www.sublimemerge.com;
+    homepage = "https://www.sublimemerge.com";
     maintainers = with maintainers; [ zookatron ];
     license = licenses.unfree;
     platforms = [ "x86_64-linux" ];
diff --git a/pkgs/applications/version-management/tkcvs/default.nix b/pkgs/applications/version-management/tkcvs/default.nix
index 48558c15dc1c..d2a7299bcd9e 100644
--- a/pkgs/applications/version-management/tkcvs/default.nix
+++ b/pkgs/applications/version-management/tkcvs/default.nix
@@ -5,7 +5,7 @@ stdenv.mkDerivation
   name = "tkcvs-8.2.1";
 
   src = fetchurl {
-    url = mirror://sourceforge/tkcvs/tkcvs_8_2_1.tar.gz;
+    url = "mirror://sourceforge/tkcvs/tkcvs_8_2_1.tar.gz";
     sha256 = "0kvj6rcx1153wq0n1lmd8imbrki6xy5wxghwzlb9i15l65sclg3i";
   };
 
@@ -20,7 +20,7 @@ stdenv.mkDerivation
   '';
 
   meta = {
-    homepage = https://tkcvs.sourceforge.io;
+    homepage = "https://tkcvs.sourceforge.io";
     description = "TCL/TK GUI for cvs and subversion";
     license = stdenv.lib.licenses.gpl2Plus;
     platforms = stdenv.lib.platforms.unix;
diff --git a/pkgs/applications/version-management/tortoisehg/default.nix b/pkgs/applications/version-management/tortoisehg/default.nix
index 653db11ab5d3..2743d4f827fb 100644
--- a/pkgs/applications/version-management/tortoisehg/default.nix
+++ b/pkgs/applications/version-management/tortoisehg/default.nix
@@ -44,7 +44,7 @@ in python3Packages.buildPythonApplication {
 
     meta = {
       description = "Qt based graphical tool for working with Mercurial";
-      homepage = https://tortoisehg.bitbucket.io/;
+      homepage = "https://tortoisehg.bitbucket.io/";
       license = lib.licenses.gpl2;
       platforms = lib.platforms.linux;
       maintainers = with lib.maintainers; [ danbst ];
diff --git a/pkgs/applications/version-management/vcprompt/default.nix b/pkgs/applications/version-management/vcprompt/default.nix
index 2ad6b6f2f62c..85fe83996da3 100644
--- a/pkgs/applications/version-management/vcprompt/default.nix
+++ b/pkgs/applications/version-management/vcprompt/default.nix
@@ -22,7 +22,7 @@ stdenv.mkDerivation rec {
       A little C program that prints a short string with barebones information
       about the current working directory for various version control systems
     '';
-    homepage    = http://hg.gerg.ca/vcprompt;
+    homepage    = "http://hg.gerg.ca/vcprompt";
     maintainers = with maintainers; [ cstrahan ];
     platforms   = with platforms; linux ++ darwin;
     license = licenses.gpl2Plus;
diff --git a/pkgs/applications/version-management/vcsh/default.nix b/pkgs/applications/version-management/vcsh/default.nix
index 8a014a633930..c4af492decea 100644
--- a/pkgs/applications/version-management/vcsh/default.nix
+++ b/pkgs/applications/version-management/vcsh/default.nix
@@ -18,7 +18,7 @@ stdenv.mkDerivation {
 
   meta = with stdenv.lib; {
     description = "Version Control System for $HOME";
-    homepage = https://github.com/RichiH/vcsh;
+    homepage = "https://github.com/RichiH/vcsh";
     license = licenses.gpl2Plus;
     maintainers = with maintainers; [ ttuegel ];
     platforms = platforms.unix;
diff --git a/pkgs/applications/version-management/yadm/default.nix b/pkgs/applications/version-management/yadm/default.nix
index aab47ed1327b..fab89d663fa7 100644
--- a/pkgs/applications/version-management/yadm/default.nix
+++ b/pkgs/applications/version-management/yadm/default.nix
@@ -27,7 +27,7 @@ stdenv.mkDerivation {
   '';
 
   meta = {
-    homepage = https://github.com/TheLocehiliosan/yadm;
+    homepage = "https://github.com/TheLocehiliosan/yadm";
     description = "Yet Another Dotfiles Manager";
     longDescription = ''
       yadm is a dotfile management tool with 3 main features:
diff --git a/pkgs/applications/video/avidemux/default.nix b/pkgs/applications/video/avidemux/default.nix
index 00bdb370aae4..9374d2dbc790 100644
--- a/pkgs/applications/video/avidemux/default.nix
+++ b/pkgs/applications/video/avidemux/default.nix
@@ -89,7 +89,7 @@ stdenv.mkDerivation rec {
   '';
 
   meta = with stdenv.lib; {
-    homepage = http://fixounet.free.fr/avidemux/;
+    homepage = "http://fixounet.free.fr/avidemux/";
     description = "Free video editor designed for simple video editing tasks";
     maintainers = with maintainers; [ abbradar ma27 ];
     # "CPU not supported" errors on AArch64
diff --git a/pkgs/applications/video/avxsynth/default.nix b/pkgs/applications/video/avxsynth/default.nix
index f16f655b95db..2cccbae43d2c 100644
--- a/pkgs/applications/video/avxsynth/default.nix
+++ b/pkgs/applications/video/avxsynth/default.nix
@@ -34,7 +34,7 @@ stdenv.mkDerivation {
 
   meta = with stdenv.lib; {
     description = "A script system that allows advanced non-linear editing";
-    homepage = https://github.com/avxsynth/avxsynth;
+    homepage = "https://github.com/avxsynth/avxsynth";
     license = licenses.gpl2Plus;
     maintainers = with maintainers; [ codyopel ];
     platforms = platforms.linux;
diff --git a/pkgs/applications/video/bino3d/default.nix b/pkgs/applications/video/bino3d/default.nix
index c3f5d7d796d4..4554bea61571 100644
--- a/pkgs/applications/video/bino3d/default.nix
+++ b/pkgs/applications/video/bino3d/default.nix
@@ -17,7 +17,7 @@ mkDerivation rec {
 
   meta = with lib; {
     description = "Stereoscopic 3D and multi-display video player";
-    homepage = https://bino3d.org/;
+    homepage = "https://bino3d.org/";
     license = licenses.gpl3Plus;
     maintainers = with maintainers; [ orivej ];
     platforms = platforms.linux;
diff --git a/pkgs/applications/video/bombono/default.nix b/pkgs/applications/video/bombono/default.nix
index 1cba1d0e9491..f9a82af2f798 100644
--- a/pkgs/applications/video/bombono/default.nix
+++ b/pkgs/applications/video/bombono/default.nix
@@ -17,7 +17,13 @@ stdenv.mkDerivation rec {
     sha256 = "1lz1vik6abn1i1pvxhm55c9g47nxxv755wb2ijszwswwrwgvq5b9";
   };
 
-  patches = map fetchPatchFromAur [
+  patches = [
+    (fetchpatch {
+      name = "bombono-dvd-1.2.4-scons3.patch";
+      url = "https://svnweb.mageia.org/packages/cauldron/bombono-dvd/current/SOURCES/bombono-dvd-1.2.4-scons-python3.patch?revision=1447925&view=co&pathrev=1484457";
+      sha256 = "081116d0if6s2r1rgqfr1n5gl3kpvzk01pf4v2k7gg2rnid83qp4";
+    })
+  ] ++ (map fetchPatchFromAur [
     {name="fix_ffmpeg_codecid.patch";         sha256="1asfc0lqzk4gjssrvjmsi1xr53ygnsx2sh7c8yzp5r3j2bagxhp7";}
     {name="fix_ptr2bool_cast.patch";          sha256="0iqzrmbg38ikh4x9cmx0v0rnm7a9lcq0kd8sh1z9yfmnz71qqahg";}
     {name="fix_c++11_literal_warnings.patch"; sha256="1zbf12i77p0j0090pz5lzg4a7kyahahzqssybv7vi0xikwvw57w9";}
@@ -26,7 +32,7 @@ stdenv.mkDerivation rec {
     {name="fix_throw_specifications.patch";   sha256="1f5gi3qwm843hsxvijq7sjy0s62xm7rnr1vdp7f242fi0ldq6c1n";}
     {name="fix_operator_ambiguity.patch";     sha256="0r4scsbsqfg6wgzsbfxxpckamvgyrida0n1ypg1klx24pk5dc7n7";}
     {name="fix_ffmpeg30.patch";               sha256="1irva7a9bpbzs60ga8ypa3la9y84i5rz20jnd721qmfqp2yip8dw";}
-  ];
+  ]);
 
   nativeBuildInputs = [ wrapGAppsHook scons pkgconfig gettext ];
 
diff --git a/pkgs/applications/video/bomi/default.nix b/pkgs/applications/video/bomi/default.nix
index a9d98a9a2a44..d812ac488742 100644
--- a/pkgs/applications/video/bomi/default.nix
+++ b/pkgs/applications/video/bomi/default.nix
@@ -1,7 +1,7 @@
-{ config, stdenv, fetchFromGitHub
+{ mkDerivation, config, stdenv, fetchFromGitHub
 , fetchpatch, pkgconfig, perl, python, which
 , libX11, libxcb, libGLU, libGL
-, qtbase, qtdeclarative, qtquickcontrols, qttools, qtx11extras, qmake, makeWrapper
+, qtbase, qtdeclarative, qtquickcontrols, qttools, qtx11extras, qmake
 , libchardet
 , ffmpeg
 
@@ -29,7 +29,7 @@ assert pulseSupport -> libpulseaudio != null;
 assert cddaSupport -> libcdda != null;
 assert youtubeSupport -> youtube-dl != null;
 
-stdenv.mkDerivation rec {
+mkDerivation rec {
   pname = "bomi";
   version = "0.9.11";
 
@@ -90,8 +90,9 @@ stdenv.mkDerivation rec {
     patchShebangs build-mpv
   '';
 
+  dontWrapQtApps = true;
   postInstall = ''
-    wrapProgram $out/bin/bomi \
+    wrapQtApp $out/bin/bomi \
       ${optionalString youtubeSupport "--prefix PATH ':' '${youtube-dl}/bin'"}
   '';
 
@@ -105,11 +106,11 @@ stdenv.mkDerivation rec {
                    ++ optional cddaSupport "--enable-cdda"
                    ;
 
-  nativeBuildInputs = [ makeWrapper pkgconfig perl python which qttools qmake ];
+  nativeBuildInputs = [ pkgconfig perl python which qttools qmake ];
 
   meta = with stdenv.lib; {
     description = "Powerful and easy-to-use multimedia player";
-    homepage = https://bomi-player.github.io/;
+    homepage = "https://bomi-player.github.io/";
     license = licenses.gpl2Plus;
     maintainers = [ maintainers.abbradar ];
     platforms = platforms.linux;
diff --git a/pkgs/applications/video/byzanz/default.nix b/pkgs/applications/video/byzanz/default.nix
index 10685a72f109..f5d40a5c34cc 100644
--- a/pkgs/applications/video/byzanz/default.nix
+++ b/pkgs/applications/video/byzanz/default.nix
@@ -5,7 +5,7 @@ stdenv.mkDerivation {
   pname = "byzanz";
 
   src = fetchgit {
-    url = git://github.com/GNOME/byzanz;
+    url = "git://github.com/GNOME/byzanz";
     rev = "1875a7f6a3903b83f6b1d666965800f47db9286a";
     sha256 = "0a72fw2mxl8vdcdnzy0bwis4jk28pd7nc8qgr4vhyw5pd48dynvh";
   };
@@ -24,7 +24,7 @@ stdenv.mkDerivation {
 
   meta = with stdenv.lib; {
     description = "Tool to record a running X desktop to an animation suitable for presentation in a web browser";
-    homepage = https://github.com/GNOME/byzanz;
+    homepage = "https://github.com/GNOME/byzanz";
     license = licenses.gpl3;
     platforms = platforms.linux;
     maintainers = [ ];
diff --git a/pkgs/applications/video/celluloid/default.nix b/pkgs/applications/video/celluloid/default.nix
index 22fac11b0182..208cbb7f4e6a 100644
--- a/pkgs/applications/video/celluloid/default.nix
+++ b/pkgs/applications/video/celluloid/default.nix
@@ -16,13 +16,13 @@
 
 stdenv.mkDerivation rec {
   pname = "celluloid";
-  version = "0.18";
+  version = "0.19";
 
   src = fetchFromGitHub {
     owner = "celluloid-player";
     repo = "celluloid";
     rev = "v${version}";
-    sha256 = "1j8z75y98liirr41rlcn89cshvp1xp71cspcclm6wx455i7q2cg1";
+    sha256 = "1jdmwljckajqb3ys8azd1nyy49nvq9kb2knrrqdcfnvzq0m5lpqr";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/applications/video/cinelerra/default.nix b/pkgs/applications/video/cinelerra/default.nix
index 36ad39bd37c1..22533b182a0f 100644
--- a/pkgs/applications/video/cinelerra/default.nix
+++ b/pkgs/applications/video/cinelerra/default.nix
@@ -44,7 +44,7 @@ stdenv.mkDerivation {
 
   meta = {
     description = "Video Editor";
-    homepage = http://www.cinelerra.org;
+    homepage = "http://www.cinelerra.org";
     maintainers = [ stdenv.lib.maintainers.marcweber ];
     license = stdenv.lib.licenses.gpl2;
   };
diff --git a/pkgs/applications/video/clickshare-csc1/default.nix b/pkgs/applications/video/clickshare-csc1/default.nix
index 53d257dd9d07..e4e72704fb0b 100644
--- a/pkgs/applications/video/clickshare-csc1/default.nix
+++ b/pkgs/applications/video/clickshare-csc1/default.nix
@@ -28,7 +28,7 @@ stdenv.mkDerivation rec {
   version = "01.07.00.033";
   src = fetchurl {
     name = "clickshare-csc1-${version}.zip";
-    url = https://www.barco.com/services/website/de/TdeFiles/Download?FileNumber=R33050020&TdeType=3&MajorVersion=01&MinorVersion=07&PatchVersion=00&BuildVersion=033;
+    url = "https://www.barco.com/services/website/de/TdeFiles/Download?FileNumber=R33050020&TdeType=3&MajorVersion=01&MinorVersion=07&PatchVersion=00&BuildVersion=033";
     sha256 = "0h4jqidqvk4xkaky5bizi7ilz4qzl2mh68401j21y3djnzx09br3";
   };
 
@@ -106,8 +106,8 @@ stdenv.mkDerivation rec {
   '';
 
   meta = {
-    homepage = https://www.barco.com/de/support/clickshare-csc-1/drivers;
-    downloadPage = https://www.barco.com/de/Support/software/R33050020;
+    homepage = "https://www.barco.com/de/support/clickshare-csc-1/drivers";
+    downloadPage = "https://www.barco.com/de/Support/software/R33050020";
     platforms = [ "i686-linux" "x86_64-linux" ];
     license = lib.licenses.unfree;
     maintainers = [ lib.maintainers.yarny ];
diff --git a/pkgs/applications/video/clipgrab/default.nix b/pkgs/applications/video/clipgrab/default.nix
index c0075d506728..34e0d33bcbc0 100644
--- a/pkgs/applications/video/clipgrab/default.nix
+++ b/pkgs/applications/video/clipgrab/default.nix
@@ -5,10 +5,10 @@
 
 mkDerivation rec {
   pname = "clipgrab";
-  version = "3.8.7";
+  version = "3.8.11";
 
   src = fetchurl {
-    sha256 = "1mjkq487w168537qzw4pd010lp25vm1s2zji6cykcaa2cxcd6p7p";
+    sha256 = "0jpfdmyzjasq4x1xvk7b1cmhhq6fz6ydvvbwz2wclph367x496xk";
     # The .tar.bz2 "Download" link is a binary blob, the source is the .tar.gz!
     url = "https://download.clipgrab.org/${pname}-${version}.tar.gz";
   };
@@ -49,7 +49,7 @@ mkDerivation rec {
       Dailymotion and many other online video sites. It converts downloaded
       videos to MPEG4, MP3 or other formats in just one easy step.
     '';
-    homepage = https://clipgrab.org/;
+    homepage = "https://clipgrab.org/";
     license = licenses.gpl3Plus;
     platforms = platforms.linux;
   };
diff --git a/pkgs/applications/video/coriander/default.nix b/pkgs/applications/video/coriander/default.nix
index a2de52468f29..a094bfd904ab 100644
--- a/pkgs/applications/video/coriander/default.nix
+++ b/pkgs/applications/video/coriander/default.nix
@@ -17,7 +17,7 @@ stdenv.mkDerivation {
   buildInputs = [ glib gtk2 libgnomeui libXv libraw1394 libdc1394 SDL GConf ];
   
   meta = {
-    homepage = https://damien.douxchamps.net/ieee1394/coriander/;
+    homepage = "https://damien.douxchamps.net/ieee1394/coriander/";
     description = "GUI for controlling a Digital Camera through the IEEE1394 bus";
     license = stdenv.lib.licenses.gpl3Plus;
     maintainers = with stdenv.lib.maintainers; [viric];
diff --git a/pkgs/applications/video/devede/default.nix b/pkgs/applications/video/devede/default.nix
index aee6fab77a23..2ec2f68d1285 100644
--- a/pkgs/applications/video/devede/default.nix
+++ b/pkgs/applications/video/devede/default.nix
@@ -46,7 +46,7 @@ in buildPythonApplication {
 
   meta = with stdenv.lib; {
     description = "DVD Creator for Linux";
-    homepage = http://www.rastersoft.com/programas/devede.html;
+    homepage = "http://www.rastersoft.com/programas/devede.html";
     license = licenses.gpl3;
     maintainers = [ maintainers.bdimcheff ];
   };
diff --git a/pkgs/applications/video/dvb-apps/default.nix b/pkgs/applications/video/dvb-apps/default.nix
index a032ef654aa3..8fa88e324494 100644
--- a/pkgs/applications/video/dvb-apps/default.nix
+++ b/pkgs/applications/video/dvb-apps/default.nix
@@ -16,7 +16,7 @@ stdenv.mkDerivation {
 
   meta = {
     description = "Linux DVB API applications and utilities";
-    homepage = https://linuxtv.org/;
+    homepage = "https://linuxtv.org/";
     platforms = stdenv.lib.platforms.linux;
     license = stdenv.lib.licenses.gpl2;
     broken = true; # 2018-04-10
diff --git a/pkgs/applications/video/dvd-slideshow/default.nix b/pkgs/applications/video/dvd-slideshow/default.nix
index 61894bd22f8e..f6e336240d3d 100644
--- a/pkgs/applications/video/dvd-slideshow/default.nix
+++ b/pkgs/applications/video/dvd-slideshow/default.nix
@@ -64,7 +64,7 @@ in stdenv.mkDerivation rec {
 
   meta = {
     description = "Suite of command line programs that creates a slideshow-style video from groups of pictures";
-    homepage = http://dvd-slideshow.sourceforge.net/wiki/Main_Page;
+    homepage = "http://dvd-slideshow.sourceforge.net/wiki/Main_Page";
     license = stdenv.lib.licenses.gpl2;
     platforms = stdenv.lib.platforms.linux;
     maintainers = [ stdenv.lib.maintainers.robbinch ];
diff --git a/pkgs/applications/video/dvdauthor/default.nix b/pkgs/applications/video/dvdauthor/default.nix
index c15a892e6981..6be1d8a1633f 100644
--- a/pkgs/applications/video/dvdauthor/default.nix
+++ b/pkgs/applications/video/dvdauthor/default.nix
@@ -20,7 +20,7 @@ stdenv.mkDerivation rec{
 
   meta = with stdenv.lib; {
     description = "Tools for generating DVD files to be played on standalone DVD players";
-    homepage = http://dvdauthor.sourceforge.net/;
+    homepage = "http://dvdauthor.sourceforge.net/";
     license = licenses.gpl2;
     platforms = platforms.linux ++ platforms.darwin;
   };
diff --git a/pkgs/applications/video/dvdbackup/default.nix b/pkgs/applications/video/dvdbackup/default.nix
index 54be20d5faff..e129031fd49c 100644
--- a/pkgs/applications/video/dvdbackup/default.nix
+++ b/pkgs/applications/video/dvdbackup/default.nix
@@ -13,7 +13,7 @@ stdenv.mkDerivation rec {
 
   meta = {
     description = "A tool to rip video DVDs from the command line";
-    homepage = http://dvdbackup.sourceforge.net/;
+    homepage = "http://dvdbackup.sourceforge.net/";
     license = stdenv.lib.licenses.gpl3Plus;
     maintainers = [ stdenv.lib.maintainers.bradediger ];
     platforms = stdenv.lib.platforms.linux;
diff --git a/pkgs/applications/video/dvdstyler/default.nix b/pkgs/applications/video/dvdstyler/default.nix
index 495501e0c187..b78f9ed816b7 100644
--- a/pkgs/applications/video/dvdstyler/default.nix
+++ b/pkgs/applications/video/dvdstyler/default.nix
@@ -77,7 +77,7 @@ stdenv.mkDerivation rec {
     - copy any menu object or whole menu
     - customize navigation using DVD scripting
     '';
-    homepage = http://www.dvdstyler.org/;
+    homepage = "http://www.dvdstyler.org/";
     license = with licenses; gpl2;
     maintainers = with maintainers; [ AndersonTorres ];
     platforms = with platforms; linux;
diff --git a/pkgs/applications/video/ffmpeg-normalize/default.nix b/pkgs/applications/video/ffmpeg-normalize/default.nix
new file mode 100644
index 000000000000..c2259ce83794
--- /dev/null
+++ b/pkgs/applications/video/ffmpeg-normalize/default.nix
@@ -0,0 +1,29 @@
+{ lib
+, buildPythonApplication
+, fetchPypi
+, ffmpeg
+, tqdm
+}:
+
+buildPythonApplication rec {
+  pname = "ffmpeg-normalize";
+  version = "1.19.0";
+
+  src = fetchPypi {
+    inherit pname version;
+    sha256 = "18dpck9grnr3wgbjvdh4mjlx0zfwcxpy4rnpmc39in0yk3w7li2x";
+  };
+
+  propagatedBuildInputs = [ ffmpeg tqdm ];
+
+  checkPhase = ''
+    $out/bin/ffmpeg-normalize --help > /dev/null
+  '';
+
+  meta = with lib; {
+    description = "Normalize audio via ffmpeg";
+    homepage = "https://github.com/slhck/ffmpeg-normalize";
+    license = with licenses; [ mit ];
+    maintainers = with maintainers; [ prusnak ];
+  };
+}
diff --git a/pkgs/applications/video/gnome-mplayer/default.nix b/pkgs/applications/video/gnome-mplayer/default.nix
index 3e26b4d68c22..3bd7785f201c 100644
--- a/pkgs/applications/video/gnome-mplayer/default.nix
+++ b/pkgs/applications/video/gnome-mplayer/default.nix
@@ -25,7 +25,7 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "Gnome MPlayer, a simple GUI for MPlayer";
-    homepage = https://sites.google.com/site/kdekorte2/gnomemplayer;
+    homepage = "https://sites.google.com/site/kdekorte2/gnomemplayer";
     license = licenses.gpl2;
     maintainers = with maintainers; [];
     platforms = platforms.linux;
diff --git a/pkgs/applications/video/gnomecast/default.nix b/pkgs/applications/video/gnomecast/default.nix
index d840f43163cf..3b7e8913c5d1 100644
--- a/pkgs/applications/video/gnomecast/default.nix
+++ b/pkgs/applications/video/gnomecast/default.nix
@@ -22,7 +22,7 @@ buildPythonApplication rec {
 
   meta = with lib; {
     description = "A native Linux GUI for Chromecasting local files";
-    homepage = https://github.com/keredson/gnomecast;
+    homepage = "https://github.com/keredson/gnomecast";
     license = with licenses; [ gpl3 ];
   };
 }
diff --git a/pkgs/applications/video/gpac/default.nix b/pkgs/applications/video/gpac/default.nix
index f81f394ed0b8..e587a5999054 100644
--- a/pkgs/applications/video/gpac/default.nix
+++ b/pkgs/applications/video/gpac/default.nix
@@ -33,7 +33,7 @@ stdenv.mkDerivation rec {
       A multimedia packager, called MP4Box,
       And some server tools included in MP4Box and MP42TS applications.
     '';
-    homepage = https://gpac.wp.imt.fr;
+    homepage = "https://gpac.wp.imt.fr";
     license = licenses.lgpl21;
     maintainers = with maintainers; [ bluescreen303 mgdelacroix ];
     platforms = platforms.linux;
diff --git a/pkgs/applications/video/handbrake/default.nix b/pkgs/applications/video/handbrake/default.nix
index ab7080206632..9b51746b14c9 100644
--- a/pkgs/applications/video/handbrake/default.nix
+++ b/pkgs/applications/video/handbrake/default.nix
@@ -109,7 +109,7 @@ stdenv.mkDerivation rec {
   '';
 
   meta = with stdenv.lib; {
-    homepage = http://handbrake.fr/;
+    homepage = "http://handbrake.fr/";
     description = "A tool for converting video files and ripping DVDs";
     longDescription = ''
       Tool for converting and remuxing video files
diff --git a/pkgs/applications/video/jellyfin-mpv-shim/default.nix b/pkgs/applications/video/jellyfin-mpv-shim/default.nix
new file mode 100644
index 000000000000..de9310740912
--- /dev/null
+++ b/pkgs/applications/video/jellyfin-mpv-shim/default.nix
@@ -0,0 +1,49 @@
+{ stdenv, buildPythonApplication, fetchFromGitHub, fetchurl
+, mpv, python-mpv-jsonipc, jellyfin-apiclient-python
+, pillow, tkinter, pystray, jinja2, pywebview }:
+
+buildPythonApplication rec {
+  pname = "jellyfin-mpv-shim";
+  version = "1.4.2";
+
+  src = fetchFromGitHub {
+    owner = "iwalton3";
+    repo = pname;
+    rev = "v${version}";
+    sha256 = "1cnii5wj0pgqg3dqk5cm6slpbs3730x8ippps4cjbsxcsrmqjpx6";
+    fetchSubmodules = true; # needed for display_mirror css file
+  };
+
+  # override $HOME directory:
+  #   error: [Errno 13] Permission denied: '/homeless-shelter'
+  #
+  # remove jellyfin_mpv_shim/win_utils.py:
+  #   ModuleNotFoundError: No module named 'win32gui'
+  preCheck = ''
+    export HOME=$TMPDIR
+
+    rm jellyfin_mpv_shim/win_utils.py
+  '';
+
+  propagatedBuildInputs = [
+    jellyfin-apiclient-python
+    mpv
+    pillow
+    python-mpv-jsonipc
+
+    # gui dependencies
+    pystray
+    tkinter
+
+    # display_mirror dependencies
+    jinja2
+    pywebview
+  ];
+
+  meta = with stdenv.lib; {
+    homepage = "https://github.com/iwalton3/jellyfin-mpv-shim";
+    description = "Allows casting of videos to MPV via the jellyfin mobile and web app.";
+    license = licenses.gpl3;
+    maintainers = with maintainers; [ jojosch ];
+  };
+}
diff --git a/pkgs/applications/video/jftui/default.nix b/pkgs/applications/video/jftui/default.nix
index 82774ada09eb..eb572bac4e34 100644
--- a/pkgs/applications/video/jftui/default.nix
+++ b/pkgs/applications/video/jftui/default.nix
@@ -1,32 +1,27 @@
-{ stdenv, fetchFromGitHub, fetchpatch, clang,
-  pkg-config, curl, mpv, yajl }:
+{ stdenv
+, fetchFromGitHub
+, pkg-config
+, curl
+, mpv
+, yajl
+}:
 
 stdenv.mkDerivation rec {
   pname = "jftui";
-  version = "0.2.2";
+  version = "0.3.0";
 
   src = fetchFromGitHub {
     owner = "Aanok";
     repo = pname;
     rev = "v${version}";
-    sha256 = "0g93w8ahyh2v0cv2fyj5a7v6qyznavwk0dcxx1qw4kczdgmlxnkx";
+    sha256 = "1az737q5i24ylvkx4g3xlq8k48ni91nz5hhbif97g4nlhwl5cqb6";
   };
 
-  patches = [
-    # Remove this patch with next version
-    (fetchpatch {
-      name = "curl-capability-check-fix";
-      url = "https://github.com/Aanok/jftui/commit/d63996b8bc0d2ac4b04c5de4169bc7f8ec9b2a30.patch";
-      sha256 = "1d595mkzgx3carq2cykxpvmf5klgdlyaq94fk9wj8812yswqlsr7";
-    })
-  ];
-
   nativeBuildInputs = [
     pkg-config
   ];
 
   buildInputs = [
-    clang
     curl
     mpv
     yajl
diff --git a/pkgs/applications/video/k9copy/default.nix b/pkgs/applications/video/k9copy/default.nix
index 037331cad9e0..317505185d0d 100644
--- a/pkgs/applications/video/k9copy/default.nix
+++ b/pkgs/applications/video/k9copy/default.nix
@@ -52,7 +52,7 @@ stdenv.mkDerivation rec {
 
   meta = {
     description = "DVD backup and DVD authoring program";
-    homepage = http://k9copy-reloaded.sourceforge.net/;
+    homepage = "http://k9copy-reloaded.sourceforge.net/";
     license = stdenv.lib.licenses.gpl2;
     maintainers = with stdenv.lib.maintainers; [ flosse ];
     platforms = stdenv.lib.platforms.unix;
diff --git a/pkgs/applications/video/kazam/default.nix b/pkgs/applications/video/kazam/default.nix
index f38046cf8e1a..0cdd3db85257 100644
--- a/pkgs/applications/video/kazam/default.nix
+++ b/pkgs/applications/video/kazam/default.nix
@@ -32,7 +32,7 @@ python3.pkgs.buildPythonApplication rec {
     })
     # https://github.com/hzbd/kazam/pull/21
     (fetchpatch {
-      url = https://github.com/hzbd/kazam/commit/37e53a5aa61f4223a9ea03ceeda26eeba2b9d37b.patch;
+      url = "https://github.com/hzbd/kazam/commit/37e53a5aa61f4223a9ea03ceeda26eeba2b9d37b.patch";
       sha256 = "1q5dpmdm6cvgzw8xa7bwclnqa05xc73ja1lszwmwv5glyik0fk4z";
     })
   ];
@@ -42,7 +42,7 @@ python3.pkgs.buildPythonApplication rec {
 
   meta = with stdenv.lib; {
     description = "A screencasting program created with design in mind";
-    homepage = https://code.launchpad.net/kazam;
+    homepage = "https://code.launchpad.net/kazam";
     license = licenses.lgpl3;
     platforms = platforms.linux;
     maintainers = [ maintainers.domenkozar ];
diff --git a/pkgs/applications/video/kino/default.nix b/pkgs/applications/video/kino/default.nix
index 2a0af3ed59e4..3f41e73dfa75 100644
--- a/pkgs/applications/video/kino/default.nix
+++ b/pkgs/applications/video/kino/default.nix
@@ -59,7 +59,7 @@ stdenv.mkDerivation {
   name = "kino-1.3.4";
 
   src = fetchurl {
-    url = mirror://sourceforge/kino/kino-1.3.4.tar.gz;
+    url = "mirror://sourceforge/kino/kino-1.3.4.tar.gz";
     sha256 = "020s05k0ma83rq2kfs8x474pqicaqp9spar81qc816ddfrnh8k8i";
   };
 
@@ -88,7 +88,7 @@ stdenv.mkDerivation {
 
   meta = {
       description = "Non-linear DV editor for GNU/Linux";
-      homepage = http://www.kinodv.org/;
+      homepage = "http://www.kinodv.org/";
       license = stdenv.lib.licenses.gpl2;
     platforms = stdenv.lib.platforms.linux;
   };
diff --git a/pkgs/applications/video/kmplayer/default.nix b/pkgs/applications/video/kmplayer/default.nix
index 33ff1821640b..274ff7cdeab7 100644
--- a/pkgs/applications/video/kmplayer/default.nix
+++ b/pkgs/applications/video/kmplayer/default.nix
@@ -42,7 +42,7 @@ mkDerivation rec {
   meta = with lib; {
     description = "MPlayer front-end for KDE";
     license = with licenses; [ gpl2 lgpl2 fdl12 ];
-    homepage = https://kmplayer.kde.org/;
+    homepage = "https://kmplayer.kde.org/";
     maintainers = with maintainers; [ sander zraexy ];
   };
 }
diff --git a/pkgs/applications/video/kodi/default.nix b/pkgs/applications/video/kodi/default.nix
index eef390d30ed8..e4da20c84879 100644
--- a/pkgs/applications/video/kodi/default.nix
+++ b/pkgs/applications/video/kodi/default.nix
@@ -4,21 +4,20 @@
 , boost, avahi, lame, autoreconfHook
 , gettext, pcre-cpp, yajl, fribidi, which
 , openssl, gperf, tinyxml2, taglib, libssh, swig, jre
-, libX11, xorgproto, libxml2
-, libXt, libXmu, libXext
-, libXinerama, libXrandr
-, libXtst, libXfixes, systemd
+, libxml2, systemd
 , alsaLib, libGLU, libGL, glew, fontconfig, freetype, ftgl
 , libjpeg, libpng, libtiff
 , libmpeg2, libsamplerate, libmad
 , libogg, libvorbis, flac, libxslt
 , lzo, libcdio, libmodplug, libass, libbluray
 , sqlite, libmysqlclient, nasm, gnutls, libva, libdrm
-, curl, bzip2, zip, unzip, glxinfo, xdpyinfo
+, curl, bzip2, zip, unzip, glxinfo
 , libcec, libcec_platform, dcadec, libuuid
 , libcrossguid, libmicrohttpd
-, bluez, doxygen, giflib, glib, harfbuzz, lcms2, libidn, libpthreadstubs, libtasn1, libXdmcp
+, bluez, doxygen, giflib, glib, harfbuzz, lcms2, libidn, libpthreadstubs, libtasn1
 , libplist, p11-kit, zlib, flatbuffers, fmt, fstrcmp, rapidjson
+, lirc
+, x11Support ? true, libX11, xorgproto, libXt, libXmu, libXext, libXinerama, libXrandr, libXtst, libXfixes, xdpyinfo, libXdmcp
 , dbusSupport ? true, dbus ? null
 , joystickSupport ? true, cwiid ? null
 , nfsSupport ? true, libnfs ? null
@@ -26,10 +25,12 @@
 , rtmpSupport ? true, rtmpdump ? null
 , sambaSupport ? true, samba ? null
 , udevSupport ? true, udev ? null
-, usbSupport  ? false, libusb ? null
+, usbSupport  ? false, libusb-compat-0_1 ? null
 , vdpauSupport ? true, libvdpau ? null
 , useWayland ? false, wayland ? null, wayland-protocols ? null
 , waylandpp ?  null, libxkbcommon ? null
+, useGbm ? false, mesa ? null, libinput ? null
+, buildPackages
 }:
 
 assert dbusSupport  -> dbus != null;
@@ -38,20 +39,20 @@ assert pulseSupport -> libpulseaudio != null;
 assert rtmpSupport  -> rtmpdump != null;
 assert sambaSupport -> samba != null;
 assert udevSupport  -> udev != null;
-assert usbSupport   -> libusb != null && ! udevSupport; # libusb won't be used if udev is avaliable
+assert usbSupport   -> libusb-compat-0_1 != null && ! udevSupport; # libusb-compat-0_1 won't be used if udev is avaliable
 assert vdpauSupport -> libvdpau != null;
 assert useWayland -> wayland != null && wayland-protocols != null && waylandpp != null && libxkbcommon != null;
 
 let
-  kodiReleaseDate = "20191116";
-  kodiVersion = "18.5";
+  kodiReleaseDate = "20200301";
+  kodiVersion = "18.6";
   rel = "Leia";
 
   kodi_src = fetchFromGitHub {
     owner  = "xbmc";
     repo   = "xbmc";
     rev    = "${kodiVersion}-${rel}";
-    sha256 = "0pcrraj1ddzrd296br10yjnaxgb3iym74xzixcakaqhhp00f5hf6";
+    sha256 = "0rwymipn5hljy5xrslzmrljmj6f9wb191wi7gjw20wl6sv44d0bk";
   };
 
   cmakeProto = fetchurl {
@@ -92,10 +93,18 @@ let
     sha256  = "1krsjlr949iy5l6ljxancza1yi6w1annxc5s6k283i9mb15qy8cy";
     preConfigure = ''
       cp ${kodi_src}/tools/depends/target/ffmpeg/{CMakeLists.txt,*.cmake} .
+      sed -i 's/ --cpu=''${CPU}//' CMakeLists.txt
+      sed -i 's/--strip=''${CMAKE_STRIP}/--strip=''${CMAKE_STRIP} --ranlib=''${CMAKE_RANLIB}/' CMakeLists.txt
     '';
-    buildInputs = [ gnutls libidn libtasn1 p11-kit zlib libva ]
+    cmakeFlags = lib.optionals (stdenv.hostPlatform != stdenv.buildPlatform) [
+      "-DCROSSCOMPILING=ON"
+      "-DCPU=${stdenv.hostPlatform.parsed.cpu.name}"
+      "-DOS=${stdenv.hostPlatform.parsed.kernel.name}"
+      "-DPKG_CONFIG_EXECUTABLE=pkgconfig"
+    ];
+    buildInputs = [ libidn libtasn1 p11-kit zlib libva ]
       ++ lib.optional  vdpauSupport    libvdpau;
-    nativeBuildInputs = [ cmake nasm pkgconfig ];
+    nativeBuildInputs = [ cmake nasm pkgconfig gnutls ];
   };
 
   # We can build these externally but FindLibDvd.cmake forces us to build it
@@ -150,39 +159,49 @@ in stdenv.mkDerivation {
 
     buildInputs = [
       gnutls libidn libtasn1 nasm p11-kit
-      libxml2 yasm python2Packages.python
+      libxml2 python2Packages.python
       boost libmicrohttpd
       gettext pcre-cpp yajl fribidi libva libdrm
-      openssl gperf tinyxml2 taglib libssh swig jre
-      libX11 xorgproto libXt libXmu libXext
-      libXinerama libXrandr libXtst libXfixes
-      alsaLib libGL libGLU glew fontconfig freetype ftgl
+      openssl gperf tinyxml2 taglib libssh
+      alsaLib libGL libGLU fontconfig freetype ftgl
       libjpeg libpng libtiff
       libmpeg2 libsamplerate libmad
       libogg libvorbis flac libxslt systemd
       lzo libcdio libmodplug libass libbluray
       sqlite libmysqlclient avahi lame
-      curl bzip2 zip unzip glxinfo xdpyinfo
+      curl bzip2 zip unzip glxinfo
       libcec libcec_platform dcadec libuuid
       libgcrypt libgpgerror libunistring
-      libcrossguid cwiid libplist
-      bluez giflib glib harfbuzz lcms2 libpthreadstubs libXdmcp
+      libcrossguid libplist
+      bluez giflib glib harfbuzz lcms2 libpthreadstubs
       ffmpeg flatbuffers fmt fstrcmp rapidjson
+      lirc
       # libdvdcss libdvdnav libdvdread
     ]
+    ++ lib.optional x11Support [
+      libX11 xorgproto libXt libXmu libXext libXdmcp
+      libXinerama libXrandr libXtst libXfixes
+    ]
     ++ lib.optional  dbusSupport     dbus
-    ++ lib.optionals joystickSupport [ cwiid ]
+    ++ lib.optional joystickSupport cwiid
     ++ lib.optional  nfsSupport      libnfs
     ++ lib.optional  pulseSupport    libpulseaudio
     ++ lib.optional  rtmpSupport     rtmpdump
     ++ lib.optional  sambaSupport    samba
     ++ lib.optional  udevSupport     udev
-    ++ lib.optional  usbSupport      libusb
+    ++ lib.optional  usbSupport      libusb-compat-0_1
     ++ lib.optional  vdpauSupport    libvdpau
     ++ lib.optionals useWayland [
-      wayland waylandpp
+      wayland 
+      waylandpp.dev 
+      wayland-protocols
       # Not sure why ".dev" is needed here, but CMake doesn't find libxkbcommon otherwise
       libxkbcommon.dev
+    ]
+    ++ lib.optional useGbm [
+      libxkbcommon.dev
+      mesa.dev
+      libinput.dev
     ];
 
     nativeBuildInputs = [
@@ -192,15 +211,14 @@ in stdenv.mkDerivation {
       which
       pkgconfig gnumake
       autoconf automake libtool # still needed for some components. Check if that is the case with 19.0
-    ] ++ lib.optionals useWayland [ wayland-protocols ];
+      jre yasm gettext python2Packages.python flatbuffers
+
+      # for TexturePacker
+      giflib zlib libpng libjpeg lzo
+    ] ++ lib.optionals useWayland [ wayland-protocols waylandpp.bin ];
 
-    patches = [
-      # Adds missing cassert includes, fixing builds. This will be unnecessary
-      # after 18.6 is released (which will contain this patch)
-      (fetchpatch {
-        url = "https://github.com/xbmc/xbmc/commit/d5947e6733fd564edb68df91fd6d389d9fb82319.patch";
-        sha256 = "1shlbsbfba3074wdyhl42vgin6jfzl7sy3zsvxaxkpx8g7my9jn2";
-      })
+    depsBuildBuild = [
+      buildPackages.stdenv.cc
     ];
 
     cmakeFlags = [
@@ -212,9 +230,16 @@ in stdenv.mkDerivation {
       "-DENABLE_INTERNAL_CROSSGUID=OFF"
       "-DENABLE_OPTICAL=ON"
       "-DLIRC_DEVICE=/run/lirc/lircd"
+      "-DSWIG_EXECUTABLE=${buildPackages.swig}/bin/swig"
+      "-DFLATBUFFERS_FLATC_EXECUTABLE=${buildPackages.flatbuffers}/bin/flatc"
+      "-DPYTHON_EXECUTABLE=${buildPackages.python2Packages.python}/bin/python"
     ] ++ lib.optional useWayland [
       "-DCORE_PLATFORM_NAME=wayland"
       "-DWAYLAND_RENDER_SYSTEM=gl"
+      "-DWAYLANDPP_SCANNER=${buildPackages.waylandpp}/bin/wayland-scanner++"
+    ] ++ lib.optional useGbm [
+      "-DCORE_PLATFORM_NAME=gbm"
+      "-DGBM_RENDER_SYSTEM=gles"
     ];
 
     enableParallelBuilding = true;
@@ -223,6 +248,16 @@ in stdenv.mkDerivation {
     # I'm guessing there is a thing waiting to time out
     doCheck = false;
 
+    # Need these tools on the build system when cross compiling,
+    # hacky, but have found no other way.
+    preConfigure = lib.optionalString (stdenv.hostPlatform != stdenv.buildPlatform) ''
+      CXX=c++ LD=ld make -C tools/depends/native/JsonSchemaBuilder
+      cmakeFlags+=" -DWITH_JSONSCHEMABUILDER=$PWD/tools/depends/native/JsonSchemaBuilder/bin"
+
+      CXX=c++ LD=ld make EXTRA_CONFIGURE= -C tools/depends/native/TexturePacker
+      cmakeFlags+=" -DWITH_TEXTUREPACKER=$PWD/tools/depends/native/TexturePacker/bin"
+    '';
+
     postPatch = ''
       substituteInPlace xbmc/platform/linux/LinuxTimezone.cpp \
         --replace 'usr/share/zoneinfo' 'etc/zoneinfo'
@@ -231,9 +266,11 @@ in stdenv.mkDerivation {
     postInstall = ''
       for p in $(ls $out/bin/) ; do
         wrapProgram $out/bin/$p \
-          --prefix PATH            ":" "${lib.makeBinPath [ python2Packages.python glxinfo xdpyinfo ]}" \
+          --prefix PATH            ":" "${lib.makeBinPath ([ python2Packages.python glxinfo ] ++ lib.optional x11Support xdpyinfo)}" \
           --prefix LD_LIBRARY_PATH ":" "${lib.makeLibraryPath
-              ([ curl systemd libmad libvdpau libcec libcec_platform rtmpdump libass ] ++ lib.optional nfsSupport libnfs)}"
+              ([ curl systemd libmad libvdpau libcec libcec_platform libass ]
+                 ++ lib.optional nfsSupport libnfs
+                 ++ lib.optional rtmpSupport rtmpdump)}"
       done
 
       substituteInPlace $out/share/xsessions/kodi.desktop \
@@ -250,7 +287,7 @@ in stdenv.mkDerivation {
 
     meta = with stdenv.lib; {
       description = "Media center";
-      homepage    = https://kodi.tv/;
+      homepage    = "https://kodi.tv/";
       license     = licenses.gpl2;
       platforms   = platforms.linux;
       maintainers = with maintainers; [ domenkozar titanous edwtjo peterhoeg sephalon ];
diff --git a/pkgs/applications/video/kodi/plugins.nix b/pkgs/applications/video/kodi/plugins.nix
index 41e5a7c5c75a..0e23eac9a866 100644
--- a/pkgs/applications/video/kodi/plugins.nix
+++ b/pkgs/applications/video/kodi/plugins.nix
@@ -1,6 +1,6 @@
 { stdenv, callPackage, fetchFromGitHub
 , cmake, kodiPlain, libcec_platform, tinyxml, rapidxml
-, steam, libusb, pcre-cpp, jsoncpp, libhdhomerun, zlib
+, steam, udev, libusb1, jsoncpp, libhdhomerun, zlib
 , python2Packages, expat, glib, nspr, nss, openssl
 , libssh, libarchive, lzma, bzip2, lz4, lzo }:
 
@@ -109,7 +109,7 @@ let self = rec {
     };
 
     meta = {
-      homepage = https://forum.kodi.tv/showthread.php?tid=85724;
+      homepage = "https://forum.kodi.tv/showthread.php?tid=85724";
       description = "A program launcher for Kodi";
       longDescription = ''
         Advanced Launcher allows you to start any Linux, Windows and
@@ -139,7 +139,7 @@ let self = rec {
     };
 
     meta = {
-      homepage = https://forum.kodi.tv/showthread.php?tid=287826;
+      homepage = "https://forum.kodi.tv/showthread.php?tid=287826";
       description = "A program launcher for Kodi";
       longDescription = ''
         Advanced Emulator Launcher is a multi-emulator front-end for Kodi
@@ -200,7 +200,7 @@ let self = rec {
       sha256 = "1dvff24fbas25k5kvca4ssks9l1g5rfa3hl8lqxczkaqi3pp41j5";
     };
     meta = {
-      homepage = https://forum.kodi.tv/showthread.php?tid=258159;
+      homepage = "https://forum.kodi.tv/showthread.php?tid=258159";
       description = "A ROM launcher for Kodi that uses HyperSpin assets.";
       maintainers = with maintainers; [ edwtjo ];
     };
@@ -236,8 +236,7 @@ let self = rec {
       maintainers = with maintainers; [ edwtjo ];
     };
 
-    extraBuildInputs = [ libusb pcre-cpp ];
-
+    extraBuildInputs = [ udev ];
   };
 
   simpleplugin = mkKodiPlugin rec {
@@ -274,7 +273,7 @@ let self = rec {
     };
 
     meta = {
-      homepage = https://forum.kodi.tv/showthread.php?tid=67110;
+      homepage = "https://forum.kodi.tv/showthread.php?tid=67110";
       description = "Watch content from SVT Play";
       longDescription = ''
         With this addon you can stream content from SVT Play
@@ -300,7 +299,7 @@ let self = rec {
       sha256 = "1hbd8fdvn7xkr9csz1g9wah78nhnq1rkazl4zwa31y70830k3279";
     };
 
-    extraBuildInputs = [ libusb ];
+    extraBuildInputs = [ libusb1 ];
 
     meta = {
       description = "Binary addon for steam controller.";
@@ -326,7 +325,7 @@ let self = rec {
     propagatedBuildInputs = [ steam ];
 
     meta = {
-      homepage = https://forum.kodi.tv/showthread.php?tid=157499;
+      homepage = "https://forum.kodi.tv/showthread.php?tid=157499";
       description = "Launch Steam in Big Picture Mode from Kodi";
       longDescription = ''
         This add-on will close/minimise Kodi, launch Steam in Big
@@ -353,7 +352,7 @@ let self = rec {
     };
 
     meta = {
-      homepage = https://forum.kodi.tv/showthread.php?tid=187421;
+      homepage = "https://forum.kodi.tv/showthread.php?tid=187421";
       description = "A comic book reader";
       maintainers = with maintainers; [ edwtjo ];
     };
@@ -373,7 +372,7 @@ let self = rec {
     };
 
     meta = {
-      homepage = https://github.com/kodi-pvr/pvr.hts;
+      homepage = "https://github.com/kodi-pvr/pvr.hts";
       description = "Kodi's Tvheadend HTSP client addon";
       platforms = platforms.all;
       maintainers = with maintainers; [ cpages ];
@@ -395,7 +394,7 @@ let self = rec {
     };
 
     meta = {
-      homepage = https://github.com/kodi-pvr/pvr.hdhomerun;
+      homepage = "https://github.com/kodi-pvr/pvr.hdhomerun";
       description = "Kodi's HDHomeRun PVR client addon";
       platforms = platforms.all;
       maintainers = with maintainers; [ titanous ];
@@ -419,7 +418,7 @@ let self = rec {
     };
 
     meta = {
-      homepage = https://github.com/kodi-pvr/pvr.iptvsimple;
+      homepage = "https://github.com/kodi-pvr/pvr.iptvsimple";
       description = "Kodi's IPTV Simple client addon";
       platforms = platforms.all;
       maintainers = with maintainers; [ ];
@@ -443,7 +442,7 @@ let self = rec {
     };
 
     meta = {
-      homepage = https://github.com/osmc/skin.osmc;
+      homepage = "https://github.com/osmc/skin.osmc";
       description = "The default skin for OSMC";
       platforms = platforms.all;
       maintainers = with maintainers; [ worldofpeace ];
@@ -500,7 +499,7 @@ let self = rec {
     '';
 
     meta = {
-      homepage = https://github.com/peak3d/inputstream.adaptive;
+      homepage = "https://github.com/peak3d/inputstream.adaptive";
       description = "Kodi inputstream addon for several manifest types";
       platforms = platforms.all;
       maintainers = with maintainers; [ sephalon ];
@@ -509,14 +508,14 @@ let self = rec {
 
   vfs-sftp = mkKodiABIPlugin rec {
     namespace = "vfs.sftp";
-    version = "1.0.5";
+    version = "1.0.6";
     plugin = namespace;
 
     src = fetchFromGitHub {
       owner = "xbmc";
       repo = namespace;
       rev = "${version}-${rel}";
-      sha256 = "10l2rwim574012vzjrkr0b153gk5q81fq48p47mijk294l7g100d";
+      sha256 = "044kkzcpzvbyih4vys33r4hqw38xa82snmvl4qj1r80wnszc8af1";
     };
 
     meta = with stdenv.lib; {
@@ -531,14 +530,14 @@ let self = rec {
 
   vfs-libarchive = mkKodiABIPlugin rec {
     namespace = "vfs.libarchive";
-    version = "1.0.5";
+    version = "1.0.7";
     plugin = namespace;
 
     src = fetchFromGitHub {
       owner = "xbmc";
       repo = namespace;
       rev = "${version}-${rel}";
-      sha256 = "0l1f1fijflr1ia30r0dcz1x2zn35c4lxy30az1cqxdf8nipza0b8";
+      sha256 = "01qhv095h5j67ispm4iw18pd3kl7a0mnjkgm92al9qqiyif8lzgh";
     };
 
     meta = with stdenv.lib; {
diff --git a/pkgs/applications/video/lightworks/default.nix b/pkgs/applications/video/lightworks/default.nix
index 1ab7e2c991b9..ae156574f5da 100644
--- a/pkgs/applications/video/lightworks/default.nix
+++ b/pkgs/applications/video/lightworks/default.nix
@@ -65,14 +65,6 @@ let
     '';
 
     dontPatchELF = true;
-
-    meta = {
-      description = "Professional Non-Linear Video Editor";
-      homepage = "https://www.lwks.com/";
-      license = stdenv.lib.licenses.unfree;
-      maintainers = [ stdenv.lib.maintainers.antonxy ];
-      platforms = [ "x86_64-linux" ];
-    };
   };
 
 # Lightworks expects some files in /usr/share/lightworks
@@ -84,4 +76,12 @@ in buildFHSUserEnv {
   ];
 
   runScript = "lightworks";
+
+  meta = {
+    description = "Professional Non-Linear Video Editor";
+    homepage = "https://www.lwks.com/";
+    license = stdenv.lib.licenses.unfree;
+    maintainers = [ stdenv.lib.maintainers.antonxy ];
+    platforms = [ "x86_64-linux" ];
+  };
 }
diff --git a/pkgs/applications/video/linuxstopmotion/default.nix b/pkgs/applications/video/linuxstopmotion/default.nix
index 0a422bb7f50c..3a2d1b79e9e0 100644
--- a/pkgs/applications/video/linuxstopmotion/default.nix
+++ b/pkgs/applications/video/linuxstopmotion/default.nix
@@ -25,7 +25,7 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "Create stop-motion animation movies";
-    homepage = http://linuxstopmotion.org/;
+    homepage = "http://linuxstopmotion.org/";
     license = licenses.gpl2;
     platforms = platforms.linux;
     maintainers = [ maintainers.bjornfor ];
diff --git a/pkgs/applications/video/lxdvdrip/default.nix b/pkgs/applications/video/lxdvdrip/default.nix
index 8287a176ce63..16ade40f0b5a 100644
--- a/pkgs/applications/video/lxdvdrip/default.nix
+++ b/pkgs/applications/video/lxdvdrip/default.nix
@@ -22,7 +22,7 @@ stdenv.mkDerivation rec {
 
   meta = { 
     description = "Command line tool to make a copy from a video DVD for private use";
-    homepage = https://sourceforge.net/projects/lxdvdrip;
+    homepage = "https://sourceforge.net/projects/lxdvdrip";
     license = stdenv.lib.licenses.gpl2;
     platforms = stdenv.lib.platforms.linux;
   };
diff --git a/pkgs/applications/video/makemkv/default.nix b/pkgs/applications/video/makemkv/default.nix
index ca202c5ce603..4816f17618b8 100644
--- a/pkgs/applications/video/makemkv/default.nix
+++ b/pkgs/applications/video/makemkv/default.nix
@@ -3,21 +3,21 @@
 }:
 
 let
-  version = "1.14.7";
+  version = "1.15.0";
   # Using two URLs as the first one will break as soon as a new version is released
   src_bin = fetchurl {
     urls = [
       "http://www.makemkv.com/download/makemkv-bin-${version}.tar.gz"
       "http://www.makemkv.com/download/old/makemkv-bin-${version}.tar.gz"
     ];
-    sha256 = "19j62vyk8havv38lh35108f7jmrqiqzikl3aqlsncxxa69m6fv5n";
+    sha256 = "1zr63fqx4qcrnrbg1f97w9mp3yzzxf0dk8pw60y2d4436vanfba4";
   };
   src_oss = fetchurl {
     urls = [
       "http://www.makemkv.com/download/makemkv-oss-${version}.tar.gz"
       "http://www.makemkv.com/download/old/makemkv-oss-${version}.tar.gz"
     ];
-    sha256 = "1w6b4cvhfg1dv2claam0l6slhjqzy0n2lvwk1ggkh4c561qbfp59";
+    sha256 = "01pdydll37inkq74874rqd5kk0maafnm1lqcv41jzgzjrfkky8d9";
   };
 in mkDerivation {
   pname = "makemkv";
@@ -53,7 +53,7 @@ in mkDerivation {
       expiration date.
     '';
     license = licenses.unfree;
-    homepage = http://makemkv.com;
+    homepage = "http://makemkv.com";
     platforms = [ "x86_64-linux" ];
     maintainers = [ maintainers.titanous ];
   };
diff --git a/pkgs/applications/video/manim/default.nix b/pkgs/applications/video/manim/default.nix
index 0d263f402b33..470908377b50 100644
--- a/pkgs/applications/video/manim/default.nix
+++ b/pkgs/applications/video/manim/default.nix
@@ -57,7 +57,7 @@ buildPythonApplication rec {
       create precise animations programmatically, as seen in the videos of
       3Blue1Brown on YouTube.
     '';
-    homepage = https://github.com/3b1b/manim;
+    homepage = "https://github.com/3b1b/manim";
     license = lib.licenses.mit;
     maintainers = with lib.maintainers; [ johnazoidberg ];
   };
diff --git a/pkgs/applications/video/mapmap/default.nix b/pkgs/applications/video/mapmap/default.nix
index c302ae1730fe..20ab4d750326 100644
--- a/pkgs/applications/video/mapmap/default.nix
+++ b/pkgs/applications/video/mapmap/default.nix
@@ -53,7 +53,7 @@ mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "Open source video mapping software";
-    homepage = https://github.com/mapmapteam/mapmap;
+    homepage = "https://github.com/mapmapteam/mapmap";
     license = licenses.gpl3;
     maintainers = [ maintainers.erictapen ];
     platforms = platforms.linux;
diff --git a/pkgs/applications/video/mediathekview/default.nix b/pkgs/applications/video/mediathekview/default.nix
index 9554105f20c2..7c7ceb914ae7 100644
--- a/pkgs/applications/video/mediathekview/default.nix
+++ b/pkgs/applications/video/mediathekview/default.nix
@@ -27,7 +27,7 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "Offers access to the Mediathek of different tv stations (ARD, ZDF, Arte, etc.)";
-    homepage = https://mediathekview.de/;
+    homepage = "https://mediathekview.de/";
     license = licenses.gpl3;
     maintainers = with maintainers; [ moredread ];
     platforms = platforms.all;
diff --git a/pkgs/applications/video/minitube/default.nix b/pkgs/applications/video/minitube/default.nix
index 635779187a81..690b8355340c 100644
--- a/pkgs/applications/video/minitube/default.nix
+++ b/pkgs/applications/video/minitube/default.nix
@@ -31,7 +31,7 @@ stdenv.mkDerivation rec {
       you an endless video stream. Minitube is not about cloning the YouTube
       website, it aims to create a new TV-like experience.
     '';
-    homepage = https://flavio.tordini.org/minitube;
+    homepage = "https://flavio.tordini.org/minitube";
     license = licenses.gpl3Plus;
     platforms = platforms.linux;
     maintainers = with maintainers; [ ];
diff --git a/pkgs/applications/video/mkvtoolnix/default.nix b/pkgs/applications/video/mkvtoolnix/default.nix
index 7ccf0e24762a..7db27888782a 100644
--- a/pkgs/applications/video/mkvtoolnix/default.nix
+++ b/pkgs/applications/video/mkvtoolnix/default.nix
@@ -13,13 +13,13 @@ with stdenv.lib;
 
 stdenv.mkDerivation rec {
   pname = "mkvtoolnix";
-  version = "43.0.0";
+  version = "46.0.0";
 
   src = fetchFromGitLab {
     owner  = "mbunkus";
     repo   = "mkvtoolnix";
     rev    = "release-${version}";
-    sha256 = "0ra9kgvhh5yhbr0hsia1va5lw45zr4kdwcdjhas5ljjyj75mlyxc";
+    sha256 = "1vyfvpsllnzhzaaz3s9lqlnkmnqchyhxj2d47bfyizs982r5kg24";
   };
 
   nativeBuildInputs = [
@@ -59,7 +59,7 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "Cross-platform tools for Matroska";
-    homepage    = http://www.bunkus.org/videotools/mkvtoolnix/;
+    homepage    = "http://www.bunkus.org/videotools/mkvtoolnix/";
     license     = licenses.gpl2;
     maintainers = with maintainers; [ codyopel rnhmjoj ];
     platforms   = platforms.linux
diff --git a/pkgs/applications/video/motion/default.nix b/pkgs/applications/video/motion/default.nix
index dafc6abdb0a3..dd0510f70c36 100644
--- a/pkgs/applications/video/motion/default.nix
+++ b/pkgs/applications/video/motion/default.nix
@@ -18,7 +18,7 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "Monitors the video signal from cameras";
-    homepage = https://motion-project.github.io/;
+    homepage = "https://motion-project.github.io/";
     license = licenses.gpl2Plus;
     maintainers = with maintainers; [ puffnfresh veprbl ];
   };
diff --git a/pkgs/applications/video/mpc-qt/default.nix b/pkgs/applications/video/mpc-qt/default.nix
index efa495a45afe..07b4c79a5b3d 100644
--- a/pkgs/applications/video/mpc-qt/default.nix
+++ b/pkgs/applications/video/mpc-qt/default.nix
@@ -1,14 +1,14 @@
-{ stdenv, fetchFromGitHub, pkgconfig, qmake, qtx11extras, qttools, mpv }:
+{ stdenv, mkDerivation, fetchFromGitLab, pkgconfig, qmake, qtx11extras, qttools, mpv }:
 
-stdenv.mkDerivation rec {
+mkDerivation rec {
   pname = "mpc-qt";
-  version = "18.08";
+  version = "2019-06-09";
 
-  src = fetchFromGitHub {
-    owner = "cmdrkotori";
+  src = fetchFromGitLab {
+    owner = "mpc-qt";
     repo = "mpc-qt";
-    rev = "v${version}";
-    sha256 = "1rxlkg3vsrapazdlb1i6c5a1vvf2114bsqwzcm3n2wc5c93yqsna";
+    rev = "2abe6e7fc643068d50522468fe75d614861555ad";
+    sha256 = "1cis8dl9pm91mpnp696zvwsfp96gkwr8jgs45anbwd7ldw78w4x5";
   };
 
   nativeBuildInputs = [ pkgconfig qmake qttools ];
@@ -19,7 +19,7 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "Media Player Classic Qute Theater";
-    homepage = https://github.com/cmdrkotori/mpc-qt;
+    homepage = "https://gitlab.com/mpc-qt/mpc-qt";
     license = licenses.gpl2;
     platforms = platforms.unix;
     maintainers = with maintainers; [ romildo ];
diff --git a/pkgs/applications/video/mplayer/default.nix b/pkgs/applications/video/mplayer/default.nix
index f5559e3fb6c0..5a72fe91ddde 100644
--- a/pkgs/applications/video/mplayer/default.nix
+++ b/pkgs/applications/video/mplayer/default.nix
@@ -58,7 +58,7 @@ let
 
   codecs_src =
     let
-      dir = http://www.mplayerhq.hu/MPlayer/releases/codecs/;
+      dir = "http://www.mplayerhq.hu/MPlayer/releases/codecs/";
       version = "20071007";
     in
     if stdenv.hostPlatform.system == "i686-linux" then fetchurl {
@@ -217,7 +217,7 @@ stdenv.mkDerivation rec {
 
   meta = {
     description = "A movie player that supports many video formats";
-    homepage = http://mplayerhq.hu;
+    homepage = "http://mplayerhq.hu";
     license = "GPL";
     maintainers = [ stdenv.lib.maintainers.eelco ];
     platforms = [ "i686-linux" "x86_64-linux" "x86_64-darwin" ];
diff --git a/pkgs/applications/video/mpv/default.nix b/pkgs/applications/video/mpv/default.nix
index f1713fe29d4b..50b67f455581 100644
--- a/pkgs/applications/video/mpv/default.nix
+++ b/pkgs/applications/video/mpv/default.nix
@@ -1,4 +1,4 @@
-{ config, stdenv, fetchurl, fetchFromGitHub, makeWrapper
+{ config, stdenv, fetchurl, fetchFromGitHub, makeWrapper, fetchpatch
 , addOpenGLRunpath, docutils, perl, pkgconfig, python3, wafHook, which
 , ffmpeg_4, freefont_ttf, freetype, libass, libpthreadstubs, mujs
 , nv-codec-headers, lua, libuchardet, libiconv ? null
@@ -52,7 +52,7 @@
 , xvSupport          ? stdenv.isLinux, libXv         ? null
 , youtubeSupport     ? true,           youtube-dl    ? null
 , zimgSupport        ? true,           zimg          ? null
-, archiveSupport     ? false,          libarchive    ? null
+, archiveSupport     ? true,           libarchive    ? null
 , jackaudioSupport   ? false,          libjack2      ? null
 , openalSupport      ? true,           openalSoft    ? null
 , vapoursynthSupport ? false,          vapoursynth   ? null
@@ -191,6 +191,14 @@ in stdenv.mkDerivation rec {
       --prefix PYTHONPATH : "${vapoursynth}/lib/${python3.libPrefix}/site-packages:$PYTHONPATH"
   '';
 
+  patches = stdenv.lib.optionals stdenv.isDarwin [
+    # Fix cocoa backend. Remove with the next release
+    (fetchpatch {
+      url = "https://github.com/mpv-player/mpv/commit/188169854313b99d01da8f69fe129f0a487eb7c4.patch";
+      sha256 = "062sz4666prb2wg1rn5q8brqkzlq6lxn8sxic78a8lb0125c01f7";
+    })
+  ];
+
   postInstall = ''
     # Use a standard font
     mkdir -p $out/share/mpv
@@ -217,7 +225,7 @@ in stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "A media player that supports many video formats (MPlayer and mplayer2 fork)";
-    homepage = https://mpv.io;
+    homepage = "https://mpv.io";
     license = licenses.gpl2Plus;
     maintainers = with maintainers; [ AndersonTorres fpletz globin ma27 tadeokondrak ];
     platforms = platforms.darwin ++ platforms.linux;
diff --git a/pkgs/applications/video/mpv/scripts/convert.nix b/pkgs/applications/video/mpv/scripts/convert.nix
index faa21326fc0e..ce0695203328 100644
--- a/pkgs/applications/video/mpv/scripts/convert.nix
+++ b/pkgs/applications/video/mpv/scripts/convert.nix
@@ -2,7 +2,8 @@
 , yad, mkvtoolnix-cli, libnotify }:
 
 stdenv.mkDerivation {
-  name = "mpv-convert-script-2016-03-18.lua";
+  pname = "mpv-convert-script";
+  version = "2016-03-18";
   src = fetchgit {
     url = "https://gist.github.com/Zehkul/25ea7ae77b30af959be0";
     rev = "f95cee43e390e843a47e8ec9d1711a12a8cd343d";
@@ -24,12 +25,14 @@ stdenv.mkDerivation {
 
   dontBuild = true;
   installPhase = ''
-    cp convert_script.lua $out
+    mkdir -p $out/share/mpv/scripts
+    cp convert_script.lua $out/share/mpv/scripts
   '';
+  passthru.scriptName = "convert_script.lua";
 
   meta = {
     description = "Convert parts of a video while you are watching it in mpv";
-    homepage = https://gist.github.com/Zehkul/25ea7ae77b30af959be0;
+    homepage = "https://gist.github.com/Zehkul/25ea7ae77b30af959be0";
     maintainers = [ lib.maintainers.Profpatsch ];
     longDescription = ''
       When this script is loaded into mpv, you can hit Alt+W to mark the beginning
diff --git a/pkgs/applications/video/mpv/scripts/mpris.nix b/pkgs/applications/video/mpv/scripts/mpris.nix
index e383823f2ccd..f19db554d045 100644
--- a/pkgs/applications/video/mpv/scripts/mpris.nix
+++ b/pkgs/applications/video/mpv/scripts/mpris.nix
@@ -1,28 +1,39 @@
-{ stdenv, fetchFromGitHub, pkgconfig, gobject-introspection, mpv }:
+{ stdenv, fetchpatch, fetchFromGitHub, pkgconfig, glib, mpv }:
 
 stdenv.mkDerivation rec {
-  name = "mpv-mpris-${version}.so";
-  version = "0.3";
+  pname = "mpv-mpris";
+  version = "0.5";
 
   src = fetchFromGitHub {
     owner = "hoyon";
     repo = "mpv-mpris";
     rev = version;
-    sha256 = "02lqsgp296s8wr0yh6wm8h7nhn53rj254zahpzbwdv15apgy0z17";
+    sha256 = "07p6li5z38pkfd40029ag2jqx917vyl3ng5p2i4v5a0af14slcnk";
   };
+  patches = [
+    # Enables to "make SCRIPTS_DIR=... install" https://github.com/hoyon/mpv-mpris/pull/38
+    (fetchpatch {
+      url = "https://github.com/hoyon/mpv-mpris/commit/f1482350868bf20e4575f923943ec998469b255e.patch";
+      sha256 = "1lqy867wpmj6hv3zgi6g679a7x3dv5skpw24hwd05b28galnyd4l";
+    })
+  ];
 
   nativeBuildInputs = [ pkgconfig ];
 
-  buildInputs = [ gobject-introspection mpv ];
+  buildInputs = [ glib mpv ];
 
-  installPhase = ''
-    cp mpris.so $out
-  '';
+  installFlags = [ "SCRIPTS_DIR=$(out)/share/mpv/scripts" ];
+
+  # Otherwise, the shared object isn't `strip`ped. See:
+  # https://discourse.nixos.org/t/debug-why-a-derivation-has-a-reference-to-gcc/7009
+  stripDebugList = [ "share/mpv/scripts" ];
+  passthru.scriptName = "mpris.so";
 
   meta = with stdenv.lib; {
     description = "MPRIS plugin for mpv";
-    homepage = https://github.com/hoyon/mpv-mpris;
+    homepage = "https://github.com/hoyon/mpv-mpris";
     license = licenses.mit;
+    platforms = platforms.linux;
     maintainers = with maintainers; [ jfrankenau ];
   };
 }
diff --git a/pkgs/applications/video/mpv/wrapper.nix b/pkgs/applications/video/mpv/wrapper.nix
index 624c06414fd3..53def80e7dab 100644
--- a/pkgs/applications/video/mpv/wrapper.nix
+++ b/pkgs/applications/video/mpv/wrapper.nix
@@ -9,6 +9,6 @@ symlinkJoin {
 
   postBuild = ''
     wrapProgram $out/bin/mpv \
-      --add-flags "${stdenv.lib.concatMapStringsSep " " (x: "--script=" + x) scripts}"
+      --add-flags "${stdenv.lib.concatMapStringsSep " " (x: "--script=${x}/share/mpv/scripts/${x.scriptName}") scripts}"
   '';
 }
diff --git a/pkgs/applications/video/mythtv/default.nix b/pkgs/applications/video/mythtv/default.nix
index 2c73d3e734cc..2f1d3a3a1c91 100644
--- a/pkgs/applications/video/mythtv/default.nix
+++ b/pkgs/applications/video/mythtv/default.nix
@@ -37,7 +37,7 @@ mkDerivation rec {
     ++ stdenv.lib.optionals (!enableXnvctrl) [  "--disable-xnvctrl" ];
 
   meta = with stdenv.lib; {
-    homepage = https://www.mythtv.org/;
+    homepage = "https://www.mythtv.org/";
     description = "Open Source DVR";
     license = licenses.gpl2;
     platforms = platforms.linux;
diff --git a/pkgs/applications/video/natron/default.nix b/pkgs/applications/video/natron/default.nix
index 4617d1d17dc0..4e6c9f7ea5a2 100644
--- a/pkgs/applications/video/natron/default.nix
+++ b/pkgs/applications/video/natron/default.nix
@@ -35,15 +35,15 @@ let
       '';
     };
   lodepngcpp = fetchurl {
-    url = https://raw.githubusercontent.com/lvandeve/lodepng/a70c086077c0eaecbae3845e4da4424de5f43361/lodepng.cpp;
+    url = "https://raw.githubusercontent.com/lvandeve/lodepng/a70c086077c0eaecbae3845e4da4424de5f43361/lodepng.cpp";
     sha256 = "1dxkkr4jbmvlwfr7m16i1mgcj1pqxg9s1a7y3aavs9rrk0ki8ys2";
   };
   lodepngh = fetchurl {
-    url = https://raw.githubusercontent.com/lvandeve/lodepng/a70c086077c0eaecbae3845e4da4424de5f43361/lodepng.h;
+    url = "https://raw.githubusercontent.com/lvandeve/lodepng/a70c086077c0eaecbae3845e4da4424de5f43361/lodepng.h";
     sha256 = "14drdikd0vws3wwpyqq7zzm5z3kg98svv4q4w0hr45q6zh6hs0bq";
   };
   CImgh = fetchurl {
-    url = https://raw.githubusercontent.com/dtschump/CImg/572c12d82b2f59ece21be8f52645c38f1dd407e6/CImg.h;
+    url = "https://raw.githubusercontent.com/dtschump/CImg/572c12d82b2f59ece21be8f52645c38f1dd407e6/CImg.h";
     sha256 = "0n4qfxj8j6rmj4svf68gg2pzg8d1pb74bnphidnf8i2paj6lwniz";
   };
   plugins = map buildPlugin [
@@ -120,7 +120,7 @@ stdenv.mkDerivation {
       Node-graph based, open-source compositing software. Similar in
       functionalities to Adobe After Effects and Nuke by The Foundry.
     '';
-    homepage = https://natron.fr/;
+    homepage = "https://natron.fr/";
     license = stdenv.lib.licenses.gpl2;
     maintainers = [ maintainers.puffnfresh ];
     platforms = platforms.linux;
diff --git a/pkgs/applications/video/obs-studio/default.nix b/pkgs/applications/video/obs-studio/default.nix
index 380b3d49ca73..be2a323943d0 100644
--- a/pkgs/applications/video/obs-studio/default.nix
+++ b/pkgs/applications/video/obs-studio/default.nix
@@ -37,13 +37,13 @@ let
   inherit (stdenv.lib) optional optionals;
 in mkDerivation rec {
   pname = "obs-studio";
-  version = "24.0.6";
+  version = "25.0.3";
 
   src = fetchFromGitHub {
     owner = "obsproject";
     repo = "obs-studio";
     rev = version;
-    sha256 = "07grnab5v4fd4lw25adhnlifs5c5phc3rsz7h80m663nbszy7abh";
+    sha256 = "11hl3lxvbsm7ackl7qhzgy2x0jsz2dfpi2qxsf8pkp908lrh3b3r";
   };
 
   nativeBuildInputs = [ cmake pkgconfig ];
@@ -87,7 +87,7 @@ in mkDerivation rec {
       Software", software originally designed for recording and streaming live
       video content, efficiently
     '';
-    homepage = https://obsproject.com;
+    homepage = "https://obsproject.com";
     maintainers = with maintainers; [ jb55 MP2E ];
     license = licenses.gpl2;
     platforms = [ "x86_64-linux" "i686-linux" ];
diff --git a/pkgs/applications/video/obs-studio/linuxbrowser.nix b/pkgs/applications/video/obs-studio/linuxbrowser.nix
index 134e0cb8a9e3..a33383937fb8 100644
--- a/pkgs/applications/video/obs-studio/linuxbrowser.nix
+++ b/pkgs/applications/video/obs-studio/linuxbrowser.nix
@@ -41,7 +41,7 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "Browser source plugin for obs-studio based on Chromium Embedded Framework";
-    homepage = https://github.com/bazukas/obs-linuxbrowser;
+    homepage = "https://github.com/bazukas/obs-linuxbrowser";
     maintainers = with maintainers; [ puffnfresh ];
     license = licenses.gpl2;
     platforms = with platforms; linux;
diff --git a/pkgs/applications/video/obs-studio/obs-ndi.nix b/pkgs/applications/video/obs-studio/obs-ndi.nix
index 452793f442ee..79f38fa8fe40 100644
--- a/pkgs/applications/video/obs-studio/obs-ndi.nix
+++ b/pkgs/applications/video/obs-studio/obs-ndi.nix
@@ -33,7 +33,7 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "Network A/V plugin for OBS Studio";
-    homepage = https://github.com/Palakis/obs-ndi;
+    homepage = "https://github.com/Palakis/obs-ndi";
     maintainers = with maintainers; [ peti ];
     license = licenses.gpl2;
     platforms = with platforms; linux;
diff --git a/pkgs/applications/video/obs-studio/v4l2sink.nix b/pkgs/applications/video/obs-studio/v4l2sink.nix
new file mode 100644
index 000000000000..97eae68b6e72
--- /dev/null
+++ b/pkgs/applications/video/obs-studio/v4l2sink.nix
@@ -0,0 +1,55 @@
+{ lib
+, stdenv
+, fetchFromGitHub
+, fetchpatch
+, cmake
+, qtbase
+, obs-studio
+}:
+
+stdenv.mkDerivation rec {
+  pname = "obs-v4l2sink";
+  version = "0.1.0";
+
+  src = fetchFromGitHub {
+    owner = "CatxFish";
+    repo = "obs-v4l2sink";
+    rev = version;
+    sha256 = "0l4lavaywih5lzwgxcbnvdrxhpvkrmh56li06s3aryikngxwsk3z";
+  };
+
+  nativeBuildInputs = [ cmake ];
+  buildInputs = [ qtbase obs-studio ];
+
+  patches = [
+    # Fixes the segfault when stopping the plugin
+    (fetchpatch {
+      url = "https://github.com/CatxFish/obs-v4l2sink/commit/6604f01796d1b84a95714730ea51a6b8ac0e450b.diff";
+      sha256 = "0crcvw02dj0aqy7hnhizjdsnhiw03zmg6cbdkasxz2mrrbyc3s88";
+    })
+  ];
+
+  cmakeFlags = with lib; [
+    "-DLIBOBS_INCLUDE_DIR=${obs-studio.src}/libobs"
+  ];
+
+  # obs-studio expects the shared object to be located in bin/32bit or bin/64bit
+  # https://github.com/obsproject/obs-studio/blob/d60c736cb0ec0491013293c8a483d3a6573165cb/libobs/obs-nix.c#L48
+  postInstall = let
+    pluginPath = {
+      i686-linux = "bin/32bit";
+      x86_64-linux = "bin/64bit";
+    }.${stdenv.targetPlatform.system} or (throw "Unsupported system: ${stdenv.targetPlatform.system}");
+  in ''
+    mkdir -p $out/share/obs/obs-plugins/v4l2sink/${pluginPath}
+    ln -s $out/lib/obs-plugins/v4l2sink.so $out/share/obs/obs-plugins/v4l2sink/${pluginPath}
+  '';
+
+  meta = with lib; {
+    description = "obs studio output plugin for Video4Linux2 device";
+    homepage = "https://github.com/CatxFish/obs-v4l2sink";
+    maintainers = with maintainers; [ colemickens peelz ];
+    license = licenses.gpl2;
+    platforms = [ "x86_64-linux" "i686-linux" ];
+  };
+}
diff --git a/pkgs/applications/video/obs-studio/wlrobs.nix b/pkgs/applications/video/obs-studio/wlrobs.nix
index 05b826c9cefc..77ef09d3c24d 100644
--- a/pkgs/applications/video/obs-studio/wlrobs.nix
+++ b/pkgs/applications/video/obs-studio/wlrobs.nix
@@ -34,7 +34,7 @@ stdenv.mkDerivation {
 
   meta = with stdenv.lib; {
     description = "An obs-studio plugin that allows you to screen capture on wlroots based wayland compositors";
-    homepage = https://hg.sr.ht/~scoopta/wlrobs;
+    homepage = "https://hg.sr.ht/~scoopta/wlrobs";
     maintainers = with maintainers; [ grahamc ];
     license = licenses.gpl3;
     platforms = [ "x86_64-linux" ];
diff --git a/pkgs/applications/video/ogmtools/default.nix b/pkgs/applications/video/ogmtools/default.nix
index 221f4fc0e5c3..c9c5190dc539 100644
--- a/pkgs/applications/video/ogmtools/default.nix
+++ b/pkgs/applications/video/ogmtools/default.nix
@@ -17,7 +17,7 @@ stdenv.mkDerivation rec {
       (ogmdemux) or creation of (ogmmerge) OGG media streams. Includes dvdxchap
       tool for extracting chapter information from DVD.
     '';
-    homepage = https://www.bunkus.org/videotools/ogmtools/;
+    homepage = "https://www.bunkus.org/videotools/ogmtools/";
     license = stdenv.lib.licenses.gpl2;
     platforms = stdenv.lib.platforms.linux;
   };
diff --git a/pkgs/applications/video/olive-editor/default.nix b/pkgs/applications/video/olive-editor/default.nix
index 1285422a2f92..55c6149e7d03 100644
--- a/pkgs/applications/video/olive-editor/default.nix
+++ b/pkgs/applications/video/olive-editor/default.nix
@@ -4,13 +4,13 @@
 
 mkDerivation rec {
   pname = "olive-editor";
-  version = "0.1.1";
+  version = "0.1.2";
 
   src = fetchFromGitHub {
     owner = "olive-editor";
     repo = "olive";
     rev = version;
-    sha256 = "15q4qwf5rc3adssywl72jrhkpqk55ihpd5h5wf07baw0s47vv5kq";
+    sha256 = "151g6jwhipgbq4llwib92sq23p1s9hm6avr7j4qq3bvykzrm8z1a";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/applications/video/omxplayer/default.nix b/pkgs/applications/video/omxplayer/default.nix
index 7a130bbdb418..28df8ead0c80 100644
--- a/pkgs/applications/video/omxplayer/default.nix
+++ b/pkgs/applications/video/omxplayer/default.nix
@@ -55,7 +55,7 @@ let
     enableParallelBuilding = true;
 
     meta = {
-      homepage = http://www.ffmpeg.org/;
+      homepage = "http://www.ffmpeg.org/";
       description = "A complete, cross-platform solution to record, convert and stream audio and video";
     };
   };
@@ -63,7 +63,7 @@ in
 stdenv.mkDerivation rec {
   name = "omxplayer-20130328-fbee325dc2";
   src = fetchurl {
-    url = https://github.com/huceke/omxplayer/tarball/fbee325dc2;
+    url = "https://github.com/huceke/omxplayer/tarball/fbee325dc2";
     name = "${name}.tar.gz";
     sha256 = "0fkvv8il7ffqxki2gp8cxa5shh6sz9jsy5vv3f4025g4gss6afkg";
   };
@@ -78,7 +78,7 @@ stdenv.mkDerivation rec {
   buildInputs = [ raspberrypifw ffmpeg pcre boost freetype zlib ];
 
   meta = {
-    homepage = https://github.com/huceke/omxplayer;
+    homepage = "https://github.com/huceke/omxplayer";
     description = "Commandline OMX player for the Raspberry Pi";
     license = stdenv.lib.licenses.gpl2Plus;
     platforms = stdenv.lib.platforms.arm;
diff --git a/pkgs/applications/video/openshot-qt/default.nix b/pkgs/applications/video/openshot-qt/default.nix
index 1c5359e5f0c6..cd3176249f8a 100644
--- a/pkgs/applications/video/openshot-qt/default.nix
+++ b/pkgs/applications/video/openshot-qt/default.nix
@@ -2,26 +2,17 @@
 , doxygen, python3Packages, libopenshot
 , wrapGAppsHook, gtk3 }:
 
-let
-  fixPermissions = fetchpatch rec {
-    url = https://github.com/OpenShot/openshot-qt/pull/2973.patch;
-    sha256 = "037rh0p3k4sdzprlpyb73byjq3qhqk5zd0d4iin6bq602r8bbp0n";
-  };
-in
-
 mkDerivationWith python3Packages.buildPythonApplication rec {
   pname = "openshot-qt";
-  version = "2.4.4";
+  version = "2.5.1";
 
   src = fetchFromGitHub {
     owner = "OpenShot";
     repo = "openshot-qt";
     rev = "v${version}";
-    sha256 = "0mg63v36h7l8kv2sgf6x8c1n3ygddkqqwlciz7ccxpbm4x1idqba";
+    sha256 = "0qc5i0ay6j2wab1whl41sjb71cj02pg6y79drf7asrprq8b2rmfq";
   };
 
-  patches = [ fixPermissions ];
-
   nativeBuildInputs = [ doxygen wrapGAppsHook ];
 
   buildInputs = [ gtk3 ];
@@ -45,7 +36,7 @@ mkDerivationWith python3Packages.buildPythonApplication rec {
   doCheck = false;
 
   meta = with stdenv.lib; {
-    homepage = http://openshot.org/;
+    homepage = "http://openshot.org/";
     description = "Free, open-source video editor";
     longDescription = ''
       OpenShot Video Editor is a free, open-source video editor for Linux.
diff --git a/pkgs/applications/video/openshot-qt/libopenshot-audio.nix b/pkgs/applications/video/openshot-qt/libopenshot-audio.nix
index 9bf211164553..d1a368b43ba2 100644
--- a/pkgs/applications/video/openshot-qt/libopenshot-audio.nix
+++ b/pkgs/applications/video/openshot-qt/libopenshot-audio.nix
@@ -3,13 +3,13 @@
 with stdenv.lib;
 stdenv.mkDerivation rec {
   pname = "libopenshot-audio";
-  version = "0.1.8";
+  version = "0.2.0";
 
   src = fetchFromGitHub {
     owner = "OpenShot";
     repo = "libopenshot-audio";
     rev = "v${version}";
-    sha256 = "1fvp6nmf30xzkmcznakh8dv5vn9d7nq051pqcqv638hsfppkmcrl";
+    sha256 = "13if0m5mvlqly8gmbhschzb9papkgp3yqivklhb949dhy16m8zgf";
   };
 
   nativeBuildInputs =
@@ -21,7 +21,7 @@ stdenv.mkDerivation rec {
   doCheck = false;
 
   meta = {
-    homepage = http://openshot.org/;
+    homepage = "http://openshot.org/";
     description = "High-quality sound editing library";
     longDescription = ''
       OpenShot Audio Library (libopenshot-audio) is a program that allows the
diff --git a/pkgs/applications/video/openshot-qt/libopenshot.nix b/pkgs/applications/video/openshot-qt/libopenshot.nix
index 2ed4b8ce3e3d..861ac4560291 100644
--- a/pkgs/applications/video/openshot-qt/libopenshot.nix
+++ b/pkgs/applications/video/openshot-qt/libopenshot.nix
@@ -8,13 +8,13 @@
 with stdenv.lib;
 stdenv.mkDerivation rec {
   pname = "libopenshot";
-  version = "0.2.3";
+  version = "0.2.5";
 
   src = fetchFromGitHub {
     owner = "OpenShot";
     repo = "libopenshot";
     rev = "v${version}";
-    sha256 = "0r1qmr8ar5n72603xkj9h065vbpznrqsq88kxxmn9n8djyyvk03k";
+    sha256 = "1mxjkgjmjzgf628y3rscc6rqf55hxgjpmvwxlncfk1216i5xskwp";
   };
 
   patchPhase = ''
@@ -37,7 +37,7 @@ stdenv.mkDerivation rec {
   cmakeFlags = [ "-DENABLE_RUBY=OFF" ];
 
   meta = {
-    homepage = http://openshot.org/;
+    homepage = "http://openshot.org/";
     description = "Free, open-source video editor library";
     longDescription = ''
       OpenShot Library (libopenshot) is an open-source project dedicated to
diff --git a/pkgs/applications/video/p2pvc/default.nix b/pkgs/applications/video/p2pvc/default.nix
index d9eef7f4cd85..91468ea1ee60 100644
--- a/pkgs/applications/video/p2pvc/default.nix
+++ b/pkgs/applications/video/p2pvc/default.nix
@@ -1,10 +1,10 @@
-{ stdenv, pkgconfig, fetchFromGitHub, opencv, ncurses, portaudio }:
+{ stdenv, pkgconfig, fetchFromGitHub, opencv2, ncurses, portaudio }:
 
 stdenv.mkDerivation {
   name = "p2pvc";
 
   nativeBuildInputs = [ pkgconfig ];
-  buildInputs = [ opencv ncurses portaudio ];
+  buildInputs = [ opencv2 ncurses portaudio ];
 
   enableParallelBuilding = true;
 
@@ -19,7 +19,7 @@ stdenv.mkDerivation {
 
   meta = {
     description = "A point to point color terminal video chat";
-    homepage = https://github.com/mofarrell/p2pvc;
+    homepage = "https://github.com/mofarrell/p2pvc";
     license = stdenv.lib.licenses.mit;
     maintainers = with stdenv.lib.maintainers; [ trino ];
     platforms = with stdenv.lib.platforms; linux;
diff --git a/pkgs/applications/video/pitivi/default.nix b/pkgs/applications/video/pitivi/default.nix
index bef9537b8067..276c2fa787f2 100644
--- a/pkgs/applications/video/pitivi/default.nix
+++ b/pkgs/applications/video/pitivi/default.nix
@@ -68,7 +68,7 @@ in python3Packages.buildPythonApplication rec {
 
   meta = with stdenv.lib; {
     description = "Non-Linear video editor utilizing the power of GStreamer";
-    homepage = http://pitivi.org/;
+    homepage = "http://pitivi.org/";
     longDescription = ''
       Pitivi is a video editor built upon the GStreamer Editing Services.
       It aims to be an intuitive and flexible application
diff --git a/pkgs/applications/video/plex-media-player/default.nix b/pkgs/applications/video/plex-media-player/default.nix
index a4f9d6222aa6..d08a4a852428 100644
--- a/pkgs/applications/video/plex-media-player/default.nix
+++ b/pkgs/applications/video/plex-media-player/default.nix
@@ -5,45 +5,20 @@ let
   # During compilation, a CMake bundle is downloaded from `artifacts.plex.tv`,
   # which then downloads a handful of web client-related files. To enable
   # sandboxed builds, we manually download them and save them so these files
-  # are fetched ahead-of-time instead of during the CMake build. Whenever
-  # plex-media-player is updated, the versions for these files are changed,
-  # so the build IDs (and SHAs) below will need to be updated!
-  depSrcs = rec {
-    webClientBuildId = "141-4af71961b12c68";
-    webClientDesktopBuildId = "3.104.2-1b12c68";
-    webClientTvBuildId = "4.3.0-4af7196";
-
-    webClient = fetchurl {
-      url = "https://artifacts.plex.tv/web-client-pmp/${webClientBuildId}/buildid.cmake";
-      sha256 = "0fpkd1s49dbiqqlijxbillqd71a78p8y2sc23mwp0lvcmxrg265p";
-    };
-    webClientDesktopHash = fetchurl {
-      url = "https://artifacts.plex.tv/web-client-pmp/${webClientBuildId}/web-client-desktop-${webClientDesktopBuildId}.tar.xz.sha1";
-      sha256 = "0sb0j44lwqz9zbm98nba4x6c1jxdzvs36ynwfg527avkxxna0f8f";
-    };
-    webClientDesktop = fetchurl {
-      url = "https://artifacts.plex.tv/web-client-pmp/${webClientBuildId}/web-client-desktop-${webClientDesktopBuildId}.tar.xz";
-      sha256 = "0dxa0ka0igfsryzda4r5clwdl47ah78nmlmgj9d5pgsvyvzjp87z";
-    };
-    webClientTvHash = fetchurl {
-      url = "https://artifacts.plex.tv/web-client-pmp/${webClientBuildId}/web-client-tv-${webClientTvBuildId}.tar.xz.sha1";
-      sha256 = "086w1bavk2aqsyhv9zi5fynk31zf61sl91r6gjrdrz656wfk5bxa";
-    };
-    webClientTv = fetchurl {
-      url = "https://artifacts.plex.tv/web-client-pmp/${webClientBuildId}/web-client-tv-${webClientTvBuildId}.tar.xz";
-      sha256 = "12vbgsfnj0j2y5jd73dpi08hqsr9888sma41nvd4ydsd7qblm455";
-    };
-  };
+  # are fetched ahead-of-time instead of during the CMake build. To update
+  # plex-media-player use the update.sh script, so the versions and hashes
+  # for these files are are also updated!
+  depSrcs = import ./deps.nix { inherit fetchurl; };
 in mkDerivation rec {
   pname = "plex-media-player";
-  version = "2.40.0.1007";
-  vsnHash = "5482132c";
+  version = "2.55.0.1069";
+  vsnHash = "2369bed9";
 
   src = fetchFromGitHub {
     owner = "plexinc";
     repo = "plex-media-player";
     rev = "v${version}-${vsnHash}";
-    sha256 = "0ibdh5g8x32iy74q97jfsmxd08wnyrzs3gfiwjfgc10vaa1qdhli";
+    sha256 = "1jq4592sgaia0xy2h7n3vh5i7c84sdh4l64fdc774r4i0bmg66qi";
   };
 
   nativeBuildInputs = [ pkgconfig cmake python3 ];
@@ -61,10 +36,12 @@ in mkDerivation rec {
 
   cmakeFlags = [ "-DCMAKE_BUILD_TYPE=RelWithDebInfo" "-DQTROOT=${qtbase}" ];
 
+  passthru.updateScript = ./update.sh;
+
   meta = with stdenv.lib; {
     description = "Streaming media player for Plex";
     license = licenses.gpl2;
     maintainers = with maintainers; [ kylewlacy ];
-    homepage = https://plex.tv;
+    homepage = "https://plex.tv";
   };
 }
diff --git a/pkgs/applications/video/plex-media-player/deps.nix b/pkgs/applications/video/plex-media-player/deps.nix
new file mode 100644
index 000000000000..26b57532615a
--- /dev/null
+++ b/pkgs/applications/video/plex-media-player/deps.nix
@@ -0,0 +1,28 @@
+{ fetchurl }:
+
+rec {
+  webClientBuildId = "180-afec74de50e175";
+  webClientDesktopBuildId = "4.29.2-e50e175";
+  webClientTvBuildId = "4.29.3-afec74d";
+
+  webClient = fetchurl {
+    url = "https://artifacts.plex.tv/web-client-pmp/${webClientBuildId}/buildid.cmake";
+    sha256 = "0rabrg3lk9vgpswk8npa54hzqf2v8ghqqnysxpwn12wrp1pc2rr9";
+  };
+  webClientDesktopHash = fetchurl {
+    url = "https://artifacts.plex.tv/web-client-pmp/${webClientBuildId}/web-client-desktop-${webClientDesktopBuildId}.tar.xz.sha1";
+    sha256 = "02b5yq4yc411qlg2dkw5j9lrr3cn2y4d27sin0skf6qza180473g";
+  };
+  webClientDesktop = fetchurl {
+    url = "https://artifacts.plex.tv/web-client-pmp/${webClientBuildId}/web-client-desktop-${webClientDesktopBuildId}.tar.xz";
+    sha256 = "0l3xv48kr2rx878a40zrgwif2ga2ikv6fdcbq9pylycnmm41pxmh";
+  };
+  webClientTvHash = fetchurl {
+    url = "https://artifacts.plex.tv/web-client-pmp/${webClientBuildId}/web-client-tv-${webClientTvBuildId}.tar.xz.sha1";
+    sha256 = "0wq115y2xrgwqrzr43nhkq8ba237z20yfp426ki2kdypsq8fjqka";
+  };
+  webClientTv = fetchurl {
+    url = "https://artifacts.plex.tv/web-client-pmp/${webClientBuildId}/web-client-tv-${webClientTvBuildId}.tar.xz";
+    sha256 = "1wax1qslm226l2w53m2fnl849jw349qhg3rjghx7vip5pmb43vw9";
+  };
+}
diff --git a/pkgs/applications/video/plex-media-player/update.sh b/pkgs/applications/video/plex-media-player/update.sh
new file mode 100755
index 000000000000..a8493a16c989
--- /dev/null
+++ b/pkgs/applications/video/plex-media-player/update.sh
@@ -0,0 +1,71 @@
+#!/usr/bin/env nix-shell
+#!nix-shell -i bash -p curl common-updater-scripts nix-prefetch-scripts jq
+
+set -xeuo pipefail
+
+nixpkgs="$(git rev-parse --show-toplevel)"
+
+oldVersion="$(nix-instantiate --eval -E "with import $nixpkgs {}; plex-media-player.version or (builtins.parseDrvName plex-media-player.name).version" | tr -d '"')"
+latestTag="$(curl -s https://api.github.com/repos/plexinc/plex-media-player/tags  | jq -r '.[] | .name' | sort --version-sort | tail -1)"
+latestVersion="$(expr $latestTag : 'v\(.*\)-.*')"
+latestHash="$(expr $latestTag : 'v.*-\(.*\)')"
+
+if [ ! "$oldVersion" = "$latestVersion" ]; then
+  # update default.nix with the new version and hash
+  expectedHash=$(nix-prefetch-git --url https://github.com/plexinc/plex-media-player.git --rev $latestTag --quiet | jq -r '.sha256')
+  update-source-version plex-media-player --version-key=vsnHash "${latestHash}" 0000
+  update-source-version plex-media-player "${latestVersion}" $expectedHash
+
+  # extract the webClientBuildId from the source folder
+  src="$(nix-build --no-out-link $nixpkgs -A plex-media-player.src)"
+  webClientBuildId="$(grep 'set(WEB_CLIENT_BUILD_ID' $src/CMakeModules/WebClient.cmake | cut -d' ' -f2 | tr -d ')')"
+
+  # retreive the included cmake file and hash
+  { read -r webClientBuildIdHash; read -r webClientBuildIdPath; } < \
+    <(nix-prefetch-url --print-path "https://artifacts.plex.tv/web-client-pmp/${webClientBuildId}/buildid.cmake")
+  webClientDesktopBuildId="$(grep 'set(DESKTOP_VERSION' $webClientBuildIdPath | cut -d' ' -f2 | tr -d ')')"
+  webClientTvBuildId="$(grep 'set(TV_VERSION' $webClientBuildIdPath | cut -d' ' -f2 | tr -d ')')"
+
+  # get the hashes for the other files
+  webClientDesktopHash="$(nix-prefetch-url "https://artifacts.plex.tv/web-client-pmp/${webClientBuildId}/web-client-desktop-${webClientDesktopBuildId}.tar.xz.sha1")"
+  webClientDesktop="$(nix-prefetch-url "https://artifacts.plex.tv/web-client-pmp/${webClientBuildId}/web-client-desktop-${webClientDesktopBuildId}.tar.xz")"
+  webClientTvHash="$(nix-prefetch-url "https://artifacts.plex.tv/web-client-pmp/${webClientBuildId}/web-client-tv-${webClientTvBuildId}.tar.xz.sha1")"
+  webClientTv="$(nix-prefetch-url "https://artifacts.plex.tv/web-client-pmp/${webClientBuildId}/web-client-tv-${webClientTvBuildId}.tar.xz")"
+
+  # update deps.nix
+  cat > $nixpkgs/pkgs/applications/video/plex-media-player/deps.nix <<EOF
+{ fetchurl }:
+
+rec {
+  webClientBuildId = "${webClientBuildId}";
+  webClientDesktopBuildId = "${webClientDesktopBuildId}";
+  webClientTvBuildId = "${webClientTvBuildId}";
+
+  webClient = fetchurl {
+    url = "https://artifacts.plex.tv/web-client-pmp/\${webClientBuildId}/buildid.cmake";
+    sha256 = "${webClientBuildIdHash}";
+  };
+  webClientDesktopHash = fetchurl {
+    url = "https://artifacts.plex.tv/web-client-pmp/\${webClientBuildId}/web-client-desktop-\${webClientDesktopBuildId}.tar.xz.sha1";
+    sha256 = "${webClientDesktopHash}";
+  };
+  webClientDesktop = fetchurl {
+    url = "https://artifacts.plex.tv/web-client-pmp/\${webClientBuildId}/web-client-desktop-\${webClientDesktopBuildId}.tar.xz";
+    sha256 = "${webClientDesktop}";
+  };
+  webClientTvHash = fetchurl {
+    url = "https://artifacts.plex.tv/web-client-pmp/\${webClientBuildId}/web-client-tv-\${webClientTvBuildId}.tar.xz.sha1";
+    sha256 = "${webClientTvHash}";
+  };
+  webClientTv = fetchurl {
+    url = "https://artifacts.plex.tv/web-client-pmp/\${webClientBuildId}/web-client-tv-\${webClientTvBuildId}.tar.xz";
+    sha256 = "${webClientTv}";
+  };
+}
+EOF
+
+  git add "$nixpkgs"/pkgs/applications/video/plex-media-player/{default,deps}.nix
+  git commit -m "plex-media-player: ${oldVersion} -> ${latestVersion}"
+else
+  echo "plex-media-player is already up-to-date"
+fi
diff --git a/pkgs/applications/video/plex-mpv-shim/default.nix b/pkgs/applications/video/plex-mpv-shim/default.nix
index 019d080f9739..268905e3a4c0 100644
--- a/pkgs/applications/video/plex-mpv-shim/default.nix
+++ b/pkgs/applications/video/plex-mpv-shim/default.nix
@@ -2,13 +2,13 @@
 
 buildPythonApplication rec {
   pname = "plex-mpv-shim";
-  version = "1.7.12";
+  version = "1.7.16";
 
   src = fetchFromGitHub {
     owner = "iwalton3";
     repo = pname;
     rev = "v${version}";
-    sha256 = "0l13g4vkvcd1q4lkdkbgv4hgkx5pql6ym2fap35581z7rzy9jhkq";
+    sha256 = "1pnbdxaqnliwqfvv08gi7gdcvflg5vcbgk4g0fw75prgw54vnd9a";
   };
 
   propagatedBuildInputs = [ mpv requests python-mpv-jsonipc ];
diff --git a/pkgs/applications/video/pyca/default.nix b/pkgs/applications/video/pyca/default.nix
index af9ef4c1cd50..0fed17bb9999 100644
--- a/pkgs/applications/video/pyca/default.nix
+++ b/pkgs/applications/video/pyca/default.nix
@@ -22,7 +22,7 @@ buildPythonApplication rec {
 
   meta = with stdenv.lib; {
     description = "A fully functional Opencast capture agent written in Python";
-    homepage = https://github.com/opencast/pyCA;
+    homepage = "https://github.com/opencast/pyCA";
     license = licenses.lgpl3;
     maintainers = with maintainers; [ pmiddend ];
   };
diff --git a/pkgs/applications/video/qarte/default.nix b/pkgs/applications/video/qarte/default.nix
index cd6416032da2..26b3153019fb 100644
--- a/pkgs/applications/video/qarte/default.nix
+++ b/pkgs/applications/video/qarte/default.nix
@@ -5,7 +5,7 @@ let
 in mkDerivation {
   name = "qarte-4.6.0";
   src = fetchbzr {
-    url = http://bazaar.launchpad.net/~vincent-vandevyvre/qarte/qarte-4;
+    url = "http://bazaar.launchpad.net/~vincent-vandevyvre/qarte/qarte-4";
     rev = "22";
     sha256 = "0v4zpj8w67ydvnmanxbl8pwvn0cfv70c0mlw36a1r4n0rvgxffcn";
   };
@@ -33,7 +33,7 @@ in mkDerivation {
   '';
 
   meta = {
-    homepage = https://launchpad.net/qarte;
+    homepage = "https://launchpad.net/qarte";
     description = "A recorder for Arte TV Guide and Arte Concert";
     license = lib.licenses.gpl3;
     maintainers = with lib.maintainers; [ vbgl ];
diff --git a/pkgs/applications/video/qmediathekview/default.nix b/pkgs/applications/video/qmediathekview/default.nix
index 160066688462..7556727a80d3 100644
--- a/pkgs/applications/video/qmediathekview/default.nix
+++ b/pkgs/applications/video/qmediathekview/default.nix
@@ -1,6 +1,6 @@
-{ stdenv, fetchFromGitHub, qtbase, qttools, xz, boost, qmake, pkgconfig }:
+{ mkDerivation, stdenv, fetchFromGitHub, qtbase, qttools, xz, boost, qmake, pkgconfig }:
 
-stdenv.mkDerivation rec {
+mkDerivation rec {
   pname = "QMediathekView";
   version = "2019-01-06";
 
diff --git a/pkgs/applications/video/qstopmotion/default.nix b/pkgs/applications/video/qstopmotion/default.nix
index 327a2034265e..98af60c49379 100644
--- a/pkgs/applications/video/qstopmotion/default.nix
+++ b/pkgs/applications/video/qstopmotion/default.nix
@@ -1,8 +1,28 @@
-{ stdenv, fetchurl, qt5, ffmpeg, guvcview, cmake, ninja, libxml2
-, gettext, pkgconfig, libgphoto2, gphoto2, v4l-utils, libv4l, pcre
-, qwt, extra-cmake-modules }:
+{ stdenv
+, mkDerivation
+, fetchurl
+, qtbase
+, qtmultimedia
+, qtquickcontrols
+, qtimageformats
+, qtxmlpatterns
+, ffmpeg
+, guvcview
+, cmake
+, ninja
+, libxml2
+, gettext
+, pkgconfig
+, libgphoto2
+, gphoto2
+, v4l-utils
+, libv4l
+, pcre
+, qwt
+, extra-cmake-modules
+}:
 
-stdenv.mkDerivation rec {
+mkDerivation rec {
   pname = "qstopmotion";
   version = "2.4.1";
 
@@ -11,11 +31,31 @@ stdenv.mkDerivation rec {
     sha256 = "03r6jxyq0bak2vsy2b78nk27m7fm96hnl8cx11l3l17704j4iglh";
   };
 
-  buildInputs = with qt5; [ v4l-utils libv4l pcre qtbase qtmultimedia ffmpeg guvcview
-                            qwt qtquickcontrols qtimageformats qtxmlpatterns ];
+  buildInputs = [
+    qtbase
+    qtmultimedia
+    qtquickcontrols
+    qtimageformats
+    qtxmlpatterns
+    v4l-utils
+    libv4l
+    pcre
+    ffmpeg
+    guvcview
+    qwt
+  ];
 
-  nativeBuildInputs = [ pkgconfig cmake extra-cmake-modules ninja
-                        gettext libgphoto2 gphoto2 libxml2 libv4l ];
+  nativeBuildInputs = [
+    pkgconfig
+    cmake
+    extra-cmake-modules
+    ninja
+    gettext
+    libgphoto2
+    gphoto2
+    libxml2
+    libv4l
+  ];
 
   patchPhase = ''
     substituteInPlace CMakeLists.txt \
@@ -25,7 +65,7 @@ stdenv.mkDerivation rec {
   '';
 
   meta = with stdenv.lib; {
-    homepage = http://www.qstopmotion.org;
+    homepage = "http://www.qstopmotion.org";
     description = "Create stopmotion animation with a (web)camera";
     longDescription = ''
       Qstopmotion is a tool to create stopmotion
@@ -36,6 +76,7 @@ stdenv.mkDerivation rec {
 
     license = stdenv.lib.licenses.gpl2Plus;
     maintainers = [ maintainers.leenaars ];
+    broken = stdenv.isAarch64;
     platforms = stdenv.lib.platforms.gnu ++ stdenv.lib.platforms.linux;
   };
 }
diff --git a/pkgs/applications/video/quvi/library.nix b/pkgs/applications/video/quvi/library.nix
index 8f9e3131d8aa..c4926bedd727 100644
--- a/pkgs/applications/video/quvi/library.nix
+++ b/pkgs/applications/video/quvi/library.nix
@@ -14,7 +14,7 @@ stdenv.mkDerivation rec {
 
   meta = {
     description = "Web video downloader";
-    homepage = http://quvi.sf.net;
+    homepage = "http://quvi.sf.net";
     license = stdenv.lib.licenses.lgpl21Plus;
     platforms = stdenv.lib.platforms.linux;
     maintainers = [ ];
diff --git a/pkgs/applications/video/quvi/scripts.nix b/pkgs/applications/video/quvi/scripts.nix
index e54fc0eae4ba..462c2df9962c 100644
--- a/pkgs/applications/video/quvi/scripts.nix
+++ b/pkgs/applications/video/quvi/scripts.nix
@@ -13,7 +13,7 @@ stdenv.mkDerivation rec {
 
   meta = {
     description = "Web video downloader";
-    homepage = http://quvi.sf.net;
+    homepage = "http://quvi.sf.net";
     license = stdenv.lib.licenses.lgpl21Plus;
     platforms = stdenv.lib.platforms.linux;
     maintainers = [ ];
diff --git a/pkgs/applications/video/quvi/tool.nix b/pkgs/applications/video/quvi/tool.nix
index 972e08bb61be..b2746ef82333 100644
--- a/pkgs/applications/video/quvi/tool.nix
+++ b/pkgs/applications/video/quvi/tool.nix
@@ -17,7 +17,7 @@ stdenv.mkDerivation rec {
 
   meta = {
     description = "Web video downloader";
-    homepage = http://quvi.sf.net;
+    homepage = "http://quvi.sf.net";
     license = stdenv.lib.licenses.lgpl21Plus;
     platforms = stdenv.lib.platforms.linux;
     maintainers = [ ];
diff --git a/pkgs/applications/video/screenkey/default.nix b/pkgs/applications/video/screenkey/default.nix
index 56b1134b2b8a..7e2bc3a3ec0c 100644
--- a/pkgs/applications/video/screenkey/default.nix
+++ b/pkgs/applications/video/screenkey/default.nix
@@ -49,7 +49,7 @@ buildPythonApplication rec {
   doCheck = false;
 
   meta = with lib; {
-    homepage = https://www.thregr.org/~wavexx/software/screenkey/;
+    homepage = "https://www.thregr.org/~wavexx/software/screenkey/";
     description = "A screencast tool to display your keys inspired by Screenflick";
     license = licenses.gpl3Plus;
     platforms = platforms.linux;
diff --git a/pkgs/applications/video/shotcut/default.nix b/pkgs/applications/video/shotcut/default.nix
index f0959284d669..9c0435a351c8 100644
--- a/pkgs/applications/video/shotcut/default.nix
+++ b/pkgs/applications/video/shotcut/default.nix
@@ -8,13 +8,13 @@ assert stdenv.lib.versionAtLeast mlt.version "6.18.0";
 
 mkDerivation rec {
   pname = "shotcut";
-  version = "20.02.17";
+  version = "20.04.12";
 
   src = fetchFromGitHub {
     owner = "mltframework";
     repo = "shotcut";
     rev = "v${version}";
-    sha256 = "0nsqlbapqgxccb7mnvxqw4hdddj944d4z5jxafpv0cwj7s3z8wj0";
+    sha256 = "05yyv9192f722j8fhfjrphxadgp3crvbq4pi23ln560zh9s1m8r4";
   };
 
   patches = [ ./0001-encodedock.cpp-connect-to-VAAPI-via-DRM-not-X11.patch ];
@@ -60,7 +60,7 @@ mkDerivation rec {
       nixpkgs maintainer(s). If you wish to report any bugs upstream,
       please use the official build from shotcut.org instead.
     '';
-    homepage = https://shotcut.org;
+    homepage = "https://shotcut.org";
     license = licenses.gpl3;
     maintainers = with maintainers; [ goibhniu woffs peti ];
     platforms = platforms.linux;
diff --git a/pkgs/applications/video/simplescreenrecorder/default.nix b/pkgs/applications/video/simplescreenrecorder/default.nix
index b06f0fcd962e..f97d1ee00373 100644
--- a/pkgs/applications/video/simplescreenrecorder/default.nix
+++ b/pkgs/applications/video/simplescreenrecorder/default.nix
@@ -31,7 +31,7 @@ mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "A screen recorder for Linux";
-    homepage = https://www.maartenbaert.be/simplescreenrecorder;
+    homepage = "https://www.maartenbaert.be/simplescreenrecorder";
     license = licenses.gpl3;
     platforms = [ "x86_64-linux" ];
     maintainers = [ maintainers.goibhniu ];
diff --git a/pkgs/applications/video/smplayer/default.nix b/pkgs/applications/video/smplayer/default.nix
index 65a7f358d6fa..aba6af7359a3 100644
--- a/pkgs/applications/video/smplayer/default.nix
+++ b/pkgs/applications/video/smplayer/default.nix
@@ -19,7 +19,7 @@ mkDerivation rec {
   meta = {
     description = "A complete front-end for MPlayer";
     longDescription = "Either mplayer or mpv should also be installed for smplayer to play medias";
-    homepage = https://www.smplayer.info;
+    homepage = "https://www.smplayer.info";
     license = lib.licenses.gpl3Plus;
     platforms = lib.platforms.linux;
   };
diff --git a/pkgs/applications/video/smtube/default.nix b/pkgs/applications/video/smtube/default.nix
index df262fa97974..1cd6fb693e81 100644
--- a/pkgs/applications/video/smtube/default.nix
+++ b/pkgs/applications/video/smtube/default.nix
@@ -20,7 +20,7 @@ mkDerivation rec {
 
   meta = with lib; {
     description = "Play and download Youtube videos";
-    homepage = http://smplayer.sourceforge.net/smtube.php;
+    homepage = "http://smplayer.sourceforge.net/smtube.php";
     license = licenses.gpl2Plus;
     maintainers = with maintainers; [ vbgl ];
     platforms = platforms.linux;
diff --git a/pkgs/applications/video/streamlink/default.nix b/pkgs/applications/video/streamlink/default.nix
index cf10bd223a14..782b81cc2380 100644
--- a/pkgs/applications/video/streamlink/default.nix
+++ b/pkgs/applications/video/streamlink/default.nix
@@ -1,14 +1,14 @@
 { stdenv, pythonPackages, fetchFromGitHub, rtmpdump, ffmpeg }:
 
 pythonPackages.buildPythonApplication rec {
-  version = "1.3.1";
+  version = "1.4.1";
   pname = "streamlink";
 
   src = fetchFromGitHub {
     owner = "streamlink";
     repo = "streamlink";
     rev = version;
-    sha256 = "0scc0mzvy56b1l6iyvrzb28l8vzrxpfkn4lcwr8nnyjb7ams2xms";
+    sha256 = "1q3h48qwf7vs2wnbkwv0xnm6s65mkcyqdz7z6z3vrsmif2sb19l2";
   };
 
   checkInputs = with pythonPackages; [ pytest mock requests-mock freezegun ];
@@ -16,7 +16,7 @@ pythonPackages.buildPythonApplication rec {
   propagatedBuildInputs = (with pythonPackages; [ pycryptodome requests iso-639 iso3166 websocket_client isodate ]) ++ [ rtmpdump ffmpeg ];
 
   meta = with stdenv.lib; {
-    homepage = https://github.com/streamlink/streamlink;
+    homepage = "https://github.com/streamlink/streamlink";
     description = "CLI for extracting streams from various websites to video player of your choosing";
     longDescription = ''
       Streamlink is a CLI utility that pipes flash videos from online
diff --git a/pkgs/applications/video/subdl/default.nix b/pkgs/applications/video/subdl/default.nix
index 36a92f0f1afb..b2b020a20d23 100644
--- a/pkgs/applications/video/subdl/default.nix
+++ b/pkgs/applications/video/subdl/default.nix
@@ -11,7 +11,7 @@ stdenv.mkDerivation {
   };
 
   meta = {
-    homepage = https://github.com/alexanderwink/subdl;
+    homepage = "https://github.com/alexanderwink/subdl";
     description = "A command-line tool to download subtitles from opensubtitles.org";
     platforms = stdenv.lib.platforms.all;
     license = stdenv.lib.licenses.gpl3;
diff --git a/pkgs/applications/video/subtitleeditor/default.nix b/pkgs/applications/video/subtitleeditor/default.nix
index f628c3b214e4..29e2de6b6c0a 100644
--- a/pkgs/applications/video/subtitleeditor/default.nix
+++ b/pkgs/applications/video/subtitleeditor/default.nix
@@ -56,7 +56,7 @@ stdenv.mkDerivation {
       and refine existing subtitle. This program also shows sound waves, which
       makes it easier to synchronise subtitles to voices.
       '';
-    homepage = http://kitone.github.io/subtitleeditor/;
+    homepage = "http://kitone.github.io/subtitleeditor/";
     license = stdenv.lib.licenses.gpl3Plus;
     platforms = stdenv.lib.platforms.linux;
     maintainers = [ stdenv.lib.maintainers.plcplc ];
diff --git a/pkgs/applications/video/tartube/default.nix b/pkgs/applications/video/tartube/default.nix
new file mode 100644
index 000000000000..ae222ae05a79
--- /dev/null
+++ b/pkgs/applications/video/tartube/default.nix
@@ -0,0 +1,68 @@
+{ stdenv
+, lib
+, fetchFromGitHub
+, gdk-pixbuf
+, gobject-introspection
+, gtk3
+, libnotify
+, pango
+, python3Packages
+, wrapGAppsHook
+, youtube-dl
+, glib
+}:
+
+python3Packages.buildPythonApplication rec {
+  pname = "tartube";
+  version = "2.0.016";
+
+  src = fetchFromGitHub {
+    owner = "axcore";
+    repo = "tartube";
+    rev = "v${version}";
+    sha256 = "1y77ykihyi4v6xlsm5xldbs9lzq229l574rxz6qfvrjcbbwajfj9";
+  };
+
+  nativeBuildInputs = [
+    gobject-introspection
+    wrapGAppsHook
+  ];
+
+  strictDeps = false;
+
+  propagatedBuildInputs = with python3Packages; [
+    moviepy
+    pygobject3
+    pyxdg
+    requests
+  ];
+
+  buildInputs = [
+    gdk-pixbuf
+    gtk3
+    glib
+    libnotify
+    pango
+  ];
+
+  postInstall = ''
+    mkdir -p $out/share/{man/man1,applications,pixmaps}
+    cp pack/tartube.1 $out/share/man/man1
+    cp pack/tartube.desktop $out/share/applications
+    cp pack/tartube.{png,xpm} $out/share/pixmaps
+  '';
+
+  doCheck = false;
+
+  makeWrapperArgs = [
+    "--prefix PATH : ${stdenv.lib.makeBinPath [ youtube-dl ]}"
+  ];
+
+  meta = with lib; {
+    description = "A GUI front-end for youtube-dl";
+    license = licenses.gpl3;
+    platforms = platforms.linux;
+    maintainers = with maintainers; [ mkg20001 luc65r ];
+    homepage = "https://tartube.sourceforge.io/";
+  };
+}
diff --git a/pkgs/applications/video/tivodecode/default.nix b/pkgs/applications/video/tivodecode/default.nix
index bc6561a0bbd0..33e04b77c4b4 100644
--- a/pkgs/applications/video/tivodecode/default.nix
+++ b/pkgs/applications/video/tivodecode/default.nix
@@ -16,7 +16,7 @@ stdenv.mkDerivation {
 
   meta = with stdenv.lib; {
     description = "Converts a .TiVo file (produced by TiVoToGo) to a normal MPEG file";
-    homepage = http://tivodecode.sourceforge.net;
+    homepage = "http://tivodecode.sourceforge.net";
     platforms = platforms.unix;
     license = licenses.bsd3;
   };
diff --git a/pkgs/applications/video/vdr/default.nix b/pkgs/applications/video/vdr/default.nix
index bcffb8585b31..d025554835ef 100644
--- a/pkgs/applications/video/vdr/default.nix
+++ b/pkgs/applications/video/vdr/default.nix
@@ -46,7 +46,7 @@
   outputs = [ "out" "dev" "man" ];
 
   meta = with lib; {
-    homepage = http://www.tvdr.de/;
+    homepage = "http://www.tvdr.de/";
     description = "Video Disc Recorder";
     maintainers = [ maintainers.ck3d ];
     platforms = [ "i686-linux" "x86_64-linux" ];
diff --git a/pkgs/applications/video/vdr/plugins.nix b/pkgs/applications/video/vdr/plugins.nix
index 2ee196baccc7..6c1e79c42deb 100644
--- a/pkgs/applications/video/vdr/plugins.nix
+++ b/pkgs/applications/video/vdr/plugins.nix
@@ -38,7 +38,7 @@ in {
     makeFlags = [ "DESTDIR=$(out)" ];
 
     meta = with stdenv.lib; {
-      homepage = http://www.saunalahti.fi/~rahrenbe/vdr/femon/;
+      homepage = "http://www.saunalahti.fi/~rahrenbe/vdr/femon/";
       description = "DVB Frontend Status Monitor plugin for VDR";
       maintainers = [ maintainers.ck3d ];
       license = licenses.gpl2;
@@ -72,7 +72,7 @@ in {
     };
 
     meta = with stdenv.lib; {
-      homepage = https://github.com/pesintta/vdr-plugin-vaapidevice;
+      homepage = "https://github.com/pesintta/vdr-plugin-vaapidevice";
       description = "VDR SoftHDDevice Plug-in (with VA-API VPP additions)";
       maintainers = [ maintainers.ck3d ];
       license = licenses.gpl2;
@@ -118,7 +118,7 @@ in {
     installFlags = buildFlags;
 
     meta = with stdenv.lib; {
-      homepage = https://projects.vdr-developer.org/projects/plg-markad;
+      homepage = "https://projects.vdr-developer.org/projects/plg-markad";
       description = "Ein Programm zum automatischen Setzen von Schnittmarken bei Werbeeinblendungen während einer Sendung.";
       maintainers = [ maintainers.ck3d ];
       license = licenses.gpl2;
@@ -165,7 +165,7 @@ in {
     outputs = [ "out" "man" ];
 
     meta = with stdenv.lib; {
-      homepage = http://winni.vdr-developer.org/epgsearch;
+      homepage = "http://winni.vdr-developer.org/epgsearch";
       description = "Searchtimer and replacement of the VDR program menu";
       maintainers = [ maintainers.ck3d ];
       license = licenses.gpl2;
@@ -192,7 +192,7 @@ in {
     };
 
     meta = with stdenv.lib; {
-      homepage = https://github.com/FernetMenta/vdr-plugin-vnsiserver;
+      homepage = "https://github.com/FernetMenta/vdr-plugin-vnsiserver";
       description = "VDR plugin to handle KODI clients.";
       maintainers = [ maintainers.ck3d ];
       license = licenses.gpl2;
@@ -227,7 +227,7 @@ in {
     installPhase = ":";
 
     meta = with stdenv.lib; {
-      homepage = https://projects.vdr-developer.org/projects/plg-text2skin;
+      homepage = "https://projects.vdr-developer.org/projects/plg-text2skin";
       description = "VDR Text2Skin Plugin";
       maintainers = [ maintainers.ck3d ];
       license = licenses.gpl2;
@@ -328,7 +328,7 @@ in {
     installFlags = [ "DESTDIR=$(out)" ];
 
     meta = with stdenv.lib; {
-      homepage = https://github.com/jowi24/vdr-fritz;
+      homepage = "https://github.com/jowi24/vdr-fritz";
       description = "A plugin for VDR to access AVMs Fritz Box routers";
       maintainers = [ maintainers.ck3d ];
       license = licenses.gpl2;
diff --git a/pkgs/applications/video/vdr/xineliboutput/default.nix b/pkgs/applications/video/vdr/xineliboutput/default.nix
index 98fcd2b5d408..950cb253c129 100644
--- a/pkgs/applications/video/vdr/xineliboutput/default.nix
+++ b/pkgs/applications/video/vdr/xineliboutput/default.nix
@@ -1,21 +1,26 @@
 { stdenv, fetchurl, lib, vdr
 , libav, libcap, libvdpau
-, xineLib, libjpeg, libextractor, mesa, libGLU
+, xineLib, libjpeg, libextractor, libglvnd, libGLU
 , libX11, libXext, libXrender, libXrandr
 , makeWrapper
 }: let
-  name = "vdr-xineliboutput-2.1.0";
-
   makeXinePluginPath = l: lib.concatStringsSep ":" (map (p: "${p}/lib/xine/plugins") l);
 
-  self =  stdenv.mkDerivation {
-    inherit name;
+  self =  stdenv.mkDerivation rec {
+    pname = "vdr-xineliboutput";
+    version = "2.2.0";
 
     src = fetchurl {
-      url = "mirror://sourceforge/project/xineliboutput/xineliboutput/${name}/${name}.tgz";
-      sha256 = "1phrxpaz8li7z0qy241spawalhcmwkv5hh3gdijbv4h7mm899yba";
+      url = "mirror://sourceforge/project/xineliboutput/xineliboutput/${pname}-${version}/${pname}-${version}.tgz";
+      sha256 = "0a24hs5nr7ncf51c5agyfn1xrvb4p70y3i0s6dlyyd9bwbfjldns";
     };
 
+    postPatch = ''
+      # pkg-config is called with opengl, which do not contain needed glx symbols
+      substituteInPlace configure \
+        --replace "X11  opengl" "X11  gl"
+    '';
+
     # configure don't accept argument --prefix
     dontAddPrefix = true;
 
@@ -40,13 +45,13 @@
       libcap
       libextractor
       libjpeg
+      libglvnd
       libGLU
       libvdpau
       libXext
       libXrandr
       libXrender
       libX11
-      mesa
       vdr
       xineLib
     ];
diff --git a/pkgs/applications/video/vlc/default.nix b/pkgs/applications/video/vlc/default.nix
index 2396a224d451..229eeffe8f79 100644
--- a/pkgs/applications/video/vlc/default.nix
+++ b/pkgs/applications/video/vlc/default.nix
@@ -96,7 +96,7 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "Cross-platform media player and streaming server";
-    homepage = http://www.videolan.org/vlc/;
+    homepage = "http://www.videolan.org/vlc/";
     license = licenses.lgpl21Plus;
     platforms = platforms.linux;
   };
diff --git a/pkgs/applications/video/vokoscreen/default.nix b/pkgs/applications/video/vokoscreen/default.nix
index a38a9056c85c..94d0de20ccf7 100644
--- a/pkgs/applications/video/vokoscreen/default.nix
+++ b/pkgs/applications/video/vokoscreen/default.nix
@@ -40,7 +40,7 @@ mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "Simple GUI screencast recorder, using ffmpeg";
-    homepage = "http://linuxecke.volkoh.de/vokoscreen/vokoscreen.html";
+    homepage = "https://linuxecke.volkoh.de/vokoscreen/vokoscreen.html";
     longDescription = ''
       vokoscreen is an easy to use screencast creator to record
       educational videos, live recordings of browser, installation,
diff --git a/pkgs/applications/video/w_scan/default.nix b/pkgs/applications/video/w_scan/default.nix
index 3c4f607c6aff..7710c7d67a31 100644
--- a/pkgs/applications/video/w_scan/default.nix
+++ b/pkgs/applications/video/w_scan/default.nix
@@ -11,7 +11,7 @@ stdenv.mkDerivation rec {
 
   meta = {
     description = "Small CLI utility to scan DVB and ATSC transmissions";
-    homepage = http://wirbel.htpc-forum.de/w_scan/index_en.html;
+    homepage = "http://wirbel.htpc-forum.de/w_scan/index_en.html";
     platforms = stdenv.lib.platforms.linux;
     maintainers = [ stdenv.lib.maintainers.nico202 ] ;
     license = stdenv.lib.licenses.gpl2;
diff --git a/pkgs/applications/video/webtorrent_desktop/default.nix b/pkgs/applications/video/webtorrent_desktop/default.nix
index 8258f8583090..24c17daa759d 100644
--- a/pkgs/applications/video/webtorrent_desktop/default.nix
+++ b/pkgs/applications/video/webtorrent_desktop/default.nix
@@ -78,7 +78,7 @@
 
     meta = with stdenv.lib; {
       description = "Streaming torrent app for Mac, Windows, and Linux.";
-      homepage = https://webtorrent.io/desktop;
+      homepage = "https://webtorrent.io/desktop";
       license = licenses.mit;
       maintainers = [ maintainers.flokli ];
       platforms = [
diff --git a/pkgs/applications/video/wf-recorder/default.nix b/pkgs/applications/video/wf-recorder/default.nix
index ef98239f32f2..cb97e5b1090b 100644
--- a/pkgs/applications/video/wf-recorder/default.nix
+++ b/pkgs/applications/video/wf-recorder/default.nix
@@ -4,13 +4,13 @@
 
 stdenv.mkDerivation rec {
   pname = "wf-recorder";
-  version = "0.2";
+  version = "0.2.1";
 
   src = fetchFromGitHub {
     owner = "ammen99";
     repo = pname;
     rev = "v${version}";
-    sha256 = "1772hrd7j8b32y65x5c392kdijlcn13iqg9hrlagfar92102vsbf";
+    sha256 = "1cw6kpcbl33wh95pvy32xrsrm6kkk1awccr3phyh885xjs3b3iim";
   };
 
   nativeBuildInputs = [ meson ninja pkg-config wayland scdoc ];
diff --git a/pkgs/applications/video/wxcam/default.nix b/pkgs/applications/video/wxcam/default.nix
index 176d9a87aed0..32712d5b9b07 100644
--- a/pkgs/applications/video/wxcam/default.nix
+++ b/pkgs/applications/video/wxcam/default.nix
@@ -43,7 +43,7 @@ stdenv.mkDerivation rec {
     It supports both video4linux 1 and 2 drivers,
     so it should work on a very large number of devices.
     '';
-    homepage = http://wxcam.sourceforge.net/;
+    homepage = "http://wxcam.sourceforge.net/";
     license = licenses.gpl3Plus;
     maintainers = [ maintainers.AndersonTorres ];
     platforms = platforms.linux;
diff --git a/pkgs/applications/video/xawtv/default.nix b/pkgs/applications/video/xawtv/default.nix
index 676c218776c8..38cce053edfd 100644
--- a/pkgs/applications/video/xawtv/default.nix
+++ b/pkgs/applications/video/xawtv/default.nix
@@ -53,7 +53,7 @@ stdenv.mkDerivation rec {
   meta = {
     description = "TV application for Linux with apps and tools such as a teletext browser";
     license = stdenv.lib.licenses.gpl2;
-    homepage = https://www.kraxel.org/blog/linux/xawtv/;
+    homepage = "https://www.kraxel.org/blog/linux/xawtv/";
     maintainers = with stdenv.lib.maintainers; [ domenkozar ];
     platforms = stdenv.lib.platforms.linux;
   };
diff --git a/pkgs/applications/video/xine-ui/default.nix b/pkgs/applications/video/xine-ui/default.nix
index e92d73845911..f52db04928a4 100644
--- a/pkgs/applications/video/xine-ui/default.nix
+++ b/pkgs/applications/video/xine-ui/default.nix
@@ -26,7 +26,7 @@ stdenv.mkDerivation rec {
 #NIX_LDFLAGS = "-lXext -lgcc_s";
 
   meta = with stdenv.lib; {
-    homepage = http://www.xine-project.org/;
+    homepage = "http://www.xine-project.org/";
     description = "Xlib-based interface to Xine, a video player";
     platforms = platforms.linux;
     license = licenses.gpl2;
diff --git a/pkgs/applications/video/xscast/default.nix b/pkgs/applications/video/xscast/default.nix
index 3c4c59a0ee8f..dec8bdd67fce 100644
--- a/pkgs/applications/video/xscast/default.nix
+++ b/pkgs/applications/video/xscast/default.nix
@@ -27,7 +27,7 @@ stdenv.mkDerivation {
   '';
 
   meta = with stdenv.lib; {
-    homepage = https://github.com/KeyboardFire/xscast;
+    homepage = "https://github.com/KeyboardFire/xscast";
     license = licenses.mit;
     description = "Screencasts of windows with list of keystrokes overlayed";
     maintainers = with maintainers; [ ma27 ];
diff --git a/pkgs/applications/video/xvidcap/default.nix b/pkgs/applications/video/xvidcap/default.nix
index 6e07fbb105b6..20d4d84741cc 100644
--- a/pkgs/applications/video/xvidcap/default.nix
+++ b/pkgs/applications/video/xvidcap/default.nix
@@ -6,7 +6,7 @@ stdenv.mkDerivation {
   name = "xvidcap-1.1.7";
 
   src = fetchurl {
-    url = mirror://sourceforge/xvidcap/xvidcap-1.1.7.tar.gz;
+    url = "mirror://sourceforge/xvidcap/xvidcap-1.1.7.tar.gz";
     sha256 = "0p8rhpyhxgy37crf1xk1046z4p663jg7ww776jw92pld3s024ihm";
   };
 
@@ -23,7 +23,7 @@ stdenv.mkDerivation {
 
   meta = with stdenv.lib; {
     description = "Screencast video catpuring tool";
-    homepage = http://xvidcap.sourceforge.net/;
+    homepage = "http://xvidcap.sourceforge.net/";
     license = stdenv.lib.licenses.gpl2;
     platforms = platforms.linux;
   };
diff --git a/pkgs/applications/virtualization/8086tiny/default.nix b/pkgs/applications/virtualization/8086tiny/default.nix
index e16fcb84b055..464ea053cc4f 100644
--- a/pkgs/applications/virtualization/8086tiny/default.nix
+++ b/pkgs/applications/virtualization/8086tiny/default.nix
@@ -29,7 +29,7 @@ stdenv.mkDerivation {
 
     8086tiny is based on an IOCCC 2013 winning entry. In fact that is the "unobfuscated" version :)
     '';
-    homepage = http://www.megalith.co.uk/8086tiny/index.html;
+    homepage = "http://www.megalith.co.uk/8086tiny/index.html";
     license = stdenv.lib.licenses.mit;
     maintainers = [ stdenv.lib.maintainers.AndersonTorres ];
     platforms = stdenv.lib.platforms.linux;
diff --git a/pkgs/applications/virtualization/OVMF/default.nix b/pkgs/applications/virtualization/OVMF/default.nix
index e475c4ed78af..19ba8ced4973 100644
--- a/pkgs/applications/virtualization/OVMF/default.nix
+++ b/pkgs/applications/virtualization/OVMF/default.nix
@@ -55,8 +55,8 @@ edk2.mkDerivation projectDscPath {
 
   meta = {
     description = "Sample UEFI firmware for QEMU and KVM";
-    homepage = https://github.com/tianocore/tianocore.github.io/wiki/OVMF;
+    homepage = "https://github.com/tianocore/tianocore.github.io/wiki/OVMF";
     license = stdenv.lib.licenses.bsd2;
-    platforms = ["x86_64-linux" "i686-linux" "aarch64-linux"];
+    platforms = ["x86_64-linux" "i686-linux" "aarch64-linux" "x86_64-darwin"];
   };
 }
diff --git a/pkgs/applications/virtualization/aqemu/default.nix b/pkgs/applications/virtualization/aqemu/default.nix
index 02fb256b38ce..9177f2645028 100644
--- a/pkgs/applications/virtualization/aqemu/default.nix
+++ b/pkgs/applications/virtualization/aqemu/default.nix
@@ -1,7 +1,7 @@
-{ cmake, fetchFromGitHub, libvncserver, qemu, qtbase, stdenv
+{ mkDerivation, cmake, fetchFromGitHub, libvncserver, qemu, qtbase, stdenv
 }:
 
-stdenv.mkDerivation rec {
+mkDerivation rec {
   pname = "aqemu";
   version = "0.9.2";
 
@@ -18,7 +18,7 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "A virtual machine manager GUI for qemu";
-    homepage = https://github.com/tobimensch/aqemu;
+    homepage = "https://github.com/tobimensch/aqemu";
     license = licenses.gpl2;
     maintainers = with maintainers; [ hrdinka ];
     platforms = with platforms; linux;
diff --git a/pkgs/applications/virtualization/bochs/bochs-2.6.10-glibc-2.26.patch b/pkgs/applications/virtualization/bochs/bochs-2.6.11-glibc-2.26.patch
index e662913574db..e662913574db 100644
--- a/pkgs/applications/virtualization/bochs/bochs-2.6.10-glibc-2.26.patch
+++ b/pkgs/applications/virtualization/bochs/bochs-2.6.11-glibc-2.26.patch
diff --git a/pkgs/applications/virtualization/bochs/default.nix b/pkgs/applications/virtualization/bochs/default.nix
index f6e202ac4998..e9982d61391d 100644
--- a/pkgs/applications/virtualization/bochs/default.nix
+++ b/pkgs/applications/virtualization/bochs/default.nix
@@ -19,14 +19,14 @@ with stdenv.lib;
 stdenv.mkDerivation rec {
 
   pname = "bochs";
-  version = "2.6.10";
+  version = "2.6.11";
 
   src = fetchurl {
     url = "mirror://sourceforge/project/bochs/bochs/${version}/${pname}-${version}.tar.gz";
-    sha256 = "1c3mw4b8wrjf8z44fvhycs95j1wd1c0b4khcv63giiia5j5q0gvj";
+    sha256 = "0ql8q6y1k356li1g9gbvl21448mlxphxxi6kjb2b3pxvzd0pp2b3";
   };
 
-  patches = [ ./bochs-2.6.10-glibc-2.26.patch ];
+  patches = [ ./bochs-2.6.11-glibc-2.26.patch ./fix-build-smp.patch ];
 
   buildInputs =
   [ pkgconfig libtool gtk2 libGLU libGL readline libX11 libXpm docbook_xml_dtd_45 docbook_xsl ]
diff --git a/pkgs/applications/virtualization/bochs/fix-build-smp.patch b/pkgs/applications/virtualization/bochs/fix-build-smp.patch
new file mode 100644
index 000000000000..faa2acfa5129
--- /dev/null
+++ b/pkgs/applications/virtualization/bochs/fix-build-smp.patch
@@ -0,0 +1,21 @@
+Description: A fix for SMP-enable configurations
+Inspired in: https://sourceforge.net/p/bochs/code/13778/
+
+============
+diff -Naur bochs-2.6.11-old/bx_debug/dbg_main.cc bochs-2.6.11-new/bx_debug/dbg_main.cc
+--- bochs-2.6.11-old/bx_debug/dbg_main.cc	2019-12-20 04:57:59.818924000 -0300
++++ bochs-2.6.11-new/bx_debug/dbg_main.cc	2020-03-30 23:20:29.402195707 -0300
+@@ -1494,11 +1494,11 @@
+ {
+   char cpu_param_name[16];
+ 
+-  Bit32u index = BX_ITLB_INDEX_OF(laddr);
++  Bit32u index = BX_CPU(dbg_cpu)->ITLB.get_index_of(laddr);
+   sprintf(cpu_param_name, "ITLB.entry%d", index);
+   bx_dbg_show_param_command(cpu_param_name, 0);
+ 
+-  index = BX_DTLB_INDEX_OF(laddr, 0);
++  index = BX_CPU(dbg_cpu)->DTLB.get_index_of(laddr);
+   sprintf(cpu_param_name, "DTLB.entry%d", index);
+   bx_dbg_show_param_command(cpu_param_name, 0);
+ }
diff --git a/pkgs/applications/virtualization/charliecloud/default.nix b/pkgs/applications/virtualization/charliecloud/default.nix
index a0694b7efbe8..a316952a010d 100644
--- a/pkgs/applications/virtualization/charliecloud/default.nix
+++ b/pkgs/applications/virtualization/charliecloud/default.nix
@@ -39,7 +39,7 @@ stdenv.mkDerivation rec {
       while maintaining access to the performance and functionality already
       on offer.
     '';
-    homepage = https://hpc.github.io/charliecloud;
+    homepage = "https://hpc.github.io/charliecloud";
     license = stdenv.lib.licenses.asl20;
     maintainers = [ stdenv.lib.maintainers.bzizou ];
     platforms = stdenv.lib.platforms.linux;
diff --git a/pkgs/applications/virtualization/cntr/default.nix b/pkgs/applications/virtualization/cntr/default.nix
index f046e0e44b2c..e3ab1c6c2f80 100644
--- a/pkgs/applications/virtualization/cntr/default.nix
+++ b/pkgs/applications/virtualization/cntr/default.nix
@@ -15,7 +15,7 @@ rustPlatform.buildRustPackage rec {
 
   meta = with stdenv.lib; {
     description = "A container debugging tool based on FUSE";
-    homepage = https://github.com/Mic92/cntr;
+    homepage = "https://github.com/Mic92/cntr";
     license = licenses.mit;
     # aarch64 support will be fixed soon
     platforms = [ "x86_64-linux" ];
diff --git a/pkgs/applications/virtualization/conmon/default.nix b/pkgs/applications/virtualization/conmon/default.nix
index 802272c4b5d7..bfe9f1d34865 100644
--- a/pkgs/applications/virtualization/conmon/default.nix
+++ b/pkgs/applications/virtualization/conmon/default.nix
@@ -1,34 +1,33 @@
 { stdenv
 , fetchFromGitHub
-, pkgconfig
+, pkg-config
 , glib
 , glibc
 , systemd
 }:
 
 stdenv.mkDerivation rec {
-  project = "conmon";
-  name = "${project}-${version}";
-  version = "2.0.10";
+  pname = "conmon";
+  version = "2.0.15";
 
   src = fetchFromGitHub {
     owner = "containers";
-    repo = project;
+    repo = pname;
     rev = "v${version}";
-    sha256 = "194wach3yrkvll2xaj0x77hzlngk2016mflgnd5k8knjn2b9dgvl";
+    sha256 = "1fshcmnfqzbagzcrh5nxw7pi0dd60xpq47a2lzfghklqhl1h0b5i";
   };
 
-  nativeBuildInputs = [ pkgconfig ];
-  buildInputs = [ glib systemd ] ++
-    stdenv.lib.optionals (!stdenv.hostPlatform.isMusl) [ glibc glibc.static ];
+  nativeBuildInputs = [ pkg-config ];
+  buildInputs = [ glib systemd ]
+  ++ stdenv.lib.optionals (!stdenv.hostPlatform.isMusl) [ glibc glibc.static ];
 
-  installPhase = "install -Dm755 bin/${project} $out/bin/${project}";
+  installFlags = [ "PREFIX=$(out)" ];
 
   meta = with stdenv.lib; {
-    homepage = https://github.com/containers/conmon;
+    homepage = "https://github.com/containers/conmon";
     description = "An OCI container runtime monitor";
     license = licenses.asl20;
-    maintainers = with maintainers; [ vdemeester saschagrunert ];
+    maintainers = with maintainers; [ ] ++ teams.podman.members;
     platforms = platforms.linux;
   };
 }
diff --git a/pkgs/applications/virtualization/containerd/default.nix b/pkgs/applications/virtualization/containerd/default.nix
index 9e9e6657291b..86f4a7f099f5 100644
--- a/pkgs/applications/virtualization/containerd/default.nix
+++ b/pkgs/applications/virtualization/containerd/default.nix
@@ -4,20 +4,25 @@ with lib;
 
 buildGoPackage rec {
   pname = "containerd";
-  version = "1.2.6";
+  version = "1.2.13";
+  # git commit for the above version's tag
+  commit = "7ad184331fa3e55e52b890ea95e65ba581ae3429";
 
   src = fetchFromGitHub {
     owner = "containerd";
     repo = "containerd";
     rev = "v${version}";
-    sha256 = "0sp5mn5wd3xma4svm6hf67hyhiixzkzz6ijhyjkwdrc4alk81357";
+    sha256 = "1rac3iak3jpz57yarxc72bxgxvravwrl0j6s6w2nxrmh2m3kxqzn";
   };
 
   goPackagePath = "github.com/containerd/containerd";
-  outputs = [ "bin" "out" "man" ];
+  outputs = [ "out" "man" ];
 
-  buildInputs = [ btrfs-progs go-md2man utillinux ];
-  buildFlags = [ "VERSION=v${version}" ];
+  nativeBuildInputs = [ go-md2man utillinux ];
+
+  buildInputs = [ btrfs-progs ];
+
+  buildFlags = [ "VERSION=v${version}" "REVISION=${commit}" ];
 
   BUILDTAGS = []
     ++ optional (btrfs-progs == null) "no_btrfs";
@@ -25,12 +30,12 @@ buildGoPackage rec {
   buildPhase = ''
     cd go/src/${goPackagePath}
     patchShebangs .
-    make binaries
+    make binaries $buildFlags
   '';
 
   installPhase = ''
     for b in bin/*; do
-      install -Dm555 $b $bin/$b
+      install -Dm555 $b $out/$b
     done
 
     make man
@@ -45,7 +50,7 @@ buildGoPackage rec {
   '';
 
   meta = {
-    homepage = https://containerd.io/;
+    homepage = "https://containerd.io/";
     description = "A daemon to control runC";
     license = licenses.asl20;
     maintainers = with maintainers; [ offline vdemeester ];
diff --git a/pkgs/applications/virtualization/cri-o/default.nix b/pkgs/applications/virtualization/cri-o/default.nix
index 274468334ee4..4c3d9ffc937c 100644
--- a/pkgs/applications/virtualization/cri-o/default.nix
+++ b/pkgs/applications/virtualization/cri-o/default.nix
@@ -3,61 +3,76 @@
 , btrfs-progs
 , buildGoPackage
 , fetchFromGitHub
-, git
 , glibc
 , gpgme
+, installShellFiles
 , libapparmor
 , libassuan
 , libgpgerror
 , libseccomp
 , libselinux
 , lvm2
-, pkgconfig
-, which
+, pkg-config
 }:
 
-let
-  buildTags = "apparmor seccomp selinux containers_image_ostree_stub";
-in buildGoPackage rec {
-  project = "cri-o";
-  version = "1.17.0";
-  name = "${project}-${version}${flavor}";
+buildGoPackage rec {
+  pname = "cri-o";
+  version = "1.18.0";
+  name = "${pname}-${version}${flavor}";
 
-  goPackagePath = "github.com/${project}/${project}";
+  goPackagePath = "github.com/cri-o/cri-o";
 
   src = fetchFromGitHub {
     owner = "cri-o";
     repo = "cri-o";
     rev = "v${version}";
-    sha256 = "0xjmylf0ww23qqcg7kw008px6608r4qq6q57pfqis0661kp6f24j";
+    sha256 = "142flmv54pj48rjqkd26fbxrcbx2cv6pdmrc33jgyvn6r99zliah";
   };
 
-  outputs = [ "bin" "out" ];
-  nativeBuildInputs = [ git pkgconfig which ];
-  buildInputs = [ btrfs-progs gpgme libapparmor libassuan libgpgerror
-                 libseccomp libselinux lvm2 ]
-                ++ stdenv.lib.optionals (glibc != null) [ glibc glibc.static ];
+  outputs = [ "out" "man" ];
 
+  nativeBuildInputs = [ installShellFiles pkg-config ];
+
+  buildInputs = [
+    btrfs-progs
+    gpgme
+    libapparmor
+    libassuan
+    libgpgerror
+    libseccomp
+    libselinux
+    lvm2
+  ] ++ stdenv.lib.optionals (glibc != null) [ glibc glibc.static ];
+
+  BUILDTAGS = "apparmor seccomp selinux containers_image_ostree_stub";
   buildPhase = ''
     pushd go/src/${goPackagePath}
 
-    make BUILDTAGS='${buildTags}' \
-      bin/crio \
-      bin/crio-status \
-      bin/pinns
+    sed -i '/version.buildDate/d' Makefile
+
+    make binaries docs BUILDTAGS="$BUILDTAGS"
   '';
+
   installPhase = ''
-    install -Dm755 bin/crio $bin/bin/crio${flavor}
-    install -Dm755 bin/crio-status $bin/bin/crio-status${flavor}
-    install -Dm755 bin/pinns $bin/bin/pinns${flavor}
+    install -Dm755 bin/crio $out/bin/crio${flavor}
+    install -Dm755 bin/crio-status $out/bin/crio-status${flavor}
+    install -Dm755 bin/pinns $out/bin/pinns${flavor}
+
+    for shell in bash fish zsh; do
+      installShellCompletion --$shell completions/$shell/*
+    done
+
+    installManPage docs/*.[1-9]
   '';
 
   meta = with stdenv.lib; {
-    homepage = https://cri-o.io;
-    description = ''Open Container Initiative-based implementation of the
-                    Kubernetes Container Runtime Interface'';
+    homepage = "https://cri-o.io";
+    description = ''
+      Open Container Initiative-based implementation of the
+      Kubernetes Container Runtime Interface
+    '';
     license = licenses.asl20;
-    maintainers = with maintainers; [ saschagrunert ];
+    maintainers = with maintainers; [ ] ++ teams.podman.members;
     platforms = platforms.linux;
   };
 }
diff --git a/pkgs/applications/virtualization/crosvm/default.nix b/pkgs/applications/virtualization/crosvm/default.nix
index 091ea0fa1c54..38ce277bf3ff 100644
--- a/pkgs/applications/virtualization/crosvm/default.nix
+++ b/pkgs/applications/virtualization/crosvm/default.nix
@@ -1,5 +1,5 @@
-{ stdenv, rustPlatform, fetchgit, runCommand, symlinkJoin
-, pkgconfig, minijail, dtc, libusb1, libcap
+{ stdenv, lib, rustPlatform, fetchgit, runCommand, symlinkJoin
+, pkgconfig, minijail, dtc, libusb1, libcap, linux
 }:
 
 let
@@ -53,10 +53,7 @@ in
       ./default-seccomp-policy-dir.diff
     ];
 
-  # Delete this on next update; see #79975 for details
-  legacyCargoFetcher = true;
-
-    cargoSha256 = "1d7y07wkliy5qnlyx5zj6ni39avhs3s48sqgvwxm5g5zrahg2a85";
+    cargoSha256 = "0lhivwvdihslwp81i3sa5q88p5hr83bzkvklrcgf6x73arwk8kdz";
 
     nativeBuildInputs = [ pkgconfig ];
 
@@ -76,13 +73,17 @@ in
       cp seccomp/${arch}/* $out/share/policy/
     '';
 
+    CROSVM_CARGO_TEST_KERNEL_BINARY =
+      lib.optionalString (stdenv.buildPlatform == stdenv.hostPlatform)
+        "${linux}/${stdenv.hostPlatform.platform.kernelTarget}";
+
     passthru = {
       inherit adhdSrc;
       src = crosvmSrc;
       updateScript = ./update.py;
     };
 
-    meta = with stdenv.lib; {
+    meta = with lib; {
       description = "A secure virtual machine monitor for KVM";
       homepage = "https://chromium.googlesource.com/chromiumos/platform/crosvm/";
       maintainers = with maintainers; [ qyliss ];
diff --git a/pkgs/applications/virtualization/crosvm/update.py b/pkgs/applications/virtualization/crosvm/update.py
index 280d6ec18119..29e68b9f5790 100755
--- a/pkgs/applications/virtualization/crosvm/update.py
+++ b/pkgs/applications/virtualization/crosvm/update.py
@@ -17,7 +17,7 @@ components = ['chromiumos/platform/crosvm', 'chromiumos/third_party/adhd']
 
 git_root = 'https://chromium.googlesource.com/'
 manifest_versions = f'{git_root}chromiumos/manifest-versions'
-buildspecs_url = f'{manifest_versions}/+/refs/heads/master/paladin/buildspecs/'
+buildspecs_url = f'{manifest_versions}/+/refs/heads/master/full/buildspecs/'
 
 # CrOS version numbers look like this:
 # [<chrome-major-version>.]<tip-build>.<branch-build>.<branch-branch-build>
diff --git a/pkgs/applications/virtualization/crosvm/upstream-info.json b/pkgs/applications/virtualization/crosvm/upstream-info.json
index 690eca38bffb..bb9cc8841b4a 100644
--- a/pkgs/applications/virtualization/crosvm/upstream-info.json
+++ b/pkgs/applications/virtualization/crosvm/upstream-info.json
@@ -1,19 +1,23 @@
 {
-  "version": "79.12607.0.0-rc4",
+  "version": "81.12871.0.0-rc1",
   "components": {
     "chromiumos/platform/crosvm": {
       "url": "https://chromium.googlesource.com/chromiumos/platform/crosvm",
-      "rev": "cfb7db44eb9e5a0bca9a22bfb985252ef74ab251",
-      "date": "2019-10-17T23:22:08+00:00",
-      "sha256": "0gm1ggyzh9qfizm36jmh71c3anygxj1840cm94h71kzg9kiw0330",
-      "fetchSubmodules": false
+      "rev": "8b8c01e1ad31718932491e4aee63f56109a138e2",
+      "date": "2020-01-25T02:28:10+00:00",
+      "sha256": "1qmf1k06pwynh15c3nr9m6v90z2pkk930xniwvlvbvnazrk4rllg",
+      "fetchSubmodules": false,
+      "deepClone": false,
+      "leaveDotGit": false
     },
     "chromiumos/third_party/adhd": {
       "url": "https://chromium.googlesource.com/chromiumos/third_party/adhd",
-      "rev": "a8df1c52bde3bfd2aebc1d7adcd6f195eb212cb1",
-      "date": "2019-10-17T18:53:18+00:00",
-      "sha256": "1hyvnvwr5ka9zw4h7hhl6fpsfl2acp3zy4wr5qrw8s1cn8ljr9vy",
-      "fetchSubmodules": false
+      "rev": "f361d5b02623274723bff251dafa1e2a2887b013",
+      "date": "2020-01-23T18:37:46+00:00",
+      "sha256": "1p8iwjwgmcgmzri03ik2jaid8l0ch0bzn6z9z64dix1hlrvrlliw",
+      "fetchSubmodules": false,
+      "deepClone": false,
+      "leaveDotGit": false
     }
   }
 }
diff --git a/pkgs/applications/virtualization/crun/default.nix b/pkgs/applications/virtualization/crun/default.nix
index c82e29eb9a64..ded793449fc7 100644
--- a/pkgs/applications/virtualization/crun/default.nix
+++ b/pkgs/applications/virtualization/crun/default.nix
@@ -33,13 +33,13 @@ let
 in
 stdenv.mkDerivation rec {
   pname = "crun";
-  version = "0.12.2.1";
+  version = "0.13";
 
   src = fetchFromGitHub {
     owner = "containers";
     repo = pname;
     rev = version;
-    sha256 = "16hjkkr1fp542ycyp87pj626mzfrza5mcb82hhkp4a8m8bqmpzp4";
+    sha256 = "0c5acf916yv2zv3xjvxk1sa4h3n2wljc5hw61php7q37pbjc1ppn";
     fetchSubmodules = true;
   };
 
@@ -64,8 +64,9 @@ stdenv.mkDerivation rec {
 
   meta = with lib; {
     description = "A fast and lightweight fully featured OCI runtime and C library for running containers";
-    license = licenses.gpl3;
+    license = licenses.gpl2Plus;
     platforms = platforms.linux;
     inherit (src.meta) homepage;
+    maintainers = with maintainers; [ ] ++ teams.podman.members;
   };
 }
diff --git a/pkgs/applications/virtualization/docker-compose/default.nix b/pkgs/applications/virtualization/docker-compose/default.nix
index 0bd5d69466b0..14c5ec0a4161 100644
--- a/pkgs/applications/virtualization/docker-compose/default.nix
+++ b/pkgs/applications/virtualization/docker-compose/default.nix
@@ -7,12 +7,12 @@
 }:
 
 buildPythonApplication rec {
-  version = "1.25.4";
+  version = "1.25.5";
   pname = "docker-compose";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "1ww8ckpj3n5jdg63qvmiqx3gk0fsrnynnnqj17fppymbwjzf5fps";
+    sha256 = "1ijhg93zs3lswkljnm0rhww7gdy0g94psvsya2741prz2zcbcbks";
   };
 
   # lots of networking and other fails
@@ -41,7 +41,7 @@ buildPythonApplication rec {
   '';
 
   meta = with stdenv.lib; {
-    homepage = https://docs.docker.com/compose/;
+    homepage = "https://docs.docker.com/compose/";
     description = "Multi-container orchestration for Docker";
     license = licenses.asl20;
     maintainers = with maintainers; [ Frostman ];
diff --git a/pkgs/applications/virtualization/docker-slim/default.nix b/pkgs/applications/virtualization/docker-slim/default.nix
index 8e0bd8e54ed2..996d52bacab2 100644
--- a/pkgs/applications/virtualization/docker-slim/default.nix
+++ b/pkgs/applications/virtualization/docker-slim/default.nix
@@ -6,7 +6,7 @@
 
 buildGoPackage rec {
   pname = "docker-slim";
-  version = "1.27.0";
+  version = "1.29.0";
 
   goPackagePath = "github.com/docker-slim/docker-slim";
 
@@ -14,7 +14,7 @@ buildGoPackage rec {
     owner = "docker-slim";
     repo = "docker-slim";
     rev = version;
-    sha256 = "1pd9sz981qgr5lx6ikrhdp0n21nyrnpjpnyl8i4r2jx35zr8b5q8";
+    sha256 = "0qfjmwqxgghp9pqj4s2z71cmn8mi1l6655z6nbhh72yqaxh5a6ia";
   };
 
   subPackages = [ "cmd/docker-slim" "cmd/docker-slim-sensor" ];
@@ -33,7 +33,7 @@ buildGoPackage rec {
   # docker-slim tries to create its state dir next to the binary (inside the nix
   # store), so we set it to use the working directory at the time of invocation
   postInstall = ''
-    wrapProgram "$bin/bin/docker-slim" --add-flags '--state-path "$(pwd)"'
+    wrapProgram "$out/bin/docker-slim" --add-flags '--state-path "$(pwd)"'
   '';
 
   meta = with stdenv.lib; {
diff --git a/pkgs/applications/virtualization/docker/default.nix b/pkgs/applications/virtualization/docker/default.nix
index 2154daa2a2c9..f1b3475d9bca 100644
--- a/pkgs/applications/virtualization/docker/default.nix
+++ b/pkgs/applications/virtualization/docker/default.nix
@@ -1,7 +1,7 @@
 { stdenv, lib, fetchFromGitHub, makeWrapper, removeReferencesTo, pkgconfig
 , go-md2man, go, containerd, runc, docker-proxy, tini, libtool
 , sqlite, iproute, lvm2, systemd
-, btrfs-progs, iptables, e2fsprogs, xz, utillinux, xfsprogs
+, btrfs-progs, iptables, e2fsprogs, xz, utillinux, xfsprogs, git
 , procps, libseccomp
 }:
 
@@ -123,7 +123,7 @@ rec {
 
     outputs = ["out" "man"];
 
-    extraPath = optionals (stdenv.isLinux) (makeBinPath [ iproute iptables e2fsprogs xz xfsprogs procps utillinux ]);
+    extraPath = optionals (stdenv.isLinux) (makeBinPath [ iproute iptables e2fsprogs xz xfsprogs procps utillinux git ]);
 
     installPhase = optionalString (stdenv.isLinux) ''
       install -Dm755 ./components/engine/bundles/dynbinary-daemon/dockerd $out/libexec/docker/dockerd
@@ -182,7 +182,7 @@ rec {
     '';
 
     meta = {
-      homepage = https://www.docker.com/;
+      homepage = "https://www.docker.com/";
       description = "An open source project to pack, ship and run any application as a lightweight container";
       license = licenses.asl20;
       maintainers = with maintainers; [ nequissimus offline tailhook vdemeester periklis ];
@@ -206,14 +206,14 @@ rec {
   };
 
   docker_19_03 = makeOverridable dockerGen {
-    version = "19.03.6";
-    rev = "369ce74a3ce86a392e39e45d3960ce970fdfac97";
-    sha256 = "0myvh7p9h0j4xc35zhcvp8cqxd3r6p6jx5zxl5rzh14m6lgzmkh0";
-    runcRev = "dc9208a3303feef5b3839f4323d9beb36df0a9dd";
+    version = "19.03.8";
+    rev = "afacb8b7f0d8d4f9d2a8e8736e9c993e672b41f3";
+    sha256 = "15iq16rlnkw78lvapcfpbnsnxhdjbvfvgzg3xzxhpdg1dmq40b6j";
+    runcRev = "dc9208a3303feef5b3839f4323d9beb36df0a9dd"; # v1.0.0-rc10
     runcSha256 = "0pi3rvj585997m4z9ljkxz2z9yxf9p2jr0pmqbqrc7bc95f5hagk";
-    containerdRev = "35bd7a5f69c13e1563af8a93431411cd9ecf5021";
-    containerdSha256 = "076355bkbdsgsxryhhr9gbpyypdx8gg149lylyd6q5ig98p179ap";
-    tiniRev = "fec3683b971d9c3ef73f284f176672c44b448662";
+    containerdRev = "7ad184331fa3e55e52b890ea95e65ba581ae3429"; # v1.2.13
+    containerdSha256 = "1rac3iak3jpz57yarxc72bxgxvravwrl0j6s6w2nxrmh2m3kxqzn";
+    tiniRev = "fec3683b971d9c3ef73f284f176672c44b448662"; # v0.18.0
     tiniSha256 = "1h20i3wwlbd8x4jr2gz68hgklh0lb0jj7y5xk1wvr8y58fip1rdn";
   };
 }
diff --git a/pkgs/applications/virtualization/docker/gc.nix b/pkgs/applications/virtualization/docker/gc.nix
index dcac628e3676..08cfba59918f 100644
--- a/pkgs/applications/virtualization/docker/gc.nix
+++ b/pkgs/applications/virtualization/docker/gc.nix
@@ -26,7 +26,7 @@ stdenv.mkDerivation rec {
   meta = {
     description = "Docker garbage collection of containers and images";
     license = licenses.asl20;
-    homepage = https://github.com/spotify/docker-gc;
+    homepage = "https://github.com/spotify/docker-gc";
     maintainers = with maintainers; [offline];
     platforms = docker.meta.platforms;
   };
diff --git a/pkgs/applications/virtualization/docker/proxy.nix b/pkgs/applications/virtualization/docker/proxy.nix
index 3b2e1f45ae64..cb3518d7d3da 100644
--- a/pkgs/applications/virtualization/docker/proxy.nix
+++ b/pkgs/applications/virtualization/docker/proxy.nix
@@ -16,13 +16,13 @@ buildGoPackage rec {
   goDeps = null;
 
   installPhase = ''
-    install -m755 -D ./go/bin/proxy $bin/bin/docker-proxy
+    install -m755 -D ./go/bin/proxy $out/bin/docker-proxy
   '';
 
   meta = with stdenv.lib; {
     description = "Docker proxy binary to forward traffic between host and containers";
     license = licenses.asl20;
-    homepage = https://github.com/docker/libnetwork;
+    homepage = "https://github.com/docker/libnetwork";
     maintainers = with maintainers; [vdemeester];
     platforms = platforms.linux;
   };
diff --git a/pkgs/applications/virtualization/driver/win-pvdrivers/default.nix b/pkgs/applications/virtualization/driver/win-pvdrivers/default.nix
index 069d5836a42b..faa1076e2998 100644
--- a/pkgs/applications/virtualization/driver/win-pvdrivers/default.nix
+++ b/pkgs/applications/virtualization/driver/win-pvdrivers/default.nix
@@ -22,7 +22,7 @@ stdenv.mkDerivation  {
 
   meta = with stdenv.lib; {
     description = "Xen Subproject: Windows PV Driver";
-    homepage = http://xenproject.org/downloads/windows-pv-drivers.html;
+    homepage = "http://xenproject.org/downloads/windows-pv-drivers.html";
     maintainers = [ maintainers.tstrobel ];
     platforms = platforms.linux;
     license = licenses.bsd3;
diff --git a/pkgs/applications/virtualization/driver/win-qemu/default.nix b/pkgs/applications/virtualization/driver/win-qemu/default.nix
index 1fa3e76d18fd..97a1f0b3039b 100644
--- a/pkgs/applications/virtualization/driver/win-qemu/default.nix
+++ b/pkgs/applications/virtualization/driver/win-qemu/default.nix
@@ -30,7 +30,7 @@ stdenv.mkDerivation  {
 
   meta = with stdenv.lib; {
     description = "Windows QEMU Drivers";
-    homepage = https://fedoraproject.org/wiki/Windows_Virtio_Drivers;
+    homepage = "https://fedoraproject.org/wiki/Windows_Virtio_Drivers";
     maintainers = [ maintainers.tstrobel ];
     platforms = platforms.linux;
     license = licenses.gpl2;
diff --git a/pkgs/applications/virtualization/driver/win-signed-gplpv-drivers/default.nix b/pkgs/applications/virtualization/driver/win-signed-gplpv-drivers/default.nix
index 39ca93d4e1a8..c4684a20914f 100644
--- a/pkgs/applications/virtualization/driver/win-signed-gplpv-drivers/default.nix
+++ b/pkgs/applications/virtualization/driver/win-signed-gplpv-drivers/default.nix
@@ -38,7 +38,7 @@ stdenv.mkDerivation  {
       The drivers are signed by Univention with a Software Publishers
       Certificate obtained from the VeriSign CA.
       '';
-    homepage = http://wiki.univention.de/index.php?title=Installing-signed-GPLPV-drivers;
+    homepage = "http://wiki.univention.de/index.php?title=Installing-signed-GPLPV-drivers";
     maintainers = [ maintainers.tstrobel ];
     platforms = platforms.linux;
     license = licenses.gpl2;
diff --git a/pkgs/applications/virtualization/driver/win-spice/default.nix b/pkgs/applications/virtualization/driver/win-spice/default.nix
index 2b2d8568a5b7..f327512b128e 100644
--- a/pkgs/applications/virtualization/driver/win-spice/default.nix
+++ b/pkgs/applications/virtualization/driver/win-spice/default.nix
@@ -62,7 +62,7 @@ stdenv.mkDerivation  {
 
   meta = with stdenv.lib; {
     description = "Windows SPICE Drivers";
-    homepage = https://www.spice-space.org/;
+    homepage = "https://www.spice-space.org/";
     license = [ licenses.asl20 ]; # See https://github.com/vrozenfe/qxl-dod
     maintainers = [ maintainers.tstrobel ];
     platforms = platforms.linux;
diff --git a/pkgs/applications/virtualization/driver/win-virtio/default.nix b/pkgs/applications/virtualization/driver/win-virtio/default.nix
index 351353ceb96e..f8a52f5b898d 100644
--- a/pkgs/applications/virtualization/driver/win-virtio/default.nix
+++ b/pkgs/applications/virtualization/driver/win-virtio/default.nix
@@ -29,7 +29,7 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "Windows VirtIO Drivers";
-    homepage = https://fedoraproject.org/wiki/Windows_Virtio_Drivers;
+    homepage = "https://fedoraproject.org/wiki/Windows_Virtio_Drivers";
     maintainers = [ maintainers.tstrobel ];
     platforms = platforms.linux;
   };
diff --git a/pkgs/applications/virtualization/firecracker/default.nix b/pkgs/applications/virtualization/firecracker/default.nix
index 220d26c116f0..cb8cc7ee1de2 100644
--- a/pkgs/applications/virtualization/firecracker/default.nix
+++ b/pkgs/applications/virtualization/firecracker/default.nix
@@ -53,7 +53,7 @@ stdenv.mkDerivation {
 
   meta = with stdenv.lib; {
     description = "Secure, fast, minimal micro-container virtualization";
-    homepage    = http://firecracker-microvm.io;
+    homepage    = "http://firecracker-microvm.io";
     license     = licenses.asl20;
     platforms   = [ "x86_64-linux" "aarch64-linux" ];
     maintainers = with maintainers; [ thoughtpolice ];
diff --git a/pkgs/applications/virtualization/firectl/default.nix b/pkgs/applications/virtualization/firectl/default.nix
index 1f74318f2dde..f91cc6d5ed3e 100644
--- a/pkgs/applications/virtualization/firectl/default.nix
+++ b/pkgs/applications/virtualization/firectl/default.nix
@@ -15,7 +15,7 @@ buildGoModule rec {
 
   meta = with stdenv.lib; {
     description = "A command-line tool to run Firecracker microVMs";
-    homepage = https://github.com/firecracker-microvm/firectl;
+    homepage = "https://github.com/firecracker-microvm/firectl";
     license = licenses.asl20;
     platforms = platforms.linux;
     maintainers = with maintainers; [ xrelkd ];
diff --git a/pkgs/applications/virtualization/gvisor/containerd-shim.nix b/pkgs/applications/virtualization/gvisor/containerd-shim.nix
index 0161a117def3..702aeaded3e9 100644
--- a/pkgs/applications/virtualization/gvisor/containerd-shim.nix
+++ b/pkgs/applications/virtualization/gvisor/containerd-shim.nix
@@ -1,4 +1,4 @@
-{ lib, fetchFromGitHub, buildGoModule, go-bindata }:
+{ lib, fetchFromGitHub, buildGoModule }:
 
 buildGoModule rec {
   name = "gvisor-containerd-shim-${version}";
@@ -28,7 +28,7 @@ buildGoModule rec {
 
   meta = with lib; {
     description = "containerd shim for gVisor";
-    homepage    = https://github.com/google/gvisor-containerd-shim;
+    homepage    = "https://github.com/google/gvisor-containerd-shim";
     license     = licenses.asl20;
     maintainers = with maintainers; [ andrew-d ];
     platforms   = [ "x86_64-linux" ];
diff --git a/pkgs/applications/virtualization/gvisor/default.nix b/pkgs/applications/virtualization/gvisor/default.nix
index 3d0ae35f5608..e157ca825af0 100644
--- a/pkgs/applications/virtualization/gvisor/default.nix
+++ b/pkgs/applications/virtualization/gvisor/default.nix
@@ -93,7 +93,7 @@ in buildBazelPackage rec {
 
   meta = with stdenv.lib; {
     description = "Container Runtime Sandbox";
-    homepage = https://github.com/google/gvisor;
+    homepage = "https://github.com/google/gvisor";
     license = licenses.asl20;
     maintainers = with maintainers; [ andrew-d ];
     platforms = [ "x86_64-linux" ];
diff --git a/pkgs/applications/virtualization/hercules/default.nix b/pkgs/applications/virtualization/hercules/default.nix
new file mode 100644
index 000000000000..901e2f0b6ec0
--- /dev/null
+++ b/pkgs/applications/virtualization/hercules/default.nix
@@ -0,0 +1,18 @@
+{ stdenv, fetchurl }:
+
+stdenv.mkDerivation rec {
+  pname = "hercules";
+  version = "3.13";
+
+  src = fetchurl {
+    url = "http://downloads.hercules-390.eu/${pname}-${version}.tar.gz";
+    sha256 = "0zg6rwz8ib4alibf8lygi8qn69xx8n92kbi8b3jhi1ymb32mf349";
+  };
+
+  meta = with stdenv.lib; {
+    description = "IBM mainframe emulator";
+    homepage = "http://www.hercules-390.eu";
+    license = licenses.qpl;
+    maintainers = [ maintainers.dkudriavtsev ];
+  };
+}
diff --git a/pkgs/applications/virtualization/lkl/default.nix b/pkgs/applications/virtualization/lkl/default.nix
index d56318555e5e..7a6ccc67bb50 100644
--- a/pkgs/applications/virtualization/lkl/default.nix
+++ b/pkgs/applications/virtualization/lkl/default.nix
@@ -60,7 +60,7 @@ stdenv.mkDerivation rec {
       extensively as possible with minimal effort and reduced maintenance
       overhead
     '';
-    homepage    = https://github.com/lkl/linux/;
+    homepage    = "https://github.com/lkl/linux/";
     platforms   = [ "x86_64-linux" "aarch64-linux" "armv7l-linux" "armv6l-linux" ]; # Darwin probably works too but I haven't tested it
     license     = licenses.gpl2;
     maintainers = with maintainers; [ copumpkin ];
diff --git a/pkgs/applications/virtualization/looking-glass-client/default.nix b/pkgs/applications/virtualization/looking-glass-client/default.nix
index 0f53a5c4f14d..a0ec55dd895b 100644
--- a/pkgs/applications/virtualization/looking-glass-client/default.nix
+++ b/pkgs/applications/virtualization/looking-glass-client/default.nix
@@ -41,7 +41,7 @@ stdenv.mkDerivation rec {
       step required to move away from dual booting with other operating systems
       for legacy programs that require high performance graphics.
     '';
-    homepage = https://looking-glass.hostfission.com/;
+    homepage = "https://looking-glass.hostfission.com/";
     license = licenses.gpl2Plus;
     maintainers = [ maintainers.alexbakker ];
     platforms = [ "x86_64-linux" ];
diff --git a/pkgs/applications/virtualization/nvidia-docker/default.nix b/pkgs/applications/virtualization/nvidia-docker/default.nix
index e11ca04f6b36..b56b88cf87ef 100644
--- a/pkgs/applications/virtualization/nvidia-docker/default.nix
+++ b/pkgs/applications/virtualization/nvidia-docker/default.nix
@@ -76,7 +76,7 @@ in stdenv.mkDerivation rec {
   '';
 
   meta = {
-    homepage = https://github.com/NVIDIA/nvidia-docker;
+    homepage = "https://github.com/NVIDIA/nvidia-docker";
     description = "NVIDIA container runtime for Docker";
     license = licenses.bsd3;
     platforms = platforms.linux;
diff --git a/pkgs/applications/virtualization/nvidia-docker/libnvc-ldconfig-and-path-fixes.patch b/pkgs/applications/virtualization/nvidia-docker/libnvc-ldconfig-and-path-fixes.patch
index 043c1efade8a..9ae8d6b5e756 100644
--- a/pkgs/applications/virtualization/nvidia-docker/libnvc-ldconfig-and-path-fixes.patch
+++ b/pkgs/applications/virtualization/nvidia-docker/libnvc-ldconfig-and-path-fixes.patch
@@ -71,10 +71,10 @@ index 33d78dd..2b087db 100644
  
  #endif /* HEADER_LDCACHE_H */
 diff --git a/src/nvc_info.c b/src/nvc_info.c
-index cc96542..3fe7612 100644
+index 30e3cfd..6d12a50 100644
 --- a/src/nvc_info.c
 +++ b/src/nvc_info.c
-@@ -163,15 +163,13 @@ find_library_paths(struct error *err, struct nvc_driver_info *info, const char *
+@@ -167,15 +167,13 @@ find_library_paths(struct error *err, struct nvc_driver_info *info, const char *
          if (path_resolve_full(err, path, root, ldcache) < 0)
                  return (-1);
          ldcache_init(&ld, err, path);
@@ -91,7 +91,7 @@ index cc96542..3fe7612 100644
                  goto fail;
  
          info->nlibs32 = size;
-@@ -179,13 +177,11 @@ find_library_paths(struct error *err, struct nvc_driver_info *info, const char *
+@@ -183,13 +181,11 @@ find_library_paths(struct error *err, struct nvc_driver_info *info, const char *
          if (info->libs32 == NULL)
                  goto fail;
          if (ldcache_resolve(&ld, LIB32_ARCH, root, libs,
@@ -106,7 +106,7 @@ index cc96542..3fe7612 100644
          return (rv);
  }
  
-@@ -199,7 +195,7 @@ find_binary_paths(struct error *err, struct nvc_driver_info *info, const char *r
+@@ -203,7 +199,7 @@ find_binary_paths(struct error *err, struct nvc_driver_info *info, const char *r
          char path[PATH_MAX];
          int rv = -1;
  
@@ -116,10 +116,10 @@ index cc96542..3fe7612 100644
                  return (-1);
          }
 diff --git a/src/nvc_ldcache.c b/src/nvc_ldcache.c
-index d41a24d..65b7878 100644
+index 6ff380f..cbe6a69 100644
 --- a/src/nvc_ldcache.c
 +++ b/src/nvc_ldcache.c
-@@ -331,7 +331,7 @@ nvc_ldcache_update(struct nvc_context *ctx, const struct nvc_container *cnt)
+@@ -340,7 +340,7 @@ nvc_ldcache_update(struct nvc_context *ctx, const struct nvc_container *cnt)
          if (validate_args(ctx, cnt != NULL) < 0)
                  return (-1);
  
diff --git a/pkgs/applications/virtualization/nvidia-docker/libnvc.nix b/pkgs/applications/virtualization/nvidia-docker/libnvc.nix
index 71c02ab4de50..5b97d7fffa29 100644
--- a/pkgs/applications/virtualization/nvidia-docker/libnvc.nix
+++ b/pkgs/applications/virtualization/nvidia-docker/libnvc.nix
@@ -1,4 +1,4 @@
-{ stdenv, lib, fetchFromGitHub, libelf, libcap, libseccomp }:
+{ stdenv, lib, fetchFromGitHub, pkgconfig, libelf, libcap, libseccomp }:
 
 with lib; let
 
@@ -13,13 +13,13 @@ with lib; let
 
 in stdenv.mkDerivation rec {
   pname = "libnvidia-container";
-  version = "1.0.0";
+  version = "1.0.6";
 
   src = fetchFromGitHub {
     owner = "NVIDIA";
     repo = "libnvidia-container";
     rev = "v${version}";
-    sha256 = "1ws6mfsbgxhzlb5w1r8qqg2arvxkr21n59i4cqsyz3h5jsqsflbw";
+    sha256 = "1pnpc9knwh8d1zqb28zc3spkjc00w0z10vd3jna8ksvpl35jl7w3";
   };
 
   # locations of nvidia-driver libraries are not resolved via ldconfig which
@@ -42,10 +42,12 @@ in stdenv.mkDerivation rec {
     touch deps/src/nvidia-modprobe-${modp-ver}/.download_stamp
   '';
 
+  nativeBuildInputs = [ pkgconfig ];
+
   buildInputs = [ libelf libcap libseccomp ];
 
   meta = {
-    homepage = https://github.com/NVIDIA/libnvidia-container;
+    homepage = "https://github.com/NVIDIA/libnvidia-container";
     description = "NVIDIA container runtime library";
     license = licenses.bsd3;
     platforms = platforms.linux;
diff --git a/pkgs/applications/virtualization/open-vm-tools/default.nix b/pkgs/applications/virtualization/open-vm-tools/default.nix
index 87ec2e52f13a..84f74ef6dd03 100644
--- a/pkgs/applications/virtualization/open-vm-tools/default.nix
+++ b/pkgs/applications/virtualization/open-vm-tools/default.nix
@@ -63,7 +63,7 @@ stdenv.mkDerivation rec {
   '';
 
   meta = with stdenv.lib; {
-    homepage = https://github.com/vmware/open-vm-tools;
+    homepage = "https://github.com/vmware/open-vm-tools";
     description = "Set of tools for VMWare guests to improve host-guest interaction";
     longDescription = ''
       A set of services and modules that enable several features in VMware products for
diff --git a/pkgs/applications/virtualization/podman/default.nix b/pkgs/applications/virtualization/podman/default.nix
index f4a810687812..4a9fa0787521 100644
--- a/pkgs/applications/virtualization/podman/default.nix
+++ b/pkgs/applications/virtualization/podman/default.nix
@@ -1,24 +1,33 @@
-{ stdenv, fetchFromGitHub, pkgconfig, installShellFiles
-, buildGoPackage, gpgme, lvm2, btrfs-progs, libseccomp, systemd
+{ stdenv
+, fetchFromGitHub
+, pkg-config
+, installShellFiles
+, buildGoPackage
+, gpgme
+, lvm2
+, btrfs-progs
+, libseccomp
+, systemd
 , go-md2man
+, nixosTests
 }:
 
 buildGoPackage rec {
   pname = "podman";
-  version = "1.8.0";
+  version = "1.9.1";
 
   src = fetchFromGitHub {
-    owner  = "containers";
-    repo   = "libpod";
-    rev    = "v${version}";
-    sha256 = "1rbapks11xg0vgl9m322mijirx0wm6c4yav8aw2y41wsr7qd7db4";
+    owner = "containers";
+    repo = "libpod";
+    rev = "v${version}";
+    sha256 = "0dr5vd52fnjwx3zn2nj2nlvkbvh5bg579nf3qw8swrn8i1jwxd6j";
   };
 
   goPackagePath = "github.com/containers/libpod";
 
-  outputs = [ "bin" "out" "man" ];
+  outputs = [ "out" "man" ];
 
-  nativeBuildInputs = [ pkgconfig go-md2man installShellFiles ];
+  nativeBuildInputs = [ pkg-config go-md2man installShellFiles ];
 
   buildInputs = stdenv.lib.optionals stdenv.isLinux [ btrfs-progs libseccomp gpgme lvm2 systemd ];
 
@@ -31,17 +40,20 @@ buildGoPackage rec {
   '';
 
   installPhase = ''
-    install -Dm555 bin/podman $bin/bin/podman
+    install -Dm555 bin/podman $out/bin/podman
     installShellCompletion --bash completions/bash/podman
     installShellCompletion --zsh completions/zsh/_podman
     MANDIR=$man/share/man make install.man
   '';
 
+  passthru.tests.podman = nixosTests.podman;
+
   meta = with stdenv.lib; {
-    homepage = https://podman.io/;
+    homepage = "https://podman.io/";
     description = "A program for managing pods, containers and container images";
     license = licenses.asl20;
-    maintainers = with maintainers; [ vdemeester saschagrunert marsam ];
+    maintainers = with maintainers; [ marsam ] ++ teams.podman.members;
     platforms = platforms.unix;
+    broken = stdenv.isDarwin;
   };
 }
diff --git a/pkgs/applications/virtualization/podman/wrapper.nix b/pkgs/applications/virtualization/podman/wrapper.nix
new file mode 100644
index 000000000000..99233696b3ed
--- /dev/null
+++ b/pkgs/applications/virtualization/podman/wrapper.nix
@@ -0,0 +1,52 @@
+{ podman-unwrapped
+, runCommand
+, makeWrapper
+, lib
+, extraPackages ? []
+, podman # Docker compat
+, runc # Default container runtime
+, crun # Default container runtime (cgroups v2)
+, conmon # Container runtime monitor
+, slirp4netns # User-mode networking for unprivileged namespaces
+, fuse-overlayfs # CoW for images, much faster than default vfs
+, utillinux # nsenter
+, cni-plugins
+, iptables
+}:
+
+let
+  podman = podman-unwrapped;
+
+  binPath = lib.makeBinPath ([
+    runc
+    crun
+    conmon
+    slirp4netns
+    fuse-overlayfs
+    utillinux
+    iptables
+  ] ++ extraPackages);
+
+in runCommand podman.name {
+  name = "${podman.pname}-wrapper-${podman.version}";
+  inherit (podman) pname version;
+
+  meta = builtins.removeAttrs podman.meta [ "outputsToInstall" ];
+
+  outputs = [
+    "out"
+    "man"
+  ];
+
+  nativeBuildInputs = [
+    makeWrapper
+  ];
+
+} ''
+  ln -s ${podman.man} $man
+
+  mkdir -p $out/bin
+  ln -s ${podman-unwrapped}/share $out/share
+  makeWrapper ${podman-unwrapped}/bin/podman $out/bin/podman \
+    --prefix PATH : ${binPath}
+''
diff --git a/pkgs/applications/virtualization/qboot/default.nix b/pkgs/applications/virtualization/qboot/default.nix
index 0678591fc2a3..d770308239f8 100644
--- a/pkgs/applications/virtualization/qboot/default.nix
+++ b/pkgs/applications/virtualization/qboot/default.nix
@@ -19,7 +19,7 @@ stdenv.mkDerivation {
 
   meta = {
     description = "A simple x86 firmware for booting Linux";
-    homepage = https://github.com/bonzini/qboot;
+    homepage = "https://github.com/bonzini/qboot";
     license = stdenv.lib.licenses.gpl2;
     maintainers = with stdenv.lib.maintainers; [ tstrobel ];
     platforms = ["x86_64-linux" "i686-linux"];
diff --git a/pkgs/applications/virtualization/qemu/default.nix b/pkgs/applications/virtualization/qemu/default.nix
index 203ee1c7cc0e..d6611e20a9c1 100644
--- a/pkgs/applications/virtualization/qemu/default.nix
+++ b/pkgs/applications/virtualization/qemu/default.nix
@@ -118,16 +118,16 @@ stdenv.mkDerivation rec {
   ] ++ optional nixosTestRunner ./force-uid0-on-9p.patch
     ++ optionals stdenv.hostPlatform.isMusl [
     (fetchpatch {
-      url = https://raw.githubusercontent.com/alpinelinux/aports/2bb133986e8fa90e2e76d53369f03861a87a74ef/main/qemu/xattr_size_max.patch;
+      url = "https://raw.githubusercontent.com/alpinelinux/aports/2bb133986e8fa90e2e76d53369f03861a87a74ef/main/qemu/xattr_size_max.patch";
       sha256 = "1xfdjs1jlvs99hpf670yianb8c3qz2ars8syzyz8f2c2cp5y4bxb";
     })
     (fetchpatch {
-      url = https://raw.githubusercontent.com/alpinelinux/aports/2bb133986e8fa90e2e76d53369f03861a87a74ef/main/qemu/musl-F_SHLCK-and-F_EXLCK.patch;
+      url = "https://raw.githubusercontent.com/alpinelinux/aports/2bb133986e8fa90e2e76d53369f03861a87a74ef/main/qemu/musl-F_SHLCK-and-F_EXLCK.patch";
       sha256 = "1gm67v41gw6apzgz7jr3zv9z80wvkv0jaxd2w4d16hmipa8bhs0k";
     })
     ./sigrtminmax.patch
     (fetchpatch {
-      url = https://raw.githubusercontent.com/alpinelinux/aports/2bb133986e8fa90e2e76d53369f03861a87a74ef/main/qemu/fix-sigevent-and-sigval_t.patch;
+      url = "https://raw.githubusercontent.com/alpinelinux/aports/2bb133986e8fa90e2e76d53369f03861a87a74ef/main/qemu/fix-sigevent-and-sigval_t.patch";
       sha256 = "0wk0rrcqywhrw9hygy6ap0lfg314m9z1wr2hn8338r5gfcw75mav";
     })
   ];
@@ -187,7 +187,7 @@ stdenv.mkDerivation rec {
   };
 
   meta = with stdenv.lib; {
-    homepage = http://www.qemu.org/;
+    homepage = "http://www.qemu.org/";
     description = "A generic and open source machine emulator and virtualizer";
     license = licenses.gpl2Plus;
     maintainers = with maintainers; [ eelco ];
diff --git a/pkgs/applications/virtualization/qtemu/default.nix b/pkgs/applications/virtualization/qtemu/default.nix
new file mode 100644
index 000000000000..29f0004be830
--- /dev/null
+++ b/pkgs/applications/virtualization/qtemu/default.nix
@@ -0,0 +1,45 @@
+{ stdenv, mkDerivation, fetchFromGitLab, pkgconfig, qmake, qtbase, qemu, makeWrapper }:
+
+mkDerivation rec {
+  pname = "qtemu";
+  version = "2.1";
+
+  src = fetchFromGitLab {
+    owner = "qtemu";
+    repo = "gui";
+    rev = version;
+    sha256 = "1555178mkfw0gwmw8bsxmg4339j2ifp0yb4b2f39nxh9hwshg07j";
+  };
+
+  nativeBuildInputs = [
+    qmake
+    pkgconfig
+  ];
+
+  buildInputs = [
+    qtbase
+    qemu
+  ];
+
+  installPhase = ''
+    runHook preInstall
+
+    # upstream lacks an install method
+    install -D -t $out/share/applications qtemu.desktop
+    install -D -t $out/share/pixmaps qtemu.png
+    install -D -t $out/bin qtemu
+
+    # make sure that the qemu-* executables are found
+    wrapProgram $out/bin/qtemu --prefix PATH : ${stdenv.lib.makeBinPath [ qemu ]}
+
+    runHook postInstall
+  '';
+
+  meta = with stdenv.lib; {
+    description = "Qt-based front-end for QEMU emulator";
+    homepage = "https://qtemu.org";
+    license = licenses.gpl2;
+    platforms = with platforms; linux;
+    maintainers = with maintainers; [ romildo ];
+  };
+}
diff --git a/pkgs/applications/virtualization/railcar/default.nix b/pkgs/applications/virtualization/railcar/default.nix
index 8dd3c270b23d..fda95b41ab5d 100644
--- a/pkgs/applications/virtualization/railcar/default.nix
+++ b/pkgs/applications/virtualization/railcar/default.nix
@@ -11,19 +11,15 @@ rustPlatform.buildRustPackage rec {
     sha256 = "09zn160qxd7760ii6rs5nhr00qmaz49x1plclscznxh9hinyjyh9";
   };
 
-  # Delete this on next update; see #79975 for details
-  legacyCargoFetcher = true;
-
-  cargoSha256 = "1k4y37x783fsd8li17k56vlx5ziwmrz167a0w5mcb9sgyd2kc19a";
-
-  buildInputs = [ libseccomp ];
-
   # Submitted upstream https://github.com/oracle/railcar/pull/44
   cargoPatches = [ ./cargo-lock.patch ];
+  cargoSha256 = "10qxkxpdprl2rcgy52s3q5gyg3i75qmx68rpl7cx1bgjzppfn9c3";
+
+  buildInputs = [ libseccomp ];
 
   meta = with lib; {
     description = "Rust implementation of the Open Containers Initiative oci-runtime";
-    homepage = https://github.com/oracle/railcar;
+    homepage = "https://github.com/oracle/railcar";
     license = with licenses; [ asl20 /* or */ upl ];
     maintainers = [ maintainers.spacekookie ];
     platforms = platforms.all;
diff --git a/pkgs/applications/virtualization/remotebox/default.nix b/pkgs/applications/virtualization/remotebox/default.nix
index 58710365b6ef..dcc5efb6504a 100644
--- a/pkgs/applications/virtualization/remotebox/default.nix
+++ b/pkgs/applications/virtualization/remotebox/default.nix
@@ -27,7 +27,7 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "VirtualBox client with remote management";
-    homepage = http://remotebox.knobgoblin.org.uk/;
+    homepage = "http://remotebox.knobgoblin.org.uk/";
     license = licenses.gpl2Plus;
     longDescription = ''
       VirtualBox is traditionally considered to be a virtualization solution
diff --git a/pkgs/applications/virtualization/rkt/default.nix b/pkgs/applications/virtualization/rkt/default.nix
index fd0bd92faa60..f3b68e5c2276 100644
--- a/pkgs/applications/virtualization/rkt/default.nix
+++ b/pkgs/applications/virtualization/rkt/default.nix
@@ -65,9 +65,14 @@ in stdenv.mkDerivation rec {
 
   meta = with lib; {
     description = "A fast, composable, and secure App Container runtime for Linux";
-    homepage = https://github.com/coreos/rkt;
+    homepage = "https://github.com/coreos/rkt";
     license = licenses.asl20;
     maintainers = with maintainers; [ ragge steveej ];
     platforms = [ "x86_64-linux" ];
+    knownVulnerabilities = [
+      "CVE-2019-10144: processes run with `rkt enter` are given all capabilities during stage 2"
+      "CVE-2019-10145: processes run with `rkt enter` do not have seccomp filtering during stage 2"
+      "CVE-2019-10147: processes run with `rkt enter` are not limited by cgroups during stage 2"
+    ];
   };
 }
diff --git a/pkgs/applications/virtualization/runc/default.nix b/pkgs/applications/virtualization/runc/default.nix
index e7713d45f2fb..b29b1f97d21b 100644
--- a/pkgs/applications/virtualization/runc/default.nix
+++ b/pkgs/applications/virtualization/runc/default.nix
@@ -1,7 +1,14 @@
-{ lib, fetchFromGitHub, buildGoPackage, go-md2man
-, pkgconfig, libapparmor, apparmor-parser, libseccomp, which }:
-
-with lib;
+{ lib
+, fetchFromGitHub
+, buildGoPackage
+, go-md2man
+, installShellFiles
+, pkg-config
+, which
+, libapparmor
+, apparmor-parser
+, libseccomp
+}:
 
 buildGoPackage rec {
   pname = "runc";
@@ -15,12 +22,10 @@ buildGoPackage rec {
   };
 
   goPackagePath = "github.com/opencontainers/runc";
-  outputs = [ "bin" "out" "man" ];
-
-  hardeningDisable = ["fortify"];
+  outputs = [ "out" "man" ];
 
-  nativeBuildInputs = [ pkgconfig ];
-  buildInputs = [ go-md2man libseccomp libapparmor apparmor-parser which ];
+  nativeBuildInputs = [ go-md2man installShellFiles pkg-config which ];
+  buildInputs = [ libseccomp libapparmor apparmor-parser ];
 
   makeFlags = [ "BUILDTAGS+=seccomp" "BUILDTAGS+=apparmor" ];
 
@@ -29,31 +34,19 @@ buildGoPackage rec {
     patchShebangs .
     substituteInPlace libcontainer/apparmor/apparmor.go \
       --replace /sbin/apparmor_parser ${apparmor-parser}/bin/apparmor_parser
-    make ${toString makeFlags} runc
+    make ${toString makeFlags} runc man
   '';
 
   installPhase = ''
-    install -Dm755 runc $bin/bin/runc
-
-    # Include contributed man pages
-    man/md2man-all.sh -q
-    manRoot="$man/share/man"
-    mkdir -p "$manRoot"
-    for manDir in man/man?; do
-      manBase="$(basename "$manDir")" # "man1"
-      for manFile in "$manDir"/*; do
-        manName="$(basename "$manFile")" # "docker-build.1"
-        mkdir -p "$manRoot/$manBase"
-        gzip -c "$manFile" > "$manRoot/$manBase/$manName.gz"
-      done
-    done
+    install -Dm755 runc $out/bin/runc
+    installManPage man/*/*
   '';
 
-  meta = {
-    homepage = https://runc.io/;
+  meta = with lib; {
+    homepage = "https://github.com/opencontainers/runc";
     description = "A CLI tool for spawning and running containers according to the OCI specification";
     license = licenses.asl20;
-    maintainers = with maintainers; [ offline vdemeester saschagrunert ];
+    maintainers = with maintainers; [ offline ] ++ teams.podman.members;
     platforms = platforms.linux;
   };
 }
diff --git a/pkgs/applications/virtualization/seabios/default.nix b/pkgs/applications/virtualization/seabios/default.nix
index 32528627a3c8..d95f759783d2 100644
--- a/pkgs/applications/virtualization/seabios/default.nix
+++ b/pkgs/applications/virtualization/seabios/default.nix
@@ -3,11 +3,11 @@
 stdenv.mkDerivation rec {
 
   pname = "seabios";
-  version = "1.11.0";
+  version = "1.13.0";
 
   src = fetchurl {
-    url = "http://code.coreboot.org/p/seabios/downloads/get/${pname}-${version}.tar.gz";
-    sha256 = "1xwvp77djxbxbxg82hzj26pv6zka3556vkdcp09hnfwapcp46av2";
+    url = "https://www.seabios.org/downloads/${pname}-${version}.tar.gz";
+    sha256 = "00z7vdahpxa37irlf8ld350dp6z9qfyfb56vbfqr319hsv13srrp";
   };
 
   buildInputs = [ iasl python ];
@@ -37,7 +37,7 @@ stdenv.mkDerivation rec {
       It can run in an emulator or it can run natively on X86 hardware with the use of coreboot.
       SeaBIOS is the default BIOS for QEMU and KVM.
     '';
-    homepage = http://www.seabios.org;
+    homepage = "http://www.seabios.org";
     license = licenses.lgpl3;
     maintainers = [ maintainers.tstrobel ];
     platforms = [ "i686-linux" "x86_64-linux" ];
diff --git a/pkgs/applications/virtualization/singularity/default.nix b/pkgs/applications/virtualization/singularity/default.nix
index 60825063cabc..f6a1a3bc6a91 100644
--- a/pkgs/applications/virtualization/singularity/default.nix
+++ b/pkgs/applications/virtualization/singularity/default.nix
@@ -27,8 +27,8 @@ buildGoPackage rec {
   goPackagePath = "github.com/sylabs/singularity";
   goDeps = ./deps.nix;
 
-  buildInputs = [ openssl ];
-  nativeBuildInputs = [ removeReferencesTo utillinux which makeWrapper ];
+  buildInputs = [ openssl utillinux ];
+  nativeBuildInputs = [ removeReferencesTo which makeWrapper ];
   propagatedBuildInputs = [ coreutils squashfsTools ];
 
   prePatch = ''
@@ -42,7 +42,7 @@ buildGoPackage rec {
     patchShebangs .
     sed -i 's|defaultPath := "[^"]*"|defaultPath := "${stdenv.lib.makeBinPath propagatedBuildInputs}"|' cmd/internal/cli/actions.go
 
-    ./mconfig -V ${version} -p $bin --localstatedir=/var
+    ./mconfig -V ${version} -p $out --localstatedir=/var
 
     # Don't install SUID binaries
     sed -i 's/-m 4755/-m 755/g' builddir/Makefile
@@ -54,20 +54,20 @@ buildGoPackage rec {
   '';
 
   installPhase = ''
-    make -C builddir install LOCALSTATEDIR=$bin/var
-    chmod 755 $bin/libexec/singularity/bin/starter-suid
-    wrapProgram $bin/bin/singularity --prefix PATH : ${stdenv.lib.makeBinPath propagatedBuildInputs}
+    make -C builddir install LOCALSTATEDIR=$out/var
+    chmod 755 $out/libexec/singularity/bin/starter-suid
+    wrapProgram $out/bin/singularity --prefix PATH : ${stdenv.lib.makeBinPath propagatedBuildInputs}
   '';
 
   postFixup = ''
-    find $bin/ -type f -executable -exec remove-references-to -t ${go} '{}' + || true
+    find $out/libexec/ -type f -executable -exec remove-references-to -t ${go} '{}' + || true
 
     # These etc scripts shouldn't have their paths patched
-    cp etc/actions/* $bin/etc/singularity/actions/
+    cp etc/actions/* $out/etc/singularity/actions/
   '';
 
   meta = with stdenv.lib; {
-    homepage = http://www.sylabs.io/;
+    homepage = "http://www.sylabs.io/";
     description = "Application containers for linux";
     license = licenses.bsd3;
     platforms = platforms.linux;
diff --git a/pkgs/applications/virtualization/spice-vdagent/default.nix b/pkgs/applications/virtualization/spice-vdagent/default.nix
index 6f5cbeb7ed46..22aa31a6dea3 100644
--- a/pkgs/applications/virtualization/spice-vdagent/default.nix
+++ b/pkgs/applications/virtualization/spice-vdagent/default.nix
@@ -2,10 +2,10 @@
  libpciaccess, libxcb, libXrandr, libXinerama, libXfixes, dbus, libdrm,
  systemd}:
 stdenv.mkDerivation rec {
-  name = "spice-vdagent-0.19.0";
+  name = "spice-vdagent-0.20.0";
   src = fetchurl {
     url = "https://www.spice-space.org/download/releases/${name}.tar.bz2";
-    sha256 = "0r9gjx1vcgb4f7g85b1ib045kqa3dqjk12m7342i5y443ihpr9v3";
+    sha256 = "0n9k2kna2gd1zi6jv45zsp2jlv439nz5l5jjijirxqaycwi74srf";
   };
   NIX_CFLAGS_COMPILE = [ "-Wno-error=address-of-packed-member" ];
   postPatch = ''
@@ -25,7 +25,7 @@ stdenv.mkDerivation rec {
          to the client resolution
        * Multiple displays
     '';
-    homepage = https://www.spice-space.org/;
+    homepage = "https://www.spice-space.org/";
     license = stdenv.lib.licenses.gpl3;
     maintainers = [ stdenv.lib.maintainers.aboseley ];
     platforms = stdenv.lib.platforms.linux;
diff --git a/pkgs/applications/virtualization/spike/default.nix b/pkgs/applications/virtualization/spike/default.nix
index 4dbb7fbe4a52..0f397bc272a9 100644
--- a/pkgs/applications/virtualization/spike/default.nix
+++ b/pkgs/applications/virtualization/spike/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchgit, dtc }:
+{ stdenv, fetchgit, dtc, nixosTests }:
 
 stdenv.mkDerivation rec {
   pname = "spike";
@@ -20,6 +20,10 @@ stdenv.mkDerivation rec {
 
   doCheck = true;
 
+  passthru.tests = {
+    can-run-hello-world = nixosTests.spike;
+  };
+
   meta = with stdenv.lib; {
     description = "A RISC-V ISA Simulator";
     homepage = "https://github.com/riscv/riscv-isa-sim";
diff --git a/pkgs/applications/virtualization/tini/default.nix b/pkgs/applications/virtualization/tini/default.nix
index fcc599b451f0..db3fb1c96eb3 100644
--- a/pkgs/applications/virtualization/tini/default.nix
+++ b/pkgs/applications/virtualization/tini/default.nix
@@ -1,14 +1,14 @@
 { stdenv, fetchFromGitHub, cmake, glibc }:
 
 stdenv.mkDerivation rec {
-  version = "0.18.0";
+  version = "0.19.0";
   pname = "tini";
 
   src = fetchFromGitHub {
     owner = "krallin";
     repo = "tini";
     rev = "v${version}";
-    sha256 ="1h20i3wwlbd8x4jr2gz68hgklh0lb0jj7y5xk1wvr8y58fip1rdn";
+    sha256 ="1hnnvjydg7gi5gx6nibjjdnfipblh84qcpajc08nvr44rkzswck4";
   };
 
   patchPhase = "sed -i /tini-static/d CMakeLists.txt";
@@ -19,7 +19,7 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "A tiny but valid init for containers";
-    homepage = https://github.com/krallin/tini;
+    homepage = "https://github.com/krallin/tini";
     license = licenses.mit;
     platforms = platforms.linux;
   };
diff --git a/pkgs/applications/virtualization/tinyemu/default.nix b/pkgs/applications/virtualization/tinyemu/default.nix
index 224f77ed32d4..2c9098993d8f 100644
--- a/pkgs/applications/virtualization/tinyemu/default.nix
+++ b/pkgs/applications/virtualization/tinyemu/default.nix
@@ -13,7 +13,7 @@ stdenv.mkDerivation rec {
     mkdir -p "$out/bin"
   '';
   meta = {
-    homepage = https://bellard.org/tinyemu/;
+    homepage = "https://bellard.org/tinyemu/";
     description = "A system emulator for the RISC-V and x86 architectures";
     longDescription = "TinyEMU is a system emulator for the RISC-V and x86 architectures. Its purpose is to be small and simple while being complete.";
     license = with stdenv.lib.licenses; [ mit bsd2 ];
diff --git a/pkgs/applications/virtualization/virt-manager/default.nix b/pkgs/applications/virtualization/virt-manager/default.nix
index 99d20477a125..952a30b139cf 100644
--- a/pkgs/applications/virtualization/virt-manager/default.nix
+++ b/pkgs/applications/virtualization/virt-manager/default.nix
@@ -56,7 +56,7 @@ python3Packages.buildPythonApplication rec {
   doCheck = false;
 
   meta = with stdenv.lib; {
-    homepage = http://virt-manager.org;
+    homepage = "http://virt-manager.org";
     description = "Desktop user interface for managing virtual machines";
     longDescription = ''
       The virt-manager application is a desktop user interface for managing
diff --git a/pkgs/applications/virtualization/virt-manager/qt.nix b/pkgs/applications/virtualization/virt-manager/qt.nix
index 5b2b33d6adf3..85bc7c428ff2 100644
--- a/pkgs/applications/virtualization/virt-manager/qt.nix
+++ b/pkgs/applications/virtualization/virt-manager/qt.nix
@@ -29,7 +29,7 @@ mkDerivation rec {
   nativeBuildInputs = [ cmake pkgconfig qttools ];
 
   meta = with lib; {
-    homepage    = https://f1ash.github.io/qt-virt-manager;
+    homepage    = "https://f1ash.github.io/qt-virt-manager";
     description = "Desktop user interface for managing virtual machines (QT)";
     longDescription = ''
       The virt-manager application is a desktop user interface for managing
diff --git a/pkgs/applications/virtualization/virt-top/default.nix b/pkgs/applications/virtualization/virt-top/default.nix
index f32a2a6ce1c0..7ad60405f1b8 100644
--- a/pkgs/applications/virtualization/virt-top/default.nix
+++ b/pkgs/applications/virtualization/virt-top/default.nix
@@ -5,19 +5,19 @@ stdenv.mkDerivation rec {
   version = "1.0.9";
 
   src = fetchgit {
-    url = git://git.annexia.org/virt-top.git;
+    url = "git://git.annexia.org/virt-top.git";
     rev = "v${version}";
     sha256 = "0m7pm8lzlpngsj0vjv0hg8l9ck3gvwpva7r472f8f03xpjffwiga";
   };
 
   nativeBuildInputs = [ autoreconfHook ];
-  buildInputs = with ocamlPackages; [ ocaml findlib ocaml_extlib ocaml_libvirt ocaml_gettext curses csv xml-light ];
+  buildInputs = with ocamlPackages; [ ocaml findlib ocaml_extlib ocaml_libvirt gettext-stub curses csv xml-light ];
 
   buildPhase = "make opt";
 
   meta = with stdenv.lib; {
     description = "A top-like utility for showing stats of virtualized domains";
-    homepage = https://people.redhat.com/~rjones/virt-top/;
+    homepage = "https://people.redhat.com/~rjones/virt-top/";
     license = licenses.gpl2;
     maintainers = [ maintainers.volth ];
     platforms = platforms.linux;
diff --git a/pkgs/applications/virtualization/virtinst/default.nix b/pkgs/applications/virtualization/virtinst/default.nix
index 6931e492e99c..4d8987d6ed78 100644
--- a/pkgs/applications/virtualization/virtinst/default.nix
+++ b/pkgs/applications/virtualization/virtinst/default.nix
@@ -38,7 +38,7 @@ stdenv.mkDerivation rec {
     '';
 
   meta = {
-    homepage = http://virt-manager.org;
+    homepage = "http://virt-manager.org";
     license = stdenv.lib.licenses.gpl2Plus;
     maintainers = with stdenv.lib.maintainers; [qknight];
     description = "Command line tool which provides an easy way to provision operating systems into virtual machines";
diff --git a/pkgs/applications/virtualization/virtualbox/default.nix b/pkgs/applications/virtualization/virtualbox/default.nix
index 6c15b2ea2ced..7b7929d9f1d6 100644
--- a/pkgs/applications/virtualization/virtualbox/default.nix
+++ b/pkgs/applications/virtualization/virtualbox/default.nix
@@ -3,6 +3,9 @@
 , libpng, glib, lvm2, libXrandr, libXinerama, libopus, qtbase, qtx11extras
 , qttools, qtsvg, qtwayland, pkgconfig, which, docbook_xsl, docbook_xml_dtd_43
 , alsaLib, curl, libvpx, nettools, dbus, substituteAll, fetchpatch
+# If open-watcom-bin is not passed, VirtualBox will fall back to use
+# the shipped alternative sources (assembly).
+, open-watcom-bin ? null
 , makeself, perl
 , javaBindings ? true, jdk ? null # Almost doesn't affect closure size
 , pythonBindings ? false, python3 ? null
@@ -19,10 +22,9 @@ with stdenv.lib;
 let
   python = python3;
   buildType = "release";
-  # Remember to change the extpackRev and version in extpack.nix and
-  # guest-additions/default.nix as well.
-  main = "036x2mvkk22lbg72cz6pik9z538j1ag6mmwjjmfikgrq1i7v24jy";
-  version = "6.0.14";
+  # Use maintainers/scripts/update.nix to update the version and all related hashes or
+  # change the hashes in extpack.nix and guest-additions/default.nix as well manually.
+  version = "6.1.6";
 
   iasl' = iasl.overrideAttrs (old: rec {
     inherit (old) pname;
@@ -39,7 +41,7 @@ in stdenv.mkDerivation {
 
   src = fetchurl {
     url = "https://download.virtualbox.org/virtualbox/${version}/VirtualBox-${version}.tar.bz2";
-    sha256 = main;
+    sha256 = "b031c30d770f28c5f884071ad933e8c1f83e65b93aaba03a4012077c1d90a54f";
   };
 
   outputs = [ "out" "modsrc" ];
@@ -89,6 +91,7 @@ in stdenv.mkDerivation {
 
   patches =
      optional enableHardening ./hardened.patch
+  ++ [ ./extra_symbols.patch ]
      # When hardening is enabled, we cannot use wrapQtApp to ensure that VirtualBoxVM sees
      # the correct environment variables needed for Qt to work, specifically QT_PLUGIN_PATH.
      # This is because VirtualBoxVM would detect that it is wrapped that and refuse to run,
@@ -102,31 +105,15 @@ in stdenv.mkDerivation {
     })
   ++ [
     ./qtx11extras.patch
-    # Kernel 5.4 fix, should be fixed with next upstream release
-    # https://www.virtualbox.org/ticket/18945
-    (fetchpatch {
-      name = "kernel-5.4-fix-1.patch";
-      url = "https://www.virtualbox.org/changeset/81586/vbox?format=diff";
-      sha256 = "0zbkc9v65pkdmjik53x29g39qyf7narkhpwpx5n1n1bfqnhf0k1r";
-      stripLen = 1;
-    })
-    (fetchpatch {
-      name = "kernel-5.4-fix-2.patch";
-      url = "https://www.virtualbox.org/changeset/81587/vbox?format=diff";
-      sha256 = "1j98cqxj8qlqwaqr4mvwwbkmchw8jmygjwgzz82gix7fj76j2y9c";
-      stripLen = 1;
-    })
-    (fetchpatch {
-      name = "kernel-5.4-fix-3.patch";
-      url = "https://www.virtualbox.org/changeset/81649/vbox?format=diff";
-      sha256 = "1d6p5k5dgzmjglqfkbcbvpn1x3wxila30q4gcbb7pxwfgclaw2hk";
-      stripLen = 1;
-    })
   ];
 
   postPatch = ''
     sed -i -e 's|/sbin/ifconfig|${nettools}/bin/ifconfig|' \
       src/VBox/HostDrivers/adpctl/VBoxNetAdpCtl.cpp
+  '' + optionalString headless ''
+    # Fix compile error in version 6.1.6
+    substituteInPlace src/VBox/HostServices/SharedClipboard/VBoxSharedClipboardSvc-x11-stubs.cpp \
+      --replace PSHCLFORMATDATA PSHCLFORMATS
   '';
 
   # first line: ugly hack, and it isn't yet clear why it's a problem
@@ -164,6 +151,7 @@ in stdenv.mkDerivation {
       ${optionalString (!pulseSupport) "--disable-pulse"} \
       ${optionalString (!enableHardening) "--disable-hardening"} \
       ${optionalString (!enable32bitGuests) "--disable-vmmraw"} \
+      ${optionalString (open-watcom-bin != null) "--with-ow-dir=${open-watcom-bin}"} \
       --disable-kmods
     sed -e 's@PKG_CONFIG_PATH=.*@PKG_CONFIG_PATH=${libIDL}/lib/pkgconfig:${glib.dev}/lib/pkgconfig ${libIDL}/bin/libIDL-config-2@' \
         -i AutoConfig.kmk
@@ -235,12 +223,13 @@ in stdenv.mkDerivation {
   passthru = {
     inherit version;       # for guest additions
     inherit extensionPack; # for inclusion in profile to prevent gc
+    updateScript = ./update.sh;
   };
 
   meta = {
     description = "PC emulator";
     license = licenses.gpl2;
-    homepage = https://www.virtualbox.org/;
+    homepage = "https://www.virtualbox.org/";
     maintainers = with maintainers; [ sander ];
     platforms = [ "x86_64-linux" ];
   };
diff --git a/pkgs/applications/virtualization/virtualbox/extpack.nix b/pkgs/applications/virtualization/virtualbox/extpack.nix
index c935a40c5400..c9918b1cedf4 100644
--- a/pkgs/applications/virtualization/virtualbox/extpack.nix
+++ b/pkgs/applications/virtualization/virtualbox/extpack.nix
@@ -1,8 +1,9 @@
-{fetchurl, lib}:
+{fetchurl, lib, virtualbox}:
 
 with lib;
 
-let version = "6.0.14";
+let
+  inherit (virtualbox) version;
 in
 fetchurl rec {
   name = "Oracle_VM_VirtualBox_Extension_Pack-${version}.vbox-extpack";
@@ -11,13 +12,13 @@ fetchurl rec {
     # Manually sha256sum the extensionPack file, must be hex!
     # Thus do not use `nix-prefetch-url` but instead plain old `sha256sum`.
     # Checksums can also be found at https://www.virtualbox.org/download/hashes/${version}/SHA256SUMS
-    let value = "c8a5cc980c9c94cdac3d94e23cf159c2433aae76b416dbfb5b1a918758f21e63";
+    let value = "80b96b4b51a502141f6a8981f1493ade08a00762622c39e48319e5b122119bf3";
     in assert (builtins.stringLength value) == 64; value;
 
   meta = {
     description = "Oracle Extension pack for VirtualBox";
     license = licenses.virtualbox-puel;
-    homepage = https://www.virtualbox.org/;
+    homepage = "https://www.virtualbox.org/";
     maintainers = with maintainers; [ sander cdepillabout ];
     platforms = [ "x86_64-linux" ];
   };
diff --git a/pkgs/applications/virtualization/virtualbox/extra_symbols.patch b/pkgs/applications/virtualization/virtualbox/extra_symbols.patch
new file mode 100644
index 000000000000..174bb8d9e70c
--- /dev/null
+++ b/pkgs/applications/virtualization/virtualbox/extra_symbols.patch
@@ -0,0 +1,21 @@
+diff --git a/src/VBox/HostDrivers/linux/Makefile b/src/VBox/HostDrivers/linux/Makefile
+index 6e44129b..e68ce128 100644
+--- a/src/VBox/HostDrivers/linux/Makefile
++++ b/src/VBox/HostDrivers/linux/Makefile
+@@ -95,13 +95,13 @@ vboxpci: vboxdrv
+ install:
+ 	@$(MAKE) KBUILD_VERBOSE=$(KBUILD_VERBOSE) -C vboxdrv install
+ 	@if [ -d vboxnetflt ]; then \
+-	    $(MAKE) KBUILD_VERBOSE=$(KBUILD_VERBOSE) -C vboxnetflt install; \
++		$(MAKE) KBUILD_VERBOSE=$(KBUILD_VERBOSE) KBUILD_EXTRA_SYMBOLS=$(abspath vboxnetflt/Module.symvers) -C vboxnetflt install; \
+ 	fi
+ 	@if [ -d vboxnetadp ]; then \
+-	    $(MAKE) KBUILD_VERBOSE=$(KBUILD_VERBOSE) -C vboxnetadp install; \
++	    $(MAKE) KBUILD_VERBOSE=$(KBUILD_VERBOSE) KBUILD_EXTRA_SYMBOLS=$(abspath vboxnetadp/Module.symvers) -C vboxnetadp install; \
+ 	fi
+ 	@if [ -d vboxpci ]; then \
+-	    $(MAKE) KBUILD_VERBOSE=$(KBUILD_VERBOSE) -C vboxpci install; \
++	    $(MAKE) KBUILD_VERBOSE=$(KBUILD_VERBOSE) KBUILD_EXTRA_SYMBOLS=$(abspath vboxpci/Module.symvers) -C vboxpci install; \
+ 	fi
+ 
+ else
diff --git a/pkgs/applications/virtualization/virtualbox/guest-additions/default.nix b/pkgs/applications/virtualization/virtualbox/guest-additions/default.nix
index 690b72f3eeb0..4275bc0542e8 100644
--- a/pkgs/applications/virtualization/virtualbox/guest-additions/default.nix
+++ b/pkgs/applications/virtualization/virtualbox/guest-additions/default.nix
@@ -1,5 +1,5 @@
 { stdenv, fetchurl, lib, patchelf, cdrkit, kernel, which, makeWrapper
-, zlib, xorg, dbus, virtualbox, dos2unix, fetchpatch, findutils, patchutils }:
+, zlib, xorg, dbus, virtualbox}:
 
 let
   version = virtualbox.version;
@@ -26,7 +26,7 @@ in stdenv.mkDerivation rec {
 
   src = fetchurl {
     url = "http://download.virtualbox.org/virtualbox/${version}/VBoxGuestAdditions_${version}.iso";
-    sha256 = "1c9ysx0fhxxginmp607b4fk74dvlr32n6w52gawm06prf4xg90nb";
+    sha256 = "bcde4691dea7de93b65a10a43dda2b8f52e570f820992ad281c9bb5c8dede181";
   };
 
   KERN_DIR = "${kernel.dev}/lib/modules/${kernel.modDirVersion}/build";
@@ -43,67 +43,9 @@ in stdenv.mkDerivation rec {
   prePatch = ''
     substituteInPlace src/vboxguest-${version}/vboxvideo/vbox_ttm.c \
       --replace "<ttm/" "<drm/ttm/"
-    
-    echo ${lib.escapeShellArgs patches} | \
-      ${findutils}/bin/xargs -n1 ${patchutils}/bin/lsdiff --strip=1 --addprefix=src/vboxguest-${version}/ | \
-      ${findutils}/bin/xargs ${dos2unix}/bin/dos2unix
   '';
 
   patchFlags = [ "-p1" "-d" "src/vboxguest-${version}" ];
-  # Kernel 5.4 fix, should be fixed with next upstream release
-  # https://www.virtualbox.org/ticket/18945
-  patches = lib.concatLists (lib.mapAttrsToList (changeset: args:
-    map (arg:
-      fetchpatch ({
-        name = "kernel-5.4-fix-${changeset}.patch";
-        url = "https://www.virtualbox.org/changeset/${changeset}/vbox?format=diff";
-      } // arg)) args) {
-        "81586" = [{
-          sha256 = "126z67x6vy65w6jlqbh4z4f1cffxnycwb69vns0154bawbsbxsiw";
-          stripLen = 5;
-          extraPrefix = "vboxguest/";
-        }];
-        "81587" = [
-          {
-            sha256 = "0simzswnl0wvnc2i9gixz99rfc7lxk1nrnskksrlrrl9hqnh0lva";
-            stripLen = 5;
-            extraPrefix = "vboxsf/";
-            includes = [ "*/the-linux-kernel.h" ];
-          }
-          {
-            sha256 = "0a8r9h3x3lcjq2fykgqhdaykp00rnnkbxz8xnxg847zgvca15y02";
-            stripLen = 5;
-            extraPrefix = "vboxguest/";
-            includes = [ "*/the-linux-kernel.h" ];
-          }
-        ];
-        "81649" = [
-          {
-            sha256 = "1p1skxlvqigydxr4sk7w51lpk7nxg0d9lppq39sdnfmgi1z0h0sc";
-            stripLen = 2;
-            extraPrefix = "vboxguest/";
-            includes = [ "*/cdefs.h" ];
-          }
-          {
-            sha256 = "1j060ggdnndyjdhkfvs15306gl7g932sim9xjmx2mnx8gjdmg37f";
-            stripLen = 2;
-            extraPrefix = "vboxsf/";
-            includes = [ "*/cdefs.h" ];
-          }
-          {
-            sha256 = "060h3a5k2yklbvlg0hyg4x87xrg37cvv3rjb67xizlwvlyy6ykkg";
-            stripLen = 5;
-            extraPrefix = "vboxguest/";
-            includes = [ "*/thread2-r0drv-linux.c" ];
-          }
-          {
-            sha256 = "0cxlkf7cy751gl8dgzr7vkims1kmx5pgzsrxyk8w18zyp5nk9glw";
-            stripLen = 7;
-            extraPrefix = "vboxvideo/";
-            includes = [ "*/vbox_*.c" ];
-          }
-        ];
-      });
 
   unpackPhase = ''
     ${if stdenv.hostPlatform.system == "i686-linux" || stdenv.hostPlatform.system == "x86_64-linux" then ''
@@ -162,7 +104,7 @@ in stdenv.mkDerivation rec {
   installPhase = ''
     # Install kernel modules.
     cd src/vboxguest-${version}
-    make install INSTALL_MOD_PATH=$out
+    make install INSTALL_MOD_PATH=$out KBUILD_EXTRA_SYMBOLS=$PWD/vboxsf/Module.symvers
     cd ../..
 
     # Install binaries
diff --git a/pkgs/applications/virtualization/virtualbox/hardened.patch b/pkgs/applications/virtualization/virtualbox/hardened.patch
index 398100f3f398..180ea88461ef 100644
--- a/pkgs/applications/virtualization/virtualbox/hardened.patch
+++ b/pkgs/applications/virtualization/virtualbox/hardened.patch
@@ -75,32 +75,6 @@ index ce0f288..6193108 100644
              return supR3HardenedSetError3(VERR_SUPLIB_WRITE_NON_SYS_GROUP, pErrInfo,
                                            "An unknown (and thus untrusted) group has write access to '", pszPath,
                                            "' and we therefore cannot trust the directory content or that of any subdirectory");
-diff --git a/src/VBox/Main/src-server/MachineImpl.cpp b/src/VBox/Main/src-server/MachineImpl.cpp
-index 320c569..9bfe41f 100644
---- a/src/VBox/Main/src-server/MachineImpl.cpp
-+++ b/src/VBox/Main/src-server/MachineImpl.cpp
-@@ -7543,7 +7543,7 @@ HRESULT Machine::i_launchVMProcess(IInternalSessionControl *aControl,
-
-     /* get the path to the executable */
-     char szPath[RTPATH_MAX];
--    RTPathAppPrivateArch(szPath, sizeof(szPath) - 1);
-+    RTStrCopy(szPath, sizeof(szPath) - 1, "/run/wrappers/bin");
-     size_t cchBufLeft = strlen(szPath);
-     szPath[cchBufLeft++] = RTPATH_DELIMITER;
-     szPath[cchBufLeft] = 0;
-diff --git a/src/VBox/Main/src-server/NetworkServiceRunner.cpp b/src/VBox/Main/src-server/NetworkServiceRunner.cpp
-index 1e38d99..5e43dda 100644
---- a/src/VBox/Main/src-server/NetworkServiceRunner.cpp
-+++ b/src/VBox/Main/src-server/NetworkServiceRunner.cpp
-@@ -85,7 +85,7 @@ int NetworkServiceRunner::start(bool aKillProcOnStop)
-
-     /* get the path to the executable */
-     char exePathBuf[RTPATH_MAX];
--    const char *exePath = RTProcGetExecutablePath(exePathBuf, RTPATH_MAX);
-+    const char *exePath = RTProcGetSuidPath(exePathBuf, RTPATH_MAX);
-     char *substrSl = strrchr(exePathBuf, '/');
-     char *substrBs = strrchr(exePathBuf, '\\');
-     char *suffix = substrSl ? substrSl : substrBs;
 diff --git a/src/VBox/Main/src-server/generic/NetIf-generic.cpp b/src/VBox/Main/src-server/generic/NetIf-generic.cpp
 index 98dc91a..43a819f 100644
 --- a/src/VBox/Main/src-server/generic/NetIf-generic.cpp
@@ -180,3 +154,29 @@ index 2aab645..9795f21 100644
 
  RTR3DECL(const char *) RTProcShortName(void)
  {
+diff --git a/src/VBox/Main/src-server/NetworkServiceRunner.cpp b/src/VBox/Main/src-server/NetworkServiceRunner.cpp
+index 2e57690..3272c84 100644
+--- a/src/VBox/Main/src-server/NetworkServiceRunner.cpp
++++ b/src/VBox/Main/src-server/NetworkServiceRunner.cpp
+@@ -188,7 +188,7 @@ int NetworkServiceRunner::start(bool aKillProcessOnStop)
+      * ASSUME it is relative to the directory that holds VBoxSVC.
+      */
+     char szExePath[RTPATH_MAX];
+-    AssertReturn(RTProcGetExecutablePath(szExePath, RTPATH_MAX), VERR_FILENAME_TOO_LONG);
++    AssertReturn(RTProcGetSuidPath(szExePath, RTPATH_MAX), VERR_FILENAME_TOO_LONG);
+     RTPathStripFilename(szExePath);
+     int vrc = RTPathAppend(szExePath, sizeof(szExePath), m->pszProcName);
+     AssertLogRelRCReturn(vrc, vrc);
+diff --git a/src/VBox/Main/src-all/MachineLaunchVMCommonWorker.cpp b/src/VBox/Main/src-all/MachineLaunchVMCommonWorker.cpp
+index 2991d3a7..d042a08b 100644
+--- a/src/VBox/Main/src-all/MachineLaunchVMCommonWorker.cpp
++++ b/src/VBox/Main/src-all/MachineLaunchVMCommonWorker.cpp
+@@ -90,7 +90,7 @@ int MachineLaunchVMCommonWorker(const Utf8Str &aNameOrId,
+ 
+     /* Get the path to the executable directory w/ trailing slash: */
+     char szPath[RTPATH_MAX];
+-    int vrc = RTPathAppPrivateArch(szPath, sizeof(szPath));
++    int vrc = RTStrCopy(szPath, sizeof(szPath) - 1, "/run/wrappers/bin");
+     AssertRCReturn(vrc, vrc);
+     size_t cbBufLeft = RTPathEnsureTrailingSeparator(szPath, sizeof(szPath));
+     AssertReturn(cbBufLeft > 0, VERR_FILENAME_TOO_LONG);
diff --git a/pkgs/applications/virtualization/virtualbox/update.py b/pkgs/applications/virtualization/virtualbox/update.py
deleted file mode 100755
index 6e8bfd5c8250..000000000000
--- a/pkgs/applications/virtualization/virtualbox/update.py
+++ /dev/null
@@ -1,85 +0,0 @@
-#!/usr/bin/env nix-shell
-#!nix-shell -i python3 -p python3
-
-import os
-import re
-import json
-import urllib.request
-
-from distutils.version import LooseVersion
-
-UPSTREAM_INFO_FILE = os.path.join(
-    os.path.dirname(os.path.abspath(__file__)),
-    "upstream-info.json"
-)
-
-
-def fetch_latest_version():
-    url = "http://download.virtualbox.org/virtualbox/LATEST.TXT"
-    return urllib.request.urlopen(url).read().strip().decode()
-
-
-def load_upstream_info():
-    try:
-        with open(UPSTREAM_INFO_FILE, 'r') as fp:
-            return json.load(fp)
-    except FileNotFoundError:
-        return {'version': "0"}
-
-
-def save_upstream_info(contents):
-    remark = "Generated using update.py from the same directory."
-    contents['__NOTE'] = remark
-    data = json.dumps(contents, indent=2, sort_keys=True)
-    with open(UPSTREAM_INFO_FILE, 'w') as fp:
-        fp.write(data + "\n")
-
-
-def fetch_file_table(version):
-    url = "http://download.virtualbox.org/virtualbox/{}/SHA256SUMS"
-    url = url.format(version)
-    result = {}
-    for line in urllib.request.urlopen(url):
-        sha, name = line.rstrip().split()
-        result[name.lstrip(b'*').decode()] = sha.decode()
-    return result
-
-
-def update_to_version(version):
-    extpack_start = 'Oracle_VM_VirtualBox_Extension_Pack-'
-    version_re = version.replace('.', '\\.')
-    attribute_map = {
-        'extpack': r'^' + extpack_start + r'[^-]+-[^.]+.vbox-extpack$',
-        'extpackRev': r'^' + extpack_start + r'[^-]+-([^.]+).vbox-extpack$',
-        'main': r'^VirtualBox-' + version_re + r'.tar.bz2$',
-        'guest': r'^VBoxGuestAdditions_' + version_re + r'.iso$',
-    }
-    table = fetch_file_table(version)
-    new_attrs = {'version': version}
-    for attr, searchexpr in attribute_map.items():
-        result = [re.search(searchexpr, key) for key in table.keys()]
-        filtered = filter(lambda m: m is not None, result)
-        found = [m.groups()[0] if len(m.groups()) > 0 else table[m.group(0)]
-                 for m in filtered if m is not None]
-
-        if len(found) == 0:
-            msg = "No package found for attribute {}".format(attr)
-            raise AssertionError(msg)
-        elif len(found) != 1:
-            msg = "More than one package found for attribute {}: ".format(attr)
-            msg += ', '.join(found)
-            raise AssertionError(msg)
-        else:
-            new_attrs[attr] = found[0]
-    return new_attrs
-
-
-info = load_upstream_info()
-latest = fetch_latest_version()
-if LooseVersion(info['version']) < LooseVersion(latest):
-    print("Updating to version {}...".format(latest), end="", flush=True)
-    new_attrs = update_to_version(latest)
-    save_upstream_info(new_attrs)
-    print(" done.")
-else:
-    print("Version {} is already the latest one.".format(info['version']))
diff --git a/pkgs/applications/virtualization/virtualbox/update.sh b/pkgs/applications/virtualization/virtualbox/update.sh
new file mode 100755
index 000000000000..fcd02ae8a27b
--- /dev/null
+++ b/pkgs/applications/virtualization/virtualbox/update.sh
@@ -0,0 +1,44 @@
+#!/usr/bin/env nix-shell
+#!nix-shell -i bash -p curl common-updater-scripts nix-prefetch-scripts jq
+
+set -xeuo pipefail
+
+nixpkgs="$(git rev-parse --show-toplevel)"
+
+attr=virtualbox
+oldVersion="$(nix-instantiate --eval -E "with import $nixpkgs {}; $attr.version or (builtins.parseDrvName $attr.name).version" | tr -d '"')"
+latestVersion="$(curl -sS https://download.virtualbox.org/virtualbox/LATEST.TXT)"
+
+function fileShaSum() {
+  echo "$1" | grep -w $2 | cut -f1 -d' '
+}
+function oldHash() {
+  nix-instantiate --eval --strict -A "$1.drvAttrs.outputHash" | tr -d '"'
+}
+function nixFile() {
+  nix-instantiate --eval --strict -A "${1}.meta.position" | sed -re 's/^"(.*):[0-9]+"$/\1/'
+}
+
+if [ ! "$oldVersion" = "$latestVersion" ]; then
+  shaSums=$(curl -sS https://download.virtualbox.org/virtualbox/$latestVersion/SHA256SUMS)
+
+  virtualBoxShaSum=$(fileShaSum "$shaSums" "VirtualBox-$latestVersion.tar.bz2")
+  extpackShaSum=$(fileShaSum "$shaSums" "Oracle_VM_VirtualBox_Extension_Pack-$latestVersion.vbox-extpack")
+  guestAdditionsShaSum=$(fileShaSum "$shaSums" "*VBoxGuestAdditions_$latestVersion.iso")
+
+  virtualboxNixFile=$(nixFile ${attr})
+  extpackNixFile=$(nixFile ${attr}Extpack)
+  guestAdditionsNixFile=$(nixFile linuxPackages.${attr}GuestAdditions)
+
+  extpackOldShaSum=$(oldHash ${attr}Extpack)
+  guestAdditionsOldShaSum=$(oldHash linuxPackages.${attr}GuestAdditions.src)
+
+  update-source-version $attr $latestVersion $virtualBoxShaSum
+  sed -i -e 's|value = "'$extpackOldShaSum'"|value = "'$extpackShaSum'"|' $extpackNixFile
+  sed -i -e 's|sha256 = "'$guestAdditionsOldShaSum'"|sha256 = "'$guestAdditionsShaSum'"|' $guestAdditionsNixFile
+
+  git add $virtualboxNixFile $extpackNixFile $guestAdditionsNixFile
+  git commit -m "$attr: ${oldVersion} -> ${latestVersion}"
+else
+  echo "$attr is already up-to-date"
+fi
diff --git a/pkgs/applications/virtualization/x11docker/default.nix b/pkgs/applications/virtualization/x11docker/default.nix
index 0d6b3632bc76..7ef91e6f6094 100644
--- a/pkgs/applications/virtualization/x11docker/default.nix
+++ b/pkgs/applications/virtualization/x11docker/default.nix
@@ -1,12 +1,12 @@
 { stdenv, fetchFromGitHub, makeWrapper, nx-libs, xorg, getopt, gnugrep, gawk, ps, mount, iproute }:
 stdenv.mkDerivation rec {
   pname = "x11docker";
-  version = "6.5.0";
+  version = "6.6.1";
   src = fetchFromGitHub {
     owner = "mviereck";
     repo = "x11docker";
     rev = "v${version}";
-    sha256 = "1lh45cxzpdwvhahlcayzqwq1q5hra25mszs13j0dswklcjvjqw8b";
+    sha256 = "0p1ypgy45ngxxjczd986pkfh4cn5bs45cwzlfv9fm2p58fkx3aar";
   };
   nativeBuildInputs = [ makeWrapper ];
 
@@ -21,7 +21,7 @@ stdenv.mkDerivation rec {
 
   meta = {
     description = "Run graphical applications with Docker";
-    homepage = https://github.com/mviereck/x11docker;
+    homepage = "https://github.com/mviereck/x11docker";
     license = stdenv.lib.licenses.mit;
     maintainers = with stdenv.lib.maintainers; [ jD91mZM2 ];
     platforms = stdenv.lib.platforms.linux;
diff --git a/pkgs/applications/virtualization/xen/4.10.nix b/pkgs/applications/virtualization/xen/4.10.nix
index f15a7ef0f9d4..7e3c73fb11d5 100644
--- a/pkgs/applications/virtualization/xen/4.10.nix
+++ b/pkgs/applications/virtualization/xen/4.10.nix
@@ -27,7 +27,7 @@ let
 
   qemuMemfdBuildFix = fetchpatch {
     name = "xen-4.8-memfd-build-fix.patch";
-    url = https://github.com/qemu/qemu/commit/75e5b70e6b5dcc4f2219992d7cffa462aa406af0.patch;
+    url = "https://github.com/qemu/qemu/commit/75e5b70e6b5dcc4f2219992d7cffa462aa406af0.patch";
     sha256 = "0gaz93kb33qc0jx6iphvny0yrd17i8zhcl3a9ky5ylc2idz0wiwa";
   };
 
@@ -49,7 +49,7 @@ callPackage (import ./generic.nix (rec {
   xenfiles = optionalAttrs withInternalQemu {
     qemu-xen = {
       src = fetchgit {
-        url = https://xenbits.xen.org/git-http/qemu-xen.git;
+        url = "https://xenbits.xen.org/git-http/qemu-xen.git";
         # rev = "refs/tags/qemu-xen-${version}";
         # use revision hash - reproducible but must be updated with each new version
         rev = "qemu-xen-${version}";
@@ -66,7 +66,7 @@ callPackage (import ./generic.nix (rec {
   } // optionalAttrs withInternalTraditionalQemu {
     qemu-xen-traditional = {
       src = fetchgit {
-        url = https://xenbits.xen.org/git-http/qemu-xen-traditional.git;
+        url = "https://xenbits.xen.org/git-http/qemu-xen-traditional.git";
         # rev = "refs/tags/xen-${version}";
         # use revision hash - reproducible but must be updated with each new version
         rev = "c8ea0457495342c417c3dc033bba25148b279f60";
@@ -84,7 +84,7 @@ callPackage (import ./generic.nix (rec {
   } // optionalAttrs withInternalSeabios {
     "firmware/seabios-dir-remote" = {
       src = fetchgit {
-        url = https://xenbits.xen.org/git-http/seabios.git;
+        url = "https://xenbits.xen.org/git-http/seabios.git";
         rev = "f0cdc36d2f2424f6b40438f7ee7cc502c0eff4df";
         sha256 = "1wq5pjkjrfzqnq3wyr15mcn1l4c563m65gdyf8jm97kgb13pwwfm";
       };
@@ -94,7 +94,7 @@ callPackage (import ./generic.nix (rec {
   } // optionalAttrs withInternalOVMF {
     "firmware/ovmf-dir-remote" = {
       src = fetchgit {
-        url = https://xenbits.xen.org/git-http/ovmf.git;
+        url = "https://xenbits.xen.org/git-http/ovmf.git";
         rev = "173bf5c847e3ca8b42c11796ce048d8e2e916ff8";
         sha256 = "07zmdj90zjrzip74fvd4ss8n8njk6cim85s58mc6snxmqqv7gmcr";
       };
@@ -104,7 +104,7 @@ callPackage (import ./generic.nix (rec {
     # TODO: patch Xen to make this optional?
     "firmware/etherboot/ipxe.git" = {
       src = fetchgit {
-        url = https://git.ipxe.org/ipxe.git;
+        url = "https://git.ipxe.org/ipxe.git";
         rev = "356f6c1b64d7a97746d1816cef8ca22bdd8d0b5d";
         sha256 = "15n400vm3id5r8y3k6lrp9ab2911a9vh9856f5gvphkazfnmns09";
       };
@@ -114,7 +114,7 @@ callPackage (import ./generic.nix (rec {
     xen-libhvm-dir-remote = {
       src = fetchgit {
         name = "xen-libhvm";
-        url = https://github.com/michalpalka/xen-libhvm;
+        url = "https://github.com/michalpalka/xen-libhvm";
         rev = "83065d36b36d6d527c2a4e0f5aaf0a09ee83122c";
         sha256 = "1jzv479wvgjkazprqdzcdjy199azmx2xl3pnxli39kc5mvjz3lzd";
       };
diff --git a/pkgs/applications/virtualization/xen/4.8.nix b/pkgs/applications/virtualization/xen/4.8.nix
index 8cc9c23d2bfd..6fa30462df08 100644
--- a/pkgs/applications/virtualization/xen/4.8.nix
+++ b/pkgs/applications/virtualization/xen/4.8.nix
@@ -39,7 +39,7 @@ let
 
   qemuMemfdBuildFix = fetchpatch {
     name = "xen-4.8-memfd-build-fix.patch";
-    url = https://github.com/qemu/qemu/commit/75e5b70e6b5dcc4f2219992d7cffa462aa406af0.patch;
+    url = "https://github.com/qemu/qemu/commit/75e5b70e6b5dcc4f2219992d7cffa462aa406af0.patch";
     sha256 = "0gaz93kb33qc0jx6iphvny0yrd17i8zhcl3a9ky5ylc2idz0wiwa";
   };
 
@@ -66,7 +66,7 @@ callPackage (import ./generic.nix (rec {
   xenfiles = optionalAttrs withInternalQemu {
     qemu-xen = {
       src = fetchgit {
-        url = https://xenbits.xen.org/git-http/qemu-xen.git;
+        url = "https://xenbits.xen.org/git-http/qemu-xen.git";
         rev = "refs/tags/qemu-xen-${version}";
         sha256 = "0lb7zd5nvr6znx47z93nbq4gj8xfb3622s8r2cvmpqmwnmlc3nd4";
       };
@@ -80,7 +80,7 @@ callPackage (import ./generic.nix (rec {
   } // optionalAttrs withInternalTraditionalQemu {
     qemu-xen-traditional = {
       src = fetchgit {
-        url = https://xenbits.xen.org/git-http/qemu-xen-traditional.git;
+        url = "https://xenbits.xen.org/git-http/qemu-xen-traditional.git";
         rev = "refs/tags/xen-${version}";
         sha256 = "0mryap5y53r09m7qc0b821f717ghwm654r8c3ik1w7adzxr0l5qk";
       };
@@ -96,7 +96,7 @@ callPackage (import ./generic.nix (rec {
   } // optionalAttrs withInternalSeabios {
     "firmware/seabios-dir-remote" = {
       src = fetchgit {
-        url = https://xenbits.xen.org/git-http/seabios.git;
+        url = "https://xenbits.xen.org/git-http/seabios.git";
         rev = "f0cdc36d2f2424f6b40438f7ee7cc502c0eff4df";
         sha256 = "1wq5pjkjrfzqnq3wyr15mcn1l4c563m65gdyf8jm97kgb13pwwfm";
       };
@@ -106,7 +106,7 @@ callPackage (import ./generic.nix (rec {
   } // optionalAttrs withInternalOVMF {
     "firmware/ovmf-dir-remote" = {
       src = fetchgit {
-        url = https://xenbits.xen.org/git-http/ovmf.git;
+        url = "https://xenbits.xen.org/git-http/ovmf.git";
         rev = "173bf5c847e3ca8b42c11796ce048d8e2e916ff8";
         sha256 = "07zmdj90zjrzip74fvd4ss8n8njk6cim85s58mc6snxmqqv7gmcr";
       };
@@ -116,7 +116,7 @@ callPackage (import ./generic.nix (rec {
     # TODO: patch Xen to make this optional?
     "firmware/etherboot/ipxe.git" = {
       src = fetchgit {
-        url = https://git.ipxe.org/ipxe.git;
+        url = "https://git.ipxe.org/ipxe.git";
         rev = "356f6c1b64d7a97746d1816cef8ca22bdd8d0b5d";
         sha256 = "15n400vm3id5r8y3k6lrp9ab2911a9vh9856f5gvphkazfnmns09";
       };
@@ -126,7 +126,7 @@ callPackage (import ./generic.nix (rec {
     xen-libhvm-dir-remote = {
       src = fetchgit {
         name = "xen-libhvm";
-        url = https://github.com/michalpalka/xen-libhvm;
+        url = "https://github.com/michalpalka/xen-libhvm";
         rev = "83065d36b36d6d527c2a4e0f5aaf0a09ee83122c";
         sha256 = "1jzv479wvgjkazprqdzcdjy199azmx2xl3pnxli39kc5mvjz3lzd";
       };
diff --git a/pkgs/applications/virtualization/xen/generic.nix b/pkgs/applications/virtualization/xen/generic.nix
index 5a8814fb9e28..854debc458a3 100644
--- a/pkgs/applications/virtualization/xen/generic.nix
+++ b/pkgs/applications/virtualization/xen/generic.nix
@@ -226,7 +226,7 @@ stdenv.mkDerivation (rec {
 
   # TODO(@oxij): Stop referencing args here
   meta = {
-    homepage = http://www.xen.org/;
+    homepage = "http://www.xen.org/";
     description = "Xen hypervisor and related components"
                 + optionalString (args ? meta && args.meta ? description)
                                  " (${args.meta.description})";
diff --git a/pkgs/applications/virtualization/xhyve/default.nix b/pkgs/applications/virtualization/xhyve/default.nix
index e39877df8291..921a54b11a2e 100644
--- a/pkgs/applications/virtualization/xhyve/default.nix
+++ b/pkgs/applications/virtualization/xhyve/default.nix
@@ -29,7 +29,7 @@ stdenv.mkDerivation rec {
 
   meta = {
     description = "Lightweight Virtualization on macOS Based on bhyve";
-    homepage = https://github.com/mist64/xhyve;
+    homepage = "https://github.com/mist64/xhyve";
     maintainers = [ lib.maintainers.lnl7 ];
     platforms = lib.platforms.darwin;
   };
diff --git a/pkgs/applications/window-managers/2bwm/default.nix b/pkgs/applications/window-managers/2bwm/default.nix
index cd1a3a4baf7a..0a2dd63130eb 100644
--- a/pkgs/applications/window-managers/2bwm/default.nix
+++ b/pkgs/applications/window-managers/2bwm/default.nix
@@ -21,7 +21,7 @@ stdenv.mkDerivation rec {
   installPhase = "make install DESTDIR=$out PREFIX=\"\"";
 
   meta = with stdenv.lib; {
-    homepage = https://github.com/venam/2bwm;
+    homepage = "https://github.com/venam/2bwm";
     description = "A fast floating WM written over the XCB library and derived from mcwm";
     license = licenses.mit;
     maintainers =  [ maintainers.sternenseemann ];
diff --git a/pkgs/applications/window-managers/afterstep/default.nix b/pkgs/applications/window-managers/afterstep/default.nix
index 7e68de8393fd..001e624e1bed 100644
--- a/pkgs/applications/window-managers/afterstep/default.nix
+++ b/pkgs/applications/window-managers/afterstep/default.nix
@@ -42,7 +42,7 @@ stdenv.mkDerivation rec {
       for flexibility of desktop configuration, improving aestetics,
       and efficient use of system resources.
     '';
-    homepage = http://www.afterstep.org/;
+    homepage = "http://www.afterstep.org/";
     license = licenses.gpl2;
     maintainers = [ maintainers.AndersonTorres ];
     platforms = platforms.linux;
diff --git a/pkgs/applications/window-managers/awesome/default.nix b/pkgs/applications/window-managers/awesome/default.nix
index 54244d4dc8d8..609723b42d41 100644
--- a/pkgs/applications/window-managers/awesome/default.nix
+++ b/pkgs/applications/window-managers/awesome/default.nix
@@ -84,7 +84,7 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "Highly configurable, dynamic window manager for X";
-    homepage    = https://awesomewm.org/;
+    homepage    = "https://awesomewm.org/";
     license     = licenses.gpl2Plus;
     maintainers = with maintainers; [ lovek323 rasendubi ];
     platforms   = platforms.linux;
diff --git a/pkgs/applications/window-managers/bspwm/default.nix b/pkgs/applications/window-managers/bspwm/default.nix
index e863a382470f..52f522810437 100644
--- a/pkgs/applications/window-managers/bspwm/default.nix
+++ b/pkgs/applications/window-managers/bspwm/default.nix
@@ -19,7 +19,7 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "A tiling window manager based on binary space partitioning";
-    homepage = https://github.com/baskerville/bspwm;
+    homepage = "https://github.com/baskerville/bspwm";
     maintainers = with maintainers; [ meisternu epitrochoid rvolosatovs ];
     license = licenses.bsd2;
     platforms = platforms.linux;
diff --git a/pkgs/applications/window-managers/bspwm/unstable.nix b/pkgs/applications/window-managers/bspwm/unstable.nix
index eeadfa248d75..e52e33ec544a 100644
--- a/pkgs/applications/window-managers/bspwm/unstable.nix
+++ b/pkgs/applications/window-managers/bspwm/unstable.nix
@@ -23,7 +23,7 @@ stdenv.mkDerivation {
 
   meta = {
     description = "A tiling window manager based on binary space partitioning (git version)";
-    homepage = https://github.com/baskerville/bspwm;
+    homepage = "https://github.com/baskerville/bspwm";
     maintainers = [ stdenv.lib.maintainers.meisternu stdenv.lib.maintainers.epitrochoid ];
     license = stdenv.lib.licenses.bsd2;
     platforms = stdenv.lib.platforms.linux;
diff --git a/pkgs/applications/window-managers/btops/default.nix b/pkgs/applications/window-managers/btops/default.nix
index cf90b1fad63b..132e2ba6ddd3 100644
--- a/pkgs/applications/window-managers/btops/default.nix
+++ b/pkgs/applications/window-managers/btops/default.nix
@@ -17,7 +17,7 @@ buildGoPackage rec {
 
   meta = with stdenv.lib; {
     description = "bspwm desktop management that supports dymanic appending, removing, and renaming";
-    homepage = https://github.com/cmschuetz/btops;
+    homepage = "https://github.com/cmschuetz/btops";
     maintainers = with maintainers; [ mnacamura ];
     license = licenses.mit;
     platforms = platforms.linux;
diff --git a/pkgs/applications/window-managers/cage/default.nix b/pkgs/applications/window-managers/cage/default.nix
index fe5e9c4e2e34..0d9e3335f2c9 100644
--- a/pkgs/applications/window-managers/cage/default.nix
+++ b/pkgs/applications/window-managers/cage/default.nix
@@ -22,7 +22,7 @@ stdenv.mkDerivation rec {
     sha256 = "1gkqx26pvlw00b3fgx6sh87yyjfzyj51jwxvbf9k117npkrf4b2g";
   };
 
-  nativeBuildInputs = [ meson ninja pkgconfig makeWrapper ];
+  nativeBuildInputs = [ meson ninja pkgconfig makeWrapper wayland ];
 
   buildInputs = [
     wlroots wayland wayland-protocols pixman libxkbcommon
@@ -40,7 +40,7 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "A Wayland kiosk";
-    homepage    = https://www.hjdskes.nl/projects/cage/;
+    homepage    = "https://www.hjdskes.nl/projects/cage/";
     license     = licenses.mit;
     platforms   = platforms.linux;
     maintainers = with maintainers; [ primeos ];
diff --git a/pkgs/applications/window-managers/clfswm/default.nix b/pkgs/applications/window-managers/clfswm/default.nix
index e2c39887a321..e3864319f7bb 100644
--- a/pkgs/applications/window-managers/clfswm/default.nix
+++ b/pkgs/applications/window-managers/clfswm/default.nix
@@ -41,7 +41,7 @@ stdenv.mkDerivation {
 
   meta = with stdenv.lib; {
     description = "A(nother) Common Lisp FullScreen Window Manager";
-    homepage    = https://common-lisp.net/project/clfswm/;
+    homepage    = "https://common-lisp.net/project/clfswm/";
     license     = licenses.gpl3;
     maintainers = with maintainers; [ robgssp ];
     platforms   = platforms.linux;
diff --git a/pkgs/applications/window-managers/dwm/default.nix b/pkgs/applications/window-managers/dwm/default.nix
index af2c9af900dc..8f9c28c78511 100644
--- a/pkgs/applications/window-managers/dwm/default.nix
+++ b/pkgs/applications/window-managers/dwm/default.nix
@@ -21,7 +21,7 @@ stdenv.mkDerivation {
   buildPhase = " make ";
 
   meta = {
-    homepage = https://suckless.org/;
+    homepage = "https://suckless.org/";
     description = "Dynamic window manager for X";
     license = stdenv.lib.licenses.mit;
     maintainers = with stdenv.lib.maintainers; [viric];
diff --git a/pkgs/applications/window-managers/dwm/dwm-status.nix b/pkgs/applications/window-managers/dwm/dwm-status.nix
index 9507ada40114..568258ee2c40 100644
--- a/pkgs/applications/window-managers/dwm/dwm-status.nix
+++ b/pkgs/applications/window-managers/dwm/dwm-status.nix
@@ -9,22 +9,19 @@ in
 
 rustPlatform.buildRustPackage rec {
   pname = "dwm-status";
-  version = "1.6.3";
+  version = "1.6.4";
 
   src = fetchFromGitHub {
     owner = "Gerschtli";
     repo = "dwm-status";
     rev = version;
-    sha256 = "02sprsr7822ynkwpf3xdgmkdrgkw3vgijhlh65bayiv3b5lwb54n";
+    sha256 = "05dhd2gy7ysrnchdimrdd7jvzs1db9fyrk4ci7850jhrgavfd7c4";
   };
 
   nativeBuildInputs = [ makeWrapper pkgconfig ];
   buildInputs = [ dbus gdk-pixbuf libnotify xorg.libX11 ];
 
-  # Delete this on next update; see #79975 for details
-  legacyCargoFetcher = true;
-
-  cargoSha256 = "0l6x59bzzilc78gsi5rlgq9zjvp8qjphfsds776ljzmkbdq8q4iz";
+  cargoSha256 = "0zkbps8vsjcvy7x0sgb07kacszi57dlyq8j6ia6yy0jyqnvlaqa7";
 
   postInstall = lib.optionalString (bins != [])  ''
     wrapProgram $out/bin/dwm-status --prefix "PATH" : "${stdenv.lib.makeBinPath bins}"
@@ -32,7 +29,7 @@ rustPlatform.buildRustPackage rec {
 
   meta = with stdenv.lib; {
     description = "Highly performant and configurable DWM status service";
-    homepage = https://github.com/Gerschtli/dwm-status;
+    homepage = "https://github.com/Gerschtli/dwm-status";
     license = with licenses; [ mit ];
     maintainers = with maintainers; [ gerschtli ];
     platforms = platforms.linux;
diff --git a/pkgs/applications/window-managers/dwm/git.nix b/pkgs/applications/window-managers/dwm/git.nix
index aaa32dd6b11b..3751a8de69f7 100644
--- a/pkgs/applications/window-managers/dwm/git.nix
+++ b/pkgs/applications/window-managers/dwm/git.nix
@@ -28,7 +28,7 @@ stdenv.mkDerivation {
   buildPhase = "make";
 
   meta = with stdenv.lib; {
-    homepage = https://suckless.org/;
+    homepage = "https://suckless.org/";
     description = "Dynamic window manager for X, development version";
     license = licenses.mit;
     maintainers = with maintainers; [xeji];
diff --git a/pkgs/applications/window-managers/dzen2/default.nix b/pkgs/applications/window-managers/dzen2/default.nix
index 96dcfb938004..367c78ec5cac 100644
--- a/pkgs/applications/window-managers/dzen2/default.nix
+++ b/pkgs/applications/window-managers/dzen2/default.nix
@@ -29,7 +29,7 @@ stdenv.mkDerivation {
   '';
 
   meta = {
-    homepage = https://github.com/robm/dzen;
+    homepage = "https://github.com/robm/dzen";
     license = stdenv.lib.licenses.mit;
     description = "X notification utility";
     platforms = stdenv.lib.platforms.linux;
diff --git a/pkgs/applications/window-managers/evilwm/default.nix b/pkgs/applications/window-managers/evilwm/default.nix
index 1907fbb68f98..64dc784e812f 100644
--- a/pkgs/applications/window-managers/evilwm/default.nix
+++ b/pkgs/applications/window-managers/evilwm/default.nix
@@ -19,13 +19,13 @@ stdenv.mkDerivation rec {
   inherit patches;
 
   meta = with stdenv.lib; {
-    homepage = http://www.6809.org.uk/evilwm/;
+    homepage = "http://www.6809.org.uk/evilwm/";
     description = "Minimalist window manager for the X Window System";
 
     license = {
       shortName = "evilwm";
       fullName = "Custom, inherited from aewm and 9wm";
-      url = http://www.6809.org.uk/evilwm/;
+      url = "http://www.6809.org.uk/evilwm/";
       free = true;
     };  # like BSD/MIT, but Share-Alike'y; See README.
 
diff --git a/pkgs/applications/window-managers/fluxbox/default.nix b/pkgs/applications/window-managers/fluxbox/default.nix
index 404044fa3fa1..b1a11d7153c2 100644
--- a/pkgs/applications/window-managers/fluxbox/default.nix
+++ b/pkgs/applications/window-managers/fluxbox/default.nix
@@ -35,7 +35,7 @@ stdenv.mkDerivation rec {
       fast, desktop experience. It is written in C++ and licensed
       under MIT license.
     '';
-    homepage = http://fluxbox.org/;
+    homepage = "http://fluxbox.org/";
     license = licenses.mit;
     maintainers = [ maintainers.AndersonTorres ];
     platforms = platforms.linux;
diff --git a/pkgs/applications/window-managers/fvwm/default.nix b/pkgs/applications/window-managers/fvwm/default.nix
index cc503b2db4f4..6b3f40297550 100644
--- a/pkgs/applications/window-managers/fvwm/default.nix
+++ b/pkgs/applications/window-managers/fvwm/default.nix
@@ -24,7 +24,7 @@ stdenv.mkDerivation rec {
   ] ++ stdenv.lib.optional gestures libstroke;
 
   meta = {
-    homepage = http://fvwm.org;
+    homepage = "http://fvwm.org";
     description = "A multiple large virtual desktop window manager";
     license = stdenv.lib.licenses.gpl2Plus;
     platforms = stdenv.lib.platforms.linux;
diff --git a/pkgs/applications/window-managers/herbstluftwm/default.nix b/pkgs/applications/window-managers/herbstluftwm/default.nix
index ca64786475f7..47541a3fdb57 100644
--- a/pkgs/applications/window-managers/herbstluftwm/default.nix
+++ b/pkgs/applications/window-managers/herbstluftwm/default.nix
@@ -1,27 +1,46 @@
-{ stdenv, fetchurl, pkgconfig, glib, libX11, libXext, libXinerama }:
+{ stdenv, fetchurl, cmake, pkgconfig, glib, libX11, libXext, libXinerama, libXrandr
+, withDoc ? stdenv.buildPlatform == stdenv.targetPlatform, asciidoc ? null }:
+
+# Doc generation is disabled by default when cross compiling because asciidoc
+# does not cross compile for now
+
+assert withDoc -> asciidoc != null;
 
 stdenv.mkDerivation rec {
-  name = "herbstluftwm-0.7.2";
+  pname = "herbstluftwm";
+  version = "0.8.1";
 
   src = fetchurl {
-    url = "https://herbstluftwm.org/tarballs/${name}.tar.gz";
-    sha256 = "1kc18aj9j3nfz6fj4qxg9s3gg4jvn6kzi3ii24hfm0vqdpy17xnz";
+    url = "https://herbstluftwm.org/tarballs/herbstluftwm-${version}.tar.gz";
+    sha256 = "0c1lf82z6a56g8asin91cmqhzk3anw0xwc44b31bpjixadmns57y";
   };
 
-  patchPhase = ''
-    substituteInPlace config.mk \
-      --replace "/usr/local" "$out" \
-      --replace "/etc" "$out/etc" \
-      --replace "/zsh/functions/Completion/X" "/zsh/site-functions" \
-      --replace "/usr/share" "\$(PREFIX)/share"
-  '';
+  outputs = [
+    "out"
+  ] ++ stdenv.lib.optionals withDoc [
+    "doc"
+    "man"
+  ];
+
+  cmakeFlags = [
+    "-DCMAKE_INSTALL_SYSCONF_PREFIX=${placeholder "out"}/etc"
+  ] ++ stdenv.lib.optional (!withDoc) "-DWITH_DOCUMENTATION=OFF";
+
+  nativeBuildInputs = [
+    cmake
+    pkgconfig
+  ] ++ stdenv.lib.optional withDoc asciidoc;
 
-  nativeBuildInputs = [ pkgconfig ];
-  buildInputs = [ glib libX11 libXext libXinerama ];
+  buildInputs = [
+    libX11
+    libXext
+    libXinerama
+    libXrandr
+  ];
 
   meta = {
     description = "A manual tiling window manager for X";
-    homepage = http://herbstluftwm.org/;
+    homepage = "https://herbstluftwm.org/";
     license = stdenv.lib.licenses.bsd2;
     platforms = stdenv.lib.platforms.linux;
     maintainers = with stdenv.lib.maintainers; [ the-kenny ];
diff --git a/pkgs/applications/window-managers/i3/blocks-gaps.nix b/pkgs/applications/window-managers/i3/blocks-gaps.nix
index acfd06235ac7..4a91865fecac 100644
--- a/pkgs/applications/window-managers/i3/blocks-gaps.nix
+++ b/pkgs/applications/window-managers/i3/blocks-gaps.nix
@@ -43,7 +43,7 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "A flexible scheduler for your i3bar blocks -- this is a fork to use with i3-gaps";
-    homepage = https://github.com/Airblader/i3blocks-gaps;
+    homepage = "https://github.com/Airblader/i3blocks-gaps";
     license = licenses.gpl3;
     maintainers = with maintainers; [ carlsverre ];
     platforms = platforms.linux;
diff --git a/pkgs/applications/window-managers/i3/blocks.nix b/pkgs/applications/window-managers/i3/blocks.nix
index 8c3101f8eb9e..bfd76b444375 100644
--- a/pkgs/applications/window-managers/i3/blocks.nix
+++ b/pkgs/applications/window-managers/i3/blocks.nix
@@ -17,7 +17,7 @@ stdenv.mkDerivation {
     # XDG_CONFIG_DIRS can contain multiple elements separated by colons, which should be searched in order.
     (fetchpatch {
       # https://github.com/vivien/i3blocks/pull/405
-      url = https://github.com/edef1c/i3blocks/commit/d57b32f9a364aeaf36869efdd54240433c737e57.patch;
+      url = "https://github.com/edef1c/i3blocks/commit/d57b32f9a364aeaf36869efdd54240433c737e57.patch";
       sha256 = "102xb0ax0hmg82dz2gzfag470dkckzf2yizai0izacvrz0d3ngj1";
     })
   ];
@@ -26,7 +26,7 @@ stdenv.mkDerivation {
 
   meta = {
     description = "A flexible scheduler for your i3bar blocks";
-    homepage = https://github.com/vivien/i3blocks;
+    homepage = "https://github.com/vivien/i3blocks";
     license = licenses.gpl3;
     platforms = with platforms; freebsd ++ linux;
   };
diff --git a/pkgs/applications/window-managers/i3/default.nix b/pkgs/applications/window-managers/i3/default.nix
index fd964215d455..3888e10f2585 100644
--- a/pkgs/applications/window-managers/i3/default.nix
+++ b/pkgs/applications/window-managers/i3/default.nix
@@ -1,18 +1,18 @@
-{ fetchurl, stdenv, which, pkgconfig, makeWrapper, libxcb, xcbutilkeysyms
+{ fetchurl, stdenv, which, pkgconfig, makeWrapper, installShellFiles, libxcb, xcbutilkeysyms
 , xcbutil, xcbutilwm, xcbutilxrm, libstartup_notification, libX11, pcre, libev
 , yajl, xcb-util-cursor, perl, pango, perlPackages, libxkbcommon
 , xorgserver, xvfb_run }:
 
 stdenv.mkDerivation rec {
   pname = "i3";
-  version = "4.18";
+  version = "4.18.1";
 
   src = fetchurl {
     url = "https://i3wm.org/downloads/${pname}-${version}.tar.bz2";
-    sha256 = "0dv5g8ycfmijxfjyw8hzsxaf80v09lb73zh7x2vszy78h3amifqz";
+    sha256 = "0z709cianlzw0x0qwq4361347354xd9ckj1v7vjvhb1zh3x91gws";
   };
 
-  nativeBuildInputs = [ which pkgconfig makeWrapper ];
+  nativeBuildInputs = [ which pkgconfig makeWrapper installShellFiles ];
 
   buildInputs = [
     libxcb xcbutilkeysyms xcbutil xcbutilwm xcbutilxrm libxkbcommon
@@ -50,7 +50,7 @@ stdenv.mkDerivation rec {
       sed -i 's/which/command -v/' $program
     done
 
-    install -vD -t $out/share/man/man1 man/*.{1,man}
+    installManPage man/*.1
   '';
 
   separateDebugInfo = true;
diff --git a/pkgs/applications/window-managers/i3/easyfocus.nix b/pkgs/applications/window-managers/i3/easyfocus.nix
index 9ce5486557a5..5c7a22eb7694 100644
--- a/pkgs/applications/window-managers/i3/easyfocus.nix
+++ b/pkgs/applications/window-managers/i3/easyfocus.nix
@@ -24,7 +24,7 @@ stdenv.mkDerivation {
 
   meta = with stdenv.lib; {
     description = "Focus and select windows in i3";
-    homepage = https://github.com/cornerman/i3-easyfocus;
+    homepage = "https://github.com/cornerman/i3-easyfocus";
     maintainers = with maintainers; [teto];
     license = licenses.gpl3;
     platforms = platforms.linux;
diff --git a/pkgs/applications/window-managers/i3/gaps.nix b/pkgs/applications/window-managers/i3/gaps.nix
index 731555ce9f8c..7be037ca8333 100644
--- a/pkgs/applications/window-managers/i3/gaps.nix
+++ b/pkgs/applications/window-managers/i3/gaps.nix
@@ -3,20 +3,15 @@
 i3.overrideAttrs (oldAttrs : rec {
 
   name = "i3-gaps-${version}";
-  version = "4.18";
-  releaseDate = "2019-01-27";
+  version = "4.18.1";
 
   src = fetchurl {
-    url = "https://github.com/Airblader/i3/archive/${version}.tar.gz";
-    sha256 = "04sq2sik7j09kgnn1k87yg3vzy56pk4688bmxh49l6drl0wr1m2v";
+    url = "https://github.com/Airblader/i3/releases/download/${version}/i3-${version}.tar.bz2";
+    sha256 = "1cxwsrdzp18r5hj0ymg9fbzp1mhkj4m9h6i0b9cdg79cjbacba9k";
   };
 
   nativeBuildInputs = oldAttrs.nativeBuildInputs ++ [ autoreconfHook ];
 
-  postUnpack = ''
-      echo -n "${version} (${releaseDate})" > ./i3-${version}/I3_VERSION
-  '';
-
   # fatal error: GENERATED_config_enums.h: No such file or directory
   enableParallelBuilding = false;
 
diff --git a/pkgs/applications/window-managers/i3/i3ipc-glib.nix b/pkgs/applications/window-managers/i3/i3ipc-glib.nix
index 33aac1cf4b65..7e6a18c93c56 100644
--- a/pkgs/applications/window-managers/i3/i3ipc-glib.nix
+++ b/pkgs/applications/window-managers/i3/i3ipc-glib.nix
@@ -26,7 +26,7 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "A C interface library to i3wm";
-    homepage = https://github.com/acrisci/i3ipc-glib;
+    homepage = "https://github.com/acrisci/i3ipc-glib";
     maintainers = with maintainers; [teto];
     license = licenses.gpl3;
     platforms = platforms.linux;
diff --git a/pkgs/applications/window-managers/i3/layout-manager.nix b/pkgs/applications/window-managers/i3/layout-manager.nix
index c7454981400d..f4c2a53b7a29 100644
--- a/pkgs/applications/window-managers/i3/layout-manager.nix
+++ b/pkgs/applications/window-managers/i3/layout-manager.nix
@@ -30,7 +30,7 @@ stdenv.mkDerivation rec {
   '';
 
   meta = with stdenv.lib; {
-    homepage = https://github.com/klaxalk/i3-layout-manager;
+    homepage = "https://github.com/klaxalk/i3-layout-manager";
     description = "Saving, loading and managing layouts for i3wm.";
     license = licenses.mit;
     platforms = platforms.linux;
diff --git a/pkgs/applications/window-managers/i3/lock-color.nix b/pkgs/applications/window-managers/i3/lock-color.nix
index 7895d8c124ab..062a8c4b8d87 100644
--- a/pkgs/applications/window-managers/i3/lock-color.nix
+++ b/pkgs/applications/window-managers/i3/lock-color.nix
@@ -4,14 +4,14 @@
 }:
 
 stdenv.mkDerivation rec {
-  version = "2.12.c";
+  version = "2.12.c.1";
   pname = "i3lock-color";
 
   src = fetchFromGitHub {
     owner = "PandorasFox";
     repo = "i3lock-color";
     rev = version;
-    sha256 = "08fhnchf187b73h52xgzb86g6byzxz085zs9galsvl687g5zxk34";
+    sha256 = "1q09cfgkikqbrkk1kljg8dsgbs5nacixhdqaww18h94hmlnbbssc";
   };
 
   nativeBuildInputs = [ autoreconfHook pkgconfig ];
@@ -51,7 +51,7 @@ stdenv.mkDerivation rec {
         - clock: time/date with configurable format
         - keyboard-layout
     '';
-    homepage = https://github.com/PandorasFox/i3lock-color;
+    homepage = "https://github.com/PandorasFox/i3lock-color";
     maintainers = with maintainers; [ malyn ];
     license = licenses.bsd3;
 
diff --git a/pkgs/applications/window-managers/i3/lock-fancy.nix b/pkgs/applications/window-managers/i3/lock-fancy.nix
index 4ca69ce31b44..9b9b2dea1328 100644
--- a/pkgs/applications/window-managers/i3/lock-fancy.nix
+++ b/pkgs/applications/window-managers/i3/lock-fancy.nix
@@ -12,7 +12,7 @@ stdenv.mkDerivation rec {
     sha256 = "00lqsvz1knb8iqy8lnkn3sf4c2c4nzb0smky63qf48m8za5aw9b1";
   };
   patchPhase = ''
-    sed -i -e "s|(mktemp)|(${coreutils}/bin/mktemp)|" i3lock-fancy
+    sed -i -e "s|mktemp|${coreutils}/bin/mktemp|" i3lock-fancy
     sed -i -e "s|'rm -f |'${coreutils}/bin/rm -f |" i3lock-fancy
     sed -i -e "s|scrot -z |${scrot}/bin/scrot -z |" i3lock-fancy
     sed -i -e "s|convert |${imagemagick.out}/bin/convert |" i3lock-fancy
@@ -33,7 +33,7 @@ stdenv.mkDerivation rec {
   '';
   meta = with stdenv.lib; {
     description = "i3lock is a bash script that takes a screenshot of the desktop, blurs the background and adds a lock icon and text.";
-    homepage = https://github.com/meskarune/i3lock-fancy;
+    homepage = "https://github.com/meskarune/i3lock-fancy";
     maintainers = with maintainers; [ ];
     license = licenses.mit;
     platforms = platforms.linux;
diff --git a/pkgs/applications/window-managers/i3/lock.nix b/pkgs/applications/window-managers/i3/lock.nix
index 619345d1b96d..2bca01eeefa7 100644
--- a/pkgs/applications/window-managers/i3/lock.nix
+++ b/pkgs/applications/window-managers/i3/lock.nix
@@ -28,7 +28,7 @@ stdenv.mkDerivation rec {
       a configurable image is shown, and a ring-shaped unlock-indicator gives feedback
       for every keystroke. After entering your password, the screen is unlocked again.
     '';
-    homepage = https://i3wm.org/i3lock/;
+    homepage = "https://i3wm.org/i3lock/";
     maintainers = with maintainers; [ malyn domenkozar ];
     license = licenses.bsd3;
     platforms = platforms.all;
diff --git a/pkgs/applications/window-managers/i3/pystatus.nix b/pkgs/applications/window-managers/i3/pystatus.nix
index 20ea0dd03cc3..29bda8e4e2b0 100644
--- a/pkgs/applications/window-managers/i3/pystatus.nix
+++ b/pkgs/applications/window-managers/i3/pystatus.nix
@@ -32,7 +32,7 @@ python3Packages.buildPythonApplication rec {
   doCheck = false;
 
   meta = with stdenv.lib; {
-    homepage = https://github.com/enkore/i3pystatus;
+    homepage = "https://github.com/enkore/i3pystatus";
     description = "A complete replacement for i3status";
     longDescription = ''
       i3pystatus is a growing collection of python scripts for status output compatible
diff --git a/pkgs/applications/window-managers/i3/status-rust.nix b/pkgs/applications/window-managers/i3/status-rust.nix
index b28c95e6bfb1..62389e1230ad 100644
--- a/pkgs/applications/window-managers/i3/status-rust.nix
+++ b/pkgs/applications/window-managers/i3/status-rust.nix
@@ -22,7 +22,7 @@ rustPlatform.buildRustPackage rec {
 
   meta = with stdenv.lib; {
     description = "Very resource-friendly and feature-rich replacement for i3status";
-    homepage = https://github.com/greshake/i3status-rust;
+    homepage = "https://github.com/greshake/i3status-rust";
     license = licenses.gpl3;
     maintainers = with maintainers; [ backuitist globin ma27 ];
     platforms = platforms.linux;
diff --git a/pkgs/applications/window-managers/i3/status.nix b/pkgs/applications/window-managers/i3/status.nix
index e963259b6247..6005ca3ab3a6 100644
--- a/pkgs/applications/window-managers/i3/status.nix
+++ b/pkgs/applications/window-managers/i3/status.nix
@@ -20,7 +20,7 @@ stdenv.mkDerivation rec {
 
   meta = {
     description = "Generates a status line for i3bar, dzen2, xmobar or lemonbar";
-    homepage = https://i3wm.org;
+    homepage = "https://i3wm.org";
     maintainers = [ ];
     license = stdenv.lib.licenses.bsd3;
     platforms = stdenv.lib.platforms.all;
diff --git a/pkgs/applications/window-managers/i3/wk-switch.nix b/pkgs/applications/window-managers/i3/wk-switch.nix
index 5b1cdbe05f5d..51881975266d 100644
--- a/pkgs/applications/window-managers/i3/wk-switch.nix
+++ b/pkgs/applications/window-managers/i3/wk-switch.nix
@@ -2,13 +2,13 @@
 
 python3Packages.buildPythonApplication rec {
   pname = "i3-wk-switch";
-  version = "2019-05-10";
+  version = "2020-03-18";
 
   src = fetchFromGitHub {
     owner = "tmfink";
     repo = pname;
-    rev = "05a2d5d35e9841d2a26630f1866fc0a0e8e708eb";
-    sha256 = "0ln192abdqrrs7rdazp9acbji2y6pf68z2d1by4nf2q529dh24dc";
+    rev = "a618cb8f52120aa8d533bb7c0c8de3ff13b3dc06";
+    sha256 = "0ci0w5igjk5xa8x4rx17cpgmdkamwjmavxhp0vp6213cl93ybjhz";
   };
 
   propagatedBuildInputs = with python3Packages; [ i3ipc ];
@@ -26,6 +26,6 @@ python3Packages.buildPythonApplication rec {
     maintainers = with maintainers; [ synthetica ];
     platforms = platforms.linux;
     license = licenses.mit;
-    homepage = https://travisf.net/i3-wk-switcher;
+    homepage = "https://travisf.net/i3-wk-switcher";
   };
 }
diff --git a/pkgs/applications/window-managers/i3/wmfocus.nix b/pkgs/applications/window-managers/i3/wmfocus.nix
index 677108e2163c..c4e22546d1c4 100644
--- a/pkgs/applications/window-managers/i3/wmfocus.nix
+++ b/pkgs/applications/window-managers/i3/wmfocus.nix
@@ -1,21 +1,18 @@
-{ stdenv, fetchFromGitHub, rustPlatform,
-  xorg, python3, pkgconfig, cairo, libxkbcommon }:
+{ stdenv, fetchFromGitHub, rustPlatform
+, xorg, python3, pkgconfig, cairo, libxkbcommon }:
 
 rustPlatform.buildRustPackage rec {
   pname = "wmfocus";
-  version = "1.1.2";
+  version = "1.1.3";
 
   src = fetchFromGitHub {
     owner = "svenstaro";
     repo = pname;
     rev = version;
-    sha256 = "0jx0h2zyghs3bp4sg8f3vk5rkyprz2dqfqs0v72vmkp3cvgzxbvs";
+    sha256 = "17qdsqp9072yr7rcm6g1h620rff95ldawr8ldpkbjmkh0rc86skn";
   };
 
-  # Delete this on next update; see #79975 for details
-  legacyCargoFetcher = true;
-
-  cargoSha256 = "1xmc28ns59jcmnv17102s2084baxqdvi0ibbyqwb108385qnixzf";
+  cargoSha256 = "1nsdvzrsgprwq7lsvfpymqslhggdzfk3840y8x92qjb0l2g4jhw1";
 
   nativeBuildInputs = [ python3 pkgconfig ];
   buildInputs = [ cairo libxkbcommon xorg.xcbutilkeysyms ];
@@ -27,9 +24,9 @@ rustPlatform.buildRustPackage rec {
 
   meta = with stdenv.lib; {
     description = "Visually focus windows by label";
+    homepage = "https://github.com/svenstaro/wmfocus";
+    license = licenses.mit;
     maintainers = with maintainers; [ synthetica ];
     platforms = platforms.linux;
-    license = licenses.mit;
-    homepage = https://github.com/svenstaro/wmfocus;
   };
 }
diff --git a/pkgs/applications/window-managers/icewm/default.nix b/pkgs/applications/window-managers/icewm/default.nix
index 58fa0d194e11..b6b07d8d7278 100644
--- a/pkgs/applications/window-managers/icewm/default.nix
+++ b/pkgs/applications/window-managers/icewm/default.nix
@@ -6,15 +6,16 @@
 , libpthreadstubs, pcre, libXdamage, libXcomposite, libXfixes
 , libsndfile, fribidi }:
 
+with stdenv.lib;
 stdenv.mkDerivation rec {
   pname = "icewm";
-  version = "1.6.3";
+  version = "1.6.5";
 
   src = fetchFromGitHub {
     owner  = "bbidulock";
     repo   = "icewm";
     rev    = version;
-    sha256 = "0h3w718x28fd4sz36ka9wpgcb98scna6qpycxzls4cjji3rjgm0l";
+    sha256 = "1glzpkpl0vl5sjn1d9jlvwd9ch16dvxvsf2n310kb0ycpfkl84vs";
   };
 
   nativeBuildInputs = [ cmake pkgconfig perl asciidoc ];
@@ -34,13 +35,13 @@ stdenv.mkDerivation rec {
     cp -r ../lib/themes/{gtk2,Natural,nice,nice2,warp3,warp4,yellowmotif} $out/share/icewm/themes/
   '';
 
-  meta = with stdenv.lib; {
+  meta = {
     description = "A simple, lightweight X window manager";
     longDescription = ''
       IceWM is a window manager for the X Window System. The goal of
       IceWM is speed, simplicity, and not getting in the user's way.
     '';
-    homepage = http://www.icewm.org/;
+    homepage = "https://www.ice-wm.org/";
     license = licenses.lgpl2;
     maintainers = [ maintainers.AndersonTorres ];
     platforms = platforms.linux;
diff --git a/pkgs/applications/window-managers/ion-3/default.nix b/pkgs/applications/window-managers/ion-3/default.nix
index 073af3bfd053..57c91c2cfb72 100644
--- a/pkgs/applications/window-managers/ion-3/default.nix
+++ b/pkgs/applications/window-managers/ion-3/default.nix
@@ -4,12 +4,12 @@ stdenv.mkDerivation {
   name = "ion-3-20090110";
   meta = {
     description = "Tiling tabbed window manager designed with keyboard users in mind";
-    homepage = http://modeemi.fi/~tuomov/ion;
+    homepage = "http://modeemi.fi/~tuomov/ion";
     platforms = with stdenv.lib.platforms; linux;
     license = stdenv.lib.licenses.lgpl21;
   };
   src = fetchurl {
-    url = http://tuomov.iki.fi/software/dl/ion-3-20090110.tar.gz;
+    url = "http://tuomov.iki.fi/software/dl/ion-3-20090110.tar.gz";
     sha256 = "1nkks5a95986nyfkxvg2rik6zmwx0lh7szd5fji7yizccwzc9xns";
   };
   buildInputs = [ xlibsWrapper lua gettext groff ];
diff --git a/pkgs/applications/window-managers/jwm/default.nix b/pkgs/applications/window-managers/jwm/default.nix
index 3668b344be50..601cf3cded6c 100644
--- a/pkgs/applications/window-managers/jwm/default.nix
+++ b/pkgs/applications/window-managers/jwm/default.nix
@@ -25,7 +25,7 @@ stdenv.mkDerivation rec {
   preConfigure = "./autogen.sh";
 
   meta = {
-    homepage = http://joewing.net/projects/jwm/;
+    homepage = "http://joewing.net/projects/jwm/";
     description = "Joe's Window Manager is a light-weight X11 window manager";
     license = stdenv.lib.licenses.gpl2;
     platforms   = stdenv.lib.platforms.unix;
diff --git a/pkgs/applications/window-managers/jwm/jwm-settings-manager.nix b/pkgs/applications/window-managers/jwm/jwm-settings-manager.nix
index db33b27ddd81..d6fe5b4200c4 100644
--- a/pkgs/applications/window-managers/jwm/jwm-settings-manager.nix
+++ b/pkgs/applications/window-managers/jwm/jwm-settings-manager.nix
@@ -36,7 +36,7 @@ stdenv.mkDerivation {
 
   meta = with stdenv.lib; {
     description = "A full configuration manager for JWM";
-    homepage = https://joewing.net/projects/jwm;
+    homepage = "https://joewing.net/projects/jwm";
     license = licenses.gpl3;
     platforms = platforms.linux;
     maintainers = [ maintainers.romildo ];
diff --git a/pkgs/applications/window-managers/kbdd/default.nix b/pkgs/applications/window-managers/kbdd/default.nix
index bcfcbe3c5f52..de1a68a56bfb 100644
--- a/pkgs/applications/window-managers/kbdd/default.nix
+++ b/pkgs/applications/window-managers/kbdd/default.nix
@@ -16,7 +16,7 @@ stdenv.mkDerivation {
 
   meta = {
     description = "Simple daemon and library to make per window layout using XKB";
-    homepage = https://github.com/qnikst/kbdd;
+    homepage = "https://github.com/qnikst/kbdd";
     license = stdenv.lib.licenses.gpl3;
     platforms = stdenv.lib.platforms.linux;
     maintainers = [ stdenv.lib.maintainers.wedens ];
diff --git a/pkgs/applications/window-managers/larswm/default.nix b/pkgs/applications/window-managers/larswm/default.nix
index f6f3132178c5..b918c28938c1 100644
--- a/pkgs/applications/window-managers/larswm/default.nix
+++ b/pkgs/applications/window-managers/larswm/default.nix
@@ -4,7 +4,7 @@ stdenv.mkDerivation {
   name = "larswm-7.5.3";
 
   src = fetchurl {
-    url = mirror://sourceforge/larswm/larswm-7.5.3.tar.gz;
+    url = "mirror://sourceforge/larswm/larswm-7.5.3.tar.gz";
     sha256 = "1xmlx9g1nhklxjrg0wvsya01s4k5b9fphnpl9zdwp29mm484ni3v";
   };
 
@@ -15,7 +15,7 @@ stdenv.mkDerivation {
   installTargets = [ "install" "install.man" ];
 
   meta = {
-    homepage = http://www.fnurt.net/larswm;
+    homepage = "http://www.fnurt.net/larswm";
     description = "9wm-like tiling window manager";
     license = stdenv.lib.licenses.free;
     platforms = stdenv.lib.platforms.linux;
diff --git a/pkgs/applications/window-managers/leftwm/cargo-lock.patch b/pkgs/applications/window-managers/leftwm/cargo-lock.patch
deleted file mode 100644
index 54b7e47cc075..000000000000
--- a/pkgs/applications/window-managers/leftwm/cargo-lock.patch
+++ /dev/null
@@ -1,13 +0,0 @@
-diff --git a/Cargo.lock b/Cargo.lock
-index 915ab04..3d5956d 100644
---- a/Cargo.lock
-+++ b/Cargo.lock
-@@ -370,7 +370,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
-
- [[package]]
- name = "leftwm"
--version = "0.1.9"
-+version = "0.1.10"
- dependencies = [
-  "bytes 0.4.12 (registry+https://github.com/rust-lang/crates.io-index)",
-  "chrono 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)",
diff --git a/pkgs/applications/window-managers/leftwm/default.nix b/pkgs/applications/window-managers/leftwm/default.nix
index 25a219c2be42..ade3904b95c2 100644
--- a/pkgs/applications/window-managers/leftwm/default.nix
+++ b/pkgs/applications/window-managers/leftwm/default.nix
@@ -1,41 +1,35 @@
 { stdenv, fetchFromGitHub, rustPlatform, libX11, libXinerama, makeWrapper }:
 
-let 
+let
     rpath = stdenv.lib.makeLibraryPath [ libXinerama libX11 ];
 in
 
 rustPlatform.buildRustPackage rec {
-    pname = "leftwm";
-    version = "0.1.10";
-
-    src = fetchFromGitHub {
-        owner = "leftwm";
-        repo = "leftwm";
-        rev = version;
-        sha256 = "190lc48clkh9vzlsfg2a70w405k7xyyw7avnxwna1glfwmbyy2ag";
-    };
-
-    buildInputs = [ makeWrapper libX11 libXinerama ];
-
-    postInstall = ''
-        wrapProgram $out/bin/leftwm --prefix LD_LIBRARY_PATH : "${rpath}"
-        wrapProgram $out/bin/leftwm-state --prefix LD_LIBRARY_PATH : "${rpath}"
-        wrapProgram $out/bin/leftwm-worker --prefix LD_LIBRARY_PATH : "${rpath}"
-    '';
-
-  # Delete this on next update; see #79975 for details
-  legacyCargoFetcher = true;
-
-    cargoSha256 = "0mpvfix7bvc84vanha474l4gaq97ac1zy5l77z83m9jg0246yxd6";
-
-    # patch wrong version in Cargo.lock
-    cargoPatches = [ ./cargo-lock.patch ];
-
-    meta = {
-        description = "Leftwm - A tiling window manager for the adventurer";
-        homepage = https://github.com/leftwm/leftwm;
-        license = stdenv.lib.licenses.mit;
-        platforms = stdenv.lib.platforms.linux;
-        maintainers = with stdenv.lib.maintainers; [ mschneider ];
-    };
+  pname = "leftwm";
+  version = "0.2.2";
+
+  src = fetchFromGitHub {
+    owner = "leftwm";
+    repo = "leftwm";
+    rev = version;
+    sha256 = "0x8cqc7zay19jxy7cshayjjwwjrcblqpmqrxipm2g5hhyjghk6q0";
+  };
+
+  cargoSha256 = "1kphv3vnr8ij7raf0niwz3rwly986xi5fgwqg2ya0r46ifqkgvrc";
+
+  buildInputs = [ makeWrapper libX11 libXinerama ];
+
+  postInstall = ''
+    wrapProgram $out/bin/leftwm --prefix LD_LIBRARY_PATH : "${rpath}"
+    wrapProgram $out/bin/leftwm-state --prefix LD_LIBRARY_PATH : "${rpath}"
+    wrapProgram $out/bin/leftwm-worker --prefix LD_LIBRARY_PATH : "${rpath}"
+  '';
+
+  meta = with stdenv.lib; {
+    description = "Leftwm - A tiling window manager for the adventurer";
+    homepage = "https://github.com/leftwm/leftwm";
+    license = licenses.mit;
+    platforms = platforms.linux;
+    maintainers = with maintainers; [ mschneider ];
+  };
 }
diff --git a/pkgs/applications/window-managers/lemonbar/default.nix b/pkgs/applications/window-managers/lemonbar/default.nix
index 9d6e0f27f934..89b4fecc2067 100644
--- a/pkgs/applications/window-managers/lemonbar/default.nix
+++ b/pkgs/applications/window-managers/lemonbar/default.nix
@@ -14,7 +14,7 @@ stdenv.mkDerivation {
   
   meta = with stdenv.lib; {
     description = "A lightweight xcb based bar";
-    homepage = https://github.com/LemonBoy/bar;
+    homepage = "https://github.com/LemonBoy/bar";
     maintainers = [ maintainers.meisternu ];
     license = "Custom";   
     platforms = platforms.linux;
diff --git a/pkgs/applications/window-managers/lemonbar/xft.nix b/pkgs/applications/window-managers/lemonbar/xft.nix
index ff34f1dfee78..a70e5a4dc5c0 100644
--- a/pkgs/applications/window-managers/lemonbar/xft.nix
+++ b/pkgs/applications/window-managers/lemonbar/xft.nix
@@ -16,7 +16,7 @@ stdenv.mkDerivation {
 
   meta = {
     description = "A lightweight xcb based bar with XFT-support";
-    homepage = https://github.com/krypt-n/bar;
+    homepage = "https://github.com/krypt-n/bar";
     license = "Custom";
     platforms = stdenv.lib.platforms.linux;
   };
diff --git a/pkgs/applications/window-managers/neocomp/default.nix b/pkgs/applications/window-managers/neocomp/default.nix
index 026ee2e1287e..57968922c390 100644
--- a/pkgs/applications/window-managers/neocomp/default.nix
+++ b/pkgs/applications/window-managers/neocomp/default.nix
@@ -71,7 +71,7 @@ stdenv.mkDerivation rec {
   '';
 
   meta = with stdenv.lib; {
-    homepage        = https://github.com/DelusionalLogic/NeoComp;
+    homepage        = "https://github.com/DelusionalLogic/NeoComp";
     license         = licenses.gpl3;
     maintainers     = with maintainers; [ twey ];
     platforms       = platforms.linux;
diff --git a/pkgs/applications/window-managers/notion/default.nix b/pkgs/applications/window-managers/notion/default.nix
index 2b9e8237a045..ac4f00f45453 100644
--- a/pkgs/applications/window-managers/notion/default.nix
+++ b/pkgs/applications/window-managers/notion/default.nix
@@ -7,22 +7,22 @@
 
 stdenv.mkDerivation rec{
   pname = "notion";
-  version = "3-2019050101";
+  version = "4.0.0";
 
   src = fetchFromGitHub {
     owner = "raboof";
     repo = pname;
     rev = version;
-    sha256 = "09kvgqyw0gnj3jhz9gmwq81ak8qy32vyanx1hw79r6m181aysspz";
+    sha256 = "0rqfvwkj0j862hf6i4wsmb6185xibsskfj9kwy896qcpcg8w4kk7";
   };
 
   nativeBuildInputs = [ pkgconfig makeWrapper groff ];
   buildInputs = [ lua gettext which readline fontconfig libX11 libXext libSM
                   libXinerama libXrandr libXft xlibsWrapper ];
 
-  buildFlags = [ "CC=cc" "LUA_DIR=${lua}" "X11_PREFIX=/no-such-path" ];
+  buildFlags = [ "LUA_DIR=${lua}" "X11_PREFIX=/no-such-path" ];
 
-  makeFlags = [ "PREFIX=\${out}" ];
+  makeFlags = [ "NOTION_RELEASE=${version}" "PREFIX=\${out}" ];
 
   postInstall = ''
     wrapProgram $out/bin/notion \
@@ -30,10 +30,10 @@ stdenv.mkDerivation rec{
   '';
 
   meta = with stdenv.lib; {
-    description = "Tiling tabbed window manager, follow-on to the Ion";
-    homepage = "https://notionwm.net/";
+    description = "Tiling tabbed window manager";
+    homepage = "https://notionwm.net";
     license   = licenses.lgpl21;
-    maintainers = with maintainers; [ jfb AndersonTorres ];
+    maintainers = with maintainers; [ jfb AndersonTorres raboof ];
     platforms = platforms.linux;
   };
 }
diff --git a/pkgs/applications/window-managers/openbox/default.nix b/pkgs/applications/window-managers/openbox/default.nix
index c8d526b6d288..a4ec6d067dca 100644
--- a/pkgs/applications/window-managers/openbox/default.nix
+++ b/pkgs/applications/window-managers/openbox/default.nix
@@ -50,7 +50,7 @@ stdenv.mkDerivation rec {
 
   meta = {
     description = "X window manager for non-desktop embedded systems";
-    homepage = http://openbox.org/;
+    homepage = "http://openbox.org/";
     license = stdenv.lib.licenses.gpl2Plus;
     platforms = stdenv.lib.platforms.linux;
   };
diff --git a/pkgs/applications/window-managers/oroborus/default.nix b/pkgs/applications/window-managers/oroborus/default.nix
index d449fc91c0d3..21b18a4917bd 100644
--- a/pkgs/applications/window-managers/oroborus/default.nix
+++ b/pkgs/applications/window-managers/oroborus/default.nix
@@ -21,7 +21,7 @@ stdenv.mkDerivation rec {
 
   meta = {
     description = "A really minimalistic X window manager";
-    homepage = https://www.oroborus.org/;
+    homepage = "https://www.oroborus.org/";
     license = licenses.gpl2Plus;
     maintainers = [ maintainers.AndersonTorres ];
     platforms = platforms.linux;
diff --git a/pkgs/applications/window-managers/pekwm/default.nix b/pkgs/applications/window-managers/pekwm/default.nix
index 38255dce7224..da2c11c873b1 100644
--- a/pkgs/applications/window-managers/pekwm/default.nix
+++ b/pkgs/applications/window-managers/pekwm/default.nix
@@ -32,7 +32,7 @@ stdenv.mkDerivation rec {
         appear as they should when starting applications.
       - Chainable Keygrabber, usability for everyone.
     '';
-      homepage = http://www.pekwm.org;
+      homepage = "http://www.pekwm.org";
       license = licenses.gpl2;
       maintainers = [ maintainers.AndersonTorres ];
       platforms = platforms.linux;
diff --git a/pkgs/applications/window-managers/qtile/default.nix b/pkgs/applications/window-managers/qtile/default.nix
index 6d0e6bdac45e..eb56e9c16390 100644
--- a/pkgs/applications/window-managers/qtile/default.nix
+++ b/pkgs/applications/window-managers/qtile/default.nix
@@ -44,7 +44,7 @@ python37Packages.buildPythonApplication rec {
   doCheck = false; # Requires X server.
 
   meta = with stdenv.lib; {
-    homepage = http://www.qtile.org/;
+    homepage = "http://www.qtile.org/";
     license = licenses.mit;
     description = "A small, flexible, scriptable tiling window manager written in Python";
     platforms = platforms.linux;
diff --git a/pkgs/applications/window-managers/ratpoison/default.nix b/pkgs/applications/window-managers/ratpoison/default.nix
index 11a69020ee62..4c7cdf1069f9 100644
--- a/pkgs/applications/window-managers/ratpoison/default.nix
+++ b/pkgs/applications/window-managers/ratpoison/default.nix
@@ -33,7 +33,7 @@ stdenv.mkDerivation rec {
   '';
 
   meta = with stdenv.lib; {
-    homepage = https://www.nongnu.org/ratpoison/;
+    homepage = "https://www.nongnu.org/ratpoison/";
     description = "Simple mouse-free tiling window manager";
     license = licenses.gpl2Plus;
 
diff --git a/pkgs/applications/window-managers/sawfish/default.nix b/pkgs/applications/window-managers/sawfish/default.nix
index f9bcb28e4557..18c3d22f944e 100644
--- a/pkgs/applications/window-managers/sawfish/default.nix
+++ b/pkgs/applications/window-managers/sawfish/default.nix
@@ -47,7 +47,7 @@ stdenv.mkDerivation rec {
       All high-level WM functions are implemented in Lisp for future extensibility
       or redefinition.
     '';
-    homepage = http://sawfish.wikia.com;
+    homepage = "http://sawfish.wikia.com";
     license = licenses.gpl2;
     maintainers = [ maintainers.AndersonTorres ];
   };
diff --git a/pkgs/applications/window-managers/spectrwm/default.nix b/pkgs/applications/window-managers/spectrwm/default.nix
index 1eb19e2de6f9..b38cb9906178 100644
--- a/pkgs/applications/window-managers/spectrwm/default.nix
+++ b/pkgs/applications/window-managers/spectrwm/default.nix
@@ -1,51 +1,37 @@
-{ fetchurl
-, libX11
-, libXrandr
-, libXcursor
-, libXft
-, libXt
-, libxcb
-, xcbutil
-, xcb-util-cursor
-, xcbutilkeysyms
-, xcbutilwm
-, stdenv
-}:
+{ stdenv, fetchFromGitHub, pkgconfig, xorg }:
 
 stdenv.mkDerivation {
   pname = "spectrwm";
-  version = "2.7.2";
+  version = "3.3.0";
 
-  src = fetchurl {
-    url = "https://github.com/conformal/spectrwm/archive/SPECTRWM_2_7_2.tar.gz";
-    sha256 = "1yssqnhxlfl1b60gziqp8c5pzs1lr8p6anrnp9ga1zfdql3b7993";
+  src = fetchFromGitHub {
+    owner = "conformal";
+    repo = "spectrwm";
+    rev = "SPECTRWM_3_3_0";
+    sha256 = "139mswlr0z5dbp5migm98qqg84syq0py1qladp3226xy6q3bnn08";
   };
 
-
-  buildInputs = [
-    libX11
-    libxcb
+  nativeBuildInputs = [ pkgconfig ];
+  buildInputs = with xorg; [
     libXrandr
     libXcursor
     libXft
     libXt
     xcbutil
-    xcb-util-cursor
     xcbutilkeysyms
     xcbutilwm
   ];
 
   sourceRoot = let
     subdir = if stdenv.isDarwin then "osx" else "linux";
-  in "spectrwm-SPECTRWM_2_7_2/${subdir}";
+  in "source/${subdir}";
 
-  makeFlags = [ "PREFIX=$(out)" ];
-  installPhase = "PREFIX=$out make install";
+  makeFlags = [ "PREFIX=${placeholder "out"}" ];
 
   meta = with stdenv.lib; {
     description = "A tiling window manager";
     homepage    = "https://github.com/conformal/spectrwm";
-    maintainers = with maintainers; [ jb55 ];
+    maintainers = with maintainers; [ christianharke ];
     license     = licenses.isc;
     platforms   = platforms.all;
 
diff --git a/pkgs/applications/window-managers/stalonetray/default.nix b/pkgs/applications/window-managers/stalonetray/default.nix
index f0f724d6cf0e..ad0baeb97dd2 100644
--- a/pkgs/applications/window-managers/stalonetray/default.nix
+++ b/pkgs/applications/window-managers/stalonetray/default.nix
@@ -15,7 +15,7 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "Stand alone tray";
-    homepage = http://stalonetray.sourceforge.net;
+    homepage = "http://stalonetray.sourceforge.net";
     license = licenses.gpl2;
     platforms = platforms.linux;
     maintainers = with maintainers; [ raskin ];
diff --git a/pkgs/applications/window-managers/stumpish/default.nix b/pkgs/applications/window-managers/stumpish/default.nix
index 00f4b95b3f27..c76a9ba762ef 100644
--- a/pkgs/applications/window-managers/stumpish/default.nix
+++ b/pkgs/applications/window-managers/stumpish/default.nix
@@ -34,7 +34,7 @@ stdenv.mkDerivation {
   '';
 
   meta = with stdenv.lib; {
-    homepage = https://github.com/stumpwm/stumpwm-contrib;
+    homepage = "https://github.com/stumpwm/stumpwm-contrib";
     description = "STUMPwm Interactive SHell";
     license = licenses.gpl2;
     maintainers = [ maintainers.ebzzry ];
diff --git a/pkgs/applications/window-managers/stumpwm/default.nix b/pkgs/applications/window-managers/stumpwm/default.nix
index 69b2e6ceb50f..3ee50bf16ec8 100644
--- a/pkgs/applications/window-managers/stumpwm/default.nix
+++ b/pkgs/applications/window-managers/stumpwm/default.nix
@@ -95,7 +95,7 @@ stdenv.mkDerivation {
 
   meta = with stdenv.lib; {
     description = "A tiling window manager for X11";
-    homepage    = https://github.com/stumpwm/;
+    homepage    = "https://github.com/stumpwm/";
     license     = licenses.gpl2Plus;
     maintainers = with maintainers; [ the-kenny ];
     platforms   = platforms.linux;
diff --git a/pkgs/applications/window-managers/sway/default.nix b/pkgs/applications/window-managers/sway/default.nix
index a020c10a3485..66596d9de04b 100644
--- a/pkgs/applications/window-managers/sway/default.nix
+++ b/pkgs/applications/window-managers/sway/default.nix
@@ -41,7 +41,7 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "i3-compatible tiling Wayland compositor";
-    homepage    = https://swaywm.org;
+    homepage    = "https://swaywm.org";
     license     = licenses.mit;
     platforms   = platforms.linux;
     maintainers = with maintainers; [ primeos synthetica ma27 ];
diff --git a/pkgs/applications/window-managers/sway/lock-effects.nix b/pkgs/applications/window-managers/sway/lock-effects.nix
new file mode 100644
index 000000000000..e07080497f43
--- /dev/null
+++ b/pkgs/applications/window-managers/sway/lock-effects.nix
@@ -0,0 +1,40 @@
+{ stdenv, fetchFromGitHub,
+  meson, ninja, pkgconfig, scdoc,
+  wayland, wayland-protocols, libxkbcommon,
+  cairo, gdk-pixbuf, pam
+}:
+
+stdenv.mkDerivation rec {
+  pname = "swaylock-effects";
+  version = "v1.6-0";
+
+  src = fetchFromGitHub {
+    owner = "mortie";
+    repo = "swaylock-effects";
+    rev = version;
+    sha256 = "15lshqq3qj9m3yfac65hjcciaf9zdfh3ir7hgh0ach7gpi3rbk13";
+
+  };
+
+  postPatch = ''
+    sed -iE "s/version: '1\.3',/version: '${version}',/" meson.build
+  '';
+
+  nativeBuildInputs = [ meson ninja pkgconfig scdoc ];
+  buildInputs = [ wayland wayland-protocols libxkbcommon cairo gdk-pixbuf pam ];
+
+  mesonFlags = [
+    "-Dpam=enabled" "-Dgdk-pixbuf=enabled" "-Dman-pages=enabled"
+  ];
+
+  meta = with stdenv.lib; {
+    description = "Screen locker for Wayland";
+    longDescription = ''
+      swaylock-effects is a screen locking utility for Wayland compositors.
+    '';
+    inherit (src.meta) homepage;
+    license = licenses.mit;
+    platforms = platforms.linux;
+    maintainers = with maintainers; [ gnxlxnxx ];
+  };
+}
diff --git a/pkgs/applications/window-managers/sway/wrapper.nix b/pkgs/applications/window-managers/sway/wrapper.nix
index 7c59b8b7cde4..3e12e3fcc55f 100644
--- a/pkgs/applications/window-managers/sway/wrapper.nix
+++ b/pkgs/applications/window-managers/sway/wrapper.nix
@@ -14,8 +14,8 @@ let
   baseWrapper = writeShellScriptBin "sway" ''
      set -o errexit
      if [ ! "$_SWAY_WRAPPER_ALREADY_EXECUTED" ]; then
-       export _SWAY_WRAPPER_ALREADY_EXECUTED=1
        ${extraSessionCommands}
+       export _SWAY_WRAPPER_ALREADY_EXECUTED=1
      fi
      if [ "$DBUS_SESSION_BUS_ADDRESS" ]; then
        export DBUS_SESSION_BUS_ADDRESS
diff --git a/pkgs/applications/window-managers/tabbed/default.nix b/pkgs/applications/window-managers/tabbed/default.nix
index c391532376e3..f0a427e68395 100644
--- a/pkgs/applications/window-managers/tabbed/default.nix
+++ b/pkgs/applications/window-managers/tabbed/default.nix
@@ -6,7 +6,7 @@ stdenv.mkDerivation {
   name = "tabbed-20180310";
 
   src = fetchgit {
-    url = https://git.suckless.org/tabbed;
+    url = "https://git.suckless.org/tabbed";
     rev = "b5f9ec647aae2d9a1d3bd586eb7523a4e0a329a3";
     sha256 = "0frj2yjaf0mfjwgyfappksfir52mx2xxd3cdg5533m5d88vbmxss";
   };
@@ -24,7 +24,7 @@ stdenv.mkDerivation {
   ];
 
   meta = {
-    homepage = https://tools.suckless.org/tabbed;
+    homepage = "https://tools.suckless.org/tabbed";
     description = "Simple generic tabbed fronted to xembed aware applications";
     license = licenses.mit;
     maintainers = with maintainers; [ vrthra ];
diff --git a/pkgs/applications/window-managers/trayer/default.nix b/pkgs/applications/window-managers/trayer/default.nix
index 5705ae8256c8..5c3d8710e35d 100644
--- a/pkgs/applications/window-managers/trayer/default.nix
+++ b/pkgs/applications/window-managers/trayer/default.nix
@@ -20,7 +20,7 @@ stdenv.mkDerivation rec {
   makeFlags = [ "PREFIX=$(out)" ];
 
   meta = with stdenv.lib; {
-    homepage = https://github.com/sargon/trayer-srg;
+    homepage = "https://github.com/sargon/trayer-srg";
     license = licenses.mit;
     description = "A lightweight GTK2-based systray for UNIX desktop";
     platforms = platforms.linux;
diff --git a/pkgs/applications/window-managers/vwm/default.nix b/pkgs/applications/window-managers/vwm/default.nix
index 3423b0e181d5..8eb42bb9a97d 100644
--- a/pkgs/applications/window-managers/vwm/default.nix
+++ b/pkgs/applications/window-managers/vwm/default.nix
@@ -24,7 +24,7 @@ stdenv.mkDerivation rec {
   buildInputs = [ ncurses glib libviper libpseudo gpm libvterm ];
  
   meta = with stdenv.lib; {
-    homepage = http://vwm.sourceforge.net/;
+    homepage = "http://vwm.sourceforge.net/";
     description = "Dynamic window manager for the console";
     license = licenses.gpl2Plus;
     maintainers = with maintainers; [ ];
diff --git a/pkgs/applications/window-managers/weston/default.nix b/pkgs/applications/window-managers/weston/default.nix
index 51da999aff0c..4a09cac9344a 100644
--- a/pkgs/applications/window-managers/weston/default.nix
+++ b/pkgs/applications/window-managers/weston/default.nix
@@ -46,7 +46,7 @@ stdenv.mkDerivation rec {
 
   meta = {
     description = "Reference implementation of a Wayland compositor";
-    homepage = https://wayland.freedesktop.org/;
+    homepage = "https://wayland.freedesktop.org/";
     license = licenses.mit;
     platforms = platforms.linux;
     maintainers = with maintainers; [ primeos ];
diff --git a/pkgs/applications/window-managers/windowmaker/default.nix b/pkgs/applications/window-managers/windowmaker/default.nix
index 8ad63999289e..64783ac5fbe8 100644
--- a/pkgs/applications/window-managers/windowmaker/default.nix
+++ b/pkgs/applications/window-managers/windowmaker/default.nix
@@ -25,7 +25,7 @@ stdenv.mkDerivation rec {
   ];
 
   meta = with stdenv.lib; {
-    homepage = http://windowmaker.org/;
+    homepage = "http://windowmaker.org/";
     description = "NeXTSTEP-like window manager";
     longDescription = ''
       Window Maker is an X11 window manager originally designed to
diff --git a/pkgs/applications/window-managers/windowmaker/dockapps/alsamixer.app.nix b/pkgs/applications/window-managers/windowmaker/dockapps/alsamixer.app.nix
index e708682e3036..4e1256399e76 100644
--- a/pkgs/applications/window-managers/windowmaker/dockapps/alsamixer.app.nix
+++ b/pkgs/applications/window-managers/windowmaker/dockapps/alsamixer.app.nix
@@ -3,7 +3,7 @@
 stdenv.mkDerivation {
   name = "alsamixer.app-0.2.1";
   src = fetchgit {
-     url = git://repo.or.cz/dockapps.git;
+     url = "git://repo.or.cz/dockapps.git";
      rev = "38c74350b02f35824554ce0c4f0f251d71762040";
      sha256 = "0g9cwhlqg065fbhav4g4n16a4cqkk9jykl3y0zwbn5whhacfqyhl";
   };
@@ -20,7 +20,7 @@ stdenv.mkDerivation {
 
   meta = {
     description = "Alsa mixer application for Windowmaker";
-    homepage = http://windowmaker.org/dockapps/?name=AlsaMixer.app;
+    homepage = "http://windowmaker.org/dockapps/?name=AlsaMixer.app";
     license = stdenv.lib.licenses.gpl2;
     maintainers = [ stdenv.lib.maintainers.bstrik ];
   };
diff --git a/pkgs/applications/window-managers/windowmaker/dockapps/wmcalclock.nix b/pkgs/applications/window-managers/windowmaker/dockapps/wmcalclock.nix
index e2f17d11f64d..48f4753d674b 100644
--- a/pkgs/applications/window-managers/windowmaker/dockapps/wmcalclock.nix
+++ b/pkgs/applications/window-managers/windowmaker/dockapps/wmcalclock.nix
@@ -3,7 +3,7 @@
 stdenv.mkDerivation {
   name = "wmCalClock-1.25";
   src = fetchurl {
-     url = http://www.cs.mun.ca/~gstarkes/wmaker/dockapps/files/wmCalClock-1.25.tar.gz;
+     url = "http://www.cs.mun.ca/~gstarkes/wmaker/dockapps/files/wmCalClock-1.25.tar.gz";
      sha256 = "4b42b55bb7c1d7c58b5ee1f0058c683d3e4f3e3380d3a69c54a50b983c7c1b3f";
   };
 
diff --git a/pkgs/applications/window-managers/windowmaker/dockapps/wmsm.app.nix b/pkgs/applications/window-managers/windowmaker/dockapps/wmsm.app.nix
index 3e8b3f7f1584..ad255414a692 100644
--- a/pkgs/applications/window-managers/windowmaker/dockapps/wmsm.app.nix
+++ b/pkgs/applications/window-managers/windowmaker/dockapps/wmsm.app.nix
@@ -3,7 +3,7 @@
 stdenv.mkDerivation {
   name = "wmsm.app-0.2.1";
   src = fetchurl {
-     url = http://linux-bsd-unix.strefa.pl/wmsm.app-0.2.1.tar.bz2;
+     url = "http://linux-bsd-unix.strefa.pl/wmsm.app-0.2.1.tar.bz2";
      sha256 = "369a8f2e5673c6b7ab0cf85166f38fbf553dd966c3c1cfeec0e32837defd32c7";
   };
 
@@ -22,7 +22,7 @@ stdenv.mkDerivation {
 
   meta = {
     description = "System monitor for Windowmaker";
-    homepage = http://linux-bsd-unix.strefa.pl;
+    homepage = "http://linux-bsd-unix.strefa.pl";
     license = stdenv.lib.licenses.gpl2;
     maintainers = [ stdenv.lib.maintainers.bstrik ];
   };
diff --git a/pkgs/applications/window-managers/windowmaker/dockapps/wmsystemtray.nix b/pkgs/applications/window-managers/windowmaker/dockapps/wmsystemtray.nix
index e5eb2fc559da..3e073cd8e91b 100644
--- a/pkgs/applications/window-managers/windowmaker/dockapps/wmsystemtray.nix
+++ b/pkgs/applications/window-managers/windowmaker/dockapps/wmsystemtray.nix
@@ -3,7 +3,7 @@
 stdenv.mkDerivation {
   name = "wmsystemtray-1.4";
   src = fetchurl {
-     url = mirror://sourceforge/project/wmsystemtray/wmsystemtray/wmsystemtray-1.4.tar.gz;
+     url = "mirror://sourceforge/project/wmsystemtray/wmsystemtray/wmsystemtray-1.4.tar.gz";
      sha256 = "8edef43691e9fff071000e29166c7c1ad420c0956e9068151061e881c8ac97e9";
   };
 
@@ -12,7 +12,7 @@ stdenv.mkDerivation {
 
   meta = {
     description = "Systemtray for Windowmaker";
-    homepage = http://wmsystemtray.sourceforge.net;
+    homepage = "http://wmsystemtray.sourceforge.net";
     license = stdenv.lib.licenses.gpl2;
     maintainers = [ stdenv.lib.maintainers.bstrik ];
     platforms = stdenv.lib.platforms.linux;
diff --git a/pkgs/applications/window-managers/wmii-hg/default.nix b/pkgs/applications/window-managers/wmii-hg/default.nix
index 426fcfe8efce..721e618b1d43 100644
--- a/pkgs/applications/window-managers/wmii-hg/default.nix
+++ b/pkgs/applications/window-managers/wmii-hg/default.nix
@@ -7,7 +7,7 @@ stdenv.mkDerivation rec {
   pname = "wmii";
 
   src = fetchurl {
-    url = https://storage.googleapis.com/google-code-archive-source/v2/code.google.com/wmii/source-archive.zip;
+    url = "https://storage.googleapis.com/google-code-archive-source/v2/code.google.com/wmii/source-archive.zip";
     sha256 = "1wmkq14zvmfrmydl8752xz852cy7agrx3qp4fy2cc5asb2r9abaz";
   };
 
@@ -37,7 +37,7 @@ stdenv.mkDerivation rec {
   makeFlags = [ "WMII_HGVERSION=hg${rev}" ];
 
   meta = {
-    homepage = https://suckless.org/; # https://wmii.suckless.org/ does not exist anymore
+    homepage = "https://suckless.org/"; # https://wmii.suckless.org/ does not exist anymore
     description = "A small window manager controlled by a 9P filesystem";
     maintainers = with stdenv.lib.maintainers; [ kovirobi ];
     license = stdenv.lib.licenses.mit;
diff --git a/pkgs/applications/window-managers/wtftw/default.nix b/pkgs/applications/window-managers/wtftw/default.nix
deleted file mode 100644
index febe16dd349f..000000000000
--- a/pkgs/applications/window-managers/wtftw/default.nix
+++ /dev/null
@@ -1,42 +0,0 @@
-{ stdenv, fetchFromGitHub, rustPlatform, libXinerama, libX11, pkgconfig }:
-
-rustPlatform.buildRustPackage {
-  name = "wtftw-0.0pre20170921";
-  src = fetchFromGitHub {
-    owner = "kintaro";
-    repo = "wtftw";
-    rev = "13712d4c051938520b90b6639d4ff813f6fe5f48";
-    sha256 = "1r74nhcwiy2rmifzjhdal3jcqz4jz48nfvhdyw4gasa6nxp3msdl";
-  };
-
-  # Delete this on next update; see #79975 for details
-  legacyCargoFetcher = true;
-
-  cargoSha256 = "18lb24k71sndklbwwhbv8jglj2d4y9mdk07l60wsvn5m2jbnpckk";
-
-  nativeBuildInputs = [ pkgconfig ];
-  buildInputs = [ libXinerama libX11 ];
-  libPath = stdenv.lib.makeLibraryPath [ libXinerama libX11 ];
-
-  preInstall = ''
-    cargo update
-  '';
-
-  installPhase = ''
-    mkdir -p $out/bin
-    mkdir -p $out/share/xsessions
-    cp -p target/release/wtftw $out/bin/
-    echo "[Desktop Entry]
-      Name=wtftw
-      Exec=$out/bin/wtftw
-      Type=XSession
-      DesktopName=wtftw" > $out/share/xsessions/wtftw.desktop
-  '';
-
-  meta = with stdenv.lib; {
-    broken = true;
-    description = "A tiling window manager in Rust";
-    homepage = https://github.com/Kintaro/wtftw;
-    license = stdenv.lib.licenses.bsd3;
-  };
-}
diff --git a/pkgs/applications/window-managers/xmonad/log-applet/default.nix b/pkgs/applications/window-managers/xmonad/log-applet/default.nix
index f7ccda273890..7c6041b576e3 100644
--- a/pkgs/applications/window-managers/xmonad/log-applet/default.nix
+++ b/pkgs/applications/window-managers/xmonad/log-applet/default.nix
@@ -36,7 +36,7 @@ stdenv.mkDerivation rec {
   PKG_CONFIG_LIBXFCE4PANEL_1_0_LIBDIR = "$(out)/lib";
 
   meta = with stdenv.lib; {
-    homepage = https://github.com/kalj/xmonad-log-applet;
+    homepage = "https://github.com/kalj/xmonad-log-applet";
     license = licenses.bsd3;
     description = "An applet that will display XMonad log information (${desktopSupport} version)";
     platforms = platforms.linux;
diff --git a/pkgs/applications/window-managers/yabar/build.nix b/pkgs/applications/window-managers/yabar/build.nix
index f7867882d222..10806ba78cfe 100644
--- a/pkgs/applications/window-managers/yabar/build.nix
+++ b/pkgs/applications/window-managers/yabar/build.nix
@@ -47,7 +47,7 @@ stdenv.mkDerivation {
 
   meta = with stdenv.lib; {
     description = "A modern and lightweight status bar for X window managers";
-    homepage    = https://github.com/geommer/yabar;
+    homepage    = "https://github.com/geommer/yabar";
     license     = licenses.mit;
     platforms   = platforms.linux;
     maintainers = with maintainers; [ ma27 ];