tokiclover
1a6eaa6b66
|
10 years ago | |
---|---|---|
.. | ||
functions | 10 years ago | |
README.md | 10 years ago | |
init.zsh | 10 years ago |
README.md
Firefox home profile (fhp)
Maintains firefox home profile '$HOME/.mozilla/firefox/abcd1234.default' on Unix systems in a tmpfs or zram backed filesystem to get a very responsive browser, with a tarball back up saved in '$HOME/.mozilla/firefox'.
Using a compressor like lz4 or lzo(p) make compression/decompression seamless, so no need to remove the autoload of the function. Although, it can be commented out to have a empty profile to start with, a 'fhp' command at the prompt will decompress the tarball instantenously with lz4/lzo(p).
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:firefox-profile' profile 'abcd1234'
zstyle ':prezto:module:firefox-profile' compressor 'lzop -1'
zstyle ':prezto:module:firefox-profile' zsh-hook 'yes'
The second setting select a compressor to be used instead of default is 'lz4 -1'.
The last setting add fhp 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 of this script with something like:
/etc/fstab: 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 'fhp' command will nullify this effect.
Zram baccked File System
Aleternatively, one can pass a root directory in zram backed filesystem:
zstyle ':prezto:module:firefox-profile' zramdir 'directory'
Auto-saving/Auto-start profile
Of course, one can save a profile at regular time interval using a cron job or something similar.
A profile can be auto-started by setting:
zstyle ':prezto:module:firefox-profile' start-profile '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 firefox-profile)
}
zstyle ':prezto:load' pmodule $zpmodules
unset zpmodules
That snipet of code exlude console and superuser from having this module.