Remove old directories

This commit is contained in:
Ivan Malison 2019-06-23 15:49:00 -07:00
parent 8d0b4e3a9e
commit e2c76cd0dd
No known key found for this signature in database
GPG Key ID: 62530EFBE99DC2F8
49 changed files with 0 additions and 8584 deletions

View File

@ -1,20 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>Label</key>
<string>org.imalison.mu4e-alerts</string>
<key>ProgramArguments</key>
<array>
<string>zsh</string>
<string>-c</string>
<string>refresh_config && mu4e_update_index_and_alert</string>
</array>
<key>StartInterval</key>
<integer>10</integer>
<key>StandardOutPath</key>
<string>/tmp/org.imalison.mu4e-alerts.out</string>
<key>StandardErrorPath</key>
<string>/tmp/org.imalison.mu4e-alerts.error</string>
</dict>
</plist>

View File

@ -1,20 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>Label</key>
<string>org.imalison.mu4e-sync</string>
<key>ProgramArguments</key>
<array>
<string>zsh</string>
<string>-c</string>
<string>~/.lib/mu4e_sync.sh</string>
</array>
<key>StartInterval</key>
<integer>10</integer>
<key>StandardOutPath</key>
<string>/tmp/org.imalison.mu4e-sync.out</string>
<key>StandardErrorPath</key>
<string>/tmp/org.imalison.mu4e-sync.error</string>
</dict>
</plist>

View File

@ -1,20 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>Label</key>
<string>org.imalison.org-sync</string>
<key>ProgramArguments</key>
<array>
<string>zsh</string>
<string>-c</string>
<string>~/org-sync.sh</string>
</array>
<key>StartInterval</key>
<integer>60</integer>
<key>StandardOutPath</key>
<string>/tmp/org.imalison.org-sync.out</string>
<key>StandardErrorPath</key>
<string>/tmp/org.imalison.org-sync.error</string>
</dict>
</plist>

View File

@ -1,20 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>Label</key>
<string>org.imalison.wifi-auto-switch</string>
<key>ProgramArguments</key>
<array>
<string>zsh</string>
<string>-c</string>
<string>python ~/.lib/python/wifi_auto_switch.py -n 4160CesarChavez fake-password -n InternationalFoolery5 fake-password</string>
</array>
<key>KeepAlive</key>
<true/>
<key>StandardOutPath</key>
<string>/tmp/org.imalison.wifi-auto-switch.out</string>
<key>StandardErrorPath</key>
<string>/tmp/org.imalison.wifi-auto-switch.error</string>
</dict>
</plist>

View File

@ -1,4 +0,0 @@
#!/usr/bin/env zsh
git config alias.ped "subtree push --prefix=dotfiles/emacs.d emacs.d master"
git config alias.ued "subtree pull --prefix=dotfiles/emacs.d emacs.d master"
git remote add emacs.d git@github.com:IvanMalison/.emacs.d.git

File diff suppressed because it is too large Load Diff

View File

