• Stars
    star
    203
  • Rank 191,431 (Top 4 %)
  • Language
    Shell
  • License
    MIT License
  • Created about 12 years ago
  • Updated 10 months ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

Simple script to vacuum and reindex sqlite databases used by Firefox and by Chrome/Chromium.

Profile-cleaner

Use profile-cleaner to reduce the size of browser profiles by organizing their sqlite databases using sqlite3's vacuum and reindex functions. The term "browser" is used loosely since profile-cleaner happily works on some email clients and newsreaders too.

Supported Browsers

Documentation

Consult the man page.

Installation from Source

To build from source, see the included INSTALL text document.

Installation from Distro Packages

  • logoArch via the official package in [community]
  • logoGentoo: See instructions below
  • logoNixOS: in the official repos
  • logoSlackware: on slackbuilds

Gentoo Users

Profile cleaner is in the main repo:

emerge -av app-admin/profile-cleaner

Other Distros

If you are interested in packaging profile-cleaner for your favorite distro, please contact me.

Dependencies

  • bash
  • bc
  • findutils
  • sqlite
  • parallel

Sample Output and Results Using an "Uncleaned" Firefox Profile:

Size before: 154.17 Mbytes
Size after:  99.11 Mbytes

$ profile-cleaner f

/home/facade/.mozilla/firefox/zee52krz.default/cookies.sqlite reduced by .87 Mbytes
/home/facade/.mozilla/firefox/zee52krz.default/signons.sqlite reduced by .41 Mbytes
/home/facade/.mozilla/firefox/zee52krz.default/downloads.sqlite reduced by .56 Mbytes
/home/facade/.mozilla/firefox/zee52krz.default/chromeappsstore.sqlite reduced by .03 Mbytes
/home/facade/.mozilla/firefox/zee52krz.default/urlclassifier3.sqlite reduced by 43.10 Mbytes
/home/facade/.mozilla/firefox/zee52krz.default/formhistory.sqlite reduced by .11 Mbytes
/home/facade/.mozilla/firefox/zee52krz.default/addons.sqlite reduced by 0 Mbytes
/home/facade/.mozilla/firefox/zee52krz.default/permissions.sqlite reduced by 0 Mbytes
/home/facade/.mozilla/firefox/zee52krz.default/content-prefs.sqlite reduced by 0 Mbytes
/home/facade/.mozilla/firefox/zee52krz.default/extensions.sqlite reduced by 0 Mbytes
/home/facade/.mozilla/firefox/zee52krz.default/webappsstore.sqlite reduced by 0 Mbytes
/home/facade/.mozilla/firefox/zee52krz.default/OfflineCache/index.sqlite reduced by 0 Mbytes
/home/facade/.mozilla/firefox/zee52krz.default/search.sqlite reduced by 0 Mbytes
/home/facade/.mozilla/firefox/zee52krz.default/places.sqlite reduced by 9.98 Mbytes

firefox profile reduced by 55.06 Mbytes

Speed Comparison

28-Nov-2012 Profile-cleaner has been rewritten to use GNU Parallel for processing.

Here is a contrived example cleaning 6 firefox profiles comparing the classical version of Profile-cleaner which used for loops to process profiles to the new version:

  • There are a total of 312 M in the 6 "dirty" profiles.
  • Test machine is an Intel 3770K @ 4.50 GHz.
  • After cleaning there is a total of 213 M in the 6 "clean" profiles.

new 4.07s user 0.42s system 318% cpu 1.411 total

old 8.15s user 0.43s system 95% cpu 8.942 total

Your mileage may vary.

More Repositories

1

profile-sync-daemon

Symlinks and syncs browser profile dirs to RAM thus reducing HDD/SDD calls and speeding-up browsers.
Shell
899
star
2

kernel_compiler_patch

Kernel patch enables compiler optimizations for additional CPUs.
652
star
3

xscreensaver-aerial

xscreensaver that randomly selects one of the Apple TV4 aerial movies
Shell
426
star
4

anything-sync-daemon

Symlinks and syncs user specified dirs to RAM thus reducing HDD/SDD calls and speeding-up the system.
Shell
345
star
5

pulseaudio-ctl

