Sunday, September 11, 2016

no gvfs

The gvfs is a kludge and system hog. Its only value is a trashbin. I don't need or like a trash bin, I use udiskie2 for mounting USB sticks, I don't need thunar, and I don't need bookmarks in evince. Note: I also try to disable PAM and polkit, whenever possible. I've found that PAM has some hooks that require it to be installed, though I am able to turn it off in htop fairly often.

evince & gvfs

In 2021, an evince install requires gvfs (and fuse), even though gvfs is only for bookmarks. So I now use Okular, which has a 300MB KDE/QT Photon library installed with it. Outside of the HDD space, it's no problem because these libraries do not run except when Okular is running; the KDE dependencies are not a file system, and are not persistent. That said, Okular is not as tight an interface as Evince. If one disables the sidebar, it's pretty close. Prints fine.

undoing gvfs

To view gvfs dependent applications running...

$ psaux |grep gvfs

Amazing number of things, right. Uninstall gvfs, and any others on the list, but also manually rid yourself of its stuff in your home directory, such as its cpu-hogging kludge of metadata. However, a person can't just eliminate gvfs, because nautilus will complain.That's apparnetly because nautilus depends on gvfs-disk-utility and gvfs-disk-utility depends on gvfs. One order of operations could be:

# pacman -Rsn nautilus thunar evince
# pacman -Rsn gvfs gvfs-mtp
$ pkill gvfsd-metadata
$ rm -rf ~/.local/share/gvfsd-metadata

Reboot to check that things is a-workin'. Should be no trash can in Thunar. It will still remain so just delete the entire trash directory.

# rm -r .local/share/Trash .local/share/gvfs-metadata

Secondly, when gvfs installs, it routinely installs additional feature apps. Many of these, eg PAM, also cause permission conflicts. PAM is particularly hard to get off of one's system once it's been harkened. The real question then becomes not the alternative to gvfs, but what to do about gvfs and its friends once some application has inevitably and unfortunately installed and/or activated gvfs and company.

It's a little difficult to move everything from .bashrc to .xinitrc, as some of the command options of bashrc are listed in there by default, and where else can I see those commands? I've added a section below for its default configs.

  1. get rid of .bashrc. Put all its regular commands for the terminal cursors and paths into .xinitrc
  2. thanks to this page:
    nano .xinitrc
    GVFS_DISABLE_FUSE=1
    export GVFS_DISABLE_FUSE

more thorough

The above is enough for most, but on older machines, it won't be. Both gvfs and polkit are immense permission kludges. And you can do without polkit in favor of simply using sudo when needed. Polkit works through, I believe, the wheel group to address userspace priviliges. The Arch page on it. Invariably it's one of the top users of memory if you run htop.

default .bashrc

You'll need to move all of these into .xinitrc if you delete bashrc.

# ~/.bashrc
# file works on colors and alias commands
# do exports and paths in .xinitrc

# If not running interactively, don't do anything
[[ $- != *i* ]] && return

alias ls='ls --group-directories-first --color'
alias ll='ls -l'

#PS1='[\u@\h \W]\$ '

# for Video (VDPAU)
#export VDPAU_DRIVER=r600

# for some games like solitaire where locale is important
# export LC_ALL="C"

# for TexLive
#export PATH=/home/foo/latex/bin/x86_64-linux:$PATH
#export INFOPATH=/home/foo/latex/texmf-dist/doc/info:$INFOPATH
#export MANPATH=/home/foo/latex/texmf-dist/doc/man:$MANPATH
export NVM_DIR="/home/foo/.nvm"
[ -s "$NVM_DIR/nvm.sh" ] && . "$NVM_DIR/nvm.sh" # This loads nvm