mirror of
https://github.com/jakejarvis/dotfiles.git
synced 2025-04-25 15:35:21 -04:00
randomness
This commit is contained in:
parent
46fc622186
commit
eeb1f2092c
1
.gitignore
vendored
1
.gitignore
vendored
@ -1,4 +1,3 @@
|
||||
**/.aws/credentials
|
||||
**/.ssh/known_hosts*
|
||||
**/.ssh/config_private
|
||||
*id_rsa*
|
||||
|
3
aws/.gitignore
vendored
3
aws/.gitignore
vendored
@ -1,3 +0,0 @@
|
||||
# to be safe...
|
||||
credentials
|
||||
shell/
|
@ -1,3 +0,0 @@
|
||||
[default]
|
||||
region = us-east-1
|
||||
output = text
|
366
firefox/user.js
366
firefox/user.js
@ -1,376 +1,186 @@
|
||||
// https://github.com/pyllyukko/user.js
|
||||
// https://github.com/drduh/config/blob/master/firefox.user.js
|
||||
// https://github.com/ghacksuserjs/ghacks-user.js
|
||||
|
||||
user_pref("accessibility.force_disabled", 1);
|
||||
// user_pref("accessibility.typeaheadfind.flashBar", 0);
|
||||
user_pref("app.shield.optoutstudies.enabled", false); // disable studies
|
||||
user_pref("app.update.enabled", true);
|
||||
user_pref("app.feedback.baseURL", "");
|
||||
user_pref("app.normandy.api_url", "");
|
||||
user_pref("app.normandy.enabled", false);
|
||||
user_pref("app.normandy.first_run", false);
|
||||
user_pref("app.support.baseURL", "");
|
||||
user_pref("app.shield.optoutstudies.enabled", false);
|
||||
user_pref("beacon.enabled", false);
|
||||
user_pref("breakpad.reportURL", "");
|
||||
user_pref("browser.aboutHomeSnippets.updateUrl", "");
|
||||
user_pref("browser.bookmarks.max_backups", 0);
|
||||
user_pref("browser.casting.enabled", false);
|
||||
user_pref("browser.chrome.errorReporter.enabled", false);
|
||||
user_pref("browser.chrome.errorReporter.submitUrl", "");
|
||||
user_pref("browser.contentblocking.rejecttrackers.reportBreakage.enabled", false);
|
||||
user_pref("browser.aboutConfig.showWarning", false);
|
||||
user_pref("browser.contentblocking.category", "custom");
|
||||
user_pref("browser.contentblocking.report.hide_vpn_banner", true);
|
||||
user_pref("browser.contentblocking.report.lockwise.enabled", false);
|
||||
user_pref("browser.contentblocking.report.show_mobile_app", false);
|
||||
user_pref("browser.contentblocking.report.vpn-promo.url", "");
|
||||
user_pref("browser.contentblocking.report.vpn.enabled", false);
|
||||
user_pref("browser.contentblocking.reportBreakage.enabled", false);
|
||||
user_pref("browser.contentblocking.reportBreakage.url", "");
|
||||
user_pref("browser.crashReports.unsubmittedCheck.enabled", false);
|
||||
user_pref("browser.crashReports.unsubmittedCheck.autoSubmit2", false);
|
||||
user_pref("browser.ctrlTab.migrated", true);
|
||||
user_pref("browser.crashReports.unsubmittedCheck.enabled", false);
|
||||
user_pref("browser.ctrlTab.recentlyUsedOrder", false);
|
||||
user_pref("browser.discovery.enabled", false);
|
||||
user_pref("browser.download.manager.retention", 0);
|
||||
user_pref("browser.download.animateNotifications", false);
|
||||
user_pref("browser.download.autoHideButton", false);
|
||||
user_pref("browser.fixup.alternate.enabled", false);
|
||||
user_pref("browser.fixup.hide_user_pass", true);
|
||||
user_pref("browser.formfill.enable", false);
|
||||
user_pref("browser.library.activity-stream.enabled", false);
|
||||
user_pref("browser.newtabpage.activity-stream.asrouter.disable-captive-portal-vpn-promo", true);
|
||||
user_pref("browser.newtabpage.activity-stream.asrouter.userprefs.cfr.addons", false);
|
||||
user_pref("browser.newtabpage.activity-stream.asrouter.userprefs.cfr.features", false);
|
||||
user_pref("browser.newtabpage.activity-stream.default.sites", "");
|
||||
user_pref("browser.newtabpage.activity-stream.disableSnippets", true);
|
||||
user_pref("browser.newtabpage.activity-stream.enabled", false);
|
||||
user_pref("browser.newtabpage.activity-stream.feeds.discoverystreamfeed", false);
|
||||
user_pref("browser.newtabpage.activity-stream.feeds.section.highlights", false);
|
||||
user_pref("browser.newtabpage.activity-stream.discoverystream.enabled", false);
|
||||
user_pref("browser.newtabpage.activity-stream.discoverystream.personalization.enabled", false);
|
||||
user_pref("browser.newtabpage.activity-stream.discoverystream.spocs.personalized", false);
|
||||
user_pref("browser.newtabpage.activity-stream.discoverystream.sponsored-collections.enabled", false);
|
||||
user_pref("browser.newtabpage.activity-stream.feeds.recommendationprovider", false);
|
||||
user_pref("browser.newtabpage.activity-stream.feeds.section.topstories", false);
|
||||
user_pref("browser.newtabpage.activity-stream.feeds.snippets", false);
|
||||
user_pref("browser.newtabpage.activity-stream.feeds.system.topsites", false);
|
||||
user_pref("browser.newtabpage.activity-stream.feeds.system.topstories", false);
|
||||
user_pref("browser.newtabpage.activity-stream.feeds.systemtick", false);
|
||||
user_pref("browser.newtabpage.activity-stream.feeds.telemetry", false);
|
||||
user_pref("browser.newtabpage.activity-stream.feeds.topsites", false);
|
||||
user_pref("browser.newtabpage.activity-stream.prerender", false);
|
||||
user_pref("browser.newtabpage.activity-stream.improvesearch.topSiteSearchShortcuts.searchEngines", "");
|
||||
user_pref("browser.newtabpage.activity-stream.section.highlights.includeBookmarks", false);
|
||||
user_pref("browser.newtabpage.activity-stream.section.highlights.includeDownloads", false);
|
||||
user_pref("browser.newtabpage.activity-stream.section.highlights.includePocket", false);
|
||||
user_pref("browser.newtabpage.activity-stream.section.highlights.includeVisited", false);
|
||||
user_pref("browser.newtabpage.activity-stream.showSponsored", false);
|
||||
user_pref("browser.newtabpage.activity-stream.showSponsoredTopSites", false);
|
||||
user_pref("browser.newtabpage.activity-stream.telemetry.structuredIngestion.endpoint", "");
|
||||
user_pref("browser.newtabpage.activity-stream.telemetry", false);
|
||||
user_pref("browser.newtabpage.activity-stream.telemetry.ping.endpoint", "");
|
||||
user_pref("browser.newtabpage.activity-stream.tippyTop.service.endpoint", "");
|
||||
user_pref("browser.newtabpage.enhanced", false);
|
||||
user_pref("browser.newtab.preload", false);
|
||||
user_pref("browser.newtabpage.directory.ping", "");
|
||||
user_pref("browser.newtabpage.directory.source", "data:text/plain,{}");
|
||||
user_pref("browser.newtabpage.remote", false);
|
||||
user_pref("browser.newtabpage.storageVersion", 1);
|
||||
user_pref("browser.pagethumbnails.capturing_disabled", true);
|
||||
user_pref("browser.partnerlink.attributionURL", "");
|
||||
user_pref("browser.partnerlink.campaign.topsites", "");
|
||||
user_pref("browser.ping-centre.telemetry", false);
|
||||
user_pref("browser.ping-centre.production.endpoint", "");
|
||||
user_pref("browser.ping-centre.staging.endpoint", "");
|
||||
user_pref("browser.preferences.defaultPerformanceSettings.enabled", false);
|
||||
user_pref("browser.privatebrowsing.forceMediaMemoryCache", true);
|
||||
user_pref("browser.region.network.url", "");
|
||||
user_pref("browser.region.update.enabled", false);
|
||||
user_pref("browser.places.speculativeConnect.enabled", false);
|
||||
user_pref("browser.preferences.moreFromMozilla", false);
|
||||
user_pref("browser.promo.focus.enabled", false);
|
||||
user_pref("browser.safebrowsing.downloads.enabled", false);
|
||||
user_pref("browser.safebrowsing.downloads.remote.block_dangerous_host", false);
|
||||
user_pref("browser.safebrowsing.downloads.remote.block_dangerous", false);
|
||||
user_pref("browser.safebrowsing.downloads.remote.block_potentially_unwanted", false);
|
||||
user_pref("browser.safebrowsing.downloads.remote.block_uncommon", false);
|
||||
user_pref("browser.safebrowsing.downloads.remote.enabled", false);
|
||||
user_pref("browser.safebrowsing.downloads.remote.url", "");
|
||||
user_pref("browser.safebrowsing.malware.enabled", false);
|
||||
user_pref("browser.safebrowsing.phishing.enabled", false);
|
||||
user_pref("browser.search.countryCode", "US");
|
||||
user_pref("browser.search.region", "US");
|
||||
user_pref("browser.search.geoSpecificDefaults", false);
|
||||
user_pref("browser.search.geoSpecificDefaults.url", "");
|
||||
user_pref("browser.search.geoip.url", "");
|
||||
user_pref("browser.search.update", false);
|
||||
user_pref("browser.search.hiddenOneOffs", "Bing,eBay,Facebook"); // disable search providers
|
||||
user_pref("browser.selfsupport.url", "");
|
||||
user_pref("browser.sessionstore.privacy_level", 2); // disable session restore
|
||||
user_pref("browser.sessionstore.resume_from_crash", false);
|
||||
user_pref("browser.safebrowsing.provider.google.updateURL", "");
|
||||
user_pref("browser.safebrowsing.provider.google4.dataSharingURL", "");
|
||||
user_pref("browser.safebrowsing.provider.google4.gethashURL", "");
|
||||
user_pref("browser.safebrowsing.provider.google4.updateURL", "");
|
||||
user_pref("browser.send_pings", false);
|
||||
user_pref("browser.send_pings.require_same_host", true);
|
||||
user_pref("browser.shell.checkDefaultBrowser", false);
|
||||
user_pref("browser.ssl_override_behavior", 1);
|
||||
user_pref("browser.startup.homepage_override.buildID", "20120101");
|
||||
user_pref("browser.shell.defaultBrowserCheckCount", 1);
|
||||
user_pref("browser.shell.didSkipDefaultBrowserCheckOnFirstRun", true);
|
||||
user_pref("browser.tabs.crashReporting.sendReport", false);
|
||||
user_pref("browser.tabs.extraDragSpace", true);
|
||||
user_pref("browser.tabs.warnOnClose", false);
|
||||
user_pref("browser.tabs.warnOnCloseOtherTabs", false);
|
||||
user_pref("browser.tabs.warnOnOpen", false);
|
||||
user_pref("browser.tabs.warnOnClose", true);
|
||||
user_pref("browser.uitour.enabled", false);
|
||||
user_pref("browser.uitour.url", "");
|
||||
user_pref("browser.urlbar.dnsResolveSingleWordsAfterSearch", 0);
|
||||
user_pref("browser.urlbar.eventTelemetry.enabled", false);
|
||||
user_pref("browser.urlbar.speculativeConnect.enabled", false);
|
||||
user_pref("browser.urlbar.suggest.openpage", false);
|
||||
user_pref("browser.urlbar.sponsoredTopSites", false);
|
||||
user_pref("browser.urlbar.suggest.calculator", true);
|
||||
user_pref("browser.urlbar.trimURLs", false);
|
||||
user_pref("browser.urlbar.filter.javascript", true);
|
||||
user_pref("browser.vpn_promo.enabled", false);
|
||||
user_pref("browser.xul.error_pages.expert_bad_cert", true);
|
||||
user_pref("camera.control.face_detection.enabled", false);
|
||||
user_pref("canvas.capturestream.enabled", false); // disable canvas capture stream
|
||||
user_pref("captivedetect.canonicalURL", ""); // disable captive portal helper
|
||||
user_pref("clipboard.autocopy", false);
|
||||
user_pref("datareporting.healthreport.infoURL", "");
|
||||
user_pref("datareporting.healthreport.service.enabled", false);
|
||||
user_pref("datareporting.healthreport.service.firstRun", false);
|
||||
user_pref("captivedetect.canonicalURL", "");
|
||||
user_pref("datareporting.healthreport.uploadEnabled", false);
|
||||
user_pref("datareporting.policy.dataSubmissionEnabled", false);
|
||||
user_pref("device.sensors.enabled", false);
|
||||
user_pref("devtools.cache.disabled", true);
|
||||
user_pref("devtools.dom.enabled", true);
|
||||
user_pref("devtools.onboarding.telemetry.logged", false);
|
||||
user_pref("devtools.debugger.remote-enabled", false);
|
||||
user_pref("devtools.debugger.force-local", true);
|
||||
user_pref("devtools.chrome.enabled", false);
|
||||
user_pref("devtools.webide.autoinstallADBExtension", false);
|
||||
user_pref("devtools.webide.autoinstallADBHelper", false);
|
||||
user_pref("devtools.webide.autoinstallFxdtAdapters", false);
|
||||
user_pref("devtools.webide.enabled", false);
|
||||
// user_pref("dom.allow_cut_copy", false);
|
||||
user_pref("dom.battery.enabled", false);
|
||||
user_pref("dom.caches.enabled", false); // disable service workers cache
|
||||
user_pref("dom.disable_beforeunload", true);
|
||||
user_pref("dom.disable_open_during_load", true);
|
||||
user_pref("dom.disable_window_move_resize", true);
|
||||
user_pref("dom.enable_performance", false);
|
||||
user_pref("dom.enable_performance_navigation_timing", false);
|
||||
user_pref("dom.enable_performance_observer", false);
|
||||
user_pref("dom.enable_performance", false);
|
||||
user_pref("dom.enable_resource_timing", false);
|
||||
// user_pref("dom.event.clipboardevents.enabled", false);
|
||||
user_pref("dom.event.contextmenu.enabled", false);
|
||||
user_pref("dom.flyweb.enabled", false); // disable local discovery
|
||||
user_pref("dom.gamepad.enabled", false); // disable USB enumeration
|
||||
user_pref("dom.imagecapture.enabled", false); // disable camera image capture
|
||||
user_pref("dom.ipc.plugins.flash.subprocess.crashreporter.enabled", false);
|
||||
user_pref("dom.ipc.plugins.reportCrashURL", false);
|
||||
// user_pref("dom.maxHardwareConcurrency", 2);
|
||||
user_pref("dom.mozTCPSocket.enabled", false);
|
||||
user_pref("dom.netinfo.enabled", false);
|
||||
user_pref("dom.push.connection.enabled", false);
|
||||
user_pref("dom.push.enabled", false);
|
||||
user_pref("dom.push.serverURL", "");
|
||||
user_pref("dom.push.userAgentID", "");
|
||||
user_pref("dom.security.https_only_mode", true);
|
||||
user_pref("dom.security.https_only_mode_ever_enabled", true);
|
||||
user_pref("dom.security.https_only_mode_send_http_background_request", false);
|
||||
user_pref("dom.serviceWorkers.enabled", false);
|
||||
user_pref("dom.targetBlankNoOpener.enabled", true);
|
||||
user_pref("dom.telephony.enabled", false);
|
||||
user_pref("dom.vibrator.enabled", false);
|
||||
user_pref("dom.vr.enabled", false);
|
||||
user_pref("dom.vr.service.enabled", false);
|
||||
user_pref("dom.webaudio.enabled", false);
|
||||
user_pref("dom.security.https_only_mode", true);
|
||||
user_pref("dom.webnotifications.enabled", false);
|
||||
user_pref("dom.webnotifications.serviceworker.enabled", false);
|
||||
user_pref("experiments.activeExperiment", false);
|
||||
user_pref("experiments.enabled", false);
|
||||
user_pref("experiments.manifest.uri", "");
|
||||
user_pref("experiments.supported", false);
|
||||
user_pref("extensions.blocklist.enabled", true);
|
||||
user_pref("extensions.blocklist.url", "https://blocklist.addons.mozilla.org/blocklist/3/%APP_ID%/%APP_VERSION%/");
|
||||
user_pref("extensions.formautofill.addresses.enabled", false);
|
||||
user_pref("extensions.formautofill.available", "off");
|
||||
user_pref("extensions.formautofill.creditCards.available", false);
|
||||
user_pref("extensions.formautofill.creditCards.enabled", false);
|
||||
user_pref("extensions.formautofill.heuristics.enabled", false);
|
||||
user_pref("extensions.getAddons.showPane", false);
|
||||
user_pref("extensions.getAddons.search.browseURL", "https://addons.mozilla.org/%LOCALE%/firefox/search?q=%TERMS%");
|
||||
user_pref("extensions.getAddons.cache.enabled", false);
|
||||
user_pref("extensions.htmlaboutaddons.recommendations.enabled", false);
|
||||
user_pref("extensions.pocket.api", "");
|
||||
user_pref("extensions.pictureinpicture.enable_picture_in_picture_overrides", true);
|
||||
user_pref("extensions.pocket.enabled", false);
|
||||
user_pref("extensions.pocket.oAuthConsumerKey", "");
|
||||
user_pref("extensions.pocket.site", "");
|
||||
user_pref("extensions.screenshots.disabled", true);
|
||||
user_pref("extensions.screenshots.upload-disabled", true);
|
||||
user_pref("extensions.shield-recipe-client.api_url", "");
|
||||
user_pref("extensions.shield-recipe-client.enabled", false);
|
||||
user_pref("extensions.ui.dictionary.hidden", true);
|
||||
user_pref("extensions.ui.experiment.hidden", true);
|
||||
user_pref("extensions.ui.locale.hidden", true);
|
||||
user_pref("extensions.webcompat-reporter.enabled", false); // disable web compatibility reporter
|
||||
user_pref("extensions.webservice.discoverURL", "");
|
||||
user_pref("extensions.webcompat-reporter.enabled", false);
|
||||
user_pref("extensions.webcompat.enable_shims", true);
|
||||
user_pref("extensions.webcompat.perform_injections", true);
|
||||
user_pref("extensions.webcompat.perform_ua_overrides", true);
|
||||
user_pref("findbar.highlightAll", true);
|
||||
user_pref("findbar.modalHighlight", true);
|
||||
user_pref("general.buildID.override", "20120101");
|
||||
user_pref("general.warnOnAboutConfig", false); // disable about:config warning
|
||||
// user_pref("geo.enabled", false); // no geo-location
|
||||
// Mozilla geolocation service instead of Google:
|
||||
user_pref("geo.provider.network.url", "https://location.services.mozilla.com/v1/geolocate?key=%MOZILLA_API_KEY%");
|
||||
user_pref("geo.provider.ms-windows-location", false); // disable geo on windows
|
||||
user_pref("geo.provider.use_corelocation", false); // disable geo on mac
|
||||
user_pref("geo.provider.use_gpsd", false); // disable geo on linux
|
||||
user_pref("geo.wifi.logging.enabled", false);
|
||||
user_pref("geo.wifi.uri", "");
|
||||
user_pref("font.default.x-western", "sans-serif");
|
||||
user_pref("general.smoothScroll.msdPhysics.enabled", true);
|
||||
user_pref("geo.enabled", false);
|
||||
user_pref("geo.provider.network.url", "");
|
||||
user_pref("intl.accept_languages", "en-US, en");
|
||||
user_pref("intl.charset.fallback.override", "utf-8");
|
||||
user_pref("intl.locale.requested", "en-US");
|
||||
user_pref("intl.regional_prefs.use_os_locales", false); // don't use OS to determine locale
|
||||
user_pref("javascript.options.asmjs", false);
|
||||
user_pref("javascript.options.shared_memory", false); // disable shared memory
|
||||
user_pref("javascript.options.wasm", false);
|
||||
user_pref("javascript.use_us_english_locale", true);
|
||||
// user_pref("keyword.enabled", false); // do not submit invalid URLs to search engine
|
||||
user_pref("layers.acceleration.force-enabled", true);
|
||||
user_pref("layout.css.font-visibility.level", 1);
|
||||
user_pref("lightweightThemes.persisted.footerURL", false);
|
||||
user_pref("lightweightThemes.persisted.headerURL", false);
|
||||
user_pref("lightweightThemes.update.enabled", false); // disable themes auto updates
|
||||
user_pref("loop.logDomains", false); // disable more telemetry
|
||||
user_pref("mathml.disabled", true); // disable Mathematical Markup Language
|
||||
user_pref("media.autoplay.default", 2); // HTML5 media - 0: allow; 1: block; 2: prompt
|
||||
user_pref("media.autoplay.default", 5);
|
||||
user_pref("media.block-autoplay-until-in-foreground", true); // disable auto-play in background tabs
|
||||
user_pref("media.autoplay.ask-permission", true);
|
||||
user_pref("media.autoplay.enabled.user-gestures-needed", true);
|
||||
user_pref("media.autoplay.allow-muted", false);
|
||||
user_pref("media.autoplay.block-webaudio", true);
|
||||
user_pref("media.getusermedia.audiocapture.enabled", false); // disable audio capture
|
||||
user_pref("media.getusermedia.browser.enabled", false); // disable WebRTC getUserMedia
|
||||
user_pref("media.getusermedia.screensharing.enabled", false); // disable screen-sharing
|
||||
user_pref("media.gmp-gmpopenh264.enabled", false);
|
||||
user_pref("media.gmp-manager.url", "");
|
||||
user_pref("media.navigator.enabled", false);
|
||||
user_pref("media.navigator.video.enabled", false);
|
||||
user_pref("media.ondevicechange.enabled", false);
|
||||
user_pref("media.peerconnection.enabled", false);
|
||||
user_pref("media.peerconnection.ice.default_address_only", true);
|
||||
user_pref("media.peerconnection.ice.no_host", true);
|
||||
user_pref("media.peerconnection.ice.proxy_only", true);
|
||||
user_pref("media.peerconnection.ice.tcp", false);
|
||||
user_pref("media.peerconnection.identity.enabled", false);
|
||||
user_pref("media.peerconnection.identity.timeout", 1);
|
||||
user_pref("media.peerconnection.turn.disable", true);
|
||||
user_pref("media.peerconnection.use_document_iceservers", false);
|
||||
user_pref("media.peerconnection.video.enabled", false);
|
||||
user_pref("media.video_stats.enabled", false);
|
||||
user_pref("media.webspeech.recognition.enable", false);
|
||||
user_pref("media.webspeech.synth.enabled", false);
|
||||
user_pref("network.allow-experiments", false);
|
||||
user_pref("layout.css.font-visibility.private", 1);
|
||||
user_pref("layout.css.font-visibility.standard", 1);
|
||||
user_pref("layout.css.font-visibility.trackingprotection", 1);
|
||||
user_pref("layout.spellcheckDefault", 2);
|
||||
user_pref("lightweightThemes.getMoreURL", "");
|
||||
user_pref("media.videocontrols.picture-in-picture.video-toggle.has-used", true);
|
||||
user_pref("network.auth.subresource-http-auth-allow", 1);
|
||||
user_pref("network.captive-portal-service.enabled", false);
|
||||
user_pref("network.connectivity-service.enabled", false); // disable network connectivity checks
|
||||
user_pref("network.connectivity-service.enabled", false); // don't help with captive portals
|
||||
user_pref("network.cookie.cookieBehavior", 1); // All third-party cookies
|
||||
user_pref("network.cookie.thirdparty.nonsecureSessionOnly", true);
|
||||
user_pref("network.cookie.thirdparty.sessionOnly", true);
|
||||
user_pref("network.dns.blockDotOnion", true);
|
||||
user_pref("network.connectivity-service.enabled", false);
|
||||
user_pref("network.connectivity-service.nat64-check", false);
|
||||
user_pref("network.cookie.cookieBehavior", 1);
|
||||
user_pref("network.dns.disablePrefetch", true);
|
||||
user_pref("network.dns.disablePrefetchFromHTTPS", true);
|
||||
user_pref("network.file.disable_unc_paths", true); // disable Uniform Naming Convention paths
|
||||
user_pref("network.ftp.enabled", false); // disable FTP
|
||||
user_pref("network.gio.supported-protocols", ""); // disable Gvfs/GIO
|
||||
user_pref("network.http.altsvc.enabled", false); // disable HTTP Alternative Services
|
||||
user_pref("network.http.altsvc.oe", false);
|
||||
// referrer stuff was too strict before -- broke LOTS of crap:
|
||||
user_pref("network.http.sendRefererHeader", 2);
|
||||
user_pref("network.gio.supported-protocols", "");
|
||||
user_pref("network.http.referer.disallowCrossSiteRelaxingDefault", true);
|
||||
user_pref("network.http.referer.spoofSource", false);
|
||||
user_pref("network.http.referer.trimmingPolicy", 0);
|
||||
user_pref("network.http.referer.XOriginPolicy", 1);
|
||||
user_pref("network.http.referer.XOriginTrimmingPolicy", 0);
|
||||
user_pref("network.http.referer.trimmingPolicy", 0);
|
||||
user_pref("network.http.referer.spoofSource", false);
|
||||
user_pref("network.http.sendRefererHeader", 2);
|
||||
user_pref("network.http.speculative-parallel-limit", 0);
|
||||
user_pref("network.IDN_show_punycode", true);
|
||||
user_pref("network.manage-offline-status", false);
|
||||
user_pref("network.negotiate-auth.allow-insecure-ntlm-v1", false); // disable NTLMv1
|
||||
user_pref("network.negotiate-auth.allow-insecure-ntlm-v1-https", false); // disable all NTLM
|
||||
user_pref("network.predictor.cleaned-up", true);
|
||||
user_pref("network.predictor.enable-prefetch", false); // disable prefetching
|
||||
user_pref("network.predictor.enabled", false); // disable "Necko" predictive service
|
||||
user_pref("network.predictor.enable-prefetch", false);
|
||||
user_pref("network.predictor.enabled", false);
|
||||
user_pref("network.prefetch-next", false);
|
||||
user_pref("network.stricttransportsecurity.preloadlist", true); // preload HSTS
|
||||
// DoH via Cloudflare:
|
||||
user_pref("network.trr.custom_uri", "https://cloudflare-dns.com/dns-query");
|
||||
user_pref("network.trr.mode", 2);
|
||||
user_pref("network.trr.uri", "https://cloudflare-dns.com/dns-query");
|
||||
user_pref("network.trr.custom_uri", "https://cloudflare-dns.com/dns-query");
|
||||
user_pref("offline-apps.allow_by_default", false);
|
||||
user_pref("pdfjs.enableScripting", false);
|
||||
user_pref("pdfjs.enableWebGL", false);
|
||||
user_pref("permissions.delegation.enabled", false);
|
||||
// user_pref("plugin.state.flash", 0);
|
||||
user_pref("plugin.state.java", 0);
|
||||
user_pref("plugins.click_to_play", true); // require plugin activation
|
||||
user_pref("privacy.clearOnShutdown.offlineApps", true);
|
||||
user_pref("privacy.clearOnShutdown.openWindows", true);
|
||||
user_pref("privacy.cpd.offlineApps", true);
|
||||
user_pref("privacy.cpd.cache", true);
|
||||
user_pref("privacy.cpd.cookies", true);
|
||||
user_pref("privacy.cpd.downloads", true);
|
||||
user_pref("privacy.cpd.formdata", true);
|
||||
user_pref("privacy.cpd.history", true);
|
||||
user_pref("privacy.cpd.openWindows", true);
|
||||
user_pref("privacy.cpd.passwords", true);
|
||||
// user_pref("privacy.cpd.siteSettings", true);
|
||||
user_pref("privacy.cpd.sessions", true);
|
||||
user_pref("privacy.annotate_channels.strict_list.enabled", true);
|
||||
user_pref("privacy.donottrackheader.enabled", true);
|
||||
// user_pref("privacy.firstparty.isolate", true); // breaks CAPTCHAs, way too annoying
|
||||
// user_pref("privacy.resistFingerprinting", true); // less breakage by using https://addons.mozilla.org/en-US/firefox/addon/canvasblocker/
|
||||
user_pref("privacy.partition.always_partition_third_party_non_cookie_storage.exempt_sessionstorage", false);
|
||||
user_pref("privacy.partition.always_partition_third_party_non_cookie_storage", true);
|
||||
user_pref("privacy.partition.network_state.ocsp_cache", true);
|
||||
user_pref("privacy.partition.serviceWorkers", true);
|
||||
user_pref("privacy.trackingprotection.cryptomining.enabled", true);
|
||||
user_pref("privacy.trackingprotection.enabled", true); // https://wiki.mozilla.org/Security/Tracking_protection
|
||||
user_pref("privacy.trackingprotection.enabled", true);
|
||||
user_pref("privacy.trackingprotection.fingerprinting.enabled", true);
|
||||
user_pref("privacy.trackingprotection.introCount", 20);
|
||||
user_pref("privacy.trackingprotection.ui.enabled", true);
|
||||
user_pref("privacy.userContext.enabled", true);
|
||||
user_pref("privacy.userContext.longPressBehavior", 2); // long-press on + tab button to open container menu
|
||||
user_pref("privacy.userContext.ui.enabled", true); // enable container tabs setting
|
||||
user_pref("privacy.usercontext.about_newtab_segregation.enabled", true);
|
||||
user_pref("reader.parse-on-load.enabled", false);
|
||||
user_pref("privacy.trackingprotection.socialtracking.enabled", true);
|
||||
user_pref("security.cert_pinning.enforcement_level", 2);
|
||||
user_pref("security.certerrors.recordEventTelemetry", false);
|
||||
user_pref("security.csp.enable", true);
|
||||
user_pref("security.csp.experimentalEnabled", true);
|
||||
user_pref("security.data_uri.block_toplevel_data_uri_navigations", true);
|
||||
user_pref("security.dialog_enable_delay", 0); // disable time before confirmation buttons can be clicked
|
||||
user_pref("security.fileuri.strict_origin_policy", true);
|
||||
user_pref("security.insecure_connection_icon.enabled", true);
|
||||
user_pref("security.insecure_connection_text.enabled", true);
|
||||
user_pref("security.insecure_field_warning.contextual.enabled", true);
|
||||
user_pref("security.insecure_password.ui.enabled", true); // warn on non-secure forms
|
||||
// user_pref("security.mixed_content.block_display_content", true); // breaks xfinity on demand
|
||||
// user_pref("security.mixed_content.block_object_subrequest", true); // breaks xfinity on demand
|
||||
user_pref("security.OCSP.enabled", 1);
|
||||
user_pref("security.OCSP.require", true);
|
||||
user_pref("security.pki.sha1_enforcement_level", 1);
|
||||
user_pref("security.sri.enable", true);
|
||||
user_pref("security.ssl.disable_session_identifiers", true);
|
||||
user_pref("security.ssl.enable_ocsp_stapling", true);
|
||||
// user_pref("security.ssl.enable_ocsp_must_staple", true);
|
||||
user_pref("security.ssl.errorReporting.enabled", false);
|
||||
user_pref("security.ssl.errorReporting.url", "");
|
||||
user_pref("security.ssl.treat_unsafe_negotiation_as_broken", true);
|
||||
user_pref("security.ssl.require_safe_negotiation", true);
|
||||
user_pref("security.ssl.treat_unsafe_negotiation_as_broken", true);
|
||||
user_pref("security.tls.enable_0rtt_data", false);
|
||||
user_pref("security.tls.version.min", 3);
|
||||
user_pref("security.tls.version.max", 4);
|
||||
user_pref("security.tls.version.fallback-limit", 4);
|
||||
user_pref("security.xpconnect.plugin.unrestricted", false);
|
||||
user_pref("security.webauth.u2f", true);
|
||||
user_pref("services.blocklist.update_enabled", true);
|
||||
user_pref("shield.savant.enabled", false);
|
||||
user_pref("shumway.disabled", true);
|
||||
user_pref("signon.autofillForms", false);
|
||||
user_pref("security.tls.version.enable-deprecated", false);
|
||||
user_pref("signon.autofillForms.http", false);
|
||||
user_pref("signon.autofillForms", false);
|
||||
user_pref("signon.formlessCapture.enabled", false);
|
||||
user_pref("signon.rememberSignons", false);
|
||||
user_pref("startup.homepage_welcome_url", "");
|
||||
user_pref("toolkit.coverage.opt-out", true);
|
||||
user_pref("toolkit.coverage.endpoint.base", "");
|
||||
user_pref("toolkit.coverage.opt-out", true);
|
||||
user_pref("toolkit.telemetry.archive.enabled", false);
|
||||
user_pref("toolkit.telemetry.bhrPing.enabled", false);
|
||||
user_pref("toolkit.telemetry.cachedClientID", "");
|
||||
user_pref("toolkit.telemetry.coverage.opt-out", true); // disable telemetry coverage
|
||||
user_pref("toolkit.telemetry.enabled", false); // disable Mozilla telemetry
|
||||
user_pref("toolkit.telemetry.coverage.opt-out", true);
|
||||
user_pref("toolkit.telemetry.enabled", false);
|
||||
user_pref("toolkit.telemetry.firstShutdownPing.enabled", false);
|
||||
user_pref("toolkit.telemetry.hybridContent.enabled", false);
|
||||
user_pref("toolkit.telemetry.infoURL", "");
|
||||
user_pref("toolkit.telemetry.newProfilePing.enabled", false);
|
||||
user_pref("toolkit.telemetry.previousBuildID", "");
|
||||
user_pref("toolkit.telemetry.prompted", 2);
|
||||
user_pref("toolkit.telemetry.rejected", true);
|
||||
user_pref("toolkit.telemetry.reportingpolicy.firstRun", false);
|
||||
user_pref("toolkit.telemetry.server", "data:,");
|
||||
user_pref("toolkit.telemetry.shutdownPingSender.enabled", false);
|
||||
user_pref("toolkit.telemetry.unified", false); // disable telemetry
|
||||
user_pref("toolkit.telemetry.unified", false);
|
||||
user_pref("toolkit.telemetry.updatePing.enabled", false);
|
||||
user_pref("toolkit.winRegisterApplicationRestart", false); // disable session restore
|
||||
user_pref("ui.use_standins_for_native_colors", true); // disable exposing system colors to canvas
|
||||
user_pref("webchannel.allowObject.urlWhitelist", "");
|
||||
user_pref("webgl.disabled", true); // disable WebGL
|
||||
user_pref("webgl.disable-extensions", true);
|
||||
user_pref("webgl.disable-fail-if-major-performance-caveat", true);
|
||||
user_pref("webgl.dxgl.enabled", false);
|
||||
user_pref("webgl.enable-debug-renderer-info", false); // do not expose graphics driver information
|
||||
user_pref("webgl.enable-webgl2", false);
|
||||
user_pref("webgl.min_capability_mode", true);
|
||||
user_pref("xpinstall.signatures.required", true); // extensions must be signed
|
||||
user_pref("xpinstall.signatures.required", true);
|
||||
user_pref("xpinstall.whitelist.required", false);
|
||||
|
@ -17,8 +17,6 @@ Host *
|
||||
HostKeyAlgorithms ssh-ed25519-cert-v01@openssh.com,ssh-rsa-cert-v01@openssh.com,ssh-ed25519,ssh-rsa
|
||||
KexAlgorithms curve25519-sha256@libssh.org,diffie-hellman-group-exchange-sha256
|
||||
MACs hmac-sha2-512-etm@openssh.com,hmac-sha2-256-etm@openssh.com,umac-128-etm@openssh.com,hmac-sha2-512,hmac-sha2-256,umac-128@openssh.com
|
||||
# PasswordAuthentication no
|
||||
PubkeyAuthentication yes
|
||||
SendEnv LANG
|
||||
ServerAliveCountMax 3
|
||||
ServerAliveInterval 120
|
||||
@ -29,31 +27,30 @@ Host *
|
||||
AddKeysToAgent yes
|
||||
UseKeychain yes
|
||||
PreferredAuthentications publickey
|
||||
#IdentityFile ~/.ssh/id_ed25519
|
||||
#IdentityFile ~/.ssh/id_rsa
|
||||
IdentityAgent "~/Library/Group Containers/2BUA8C4S2C.com.1password/t/agent.sock"
|
||||
|
||||
Host tufts
|
||||
HostName linux.eecs.tufts.edu
|
||||
User jjarvi01
|
||||
#IdentityFile ~/.ssh/id_ed25519
|
||||
IdentitiesOnly yes
|
||||
ForwardAgent yes
|
||||
|
||||
Host code
|
||||
Host mastodon
|
||||
# tailscale IP:
|
||||
HostName 100.76.96.117
|
||||
HostName 100.85.213.20
|
||||
User root
|
||||
ForwardAgent yes
|
||||
|
||||
Host gitea
|
||||
# tailscale IP:
|
||||
HostName 100.75.40.17
|
||||
User root
|
||||
#IdentityFile ~/.ssh/id_ed25519
|
||||
#IdentitiesOnly yes
|
||||
ForwardAgent yes
|
||||
|
||||
Host tor
|
||||
# tailscale IP:
|
||||
HostName 100.118.144.19
|
||||
User root
|
||||
#IdentityFile ~/.ssh/id_ed25519
|
||||
#IdentitiesOnly yes
|
||||
ForwardAgent yes
|
||||
|
||||
Host y2k
|
||||
@ -61,45 +58,33 @@ Host y2k
|
||||
HostName 100.79.167.105
|
||||
Port 32422
|
||||
User root
|
||||
#IdentityFile ~/.ssh/id_ed25519
|
||||
#IdentitiesOnly yes
|
||||
ForwardAgent yes
|
||||
|
||||
Host nas
|
||||
# home net:
|
||||
HostName 192.168.20.11
|
||||
User jake
|
||||
#IdentityFile ~/.ssh/id_ed25519
|
||||
#IdentitiesOnly yes
|
||||
ForwardAgent yes
|
||||
|
||||
Host seed
|
||||
# home net:
|
||||
HostName 192.168.20.12
|
||||
User jake
|
||||
#IdentityFile ~/.ssh/id_ed25519
|
||||
#IdentitiesOnly yes
|
||||
ForwardAgent yes
|
||||
|
||||
Host argo
|
||||
# home net:
|
||||
HostName 192.168.20.13
|
||||
User jake
|
||||
#IdentityFile ~/.ssh/id_ed25519
|
||||
#IdentitiesOnly yes
|
||||
ForwardAgent yes
|
||||
|
||||
Host github.com
|
||||
HostName github.com
|
||||
User git
|
||||
#IdentityFile ~/.ssh/id_ed25519
|
||||
#IdentitiesOnly yes
|
||||
|
||||
Host hashbang
|
||||
HostName de1.hashbang.sh
|
||||
User jakej
|
||||
#IdentityFile ~/.ssh/id_rsa
|
||||
#IdentitiesOnly yes
|
||||
|
||||
Host *.ssh.wpengine.net
|
||||
IdentityFile ~/.ssh/wpe_devkit
|
||||
|
@ -1 +0,0 @@
|
||||
ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIHeuNlSZmqygM4XN7++pmfrNUsFzAjlxaYHoO/JXVdT5 jake@jarv.is
|
@ -1 +0,0 @@
|
||||
ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQCYZ5gJTqUnJkkcZ2UQFRpQ8bAjhf//MN+wjT177ByUHz1wcvw3mRrI3PDE9HCpbBlrqSZ46Y2lKktnTJ2Gl8f1XHbBYN2UbeLscprxeFZ/0M508LoJSjTs2Ao8B0x0VH9KxnKKDWzz2BrrkJ670ZWeV5D4WHaIrk/zvbnUeUnkQIJ303FQlHFXwk2/IgkscSM80W/qssW3nQAf+FgHhBc1nbFIP6y/Xz21pKQ3+Uh6eZcUGs4a9Rw/EfB3z41qB83BZKU2BxSTdet4xlEO0xfHRe5q7LLc3VsGcIwhHTZTtAW24UJvgNp5fqCQeJPlkhDy6F/WOag+EXsQq7R7MOEp jakejarvis@gmail.com
|
@ -1,29 +0,0 @@
|
||||
#!/usr/bin/env bash
|
||||
|
||||
set -euo pipefail
|
||||
|
||||
extensions=(
|
||||
amazonwebservices.aws-toolkit-vscode
|
||||
DavidAnson.vscode-markdownlint
|
||||
dbaeumer.vscode-eslint
|
||||
EditorConfig.EditorConfig
|
||||
esbenp.prettier-vscode
|
||||
GitHub.github-vscode-theme
|
||||
GitHub.vscode-pull-request-github
|
||||
golang.go
|
||||
mrmlnc.vscode-duplicate
|
||||
ms-azuretools.vscode-docker
|
||||
ms-vscode-remote.remote-containers
|
||||
ms-vscode-remote.remote-ssh
|
||||
ms-vscode-remote.remote-ssh-edit
|
||||
ms-vscode-remote.vscode-remote-extensionpack
|
||||
ms-vscode.wordcount
|
||||
ms-vsliveshare.vsliveshare
|
||||
ms-vsonline.vsonline
|
||||
PKief.material-icon-theme
|
||||
stylelint.vscode-stylelint
|
||||
)
|
||||
|
||||
for e in "${extensions[@]}"; do
|
||||
code --install-extension "$e"
|
||||
done
|
13
zsh/.zshrc
13
zsh/.zshrc
@ -10,8 +10,8 @@ export ZSH=$HOME/.oh-my-zsh
|
||||
# Default to nano 'cause I'm a wimp
|
||||
export EDITOR="nano"
|
||||
export VISUAL="code"
|
||||
export BROWSER="/Applications/Google\ Chrome.app/Contents/MacOS/Google\ Chrome"
|
||||
# export BROWSER="/Applications/Firefox.app/Contents/MacOS/firefox"
|
||||
# export BROWSER="/Applications/Google\ Chrome.app/Contents/MacOS/Google\ Chrome"
|
||||
export BROWSER="/Applications/Firefox.app/Contents/MacOS/firefox"
|
||||
|
||||
# Adjust history for speed
|
||||
HISTFILE=~/.zsh_history
|
||||
@ -68,14 +68,13 @@ export GATSBY_TELEMETRY_DISABLED=1
|
||||
export DOTNET_CLI_TELEMETRY_OPTOUT=1
|
||||
export SAM_CLI_TELEMETRY=0
|
||||
export AZURE_CORE_COLLECT_TELEMETRY=0
|
||||
export CHECKPOINT_DISABLE=1 # prisma
|
||||
export CHECKPOINT_DISABLE=1
|
||||
|
||||
# TEMPORARY: fixes some breakage with node 17
|
||||
#export NODE_OPTIONS=--openssl-legacy-provider
|
||||
|
||||
# 1Password SSH integration
|
||||
# 1Password integrations
|
||||
# https://developer.1password.com/docs/ssh/get-started/#step-4-configure-your-ssh-or-git-client
|
||||
export SSH_AUTH_SOCK=~/Library/Group\ Containers/2BUA8C4S2C.com.1password/t/agent.sock
|
||||
# https://developer.1password.com/docs/cli/shell-plugins/
|
||||
source $HOME/.config/op/plugins.sh
|
||||
|
||||
# iTerm2
|
||||
test -e "${HOME}/.iterm2_shell_integration.zsh" && source "${HOME}/.iterm2_shell_integration.zsh"
|
||||
|
@ -1,25 +1,20 @@
|
||||
# Enable aliases to be sudo'ed
|
||||
alias sudo="sudo "
|
||||
|
||||
alias reload="source ~/.zshrc"
|
||||
|
||||
# restore colors to GNU ls
|
||||
alias ls="ls -G --color=tty"
|
||||
alias ll="ls -lah"
|
||||
alias la="ls -a"
|
||||
alias l="ls -lh"
|
||||
|
||||
# typos
|
||||
alias cd..="cd .."
|
||||
alias ..="cd .."
|
||||
alias ...="cd ../.."
|
||||
alias ....="cd ../../.."
|
||||
alias ~="cd ~"
|
||||
|
||||
alias hosts="sudo $EDITOR /etc/hosts"
|
||||
alias digg="dig @1.1.1.1 +nocmd any +multiline +noall +answer"
|
||||
# alias speed="wget -O /dev/null http://cachefly.cachefly.net/100mb.test"
|
||||
|
||||
#
|
||||
# Git
|
||||
#
|
||||
alias g="git"
|
||||
alias gc="git commit -m" # + commit message
|
||||
alias gca="git add . && git commit -m" # + commit message
|
||||
@ -40,8 +35,6 @@ alias gundo="git reset --soft HEAD~1"
|
||||
alias greset="git reset"
|
||||
alias github="gh repo view --web"
|
||||
alias gist="gh gist create --web"
|
||||
alias ghnew="gh repo create"
|
||||
alias ghfork="gh repo fork"
|
||||
glall() {
|
||||
# pull all remote branches
|
||||
# https://stackoverflow.com/a/10312587
|
||||
@ -50,9 +43,7 @@ glall() {
|
||||
git pull --all
|
||||
}
|
||||
|
||||
#
|
||||
# Docker
|
||||
#
|
||||
alias d="docker"
|
||||
alias dps="docker ps -a"
|
||||
# build and run:
|
||||
@ -73,16 +64,12 @@ alias dcd="docker-compose down"
|
||||
alias dcr="docker-compose down && docker-compose up -d"
|
||||
alias dcl="docker-compose logs -f"
|
||||
|
||||
#
|
||||
# Node/NPM/Yarn
|
||||
#
|
||||
alias npr="npm run"
|
||||
alias fresh_npm="rm -rf node_modules package-lock.json && npm install"
|
||||
alias fresh_yarn="rm -rf node_modules yarn.lock && yarn install"
|
||||
|
||||
#
|
||||
# Hugo
|
||||
#
|
||||
make_hugo() {
|
||||
# parentheses lets us cd to Hugo path without changing our current location
|
||||
(
|
||||
@ -101,15 +88,15 @@ alias hugo_brew="brew upgrade hugo --fetch-HEAD --build-from-source"
|
||||
# run `hugo config` first to make sure we're in a Hugo directory:
|
||||
alias hugo_clean="hugo config 1>/dev/null && rm -rf public/ resources/ build/"
|
||||
|
||||
# SSH
|
||||
alias sshalt="ssh -p 2222"
|
||||
alias moshalt="mosh --ssh=\"ssh -p 2222\""
|
||||
|
||||
alias pubkey="more ~/.ssh/id_ed25519.pub | pbcopy | echo '=> Public key copied to clipboard.'"
|
||||
alias pubkey_rsa="more ~/.ssh/id_rsa.pub | pbcopy | echo '=> Public key copied to clipboard.'"
|
||||
|
||||
# youtube-dl
|
||||
alias ytdl="youtube-dl -f bestvideo+bestaudio"
|
||||
alias ytmp3="youtube-dl -f bestaudio -x --audio-format mp3 --audio-quality 320K"
|
||||
|
||||
alias weather="curl 'https://wttr.in/mht?format=v2'"
|
||||
|
||||
alias shellcheckd="docker run --rm -v \"$PWD:/mnt\" koalaman/shellcheck:latest"
|
||||
# fun
|
||||
alias weather="curl 'https://wttr.in/?format=v2'"
|
||||
|
@ -35,11 +35,6 @@ extract() {
|
||||
fi
|
||||
}
|
||||
|
||||
# Find the real location of a short URL
|
||||
unshort() {
|
||||
curl -sIL $1 | sed -n 's/Location: *//p'
|
||||
}
|
||||
|
||||
# Create a git.io short URL (custom slug optional)
|
||||
# ex: gitio https://github.com/jakejarvis/dotfiles [jakesdotfiles] => https://git.io/jakesdotfiles
|
||||
# https://blog.github.com/2011-11-10-git-io-github-url-shortener
|
||||
@ -50,18 +45,6 @@ gitio() {
|
||||
echo "${RESPONSE//Location: /}"
|
||||
}
|
||||
|
||||
# Transfers text file as sharable link.
|
||||
# See https://transfer.sh/
|
||||
transfer() {
|
||||
if [ $# -eq 0 ]; then echo "No arguments specified. Usage:\necho transfer /tmp/test.md\ncat /tmp/test.md | transfer test.md"; return 1; fi
|
||||
tmpfile=$( mktemp -t transferXXX ); if tty -s; then basefile=$(basename "$1" | sed -e 's/[^a-zA-Z0-9._-]/-/g'); curl --progress-bar --upload-file "$1" "https://transfer.sh/$basefile" >> $tmpfile; else curl --progress-bar --upload-file "-" "https://transfer.sh/$1" >> $tmpfile ; fi; cat $tmpfile; rm -f $tmpfile;
|
||||
}
|
||||
|
||||
# List files in an S3 bucket
|
||||
s3ls() {
|
||||
aws s3 ls s3://$1
|
||||
}
|
||||
|
||||
# Push a local SSH public key to another machine
|
||||
# https://github.com/rtomayko/dotfiles/blob/rtomayko/.bashrc
|
||||
push_ssh_cert() {
|
||||
@ -73,3 +56,116 @@ push_ssh_cert() {
|
||||
ssh $_host 'cat >> ~/.ssh/authorized_keys' < ~/.ssh/id_ed25519.pub
|
||||
done
|
||||
}
|
||||
|
||||
# upload file(s) to https://transfer.sh
|
||||
# https://github.com/dutchcoders/transfer.sh#bash-and-zsh-with-delete-url-delete-token-output-and-prompt-before-uploading
|
||||
transfer()
|
||||
{
|
||||
local file
|
||||
declare -a file_array
|
||||
file_array=("${@}")
|
||||
|
||||
if [[ "${file_array[@]}" == "" || "${1}" == "--help" || "${1}" == "-h" ]]
|
||||
then
|
||||
echo "${0} - Upload arbitrary files to \"transfer.sh\"."
|
||||
echo ""
|
||||
echo "Usage: ${0} [options] [<file>]..."
|
||||
echo ""
|
||||
echo "OPTIONS:"
|
||||
echo " -h, --help"
|
||||
echo " show this message"
|
||||
echo ""
|
||||
echo "EXAMPLES:"
|
||||
echo " Upload a single file from the current working directory:"
|
||||
echo " ${0} \"image.img\""
|
||||
echo ""
|
||||
echo " Upload multiple files from the current working directory:"
|
||||
echo " ${0} \"image.img\" \"image2.img\""
|
||||
echo ""
|
||||
echo " Upload a file from a different directory:"
|
||||
echo " ${0} \"/tmp/some_file\""
|
||||
echo ""
|
||||
echo " Upload all files from the current working directory. Be aware of the webserver's rate limiting!:"
|
||||
echo " ${0} *"
|
||||
echo ""
|
||||
echo " Upload a single file from the current working directory and filter out the delete token and download link:"
|
||||
echo " ${0} \"image.img\" | awk --field-separator=\": \" '/Delete token:/ { print \$2 } /Download link:/ { print \$2 }'"
|
||||
echo ""
|
||||
echo " Show help text from \"transfer.sh\":"
|
||||
echo " curl --request GET \"https://transfer.sh\""
|
||||
return 0
|
||||
else
|
||||
for file in "${file_array[@]}"
|
||||
do
|
||||
if [[ ! -f "${file}" ]]
|
||||
then
|
||||
echo -e "\e[01;31m'${file}' could not be found or is not a file.\e[0m" >&2
|
||||
return 1
|
||||
fi
|
||||
done
|
||||
unset file
|
||||
fi
|
||||
|
||||
local upload_files
|
||||
local curl_output
|
||||
local awk_output
|
||||
|
||||
du --total --block-size="K" --dereference "${file_array[@]}" >&2
|
||||
# be compatible with "bash"
|
||||
if [[ "${ZSH_NAME}" == "zsh" ]]
|
||||
then
|
||||
read $'upload_files?\e[01;31mDo you really want to upload the above files ('"${#file_array[@]}"$') to "transfer.sh"? (Y/n): \e[0m'
|
||||
elif [[ "${BASH}" == *"bash"* ]]
|
||||
then
|
||||
read -p $'\e[01;31mDo you really want to upload the above files ('"${#file_array[@]}"$') to "transfer.sh"? (Y/n): \e[0m' upload_files
|
||||
fi
|
||||
|
||||
case "${upload_files:-y}" in
|
||||
"y"|"Y")
|
||||
# for the sake of the progress bar, execute "curl" for each file.
|
||||
# the parameters "--include" and "--form" will suppress the progress bar.
|
||||
for file in "${file_array[@]}"
|
||||
do
|
||||
# show delete link and filter out the delete token from the response header after upload.
|
||||
# it is important to save "curl's" "stdout" via a subshell to a variable or redirect it to another command,
|
||||
# which just redirects to "stdout" in order to have a sane output afterwards.
|
||||
# the progress bar is redirected to "stderr" and is only displayed,
|
||||
# if "stdout" is redirected to something; e.g. ">/dev/null", "tee /dev/null" or "| <some_command>".
|
||||
# the response header is redirected to "stdout", so redirecting "stdout" to "/dev/null" does not make any sense.
|
||||
# redirecting "curl's" "stderr" to "stdout" ("2>&1") will suppress the progress bar.
|
||||
curl_output=$(curl --request PUT --progress-bar --dump-header - --upload-file "${file}" "https://transfer.sh/")
|
||||
awk_output=$(awk \
|
||||
'gsub("\r", "", $0) && tolower($1) ~ /x-url-delete/ \
|
||||
{
|
||||
delete_link=$2;
|
||||
print "Delete command: curl --request DELETE " "\""delete_link"\"";
|
||||
|
||||
gsub(".*/", "", delete_link);
|
||||
delete_token=delete_link;
|
||||
print "Delete token: " delete_token;
|
||||
}
|
||||
|
||||
END{
|
||||
print "Download link: " $0;
|
||||
}' <<< "${curl_output}")
|
||||
|
||||
# return the results via "stdout", "awk" does not do this for some reason.
|
||||
echo -e "${awk_output}\n"
|
||||
|
||||
# avoid rate limiting as much as possible; nginx: too many requests.
|
||||
if (( ${#file_array[@]} > 4 ))
|
||||
then
|
||||
sleep 5
|
||||
fi
|
||||
done
|
||||
;;
|
||||
|
||||
"n"|"N")
|
||||
return 1
|
||||
;;
|
||||
|
||||
*)
|
||||
echo -e "\e[01;31mWrong input: '${upload_files}'.\e[0m" >&2
|
||||
return 1
|
||||
esac
|
||||
}
|
||||
|
@ -2,22 +2,6 @@
|
||||
alias intel="arch -x86_64 /bin/zsh"
|
||||
alias arm="arch -arm64 /opt/homebrew/bin/zsh"
|
||||
|
||||
# Remap macOS core utils to GNU
|
||||
alias grep="ggrep"
|
||||
alias which="gwhich"
|
||||
alias awk="gawk"
|
||||
#alias sed="gsed"
|
||||
#alias find="gfind"
|
||||
#alias make="gmake"
|
||||
#alias tar="gtar"
|
||||
|
||||
# macOS has no `md5sum`, so use `md5` as a fallback
|
||||
command -v md5sum > /dev/null || alias md5sum="md5"
|
||||
|
||||
# system python -> homebrew python3
|
||||
# alias python="python3"
|
||||
# alias pip="pip3"
|
||||
|
||||
# My own creation! See: https://github.com/jakejarvis/simpip
|
||||
alias ipv4="curl -4 simpip.com --max-time 1 --proto-default https --silent"
|
||||
alias ipv6="curl -6 simpip.com --max-time 1 --proto-default https --silent"
|
||||
@ -33,7 +17,7 @@ alias dns-set-google="dns-set 8.8.8.8 8.8.4.4"
|
||||
alias flush="sudo killall -HUP mDNSResponder; sudo killall mDNSResponderHelper; sudo dscacheutil -flushcache"
|
||||
|
||||
# Update: brew, npm, gems, pip, app store, macos
|
||||
update() {
|
||||
system_update() {
|
||||
NC="\033[0m"
|
||||
YELLOW="\033[0;33m"
|
||||
|
||||
@ -76,7 +60,6 @@ alias unhide="defaults write com.apple.finder AppleShowAllFiles -bool true && ki
|
||||
alias forcetrash="sudo rm -rf ~/.Trash /Volumes/*/.Trashes"
|
||||
alias unq="sudo xattr -rd com.apple.quarantine"
|
||||
alias verify_sign="codesign --verify --deep --verbose"
|
||||
alias afk="/System/Library/CoreServices/Menu\ Extras/User.menu/Contents/Resources/CGSession -suspend"
|
||||
|
||||
alias gpu="system_profiler SPDisplaysDataType"
|
||||
alias cpu="sysctl -n machdep.cpu.brand_string"
|
||||
|
26
zsh/path.zsh
26
zsh/path.zsh
@ -3,9 +3,9 @@ if test ! "$(uname)" = "Darwin"; then
|
||||
fi
|
||||
|
||||
# Default paths
|
||||
export PATH="$HOME/bin:/opt/local/bin:/opt/local/sbin:/usr/local/bin:/usr/bin:/bin:/usr/local/sbin:/usr/sbin:/sbin:$PATH"
|
||||
export PATH="/opt/local/bin:/opt/local/sbin:/usr/local/bin:/usr/bin:/bin:/usr/local/sbin:/usr/sbin:/sbin${PATH+:$PATH}"
|
||||
|
||||
# homebrew
|
||||
# Homebrew
|
||||
export HOMEBREW_PREFIX="/opt/homebrew"
|
||||
export HOMEBREW_CELLAR="/opt/homebrew/Cellar"
|
||||
export HOMEBREW_REPOSITORY="/opt/homebrew"
|
||||
@ -13,18 +13,15 @@ export PATH="/opt/homebrew/bin:/opt/homebrew/sbin${PATH+:$PATH}"
|
||||
export MANPATH="/opt/homebrew/share/man${MANPATH+:$MANPATH}:"
|
||||
export INFOPATH="/opt/homebrew/share/info:${INFOPATH:-}"
|
||||
|
||||
# Remap macOS core utils to GNU equivalents (from coreutils, findutils, gnu-*, etc.):
|
||||
# https://gist.github.com/skyzyx/3438280b18e4f7c490db8a2a2ca0b9da?permalink_comment_id=3049694#gistcomment-3049694
|
||||
for p in "$(brew --prefix)"/opt/*/libexec/gnubin; do export PATH=$p:$PATH; done
|
||||
# Ensure `man` refers to the new binaries:
|
||||
for p in "$(brew --prefix)"/opt/*/libexec/gnuman; do export MANPATH=$p:$MANPATH; done
|
||||
|
||||
# Go
|
||||
export GOPATH="$HOME/golang"
|
||||
#export GOROOT="/usr/local/opt/go/libexec"
|
||||
export PATH="$GOPATH/bin:$PATH"
|
||||
#export PATH="$GOROOT/bin:$PATH"
|
||||
|
||||
# Ruby
|
||||
# export PATH="$HOME/.gem/ruby/3.1.0/bin:$PATH"
|
||||
# export RUBY_HOME="$HOMEBREW_PREFIX/opt/ruby/bin"
|
||||
# export GEM_PATH="$HOMEBREW_PREFIX/lib/ruby/gems/3.1.0/bin"
|
||||
# export PATH="$RUBY_HOME:$PATH"
|
||||
# export PATH="$GEM_PATH:$PATH"
|
||||
|
||||
# rbenv
|
||||
export RUBY_CONFIGURE_OPTS="--with-openssl-dir=$(brew --prefix openssl@1.1) --with-readline-dir=$(brew --prefix readline) --with-libyaml-dir=$(brew --prefix libyaml)"
|
||||
@ -32,11 +29,8 @@ if command -v rbenv 1>/dev/null 2>&1; then
|
||||
eval "$(rbenv init -)"
|
||||
fi
|
||||
|
||||
# Python
|
||||
# export PATH="$HOME/Library/Python/3.9/bin:$PATH"
|
||||
|
||||
# openjdk
|
||||
export PATH="$HOMEBREW_PREFIX/opt/openjdk/bin:$PATH"
|
||||
# OpenJDK
|
||||
export PATH="$(brew --prefix)/opt/openjdk/bin:$PATH"
|
||||
|
||||
# Metasploit
|
||||
export PATH="/opt/metasploit-framework/bin:$PATH"
|
||||
|
@ -1 +1 @@
|
||||
Subproject commit caa749d030d22168445c4cb97befd406d2828db0
|
||||
Subproject commit b2c910a85ed84cb7e5108e7cb3406a2e825a858f
|
Loading…
x
Reference in New Issue
Block a user