Firemark is a command line program for downloading missing Firefox bookmark icons. It reads places.sqlite from the given profile directory and downloads missing favicons into favicons.sqlite in the same folder.
Firemark can also be used as a helper utility for extracting favicon links from a given URL as an alternative to various online favicon retrieval services. See the --extract option.
Prebuilt binaries can be found in Releases section.
Navigate to about:profiles in Firefox and copy the Root Directory path from your default profile and replace <Profile-Directory> with it in the commands below. Press Ctrl+C to stop Firemark before it completes. You can also press Ctrl+C 3 times to immediately shut it down in case Firemark takes too long to respond.
Close all Firefox instances before using Firemark on your profile directory.
.\firemark.exe --verbose --profile "<Profile-Directory>"./firemark --verbose --profile "<Profile-Directory>"firemark [options] --profile path/to/profile-folder
Downloads missing Firefox bookmark icons.
firemark [options] --extract https://example.com
Extract favicon URLs from web page with link[rel~=icon] selector to standard output.
-p,--profile=PATH
Path to profile folder wherefavicons.sqliteandplaces.sqliteexists.-b,--backup
Backupfavicons.sqlite. (Default)-B,--no-backup
Don't backupfavicons.sqlite.-e,--erase
Erase favicon table before proceeding.-f,--force
Force downloading icons for all bookmarks instead of just missing ones.-j,--jobs=N
Number of concurrent jobs. Use it to speed up downloading favicons if you have too many bookmarks.
Anything more than-j 5is not recommended since servers might block you out because of rate limiting.-x,--extract=URL
Extract favicon URLs from web page withlink[rel~=icon]selector to standard output and exit.
This also includes the root/favicon.icofor convenience.-v,--verbose
Print diagnostic messages.--version
Output version information and exit.--help
Show this help information and exit.
- Firemark inserts duplicate pages into
moz_pages_w_iconstable. - Apparently some
icon_urlcolumns inmoz_iconstable end up with incomplete URLs such as/favicon.ico,/assets/favicons/favicon.icoor/static/assets/favicon.ico?v=2.
See Issues for bug reports.
You don't strictly need a specific compiler but those listed in Prerequisites are the ones used in build scripts.
Check out the build.sh & build.ps1 files to learn more and tweak as you like.
On Windows, you can also link against sqlite3.lib import library instead of the object file directly. In this case the compiled executable will depend on sqlite3.dll. See: How to generate an import library (LIB-file) from a DLL?
Prerequisites:
- Microsoft Visual C Compiler
cl - Digital Mars D Compiler
dmd
From PowerShell:
.\build.ps1If you're getting "running scripts is disabled on this system" errors, execute the following:
Set-ExecutionPolicy -ExecutionPolicy Bypass -Scope CurrentUser -ForceSee About Execution Policies for more information.
Prerequisites:
- GNU Compiler Collection
gcc - Digital Mars D Compiler
dmd
From Bash:
./build.shFiremark is licensed under the Mozilla Public License 2.0.