@ -1,11 +0,0 @@
# Disable access control
xhost +SI:localuser:$USER
# Fallback cursor
xsetroot -cursor_name left_ptr
# Keyboard repeat rate
xset r rate 200 60
# Start Emacs
exec dbus-launch --exit-with-session emacs --eval '(progn (require 'exwm) (require 'exwm-config) (exwm-config-default))'

Binary file not shown.

Binary file not shown.

Binary file not shown.

Before

Width:  |  Height:  |  Size: 70 KiB

View File

@ -1,42 +0,0 @@
#!/bin/sh
# If you are new to arch, I encourage you to at least read and understand what
# this script does befor blindley running it.
# That's why I didn't make a one-liner out of it so you have an easier time
# reading and understanding it :)
#
# This scripts purpose is purly to save you a few seconds on your new installation.
#
# Enjoy your time on an awesome system. Arch FTW!
# Run the following from a terminal to install pacaur:
# $ curl -s https://gist.githubusercontent.com/Tadly/0e65d30f279a34c33e9b/raw/pacaur_install.sh | bash
# Make sure our shiny new arch is up-to-date
echo "Checking for system updates..."
sudo pacman -Syu
# Create a tmp-working-dir an navigate into it
mkdir -p /tmp/pacaur_install
cd /tmp/pacaur_install
# If you didn't install the "base-devil" group,
# we'll need those.
sudo pacman -S binutils make gcc fakeroot --noconfirm
# Install pacaur dependencies from arch repos
sudo pacman -S expac yajl git --noconfirm
# Install "cower" from AUR
curl -o PKGBUILD https://aur.archlinux.org/cgit/aur.git/plain/PKGBUILD?h=cower
makepkg PKGBUILD --skippgpcheck
sudo pacman -U cower*.tar.xz --noconfirm
# Install "pacaur" from AUR
curl -o PKGBUILD https://aur.archlinux.org/cgit/aur.git/plain/PKGBUILD?h=pacaur
makepkg PKGBUILD
sudo pacman -U pacaur*.tar.xz --noconfirm
# Clean up...
cd ~
rm -r /tmp/pacaur_install

View File

@ -1,17 +0,0 @@
<?xml version="1.0"?>
<root>
<item>
<name>Remap Right Command to Hyper</name>
<appendix>OS X doesn't have a Hyper. This maps PC Application Key to Control + Shift + Option + Command.</appendix>
<identifier>imalison.right_command_to_hyper</identifier>
<autogen>
--KeyToKey--
KeyCode::COMMAND_R,
KeyCode::COMMAND_L,
ModifierFlag::OPTION_L | ModifierFlag::SHIFT_L | ModifierFlag::CONTROL_L
</autogen>
</item>
</root>

View File

@ -1,13 +0,0 @@
#!/bin/sh
cli=/Applications/Karabiner.app/Contents/Library/bin/karabiner
$cli set mange.pc_app_to_hyper 1
/bin/echo -n .
$cli set repeat.initial_wait 300
/bin/echo -n .
$cli set repeat.wait 10
/bin/echo -n .
$cli set imalison.right_command_to_hyper 1
/bin/echo -n .
/bin/echo

View File

@ -1,5 +0,0 @@
npm -g install http-server
npm -g install js-beautify
npm -g install tern
npm -g install jshint
npm -g install swank-js

View File

@ -1,131 +0,0 @@
{
"last-messagetrace-stamp" = "443574198.75797";
"mod-count" = 19;
orientation = left;
"persistent-apps" = (
{
GUID = 2438372023;
"tile-data" = {
"bundle-identifier" = "com.google.Chrome";
"dock-extra" = 0;
"file-data" = {
"_CFURLAliasData" = <00000000 00e80003 00010000 d0666a57 0000482b 00000000 000d44b9 000d44c9 0000d0e4 b67d0000 00000920 fffe0000 00000000 0000ffff ffff0001 0014000d 44b9000d 44b8000c fafc000c fafb000c fafa000e 00240011 0047006f 006f0067 006c0065 00200043 00680072 006f006d 0065002e 00610070 0070000f 001a000c 004d0061 00630069 006e0074 006f0073 00680020 00480044 00120041 6f70742f 686f6d65 62726577 2d636173 6b2f4361 736b726f 6f6d2f67 6f6f676c 652d6368 726f6d65 2f6c6174 6573742f 476f6f67 6c652043 68726f6d 652e6170 70000013 00012f00 ffff0000>;
"_CFURLString" = "file:///opt/homebrew-cask/Caskroom/google-chrome/latest/Google%20Chrome.app/";
"_CFURLStringType" = 15;
};
"file-label" = "Google Chrome";
"file-mod-date" = 3504649853;
"file-type" = 41;
"parent-mod-date" = 3504728909;
};
"tile-type" = "file-tile";
},
{
GUID = 2438372024;
"tile-data" = {
"bundle-identifier" = "org.gnu.Emacs";
"dock-extra" = 0;
"file-data" = {
"_CFURLAliasData" = <00000000 00bc0003 00010000 d0666a57 0000482b 00000000 000e7d32 000e8d96 0000d066 edac0000 00000920 fffe0000 00000000 0000ffff ffff0001 0014000e 7d32000e 7d31000a fd800009 5cfb0000 0028000e 00140009 0045006d 00610063 0073002e 00610070 0070000f 001a000c 004d0061 00630069 006e0074 006f0073 00680020 00480044 00120025 7573722f 6c6f6361 6c2f4365 6c6c6172 2f656d61 63732f32 342e342f 456d6163 732e6170 70000013 00012f00 ffff0000>;
"_CFURLString" = "file:///usr/local/Cellar/emacs/24.4/Emacs.app/";
"_CFURLStringType" = 15;
};
"file-label" = Emacs;
"file-mod-date" = 3504729913;
"file-type" = 41;
"parent-mod-date" = 3504729939;
};
"tile-type" = "file-tile";
},
{
GUID = 2343542344;
"tile-data" = {
"bundle-identifier" = "com.spotify.client";
"dock-extra" = 0;
"file-data" = {
"_CFURLAliasData" = <00000000 00d00003 00010000 d0666a57 0000482b 00000000 000e9e52 000e9fc4 0000d0a5 ec150000 00000920 fffe0000 00000000 0000ffff ffff0001 0014000e 9e52000e 9e51000c fafc000c fafb000c fafa000e 0018000b 00530070 006f0074 00690066 0079002e 00610070 0070000f 001a000c 004d0061 00630069 006e0074 006f0073 00680020 00480044 00120035 6f70742f 686f6d65 62726577 2d636173 6b2f4361 736b726f 6f6d2f73 706f7469 66792f6c 61746573 742f5370 6f746966 792e6170 70000013 00012f00 ffff0000>;
"_CFURLString" = "file:///opt/homebrew-cask/Caskroom/spotify/latest/Spotify.app/";
"_CFURLStringType" = 15;
};
"file-label" = Spotify;
"file-mod-date" = 3500534805;
"file-type" = 41;
"parent-mod-date" = 3504729930;
};
"tile-type" = "file-tile";
},
{
GUID = 2438372025;
"tile-data" = {
"bundle-identifier" = "com.apple.appstore";
"dock-extra" = 1;
"file-data" = {
"_CFURLAliasData" = <00000000 00a80003 00010000 d0666a57 0000482b 00000000 0000008c 00010197 0000cfe6 1a770000 00000920 fffe0000 00000000 0000ffff ffff0001 00040000 008c000e 001c000d 00410070 00700020 00530074 006f0072 0065002e 00610070 0070000f 001a000c 004d0061 00630069 006e0074 006f0073 00680020 00480044 0012001a 4170706c 69636174 696f6e73 2f417070 2053746f 72652e61 70700013 00012f00 ffff0000>;
"_CFURLString" = "file:///Applications/App%20Store.app/";
"_CFURLStringType" = 15;
};
"file-label" = "App Store";
"file-mod-date" = 0;
"file-type" = 1;
"parent-mod-date" = 0;
};
"tile-type" = "file-tile";
},
{
GUID = 2438372026;
"tile-data" = {
"bundle-identifier" = "com.googlecode.iterm2";
"dock-extra" = 0;
"file-data" = {
"_CFURLAliasData" = <00000000 00c60003 00010000 d0666a57 0000482b 00000000 000d9766 000d9767 0000cfea 50fe0000 00000920 fffe0000 00000000 0000ffff ffff0001 0014000d 9766000d 9765000c fafc000c fafb000c fafa000e 00140009 00690054 00650072 006d002e 00610070 0070000f 001a000c 004d0061 00630069 006e0074 006f0073 00680020 00480044 0012002f 6f70742f 686f6d65 62726577 2d636173 6b2f4361 736b726f 6f6d2f69 7465726d 322f322e 302f6954 65726d2e 61707000 00130001 2f00ffff 0000>;
"_CFURLString" = "file:///opt/homebrew-cask/Caskroom/iterm2/2.0/iTerm.app/";
"_CFURLStringType" = 15;
};
"file-label" = iTerm;
"file-mod-date" = 3488239870;
"file-type" = 41;
"parent-mod-date" = 3504729029;
};
"tile-type" = "file-tile";
},
{
GUID = 2438372027;
"tile-data" = {
"bundle-identifier" = "com.apple.systempreferences";
"dock-extra" = 1;
"file-data" = {
"_CFURLAliasData" = <00000000 00c40003 00010000 d0666a57 0000482b 00000000 0000008c 000421fb 0000d041 3db60000 00000920 fffe0000 00000000 0000ffff ffff0001 00040000 008c000e 002e0016 00530079 00730074 0065006d 00200050 00720065 00660065 00720065 006e0063 00650073 002e0061 00700070 000f001a 000c004d 00610063 0069006e 0074006f 00730068 00200048 00440012 00234170 706c6963 6174696f 6e732f53 79737465 6d205072 65666572 656e6365 732e6170 70000013 00012f00 ffff0000>;
"_CFURLString" = "file:///Applications/System%20Preferences.app/";
"_CFURLStringType" = 15;
};
"file-label" = "System Preferences";
"file-mod-date" = 3504731361;
"file-type" = 41;
"parent-mod-date" = 3504739121;
};
"tile-type" = "file-tile";
}
);
"persistent-others" = (
{
GUID = 521737316;
"tile-data" = {
arrangement = 2;
displayas = 0;
"file-data" = {
"_CFURLAliasData" = <00000000 00a80003 00010000 d0666a57 0000482b 00000000 000943ab 000943ae 0000d066 6b4e0000 00000920 fffe0000 00000000 0000ffff ffff0001 00080009 43ab0002 93d5000e 00140009 0044006f 0077006e 006c006f 00610064 0073000f 001a000c 004d0061 00630069 006e0074 006f0073 00680020 00480044 00120018 55736572 732f696d 616c6973 6f6e2f44 6f776e6c 6f616473 00130001 2f000015 0002000f ffff0000>;
"_CFURLString" = "file:///Users/imalison/Downloads/";
"_CFURLStringType" = 15;
};
"file-label" = Downloads;
"file-mod-date" = 3504726514;
"file-type" = 2;
"parent-mod-date" = 3504726192;
preferreditemsize = "-1";
showas = 1;
};
"tile-type" = "directory-tile";
}
);
version = 1;
}

View File

@ -1,56 +0,0 @@
{
SessionItems = {
Controller = CustomListItems;
CustomListItems = (
{
Alias = <00000000 00e60003 00010000 d0666a57 0000482b 00000000 000d4aeb 000d4c9d 0000caba 4faf0000 00000920 fffe0000 00000000 0000ffff ffff0001 0014000d 4aeb000d 4ae7000d 4ae6000d 43750000 0029000e 001c000d 00470072 006f0077 006c004d 0065006e 0075002e 00610070 0070000f 001a000c 004d0061 00630069 006e0074 006f0073 00680020 00480044 00120047 4c696272 6172792f 50726566 6572656e 63655061 6e65732f 47726f77 6c2e7072 65665061 6e652f43 6f6e7465 6e74732f 5265736f 75726365 732f4772 6f776c4d 656e752e 61707000 00130001 2f00ffff 0000>;
CustomItemProperties = {
"com.apple.LSSharedFileList.Binding" = <646e6962 00000000 02000000 00000000 00000000 00000000 00000000 59000000 00000000 66696c65 3a2f2f6c 6f63616c 686f7374 2f4c6962 72617279 2f507265 66657265 6e636550 616e6573 2f47726f 776c2e70 72656650 616e652f 436f6e74 656e7473 2f526573 6f757263 65732f47 726f776c 4d656e75 2e617070 2f130000 00000000 00636f6d 2e47726f 776c2e4d 656e7545 78747261 02004000 00040000 8e401010 02000000 afd64414>;
};
Name = GrowlMenu;
},
{
Alias = <00000000 00f40003 00010000 d0666a57 0000482b 00000000 000d4aeb 000d4b07 0000caba 50010000 00000920 fffe0000 00000000 0000ffff ffff0001 0014000d 4aeb000d 4ae7000d 4ae6000d 43750000 0029000e 00260012 00470072 006f0077 006c0048 0065006c 00700065 00720041 00700070 002e0061 00700070 000f001a 000c004d 00610063 0069006e 0074006f 00730068 00200048 00440012 004c4c69 62726172 792f5072 65666572 656e6365 50616e65 732f4772 6f776c2e 70726566 50616e65 2f436f6e 74656e74 732f5265 736f7572 6365732f 47726f77 6c48656c 70657241 70702e61 70700013 00012f00 ffff0000>;
CustomItemProperties = {
"com.apple.LSSharedFileList.Binding" = <646e6962 00000000 02000000 00000000 00000000 00000000 00000000 55000000 00000000 66696c65 3a2f2f2f 4c696272 6172792f 50726566 6572656e 63655061 6e65732f 47726f77 6c2e7072 65665061 6e652f43 6f6e7465 6e74732f 5265736f 75726365 732f4772 6f776c48 656c7065 72417070 2e617070 2f180000 00000000 00636f6d 2e47726f 776c2e47 726f776c 48656c70 65724170 70020040 00000400 008e4810 10020000 0001d744 14>;
};
Name = GrowlHelperApp;
},
{
Alias = <00000000 00d00003 00010000 d0666a57 0000482b 00000000 000d3ec7 000d3ecf 0000d0d4 faab0000 00000920 fffe0000 00000000 0000ffff ffff0001 0014000d 3ec7000d 3ec6000c fafc000c fafb000c fafa000e 0018000b 00440072 006f0070 0062006f 0078002e 00610070 0070000f 001a000c 004d0061 00630069 006e0074 006f0073 00680020 00480044 00120035 6f70742f 686f6d65 62726577 2d636173 6b2f4361 736b726f 6f6d2f64 726f7062 6f782f6c 61746573 742f4472 6f70626f 782e6170 70000013 00012f00 ffff0000>;
CustomItemProperties = {
"com.apple.LSSharedFileList.Binding" = <646e6962 00000000 02000000 00000000 00000000 00000000 00000000 3e000000 00000000 66696c65 3a2f2f2f 6f70742f 686f6d65 62726577 2d636173 6b2f4361 736b726f 6f6d2f64 726f7062 6f782f6c 61746573 742f4472 6f70626f 782e6170 702f1600 00000000 0000636f 6d2e6765 7464726f 70626f78 2e64726f 70626f78 03000000 000c0000 8e401006 02000000 f1a7361a>;
};
Name = Dropbox;
},
{
Alias = <00000000 00a80003 00010000 d0666a57 0000482b 00000000 0000008c 000e61fe 0000d0da e4e20000 00000920 fffe0000 00000000 0000ffff ffff0001 00040000 008c000e 001c000d 004b0061 00720061 00620069 006e0065 0072002e 00610070 0070000f 001a000c 004d0061 00630069 006e0074 006f0073 00680020 00480044 0012001a 4170706c 69636174 696f6e73 2f4b6172 6162696e 65722e61 70700013 00012f00 ffff0000>;
CustomItemProperties = {
"com.apple.LSSharedFileList.Binding" = <646e6962 00000000 02000000 00000000 00000000 00000000 00000000 23000000 00000000 66696c65 3a2f2f2f 4170706c 69636174 696f6e73 2f4b6172 6162696e 65722e61 70702f12 00000000 0000006f 72672e70 7172732e 4b617261 62696e65 720000a0 00002800 008e4010 10020000 00af073f 1a>;
};
Name = Karabiner;
},
{
Alias = <00000000 00d20003 00010000 d0666a57 0000482b 00000000 000d2c2c 000d2c2d 0000c7c0 86610000 00000920 fffe0000 00000000 0000ffff ffff0001 0014000d 2c2c000d 2c2b000c fafc000c fafb000c fafa000e 001a000c 00430061 00660066 00650069 006e0065 002e0061 00700070 000f001a 000c004d 00610063 0069006e 0074006f 00730068 00200048 00440012 00366f70 742f686f 6d656272 65772d63 61736b2f 4361736b 726f6f6d 2f636166 6665696e 652f312e 312e312f 43616666 65696e65 2e617070 00130001 2f00ffff 0000>;
CustomItemProperties = {
"com.apple.LSSharedFileList.Binding" = <646e6962 00000000 02000000 00000000 00000000 00000000 00000000 48000000 00000000 66696c65 3a2f2f6c 6f63616c 686f7374 2f6f7074 2f686f6d 65627265 772d6361 736b2f43 61736b72 6f6f6d2f 63616666 65696e65 2f312e31 2e312f43 61666665 696e652e 6170702f 18000000 00000000 636f6d2e 6c696768 74686561 6473772e 43616666 65696e65 01002000 00040000 8e48101e 02000000 610d4b11>;
};
Name = Caffeine;
},
{
Alias = <00000000 00c80003 00010000 d0666a57 0000482b 00000000 000e8bc0 000e8be2 0000cd4f 46800000 00000920 fffe0000 00000000 0000ffff ffff0001 0014000e 8bc0000e 8bbf000c fafc000c fafb000c fafa000e 00140009 0053006c 00610074 0065002e 00610070 0070000f 001a000c 004d0061 00630069 006e0074 006f0073 00680020 00480044 00120031 6f70742f 686f6d65 62726577 2d636173 6b2f4361 736b726f 6f6d2f73 6c617465 2f6c6174 6573742f 536c6174 652e6170 70000013 00012f00 ffff0000>;
CustomItemProperties = {
"com.apple.LSSharedFileList.Binding" = <646e6962 00000000 02000000 00000000 00000000 00000000 00000000 43000000 00000000 66696c65 3a2f2f6c 6f63616c 686f7374 2f6f7074 2f686f6d 65627265 772d6361 736b2f43 61736b72 6f6f6d2f 736c6174 652f6c61 74657374 2f536c61 74652e61 70702f0f 00000000 00000063 6f6d2e73 6c617465 2e536c61 74651900 00000004 00008e40 10100200 000080cd d916>;
};
Name = Slate;
},
{
Alias = <00000000 00d40003 00010000 d0666a57 0000482b 00000000 000cfb05 000cfb06 0000d06a aeba0000 00000920 fffe0000 00000000 0000ffff ffff0001 0014000c fb05000c fb04000c fafc000c fafb000c fafa000e 001a000c 0041006c 00660072 00650064 00200032 002e0061 00700070 000f001a 000c004d 00610063 0069006e 0074006f 00730068 00200048 00440012 00386f70 742f686f 6d656272 65772d63 61736b2f 4361736b 726f6f6d 2f616c66 7265642f 322e352e 315f3330 382f416c 66726564 20322e61 70700013 00012f00 ffff0000>;
CustomItemProperties = {
"com.apple.LSSharedFileList.Binding" = <646e6962 00000000 02000000 00000000 00000000 00000000 00000000 43000000 00000000 66696c65 3a2f2f2f 6f70742f 686f6d65 62726577 2d636173 6b2f4361 736b726f 6f6d2f61 6c667265 642f322e 352e315f 3330382f 416c6672 65642532 30322e61 70702f1f 00000000 00000063 6f6d2e72 756e6e69 6e677769 74686372 61796f6e 732e416c 66726564 2d320000 000000d0 04008e48 10100200 0000ba35 f519>;
};
Name = "Alfred 2";
}
);
};
}

View File

@ -1,15 +0,0 @@
{
NSQuitAlwaysKeepsWindows = 0;
"NSWindow Frame Main Window Frame SystemPreferencesApp 8.0" = "69 455 668 493 0 0 1680 1027 ";
SecurityPrefTab = General;
ThirdPartyCount = 4;
"com.apple.PreferenceSync.ExcludeSyncKeys" = (
"Main Window Frame SystemPreferencesApp 8.0"
);
"com.apple.SecurityPref.Privacy.LastSourceSelected" = 0;
"com.apple.preferences.accounts.outline.usersparent" = 1;
"com.apple.preferences.energysaver" = {
hasBeenWarnedAboutEnergyUsage = YES;
};
"com.apple.preferences.sharing.selectedservice" = 1;
}

View File

@ -1,310 +0,0 @@
# Ask for the administrator password upfront
sudo -v
# Keep-alive: update existing `sudo` time stamp until `.osx` has finished
while true; do sudo -n true; sleep 60; kill -0 "$$" || exit; done 2>/dev/null &
echo "Configuring osx."
###############################################################################
# General UI/UX #
###############################################################################
# Remove duplicates in the “Open With” menu (also see `lscleanup` alias)
/System/Library/Frameworks/CoreServices.framework/Frameworks/LaunchServices.framework/Support/lsregister -kill -r -domain local -domain system -domain user
# Increase window resize speed for Cocoa applications
defaults write NSGlobalDomain NSWindowResizeTime -float 0.08
# Disable the “Are you sure you want to open this application?” dialog
defaults write com.apple.LaunchServices LSQuarantine -bool false
# Display ASCII control characters using caret notation in standard text views
# Try e.g. `cd /tmp; unidecode "\x{0000}" > cc.txt; open -e cc.txt`
defaults write NSGlobalDomain NSTextShowsControlCharacters -bool true
# Disable Resume system-wide
defaults write NSGlobalDomain NSQuitAlwaysKeepsWindows -bool false
# Disable automatic termination of inactive apps
defaults write NSGlobalDomain NSDisableAutomaticTermination -bool true
# Set Help Viewer windows to non-floating mode
defaults write com.apple.helpviewer DevMode -bool true
# Reveal IP address, hostname, OS version, etc. when clicking the clock
# in the login window
sudo defaults write /Library/Preferences/com.apple.loginwindow AdminHostInfo HostName
# Restart automatically if the computer freezes
systemsetup -setrestartfreeze on
# Never go into computer sleep mode
systemsetup -setcomputersleep Off > /dev/null
# Check for software updates daily, not just once per week
defaults write com.apple.SoftwareUpdate ScheduleFrequency -int 1
###############################################################################
# Trackpad, mouse, keyboard, Bluetooth accessories, and input #
###############################################################################
# Trackpad: enable tap to click for this user and for the login screen
defaults write com.apple.driver.AppleBluetoothMultitouch.trackpad Clicking -bool true
defaults -currentHost write NSGlobalDomain com.apple.mouse.tapBehavior -int 1
defaults write NSGlobalDomain com.apple.mouse.tapBehavior -int 1
# Increase sound quality for Bluetooth headphones/headsets
defaults write com.apple.BluetoothAudioAgent "Apple Bitpool Min (editable)" -int 40
# Enable full keyboard access for all controls
# (e.g. enable Tab in modal dialogs)
defaults write NSGlobalDomain AppleKeyboardUIMode -int 3
# Enable access for assistive devices
echo -n 'a' | sudo tee /private/var/db/.AccessibilityAPIEnabled > /dev/null 2>&1
sudo chmod 444 /private/var/db/.AccessibilityAPIEnabled
# TODO: avoid GUI password prompt somehow (http://apple.stackexchange.com/q/60476/4408)
# Use scroll gesture with the Ctrl (^) modifier key to zoom
defaults write com.apple.universalaccess closeViewScrollWheelToggle -bool true
defaults write com.apple.universalaccess HIDScrollZoomModifierMask -int 262144
# Follow the keyboard focus while zoomed in
defaults write com.apple.universalaccess closeViewZoomFollowsFocus -bool true
# Disable press-and-hold for keys in favor of key repeat
defaults write NSGlobalDomain ApplePressAndHoldEnabled -bool false
# Set a blazingly fast keyboard repeat rate
defaults write NSGlobalDomain KeyRepeat -int 1
# Automatically illuminate built-in MacBook keyboard in low light
defaults write com.apple.BezelServices kDim -bool true
# Turn off keyboard illumination when computer is not used for 5 minutes
defaults write com.apple.BezelServices kDimTime -int 300
# Set language and text formats
# Note: if youre in the US, replace `EUR` with `USD`, `Centimeters` with
# `Inches`, and `true` with `false`.
defaults write NSGlobalDomain AppleLanguages -array "en"
defaults write NSGlobalDomain AppleLocale -string "en_US@currency=USD"
defaults write NSGlobalDomain AppleMeasurementUnits -string "Inches"
defaults write NSGlobalDomain AppleMetricUnits -bool false
# Disable auto-correct
defaults write NSGlobalDomain NSAutomaticSpellingCorrectionEnabled -bool false
###############################################################################
# Screen #
###############################################################################
# Save screenshots to the desktop
defaults write com.apple.screencapture location -string "$HOME/Desktop"
# Save screenshots in PNG format (other options: BMP, GIF, JPG, PDF, TIFF)
defaults write com.apple.screencapture type -string "png"
# Disable shadow in screenshots
defaults write com.apple.screencapture disable-shadow -bool true
# Enable subpixel font rendering on non-Apple LCDs
defaults write NSGlobalDomain AppleFontSmoothing -int 2
# Enable HiDPI display modes (requires restart)
sudo defaults write /Library/Preferences/com.apple.windowserver DisplayResolutionEnabled -bool true
###############################################################################
# Finder #
###############################################################################
# Finder: allow quitting via ⌘ + Q; doing so will also hide desktop icons
defaults write com.apple.finder QuitMenuItem -bool true
# Show icons for hard drives, servers, and removable media on the desktop
defaults write com.apple.finder ShowExternalHardDrivesOnDesktop -bool true
defaults write com.apple.finder ShowHardDrivesOnDesktop -bool true
defaults write com.apple.finder ShowMountedServersOnDesktop -bool true
defaults write com.apple.finder ShowRemovableMediaOnDesktop -bool true
# Finder: show hidden files by default
defaults write com.apple.finder AppleShowAllFiles -bool true
# Finder: show all filename extensions
defaults write NSGlobalDomain AppleShowAllExtensions -bool true
# Finder: show status bar
defaults write com.apple.finder ShowStatusBar -bool true
# Finder: allow text selection in Quick Look
defaults write com.apple.finder QLEnableTextSelection -bool true
# Display full POSIX path as Finder window title
defaults write com.apple.finder _FXShowPosixPathInTitle -bool true
# When performing a search, search the current folder by default
defaults write com.apple.finder FXDefaultSearchScope -string "SCcf"
# Disable the warning when changing a file extension
defaults write com.apple.finder FXEnableExtensionChangeWarning -bool false
# Avoid creating .DS_Store files on network volumes
defaults write com.apple.desktopservices DSDontWriteNetworkStores -bool true
# Disable disk image verification
defaults write com.apple.frameworks.diskimages skip-verify -bool true
defaults write com.apple.frameworks.diskimages skip-verify-locked -bool true
defaults write com.apple.frameworks.diskimages skip-verify-remote -bool true
# Automatically open a new Finder window when a volume is mounted
defaults write com.apple.frameworks.diskimages auto-open-ro-root -bool true
defaults write com.apple.frameworks.diskimages auto-open-rw-root -bool true
defaults write com.apple.finder OpenWindowForNewRemovableDisk -bool true
# Show item info near icons on the desktop and in other icon views
/usr/libexec/PlistBuddy -c "Set :DesktopViewSettings:IconViewSettings:showItemInfo true" ~/Library/Preferences/com.apple.finder.plist
/usr/libexec/PlistBuddy -c "Set :StandardViewSettings:IconViewSettings:showItemInfo true" ~/Library/Preferences/com.apple.finder.plist
# Show item info to the right of the icons on the desktop
/usr/libexec/PlistBuddy -c "Set DesktopViewSettings:IconViewSettings:labelOnBottom false" ~/Library/Preferences/com.apple.finder.plist
# Enable snap-to-grid for icons on the desktop and in other icon views
/usr/libexec/PlistBuddy -c "Set :DesktopViewSettings:IconViewSettings:arrangeBy grid" ~/Library/Preferences/com.apple.finder.plist
/usr/libexec/PlistBuddy -c "Set :StandardViewSettings:IconViewSettings:arrangeBy grid" ~/Library/Preferences/com.apple.finder.plist
# Increase grid spacing for icons on the desktop and in other icon views
/usr/libexec/PlistBuddy -c "Set :DesktopViewSettings:IconViewSettings:gridSpacing 100" ~/Library/Preferences/com.apple.finder.plist
/usr/libexec/PlistBuddy -c "Set :StandardViewSettings:IconViewSettings:gridSpacing 100" ~/Library/Preferences/com.apple.finder.plist
# Increase the size of icons on the desktop and in other icon views
/usr/libexec/PlistBuddy -c "Set :DesktopViewSettings:IconViewSettings:iconSize 80" ~/Library/Preferences/com.apple.finder.plist
/usr/libexec/PlistBuddy -c "Set :StandardViewSettings:IconViewSettings:iconSize 80" ~/Library/Preferences/com.apple.finder.plist
# Use list view in all Finder windows by default
# Four-letter codes for the other view modes: `icnv`, `clmv`, `Flwv`
defaults write com.apple.finder FXPreferredViewStyle -string "Nlsv"
# Disable the warning before emptying the Trash
defaults write com.apple.finder WarnOnEmptyTrash -bool false
# Don't Empty Trash securely by default
defaults write com.apple.finder EmptyTrashSecurely -bool false
# Enable AirDrop over Ethernet and on unsupported Macs running Lion
defaults write com.apple.NetworkBrowser BrowseAllInterfaces -bool true
# Show the ~/Library folder
chflags nohidden ~/Library
# Remove Dropboxs green checkmark icons in Finder
file=/Applications/Dropbox.app/Contents/Resources/check.icns
[ -e "$file" ] && mv -f "$file" "$file.bak"
unset file
###############################################################################
# Dock & hot corners #
###############################################################################
# Enable highlight hover effect for the grid view of a stack (Dock)
defaults write com.apple.dock mouse-over-hilite-stack -bool true
# Set the icon size of Dock items to 36 pixels
defaults write com.apple.dock tilesize -int 36
# Enable spring loading for all Dock items
defaults write com.apple.dock enable-spring-load-actions-on-all-items -bool true
# Show indicator lights for open applications in the Dock
defaults write com.apple.dock show-process-indicators -bool true
# Dont group windows by application in Mission Control
# (i.e. use the old Exposé behavior instead)
defaults write com.apple.dock expose-group-by-app -bool false
# Dont show Dashboard as a Space
defaults write com.apple.dock dashboard-in-overlay -bool true
# Remove the auto-hiding Dock delay
defaults write com.apple.Dock autohide-delay -float 0
# Enable the 2D Dock
#defaults write com.apple.dock no-glass -bool true
# Automatically hide and show the Dock
defaults write com.apple.dock autohide -bool true
# Make Dock icons of hidden applications translucent
defaults write com.apple.dock showhidden -bool true
# Reset Launchpad
find ~/Library/Application\ Support/Dock -name "*.db" -maxdepth 1 -delete
# Hot corners
# Possible values:
# 0: no-op
# 2: Mission Control
# 3: Show application windows
# 4: Desktop
# 5: Start screen saver
# 6: Disable screen saver
# 7: Dashboard
# 10: Put display to sleep
# 11: Launchpad
# Top right screen corner → Desktop
defaults write com.apple.dock wvous-tr-corner -int 0
defaults write com.apple.dock wvous-tr-modifier -int 0
defaults write com.apple.dock wvous-bl-corner -int 0
defaults write com.apple.dock wvous-bl-modifier -int 0
###############################################################################
# Time Machine #
###############################################################################
# Prevent Time Machine from prompting to use new hard drives as backup volume
defaults write com.apple.TimeMachine DoNotOfferNewDisksForBackup -bool true
# Disable local Time Machine backups
hash tmutil &> /dev/null && sudo tmutil disablelocal
###############################################################################
# Address Book, Dashboard, iCal, TextEdit, and Disk Utility #
###############################################################################
# Enable the debug menu in Disk Utility
defaults write com.apple.DiskUtility DUDebugMenuEnabled -bool true
defaults write com.apple.DiskUtility advanced-image-options -bool true
###############################################################################
# Mac App Store #
###############################################################################
# Enable the WebKit Developer Tools in the Mac App Store
defaults write com.apple.appstore WebKitDeveloperExtras -bool true
# Enable Debug Menu in the Mac App Store
defaults write com.apple.appstore ShowDebugMenu -bool true
###############################################################################
# Google Chrome & Google Chrome Canary #
###############################################################################
# Allow installing user scripts via GitHub or Userscripts.org
defaults write com.google.Chrome ExtensionInstallSources -array "https://*.github.com/*" "http://userscripts.org/*"
defaults write com.google.Chrome.canary ExtensionInstallSources -array "https://*.github.com/*" "http://userscripts.org/*"
###############################################################################
# Transmission.app #
###############################################################################
# Use `~/Documents/Torrents` to store incomplete downloads
defaults write org.m0k.transmission UseIncompleteDownloadFolder -bool true
defaults write org.m0k.transmission IncompleteDownloadFolder -string "${HOME}/Documents/Torrents"
# Dont prompt for confirmation before downloading
defaults write org.m0k.transmission DownloadAsk -bool false
# Trash original torrent files
defaults write org.m0k.transmission DeleteOriginalTorrent -bool true
# Hide the donate message
defaults write org.m0k.transmission WarningDonate -bool false
# Hide the legal disclaimer
defaults write org.m0k.transmission WarningLegal -bool false
echo "Finished successfully."

View File

@ -1,28 +0,0 @@
certifi
coloredlogs
ddg
dotfiles
dropbox
editorconfig
flake8
flask
importmagic
invoke
jinja
lxml
mopidy-gmusic
mopidy-moped
mopidy-scrobbler
mopidy-spotify
numpy
okcupyd
ouimeaux
pylint
pyspotify
pythonpy
readline
simplejson
sphinx
sqlalchemy
tox
vcrpy

View File

@ -1,16 +0,0 @@
o<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>Label</key>
<string>org.imalison.set-path</string>
<key>ProgramArguments</key>
<array>
<string>zsh</string>
<string>-c</string>
<string>source ~/.zshrc && echo password | sudo -Sv && as_current_user /bin/launchctl setenv PATH $PATH</string>
</array>
<key>RunAtLoad</key>
<true/>
</dict>
</plist>

View File

@ -1,27 +0,0 @@
# /etc/profile
#Set our umask
umask 022
# Set our default path only if path does not exist
${PATH:="/usr/local/sbin:/usr/local/bin:/usr/bin"}
export PATH
# Load profiles from /etc/profile.d
if test -d /etc/profile.d/; then
for profile in /etc/profile.d/*.sh; do
test -r "$profile" && . "$profile"
done
unset profile
fi
# Source global bash config
if test "$PS1" && test "$BASH" && test -z ${POSIXLY_CORRECT+x} && test -r /etc/bash.bashrc; then
. /etc/bash.bashrc
fi
# Termcap is outdated, old, and crusty, kill it.
unset TERMCAP
# Man is much better than us at figuring this out
unset MANPATH

View File

@ -1,69 +0,0 @@
Section "ServerLayout"
Identifier "Layout0"
Screen 0 "Screen0" 0 0
InputDevice "Keyboard0" "CoreKeyboard"
InputDevice "Mouse0" "CorePointer"
Option "Xinerama" "0"
Option "StandbyTime" "0"
Option "SuspendTime" "0"
Option "OffTime" "0"
Option "BlankTime" "0"
EndSection
Section "InputDevice"
Identifier "Keyboard0"
Driver "keyboard"
EndSection
Section "InputDevice"
Identifier "Mouse0"
Driver "mouse"
Option "Protocol" "auto"
Option "Device" "/dev/psaux"
Option "Emulate3Buttons" "no"
Option "ZAxisMapping" "4 5"
EndSection
Section "Monitor"
Identifier "DVI-D-0"
Option "Primary" "true"
Option "DPI" "96 x 96"
Option "DPMS" "false"
EndSection
Section "Monitor"
Identifier "HDMI-0"
Option "Above" "DVI-D-0"
Option "DPMS" "false"
EndSection
Section "Monitor"
Identifier "HDMI-1"
Option "LeftOf" "DVI-D-0"
Option "DPMS" "false"
EndSection
Section "Device"
Identifier "Device0"
Driver "nvidia"
VendorName "NVIDIA Corporation"
BoardName "GeForce GTX 1070"
EndSection
Section "Screen"
Identifier "Screen0"
Device "Device0"
Monitor "DVI-D-0"
DefaultDepth 24
Option "RegistryDwords" "PerfLevelSrc=0x3322; PowerMizerDefaultAC=0x1"
Option "TripleBuffer" "True"
Option "Stereo" "0"
Option "nvidiaXineramaInfoOrder" "DFP-0"
Option "metamodes" "DVI-D-0: nvidia-auto-select +0+2160 {ForceCompositionPipeline=On, ForceFullCompositionPipeline=On}, HDMI-0: nvidia-auto-select +640+0 {ForceCompositionPipeline=On, ForceFullCompositionPipeline=On}, HDMI-1: nvidia-auto-select +2560+2160 {ForceCompositionPipeline=On, ForceFullCompositionPipeline=On}"
Option "SLI" "Off"
Option "MultiGPU" "Off"
Option "BaseMosaic" "off"
SubSectionSub "Display"
Depth 24
EndSubSection
EndSection

View File

@ -1,139 +0,0 @@
import os
import sys
from invoke import Collection, task as ctask
from . import arch
from . import linux
from . import imalison
from . import osx
from .util import DOTFILES_DIRECTORY, RESOURCES_DIRECTORY, TASKS_DIRECTORY, link_filenames
ns = Collection()
ns.add_collection(osx)
ns.add_collection(linux)
ns.add_collection(arch)
ns.add_collection(imalison.tasks_from_directory(
os.path.join(TASKS_DIRECTORY, "shell"))
)
@ctask(default=True)
def setup(ctx):
ctx.config['run']['pty'] = False
ctx.config['run']['warn'] = True
if 'darwin' in sys.platform:
osx.setup(ctx)
else:
linux.setup(ctx)
dotfiles(ctx)
python(ctx)
fix_pip(ctx)
install_npm_libraries(ctx)
change_shell(ctx)
@ctask
def dotfiles(ctx, flags=''):
ctx.run('hash dotfiles || sudo pip install dotfiles')
return ctx.run('dotfiles -s{1} -R {0}'.format(DOTFILES_DIRECTORY, flags))
@ctask
def dropbox_dotfiles(ctx, flags='f'):
ctx.run('hash dotfiles || sudo pip install dotfiles')
ctx.run('dotfiles -s{1} -R {0}'.format(
os.path.join(
os.path.expanduser('~'), 'Dropbox', 'configs', 'dotfiles'
),
flags
))
@ctask
def link_emacs(ctx, flags='f'):
link_filenames(ctx, [('~/Dropbox/configs/custom-before.el', '~/.emacs.d/custom-before.el'),
# ('~/Dropbox/configs/elpa', '~/.emacs.d/elpa'),
('~/Dropbox/configs/custom-after.el', '~/.emacs.d/custom-after.el')],
force=True)
@ctask
def python(ctx):
ctx.run('pyenv install 2.7.11')
ctx.run('pyenv global 2.7.11')
ctx.run('pip install setuptools --upgrade')
ctx.run('pip install -r {0}'.format(
os.path.join(RESOURCES_DIRECTORY, 'requirements.txt')
))
@ctask
def install_npm_libraries(ctx):
ctx.run('source {0}'.format(
os.path.join(RESOURCES_DIRECTORY, 'npm.sh')
))
@ctask
def change_shell(ctx):
ctx.run('sudo chsh -s $(which zsh) $(whoami)')
@ctask
def link_dropbox_other(ctx, force=False):
link_pairs = (
('~/Dropbox/Documents', '~/Documents'),
('~/Dropbox/Pictures', '~/Pictures'),
('~/Dropbox/org', '~/org'),
('~/Dropbox/Desktop', '~/Desktop'),
('~/Dropbox/ebooks', '~/ebooks'),
)
link_filenames(ctx, link_pairs, force)
@ctask
def customize_user_settings(ctx):
input_function = input if sys.version_info.major == 3 else raw_input
username = input_function("Enter the user's full name: ")
email = input_function("Enter the user's email address: ")
with open(os.path.expanduser('~/.gitconfig.custom'), 'w') as custom_file:
custom_file.write("""[user]
name = {0}
email = {1}""".format(username, email))
@ctask
def fix_pip(ctx):
ctx.run("sudo easy_install -U pip")
ctx.run("sudo chown $(whoami) ~/.pip/download_cache -R")
@ctask
def fix_dropbox_permissions(ctx):
ctx.run("sudo chown -R $(whoami) ~/.ssh")
ctx.run("sudo chown -R $(whoami) $(readlink -f ~/.ssh)")
ctx.run("sudo chmod -R 700 ~/.ssh")
ctx.run("sudo chmod -R 700 $(readlink -f ~/.ssh)")
ctx.run("sudo chmod -R 700 ~/Dropbox/auth/foolery.pem")
ctx.run("sudo chmod -R 700 ~/Dropbox/configs/dotfiles/gnupg")
@ctask
def cabal_for_emacs(ctx):
ctx.run("cabal install happy hasktags stylish-haskell present ghc-mod hlint hoogle structured-haskell-mode hindent")
ns.add_task(fix_pip)
ns.add_task(change_shell)
ns.add_task(customize_user_settings)
ns.add_task(dotfiles)
ns.add_task(dropbox_dotfiles)
ns.add_task(install_npm_libraries)
ns.add_task(python)
ns.add_task(link_dropbox_other)
ns.add_task(setup)
ns.add_task(fix_dropbox_permissions)
ns.add_task(link_emacs)

View File

@ -1,60 +0,0 @@
import os
from invoke import task
from .util import RESOURCES_DIRECTORY
PACKAGES = [
"adobe-source-code-pro-fonts", "lib32-alsa-lib", "synergy", "git",
"pkg-config", "pyenv", "rbenv", "alsa-utils", "patch", "spotify",
"google-chrome", "autoconf", "automake", "cask", "emacs-git", "xmobar",
"the_silver_searcher", "jdk8-openjdk", "openjdk8-doc", "openjdk8-src",
"scala", "clojure", "go", "ruby", "node", "ghc", "rust", "nodejs", "nvm",
"nvidia-settings", "gnome-tweak-tool", "screenfetch", "htop", "tmux",
"texlive-most", "leiningen", "boot", "gnome-settings-daemon", "roboto",
"accountsservice", "lightdm-webkit-theme-material-git", "openssh",
"chrome-remote-desktop", "gtk-theme-arc", "mosh", "stalonetray",
"lightdm-webkit-theme-wisp", "gnome-themes-standard", "zuki-themes",
"xorg-xfontsel", "gtk2fontsel", "xscreensaver", "networkmanager",
"network-manager-applet", "feh", "copyq", "imagemagick", "rcm", "rofi",
"cabal-install", "pavucontrol", "lsof", "fbset", "git-subrepo", "trayer",
"ttf-font-awesome", "conky", "lemonbar", "razercfg", "xdotool", "xclip",
"udiskie", "strace", "emojione-color-font", "hub", "plantuml", "jq",
"noto-fonts-cjk", "adapta-gtk-theme", "numix-icon-theme-git", "global",
"android-sdk-platform-tools", "android-sdk", "keepassx-http", "aspell-en",
"screencloud", "mopidy-spotify", "rcm", "xsettingsd-git", "festival",
"festival-freebsoft-utils", "hsetroot", "imwheel", "remmina", "racket",
"xorg-utils", "playerctl", "pasystray", "dunst", "otf-fira-code",
"ttf-mac-fonts", "otf-hermit", "ttf-font-awesome", "ttf-monaco", "tcpdump",
"ngrep", "wireshark-gtk", "teamviewer", "mopidy-podcast", "tigervnc",
"kdegraphics-okular", "pandoc", "kdeconnect-git", "mlocate",
"ncurses5-compat-libs", "lsdesktopf", "wmctrl",
]
SERVICES = [
"sshd.socket", "nvidia-persistenced.service", "NetworkManager.service",
"--user vncserver@:1", "autorandr.service", "avahi-daemon.service"
]
@task
def install_pacaur(ctx):
ctx.run(os.path.join(RESOURCES_DIRECTORY, "install_pacaur.sh"))
@task
def symlink_xorg(ctx, xorg_target="/etc/X11/xorg.conf"):
ctx.run("sudo mv {} {}".format(
xorg_target, xorg_target + ".backup"
))
ctx.run("sudo ln -s {} {}".format(
os.path.join(RESOURCES_DIRECTORY, "xorg.conf"),
xorg_target,
))
@task
def steam(ctx):
ctx.run("pacaur -S lib32-nvidia steam-libs steam-native")

View File

@ -1,113 +0,0 @@
brew 'android-sdk'
brew 'ant'
brew 'autoconf'
brew 'autojump'
brew 'automake'
brew 'binutils'
brew 'brew-cask'
brew 'cmake'
brew 'coreutils'
brew 'ctags'
brew 'daemonize'
brew 'docker'
brew 'fontconfig'
brew 'fontforge'
brew 'freetype'
brew 'gawk'
brew 'gcc'
brew 'gdbm'
brew 'gettext'
brew 'git-flow'
brew 'git-subrepo'
brew 'giter8'
brew 'glib'
brew 'gobject-introspection'
brew 'gradle'
brew 'grsync'
brew 'gtk+3'
brew 'gupnp'
brew 'html2text'
brew 'icu4c'
brew 'intltool'
brew 'isync'
brew 'jpeg'
brew 'leiningen'
brew 'libevent'
brew 'libffi'
brew 'libidn'
brew 'libpng'
brew 'libsoup'
brew 'libspotify'
brew 'libtasn1'
brew 'libtiff'
brew 'libtool'
brew 'lzip'
brew 'mackup'
brew 'mercurial'
brew 'mopidy'
brew 'mu --with-emacs'
brew 'mysql'
brew 'ncmpcpp'
brew 'netcat'
brew 'nettle'
brew 'ngrep'
brew 'nmap'
brew 'offline-imap'
brew 'openssl'
brew 'ossp-uuid'
brew 'pango'
brew 'pcre'
brew 'pixman'
brew 'pkg-config'
brew 'plantuml'
brew 'pstree'
brew 'psutils'
brew 'pv'
brew 'pyenv'
brew 'pypy'
brew 'python'
brew 'python3'
brew 'rabbitmq'
brew 'racket'
brew 'rsync'
brew 'rtorrent'
brew 'ruby-build'
brew 'sdl'
brew 'sdl_image'
brew 'sdl_mixer'
brew 'sdl_ttf'
brew 'sleuthkit'
brew 'subversion'
brew 'tccutil'
brew 'terminal-notifier'
brew 'the_silver_searcher'
brew 'thrift'
brew 'tig'
brew 'tig'
brew 'tmate'
brew 'tmux'
brew 'unoconv'
brew 'vim'
brew 'w3m'
brew 'wakeonlan'
brew 'wdiff'
brew 'webp'
brew 'weechat'
brew 'wget'
brew 'whereami'
brew 'xz'
brew 'yab'
cask 'adobe-reader'
cask 'android-studio'
cask 'atom'
cask 'bittorrent-sync'
cask 'calibre'
cask 'chicken'
cask 'cscreen'
cask 'firefox'
cask 'flux'
cask 'hipchat'
cask 'libreoffice'
cask 'owncloud'
cask 'sublime-text'
cask 'virtualbox'

View File

@ -1,73 +0,0 @@
cask_args appdir: '/Applications'
brew 'ack'
brew 'bash'
brew 'boot-clj'
brew 'cabal-install'
brew 'coreutils'
brew 'emacs', args: ['with-cocoa', 'with-librsvg', 'with-gnutls', 'with-imagemagick']
brew 'findutils'
brew 'ghc'
brew 'gist'
brew 'git'
brew 'git-flow'
brew 'glide'
brew 'gnupg'
brew 'gnupg2'
brew 'gnutls'
brew 'go'
brew 'htop-osx'
brew 'hub'
brew 'icdiff'
brew 'ispell'
brew 'leiningen'
brew 'netcat'
brew 'nettle'
brew 'ngrep'
brew 'nmap'
brew 'node'
brew 'openssl'
brew 'pandoc'
brew 'pyenv'
brew 'pypy'
brew 'python'
brew 'python3'
brew 'rbenv'
brew 'readline'
brew 'reattach-to-user-namespace'
brew 'rust'
brew 'sbt'
brew 'scala'
brew 'stack'
brew 'sqlite'
brew 'the_silver_searcher'
brew 'thrift'
brew 'tmate'
brew 'tmux'
brew 'watch'
brew 'zsh'
cask 'alfred'
cask 'caffeine'
cask 'dropbox'
cask 'flash'
cask 'flycut'
cask 'google-chrome'
cask 'google-hangouts'
cask 'gpgtools'
cask 'iterm2'
cask 'java'
cask 'karabiner-elements'
cask 'macpass'
cask 'mactex'
cask 'mirrordisplays'
cask 'osxfuse'
cask 'steam'
cask 'slate'
cask 'sling'
cask 'sparkleshare'
cask 'spotify'
cask 'synergy'
cask 'transmission'
cask 'vlc'
cask 'xquartz'

View File

@ -1,42 +0,0 @@
tap 'thoughtbot/formulae'
tap 'caskroom/fonts'
brew 'cask'
brew 'coreutils'
brew 'emacs', args: ['with-cocoa', 'with-librsvg', 'with-gnutls', 'with-imagemagick']
brew 'findutils'
brew 'git'
brew 'gnupg'
brew 'gnupg2'
brew 'gnutls'
brew 'go'
brew 'htop-osx'
brew 'leiningen'
brew 'pass'
brew 'pyenv'
brew 'rcm'
brew 'rbenv'
brew 'readline'
brew 'reattach-to-user-namespace'
brew 'the_silver_searcher'
brew 'tmux'
brew 'wget'
brew 'zsh'
cask 'font-source-code-pro'
cask 'alfred'
cask 'flycut'
cask 'google-chrome'
cask 'google-hangouts'
cask 'gpgtools'
cask 'iterm2'
cask 'java'
cask 'karabiner-elements'
cask 'slate'
cask 'sparkleshare'
cask 'spotify'
cask 'synergy'
cask 'transmission'
cask 'vlc'
cask 'xquartz'
cask 'font-source-code-pro'

View File

@ -1 +0,0 @@
../dotfiles/lib/python/imalison.py

View File

@ -1,64 +0,0 @@
import os
from invoke import task as ctask
from .util import RESOURCES_DIRECTORY
@ctask(default=True)
def setup(ctx):
apt_get(ctx)
get_sbt(ctx)
linux_pacakges = ('zsh', 'tmux', 'emacs24-nox', 'nmap', 'scala', 'default-jdk',
'default-jre', 'python-virtualenv', 'htop', 'netcat', 'wget',
'zlib1g-dev', 'libxml2-dev', 'libxslt1-dev', 'python-dev',
'libncurses5-dev', 'xbindkeys', 'python3-dev', 'xclip',
'silversearcher-ag', 'npm', 'xdotool', 'gconf-editor',
'dropbox', 'offlineimap', 'mu4e' 'fonts-droid' 'fonts-noto',
'gnutls-bin', 'libgmime-2.6-', 'libxapian-dev',
'openssh-server', 'golang', 'gitfs',
'python-software-properties', 'software-properties-common')
repositories = ('ppa:presslabs/gitfs',)
@ctask
def apt_get(ctx):
for repository in repositories:
ctx.run('sudo add-apt-repository {0}'.format(repository))
ctx.run('sudo apt-get update')
install_command = 'sudo apt-get -y install'
for package in linux_pacakges:
ctx.run('{0} {1}'.format(install_command, package), pty=False)
@ctask
def get_sbt(ctx):
ctx.run('wget http://dl.bintray.com/sbt/debian/sbt-0.13.5.deb '
'--output-document=sbt.deb; sudo dpkg -i sbt.deb; '
'sudo apt-get update; sudo apt-get install sbt; rm sbt.deb')
@ctask
def get_hub(ctx):
ctx.run("""git clone https://github.com/github/hub.git &&
cd hub &&
./script/build &&
cp hub /usr/bin &&
sudo chown root /usr/bin/hub &&
sudo chmod 777 /usr/bin/hub""")
@ctask
def monaco(ctx):
ctx.run("sudo cp {0} /usr/share/fonts/fontfiles".format(
os.path.join(RESOURCES_DIRECTORY, "Monaco-Powerline.otf")
))
ctx.run("sudo fc-cache -fv")
@ctask
def emacs_bindings_in_gnome(ctx):
ctx.run("gsettings set org.gnome.desktop.interface gtk-key-theme 'Emacs'")

View File

@ -1,263 +0,0 @@
import os
from invoke import task as ctask
from . import util
@ctask(default=True)
def setup(ctx):
brew(ctx)
brew_essential(ctx)
tccutil(ctx)
access_for_assistive_devices(ctx)
karabiner(ctx)
locate(ctx)
set_path_for_launchd(ctx)
rvm(ctx)
fonts(ctx)
fix_htop(ctx)
iTerm(ctx)
keyboard_settings(ctx)
custom_keyboard_shortcuts(ctx)
brew_additional(ctx)
brew_default(ctx)
@ctask
def setup_dbus(ctx):
ctx.run("ln -sfv /usr/local/opt/d-bus/*.plist ~/Library/LaunchAgents")
@ctask
def system_settings(ctx):
ctx.run('{0}'.format(
os.path.join(util.RESOURCES_DIRECTORY, 'osx_setup.sh')
), pty=True)
BREWFILE_DIRECTORY = os.path.join(util.TASKS_DIRECTORY, "brewfiles")
def make_brewfile_task(filename):
task_name = "brew_{}".format(filename)
@ctask(name=task_name)
def temp(ctx):
ctx.run('brew bundle --file="{}"'.format(
os.path.join(BREWFILE_DIRECTORY, filename)
))
globals()[task_name] = temp
for filename in os.listdir(BREWFILE_DIRECTORY):
make_brewfile_task(filename)
@ctask
def cider(ctx):
ctx.run('brew install caskroom/cask/brew-cask')
if not util.command_exists('cider'):
ctx.run('sudo pip install cider')
ctx.run('cider restore -i')
@ctask
def brew(ctx):
path = 'https://raw.githubusercontent.com/Homebrew/install/master/install)'
if not util.command_exists('brew'):
ctx.run('ruby -e "$(curl -fsSL {0}'.format(path))
ctx.run('brew tap Homebrew/bundle')
@ctask
def set_path_for_launchd(ctx):
launch_agent_dir = os.path.expanduser('~/Library/LaunchAgents/')
filename = 'set-path.plist'
source = os.path.join(util.RESOURCES_DIRECTORY, filename)
destination = os.path.join(launch_agent_dir, filename)
if os.path.exists(source) and not os.path.exists(destination):
util.ensure_path_exists(launch_agent_dir)
ctx.run('ln -s {0} {1}'.format(source, destination))
APPS_NEEDING_ASSISTIVE_DEVICE_ACCESS = ('Slate', 'Synergy', 'iTerm')
@ctask
def access_for_assistive_devices(ctx):
# TODO: refactor to use tccutil.py
for app in APPS_NEEDING_ASSISTIVE_DEVICE_ACCESS:
app_string = '/Applications/{0}.app'.format(app)
user_application = os.path.expanduser('~' + app_string)
access_if_exists(ctx, user_application)
access_if_exists(ctx, app_string)
access_if_exists(
ctx,
"/Applications/Karabiner.app/"
)
access_if_exists(
ctx,
"/Applications/Karabiner.app/Contents/Applications/"
"Karabiner_AXNotifier.app"
)
SYNERGY_BINARIES_PATH = '/Applications/Synergy.app/Contents/MacOS/'
SCRIPTS_NEEDING_ASSISTIVE_DEVICE_ACCESS = [
os.path.join(SYNERGY_BINARIES_PATH, 'synergyc'),
os.path.join(SYNERGY_BINARIES_PATH, 'synergys'),
"org.gnu.Emacs",
"com.googlecode.iterm2",
]
@ctask
def tccutil(ctx):
if not os.path.exists(os.path.expanduser("~/.lib/bin/tccutil.py")):
ctx.run('wget -O "$HOME/.lib/bin/tccutil.py" "https://raw.githubusercontent.com/IvanMalison/tccutil/master/tccutil.py"')
ctx.run('chmod 755 "$HOME/.lib/bin/tccutil.py"')
for script in SCRIPTS_NEEDING_ASSISTIVE_DEVICE_ACCESS:
command = 'sudo tccutil.py -v -i "{0}" && sudo tccutil.py -v -e "{0}"'.format(script)
print(command)
ctx.run(command)
def access_if_exists(ctx, app_string):
print("attempting access for {0}".format(app_string))
if os.path.exists(app_string):
print("enabling access for {0}".format(app_string))
ctx.run(
'zsh -c "source ~/.zshrc && '
'enable_access_for_assistive_devices \"{0}\""'.format(
app_string
)
)
@ctask(aliases=['hyper', 'fast_repeat'])
def karabiner(ctx):
source = '{0}/karabiner-hyper.xml'.format(util.RESOURCES_DIRECTORY)
destination_folder = os.path.join(
os.path.expanduser("~/Library"), "Application\\ Support", "Karabiner"
)
destination = os.path.join(destination_folder, "private.xml")
try:
ctx.run("rm {0}".format(destination))
except:
pass
util.ensure_path_exists(destination_folder)
ctx.run("ln -s {0} {1}".format(source, destination))
ctx.run("{0}/karabiner_config.sh".format(util.RESOURCES_DIRECTORY))
@ctask
def locate(ctx):
ctx.run('sudo launchctl load -w '
'/System/Library/LaunchDaemons/com.apple.locate.plist')
@ctask
def rvm(ctx):
ctx.run('\\curl -sSL https://get.rvm.io | bash -s stable')
@ctask
def fonts(ctx):
ctx.run('open {0}'.format(
os.path.join(util.RESOURCES_DIRECTORY, 'fonts', "*"))
)
@ctask
def cl_tools(ctx):
if not util.command_exists('gcc'):
ctx.run('xcode-select --install')
@ctask
def fix_htop(ctx):
real_htop_location = ctx.run(
"zsh -c 'greadlink -f $(brew --prefix htop-osx)'"
).stdout.strip() + "/bin/htop"
ctx.run("sudo chmod 6555 {0}".format(real_htop_location))
ctx.run("sudo chown root {0}".format(real_htop_location))
@ctask
def iTerm(ctx):
library_plist = os.path.join(os.path.expanduser("~"), "Library",
"Preferences", "com.googlecode.iterm2.plist")
ctx.run("defaults write {0} LoadPrefsFromCustomFolder -bool true".format(
library_plist
))
ctx.run("defaults write {0} PrefsCustomFolder -string {1}".format(
library_plist, util.RESOURCES_DIRECTORY
))
@ctask
def launch_agents(ctx, flags=''):
ctx.run('dotfiles -sn{1} -R {0}/resources/LaunchAgents/ '
'-H ~/Library/LaunchAgents'.format(util.REPO_DIRECTORY, flags))
@ctask
def keyboard_settings(ctx):
ctx.run("zsh -c 'refresh_config && set_modifier_keys_on_all_keyboards'")
settings_directory = os.path.join(util.RESOURCES_DIRECTORY, 'osx_settings')
all_save_settings = []
all_write_settings = []
all_diff_settings = []
def functions_for_filename(filename):
filepath = os.path.join(settings_directory, filename)
task_name = 'settings-write:' + filename.replace('.', '-')
@ctask(name=task_name)
def task(ctx):
ctx.run("defaults write {0} '$(cat {1})'".format(
filename, filepath
))
globals()[task_name] = task
all_write_settings.append(task)
task_name = 'settings-save:' + filename.replace('.', '-')
@ctask(name=task_name)
def task(ctx):
ctx.run("defaults read {0} > {1}".format(
filename, filepath
))
globals()[task_name] = task
all_save_settings.append(task)
task_name = 'settings-diff:' + filename.replace('.', '-')
@ctask(name=task_name)
def task(ctx):
print(filepath)
print(filename)
ctx.run("zsh -c 'icdiff <(defaults read {0}) {1}'".format(
filename, filepath
))
globals()[task_name] = task
all_diff_settings.append(task)
for _, _, filenames in os.walk(settings_directory):
for filename in filenames:
functions_for_filename(filename)
@ctask
def settings_write_all(ctx):
for function in all_write_settings:
function(ctx)
@ctask
def custom_keyboard_shortcuts(ctx):
command_string = b"""defaults write -globalDomain NSUserKeyEquivalents '{"Enter Full Screen" = "@\U21a9";"Exit Full Screen" = "@\U21a9";"Full Screen" = "@\U21a9";}'"""
ctx.run(command_string)

View File

@ -1,13 +0,0 @@
#!/usr/bin/env zsh
pacaur -S android-platform android-sdk android-sdk-platform-tools android-sdk-build-tools --noconfirm --noedit --needed
sudo groupadd asdkusers
sudo gpasswd -a "$(whoami)" asdkusers
sudo chown -R :asdkusers /opt/android-sdk/
sudo chmod -R g+w /opt/android-sdk/
sudo newgrp asdkusers
pacaur -S android-platform-25 --noconfirm --noedit --needed
pacaur -S android-studio --noconfirm --noedit --needed

View File

@ -1,118 +0,0 @@
#!/usr/bin/env sh
indirect_expand() {
eval "value=\"\${$1}\""
echo $value
}
ESSENTIAL=(
"autoconf"
"automake"
"avahi"
"copyq"
"emacs-git"
"git"
"gnome-keyring"
"htop"
"jdk8-openjdk"
"lightdm-git"
"ncurses5-compat-libs"
"networkmanager-applet"
"notification-daemon"
"nss-mdns"
"ntp"
"openjdk8-doc"
"openjdk8-src"
"pass"
"pasystray"
"pavucontrol"
"pkg-config"
"pulseaudio-ctl"
"pyenv"
"python-pip"
"rcm"
"rofi"
"rofi-pass"
"sparkleshare"
"spotify"
"termite"
"the_silver_searcher"
"udiskie"
"udisks"
"xclip"
"xorg-xrandr"
"xsettingsd-git"
"zsh"
)
NEEDED=(
"android-tools"
"playerctl"
"android-sdk"
"android-sdk-platform-tools"
"feh"
"skippy-xd-git"
"vlc"
"xdotool"
)
OTHER=(
"simplescreenrecorder"
"git-extras"
)
LANGUAGES=(
"nvm"
"scala"
"boot"
"clojure"
"go"
"leiningen"
"node"
"pulp"
"purescript"
"rbenv"
"ruby"
"rust"
)
APPEARANCE=(
"adobe-source-code-pro-fonts"
"emojione-color-font"
"fontawesome"
"ttf-roboto"
"compton"
"screenfetch"
"noto-fonts-cjk"
"adapta-gtk-theme"
"numix-icon-theme-git"
"volnoti"
)
NVIDIA=(
"nvidia-settings"
)
MACBOOK=(
"broadcom-wl-dkms"
"pommed-light"
"batterymon-clone"
)
SERVICES=(
"sshd.socket"
"nvidia-persistenced.service"
"NetworkManager.service"
"--user vncserver@:1"
"autorandr.service"
"avahi-daemon.service"
)
install_deps() {
for dependency in "${APPEARANCE[@]}"
do
pacaur -S $dependency --noconfirm --noedit --needed
done
}
install_deps "$@"

View File

@ -1,5 +0,0 @@
#!/usr/bin/env zsh
cabal_installs = (
"ShellCheck" "ghc-mod" "stack" "xmonad" "haskdogs" "hasktags"
)

View File

@ -1,9 +0,0 @@
#!/usr/bin/env zsh
# need to run `sudo gpasswd -a imalison network`
# Install gnome-keyring
SYSTEM_SERVICES=(
"systemd-resolved.service" "wpa_supplicant.service"
"NetworkManager.service" "autorandr.service" "sshd.socket"
)

View File

@ -1,35 +0,0 @@
import errno
import os
from invoke import run
TASKS_DIRECTORY = os.path.dirname(__file__)
REPO_DIRECTORY = os.path.dirname(TASKS_DIRECTORY)
DOTFILES_DIRECTORY = os.path.join(REPO_DIRECTORY, 'dotfiles')
RESOURCES_DIRECTORY = os.path.join(REPO_DIRECTORY, 'resources')
def command_exists(command, run=run):
return run("hash {0}".format(command), warn=True, hide=True).exited == 0
def link_filenames(ctx, link_pairs, force=False):
for source, destination in link_pairs:
destination = os.path.expanduser(destination)
source = os.path.expanduser(source)
if force:
ctx.run("sudo rm -rf {0}".format(destination))
if os.path.exists(destination):
print("Skipping {0} because path already exists".format(destination))
else:
print("Linking {0} to {1}".format(destination, source))
ctx.run('ln -s {0} {1}'.format(source, destination))
def ensure_path_exists(path):
try:
os.makedirs(path)
except OSError as exception:
if exception.errno != errno.EEXIST:
raise