|
|
|
Browser-Home-Profile (BHP)
|
|
|
|
======
|
|
|
|
|
|
|
|
Maintains web-browser home profile `$HOME/.{,cache/}PROFILE` on Unix
|
|
|
|
systems in a tmpfs (or zram backed filesystem) to get a very responsive browser,
|
|
|
|
with an optional tarball back up.
|
|
|
|
|
|
|
|
Using a compressor like lz4 or lzo(p) make compression/decompression seamless,
|
|
|
|
so no need to remove the autoload of the function. Additionally, the tarball
|
|
|
|
back up can be decompressed after set up by setting up an option.
|
|
|
|
|
|
|
|
Settings
|
|
|
|
--------
|
|
|
|
|
|
|
|
This module can guess a profile to maintain by looking at the previous directory,
|
|
|
|
by looking at the previous directory, however a user can set the following:
|
|
|
|
|
|
|
|
zstyle ':prezto:module:BHP' browser 'BROWSER'
|
|
|
|
zstyle ':prezto:module:BHP' profile 'abcd1234'
|
|
|
|
zstyle ':prezto:module:BHP' compressor 'lzop -1'
|
|
|
|
zstyle ':prezto:module:BHP' zsh-hook 'yes'
|
|
|
|
|
|
|
|
Selecting a compressor to be used instead of the default ('lz4 -1') can be set.
|
|
|
|
Second setting would select a specific profile, e.g. firefox specific one if many
|
|
|
|
profiles are available. Last one would add a function to zshexit hook,
|
|
|
|
so the profile will be saved or archived to be more precise before the shell exit.
|
|
|
|
|
|
|
|
Optimizations
|
|
|
|
-------
|
|
|
|
|
|
|
|
Just make sure to have at least `/tmp` or your system TMPDIR in a tmpfs for the
|
|
|
|
least to get any benefice with something like the following in fstab(5):
|
|
|
|
|
|
|
|
tmp /tmp tmpfs mode=1777,size=256M,noatime 0 0
|
|
|
|
|
|
|
|
This will ensure very low latency when browsing the intertubes and removing the
|
|
|
|
profile in the fly *really* remove any trace of your browsing history because
|
|
|
|
everything is in memory, but firing up a `bhp` command will nullify this effect.
|
|
|
|
|
|
|
|
### Auto-saving/Auto-start profile
|
|
|
|
|
|
|
|
Of course, one can save a profile at regular time interval using a cron job or
|
|
|
|
atd when need be. Lastly, a profile can be auto-started by setting:
|
|
|
|
|
|
|
|
zstyle ':prezto:module:BHP' decompress 'yes'
|
|
|
|
|
|
|
|
Customizations
|
|
|
|
-------
|
|
|
|
|
|
|
|
This module may not be needed in specif use cases... no superuser, no tty or
|
|
|
|
console devices... if sharing the same configuration files with different
|
|
|
|
users. The following can be done in that case in *zpreztorc*.
|
|
|
|
|
|
|
|
zpmodules=(environment editor prompt helper utility precompile)
|
|
|
|
if [[ ${TTY/tty} == $TTY ]] && [[ $EUID != 0 ]] {
|
|
|
|
zpmodules=($zpmodules browser-home-profile)
|
|
|
|
}
|
|
|
|
zstyle ':prezto:load' pmodule $zpmodules
|
|
|
|
unset zpmodules
|
|
|
|
|
|
|
|
That snipet of code exlude console and *superuser* from having this module.
|
|
|
|
|
|
|
|
Authors
|
|
|
|
-------
|
|
|
|
|
|
|
|
- [tokiclover](https://github.com/tokiclover)
|
|
|
|
|