tokiclover
2069e408fb
|
10 years ago | |
---|---|---|
.. | ||
functions | 10 years ago | |
README.md | 10 years ago | |
init.zsh | 10 years ago |
README.md
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.