rye / duff Goto Github PK
View Code? Open in Web Editor NEWMy dotfiles and bootstrapping scripts
My dotfiles and bootstrapping scripts
They ugly.
While .emacs.d
handles the environment configuration in a function, it would be great to modify the .app file so that the environment stuff is good out-of-the-box.
Here's a list of necessary things:
HOMEBREW_CELLAR
value using the following command:
$ ruby -e 'puts `brew config | grep HOMEBREW_CELLAR`.split(\": \")[1]'
$HOMEBREW_CELLAR/emacs/<VERSION>/bin/emacs
script in the Emacs installation directory to remove the -nw
flag.$HOMEBREW_CELLAR/emacs/<VERSION>/Emacs.app/Contents/MacOS/
with the following contents:
#!/bin/zsh
cd $HOME echo '/usr/local/Cellar/emacs/HEAD/bin/emacs "$@"' | zsh --login -s "$@"
Info.plist
in $HOMEBREW_CELLAR/emacs/<VERSION>/Emacs.app/Contents/
. The <string>
after the CFBundleExecutable
<key>
should be modified to point to the new script.$ killall Dock
It would be fantastic if I didn't have to manually edit and ignore changes in some of these configs based on which OS they're running on.
gpg-agent
is a good example of this:
# Connects gpg-agent to the OSX keychain via the brew-installed
# pinentry program from GPGtools. This is the OSX 'magic sauce',
# allowing the gpg key's passphrase to be stored in the login
# keychain, enabling automatic key signing.
pinentry-program /usr/local/bin/pinentry-mac
(This line shouldn't exist on my Linux boxes.)
One way to handle this would be to store a "base" file and then maintain a set of .diff
files that apply the necessary changes for the various platforms. I would need some way of tracking the base and diff files, then.
Alternatively, I could implement templating — not sure which is easier yet.
We should reach out and load local configuration files. Here are some strategy ideas:
duff-local
).el
/.elc
files within local directories, if they exist.I have a license for this and I enjoy using it, so I should add this configuration, ideally with zero difference between the macOS and Linux builds.
Currently there's a lot of stuff that could be automated for this kind of stuff. It would be great to have some kind of automatic bootstrapping system so that I can just bootstrap my development environment on any system.
I'm thinking having a .yml
file for each OS, version, type, etc. would be nice. Interactivity will be important for providing direction to the system.
Whenever I use Tmux I'm frustrated by the fact that creating new windows spawns you new sessions within your home directory. It'd probably be better to do things differently and to have <prefix> c
instead bring you into your current directory in a new window.
This should be fairly straightforward to accomplish.
I use this now, so I should track my config for that.
I want to be able to download and install fonts automatically. To name a few,
Source Code Pro
JetBrains Mono
How do you automate this on macOS? On Linux, we can just download to ~/.local/share/fonts
.
The number of Ruby projects which use tabs is quite low. Unfortunately, contributing to open source Ruby projects with my current configuration is hampered by the use of Smart Tabs. I would rather avoid conversation about tabs/spaces completely and just conform to the community standard.
.god files are Ruby files. Let's treat them like that.
Dockerfiles are important to be edited. We should include the package for that.
We should add support for nginx configuration editing to this project.
SMIE sucks. smart-tabs-mode
is better, but I don't think it has support for SCSS.
We can temporarily globally change smie-indent-basic
to make it use the proper size tabs and not insert duplicate tabs, but if we can switch to Smart Tabs to keep everything unified, that would be the most ideal.
Related to #32, every so often the defaults for something will change. For example, Alacritty will sometimes add new configuration keys. They ship their default configuration, so it'd be great if we could listen for updates and automatically open an Issue here or something?
rye/zash is a collection of scripts that I've been meaning to add for some time to this. I need to actually get that done. It should be trivial.
Should be as simple as:
See rye/zash#2.
Solarized has some funky features like changing the pitch of the files to variable for headings in org-mode and scaling org headlines.
I don't really care for this, and, frankly, I think it looks hideous. Thus, this should be removed.
For macOS environments, iTerm has an optional ZSH shell integration. We should load this if it exists.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.