Control pulseaudio volume from the shell or mapped to keyboard shortcuts. No need for alsa-utils.
Shell
275
star
6

lostfiles

Simple script that identifies files not owned by any Arch Linux package.
Shell
270
star
7

modprobed-db

Keeps track of EVERY kernel module that has ever been probed. Useful for those of us who make localmodconfig :)
Shell
171
star
8

kodi-standalone-service

Use systemd to allow for standalone operation of kodi.
Roff
158
star
9

clean-chroot-manager

Wrapper script for managing clean chroots under Arch Linux
Shell
110
star
10

configs

User and system config files.
Shell
53
star
11

ovpngen

Generate an OpenVPN Connect private tunnel profile in the unified format
Shell
44
star
12

hosts-update

Updates /etc/hosts with the mvps blocklist to prevent thousands of parasites, hijackers and unwanted adware/spyware/privacy websites from working.
Shell
42
star
13

sleepnoise

Turn a Raspberry Pi into a white noise generator
Shell
36
star
14

auto-reencode

Mass convert wmv and flv files to mp4 contained x264 files using ffmpeg.
Shell
19
star
15

adblock-by_haarp

A clean, lean and mean adblocking script for TomatoUSB routers
Shell
19
star
16

bin

Collection of scripts perhaps of utility to others.
Shell
17
star
17

lxc-service-snapshots

Run disposable (read-only then delete) Linux containers (LXC) to serve up OpenVPN (server only), Pi-Hole, or WireGuard.
Shell
17
star
18

newsboat_custom_stuff

Hacky shell scripts to generate RSS feeds on the fly for newsboat
Shell
15
star
19

mplayer-resumer

An mplayer wrapper script that will resume playback of previously-stopped video where you left off. Written by Bob Igo.
Perl
14
star
20

streamzap

Linux Streamzap USB remote config files for lirc, mplayer and kodi
Python
12
star
21

mandb-ondemand

Rebuilds the manpage index database on-demand to speed-up pacman operations.
Makefile
11
star
22

arris-capture

Shell script to log Arris power levels, signal-to-noise ratio and frequencies. Ready to graph in dygraph.
Shell
11
star
23

backdrop-randomizer

Companion for xfdesktop which randomly cycles through wallpapers without repeating.
Shell
9
star
24

distccd-arch-arm

Provides an Arch ARM client with Systemd services/environment files to make use of distcc-alarm naively.
Makefile
8
star
25

kodi-logger

Keeps track of every video you watch on kodi (xbmc).
Shell
8
star
26

raspberrypi-kodi-service

Systemd service unit to run with minimal frame buffer to save GPU memory
7
star
27

kodi-prevent-xscreensaver

Keep xscreensaver from coming on when kodi is active.
Makefile
6
star
28

crosstool-ng_for_distcc

Build your own toolchain with crosstool-ng for Arch ARM volunteers to help build x86_64 stuff
5
star
29

RT-N66U

Miscell. scripts the Asus RT-N66U running TomatoUSB can use.
4
star
30

linux-optimized

more or less the old linux-ck but without ck patches since they are no longer maintained
Shell
4
star
31

odroid-auto-bridge

Simple method to create a network bridge for the ODROID-C1+/C2/XU4.
Makefile
4
star
32

governor-switcher

Systemd units to toggle between ondemand and performance based on time of day.
Makefile
3
star
33

sb6121-capture

Shell script to log SB6121 power levels, signal-to-noise ratio and frequencies.
Shell
2
star
34

getpkg

Alternative to ABS, uses svn to pull Arch Linux PKGBUILD and associated files
Shell
2
star
35

multilame

Pseudo multi-threaded bash script to parallel encode .wav to .mp3 via lame
Shell
2
star
36

odroid-c2-rtc

Setup RTC shield for C2 on Arch ARM
Makefile
2
star
37

makechapterlist

Trivial bash script to make a chapter list file that MP4Box can use.
Shell
2
star
38

buildhelper

helper for building with devtools-alarm on Arch ARM using distcc
Shell
1
star
39

distccd-alarm

1
star
40

kodi-raspberry-pi3

Optimize kodi for the Cortex-A72 processor found on the Raspberry Pi 4
1
star