Live data from Hacker News

Dotfiles feel too personal to share

hamatti.org

101–110 of 153 posts

Re: Dotfiles feel too personal to share

#101
post #91

Installing a (read: many) custom vim plugins and color scheme and screen version and etc… stops being fun about the third time you have to log into a nameless server. That being said, there are some settings that I absolutely cannot live without; `j=gj` being a good example in vim. IMO your dot files are only useful to share if they are usable with the default software of the place you’ve shared them to. Otherwise th…

That's why you don't use vim, but Emacs with tramp.

Nano.

Re: Dotfiles feel too personal to share

#102
post #53

That's something I was a little bit conflicted about for some time. After using a few open source tools(shoutout to syncthing and linkding :)) and I realised that if you want to use something for free, sharing is the least you can do. My dotfiles are private for now cause I need to clean some commits(I think I might have added some private info before) but I intend to publish them eventually

> My dotfiles are private for now cause I need to clean some commits

I had to do similar. I ended up deleting the git history and just recreating it before pushing. The best thing was to add a dependency on `~/.secrets` or other similar un-tracked file, which is basically just a source-able script that defines things like API keys, private URLs, etc.

Re: Dotfiles feel too personal to share

#103
post #2

I feel similarly. For me it’s less about my unique customizations and more about this paranoia of there being something remotely sensitive in my ssh configs or something… the idea of hostnames, ips, domains, etc “leaking” worries me. I use chezmoi to manage my dotfiles, if anyone has any advice on how to handle these worries I am all ears. I would love to share mine, even to just be able to point coworkers at my conf…

In chezmoi you can use gpg encryption: https://www.chezmoi.io/user-guide/encryption/

Re: Dotfiles feel too personal to share

#104
post #66

Professional security researcher here. I would strongly discourage threat modeling with vibes. Your post already reveals potentially the scariest things someone might learn if you published your dotfiles: that you use Homebrew, pip, etc as part of them. In doing so you are telling everyone you allow any internet rando to have remote code execution rights on your computer. To me that is like boldly saying you like pri…

This is extremely alarmist. If you are on Mac, developing anything at all with Python, those are going to be your tools. If you randomly guessed at developer setups, that is going to be one of the most common setups as well.

What's next, I use a computer so someone could just upload a virus somewhere in hopes I happen upon it, which would be dangerous?

I have dotfiles which not only specify Python, but also its version and some packages. That protects against typosquatting! I will never type those package names out manually again. And this is all in Nix (btw), so all hash-pinned!

Re: Dotfiles feel too personal to share

#105

Installing a (read: many) custom vim plugins and color scheme and screen version and etc… stops being fun about the third time you have to log into a nameless server. That being said, there are some settings that I absolutely cannot live without; `j=gj` being a good example in vim. IMO your dot files are only useful to share if they are usable with the default software of the place you’ve shared them to. Otherwise th…

This is the main reason that, even though I know I'd enjoy zsh, I stubbornly stick with bash. It's because I know that I will be extra frustrated when I have to log into any of the number of machines that I have to do real work on that don't have it already set up.

Try fish. It has good defaults and don't require any configuration. I install it on every server I log into as my first instinct

Re: Dotfiles feel too personal to share

#106
post #97

Earlier quoted context omitted.

The original statement was "vim plugins" SO yeah you can have your fancy alias or whatever but I'm with the GP that adding a bunch of cool plugins that I get used to and then... perpetually can't use because 40% of my time is spent on remote machines I don't have admin on... ehh.. quickly becomes not worth it. It's like when I tried to get used to a DVORAK keyboard when I'd spend my weekdays in a school computer lab.…

You don't need admin to install emacs packages..... I'm sure vim isn't dumb enough to require that?!

For me it was that each plugin would have to go through a security approval process and that was not something they appreciated. (e.g. they have "real work" to do), whilst mapping `n` to `nzz` or setting the regexpengine to `0` well, yeah, go for it.

Re: Dotfiles feel too personal to share

#107

I have two sets of dotfiles - public and private. I don't mind sharing my public ones - what do I care if someone on the internet thinks my tmux setup is non-optimal? But there are some things I do keep private, though they probably don't qualify as dotfiles, exactly - RSS subscription backups, some backup scripts that reveal filepaths I'd rather not have revealed, old outdated things like my znc, irssi, etc. configs…

My dotfiles have a massive .gitignore in them for all the things I don't want to share, or can't easily divide into shareable and non-shareable. The largest section in my .gitignore is:

    # Some transient, some configuration files, but configuration files get written
    # out every time, and not just the changed values.  Some also contain
    # machine-specific configuration, and private data.
It includes things like .config/libreoffice , which is a baffling combination of:

- backup copies of documents (which should go elsewhere)

- copies of icons from the icon theme (which should go elsewhere)

- log files (which should go elsewhere)

- piles of binary pack files, probably containing a mix of things

- configuration in XML form (potentially useful to version), but with embedded lists of recently opened files (private, should go elsewhere), including base64-encoded thumbnails.

Re: Dotfiles feel too personal to share

#108

Installing a (read: many) custom vim plugins and color scheme and screen version and etc… stops being fun about the third time you have to log into a nameless server. That being said, there are some settings that I absolutely cannot live without; `j=gj` being a good example in vim. IMO your dot files are only useful to share if they are usable with the default software of the place you’ve shared them to. Otherwise th…

I thought the appeal of vi was it can mostly be used "as is" vs emacs being infinitely customizable? The folks I know who use vi do so because they are at their core, sysadmins, and something simple and consistent is valued.

Re: Dotfiles feel too personal to share

#109
post #66

Professional security researcher here. I would strongly discourage threat modeling with vibes. Your post already reveals potentially the scariest things someone might learn if you published your dotfiles: that you use Homebrew, pip, etc as part of them. In doing so you are telling everyone you allow any internet rando to have remote code execution rights on your computer. To me that is like boldly saying you like pri…

This is extremely alarmist. If you are on Mac, developing anything at all with Python, those are going to be your tools. If you randomly guessed at developer setups, that is going to be one of the most common setups as well. What's next, I use a computer so someone could just upload a virus somewhere in hopes I happen upon it, which would be dangerous? I have dotfiles which not only specify Python, but also its versi…

It is absolutely not alarmist. Seriously, go apply to be a Homebrew developer right now under an alias, make some useful updates for a few months, then submit a PR as another alias, and approve and merge your own changes from the first alias. After you get away with skipping code review a few times, now go switch a popular package that relies on abandoned sources to point to your fork that makes a few legitimate updates.

Now in a few months make an update that compromises the random number generator on every brew users laptop making it easy to covertly intercept and manipulate the traffic of any target however you want. Maybe for less chance of getting caught, target sysadmins or release engineers by targeting a niche tool many of them use and wait until they publish new ssh keys to github (which are always public!), that you can re-generate the private keys of since you know about their compromised entropy. Check for public dotfiles of your targets to pick the right niche tool. Now go collect database dumps or crypto from a pile of major companies. Easy money if you do not have ethics.

Seen these attacks in the wild many times, some at close range. A bored teenager could do this, and in fact attacks like this happen every day. And everyone just says pointing it out is "alarmist". People used to defend lead paint and asbestos too. Survivors bias is a hell of a drug.

I have done supply chain attacks along the lines of the above myself to prove the risk is very much real to my clients. It is expensive to fix so wanting the risk to be overstated is understandable, but it is actually super easy. Sometimes you can even get away with buying the expired email domain of a inactive maintainer so you can easily just take over their identity. Done this twice and I am no state actor.

Nix, by the way, is hash pinned, but you just blindly update those hashes when there are updates, right? Their code submission process is as yolo as Homebrew. Any rando can push whatever they want without multi-party code signing. I am the one that submitted the RFC to nix to fix this which was rejected as in the end they admitted they want a hobby distro and do not want the overhead and rigor needed for professional targeted environments.

This is why I was forced to abandon nix and get all my clients to abandon it, in favor of StageX which even as the founder I have no control of. It mandates deterministic builds and cryptographic signing by at least two well known keys of maintainers.

We do not point out risks unless there are solutions to mitigate them.

Re: Dotfiles feel too personal to share

#110
post #91

Installing a (read: many) custom vim plugins and color scheme and screen version and etc… stops being fun about the third time you have to log into a nameless server. That being said, there are some settings that I absolutely cannot live without; `j=gj` being a good example in vim. IMO your dot files are only useful to share if they are usable with the default software of the place you’ve shared them to. Otherwise th…

That's why you don't use vim, but Emacs with tramp.

Emacs is a great OS, infinitely extensible. The only thing it's missing is a decent text editor.
Post reply on HN