From eeb1f2092c795d76949b9019ff090f2ec5b0eb14 Mon Sep 17 00:00:00 2001 From: Jake Jarvis Date: Thu, 22 Dec 2022 13:00:05 -0500 Subject: [PATCH] randomness --- .gitignore | 1 - aws/.gitignore | 3 - aws/config | 3 - firefox/user.js | 366 +++++++--------------------- ssh/.ssh/config | 31 +-- ssh/.ssh/id_ed25519.pub | 1 - ssh/.ssh/id_rsa.pub | 1 - vscode/install_extensions.sh | 29 --- zsh/.zshrc | 13 +- zsh/aliases.zsh | 27 +- zsh/functions.zsh | 130 ++++++++-- zsh/macos.zsh | 19 +- zsh/path.zsh | 26 +- zsh/plugins/zsh-syntax-highlighting | 2 +- 14 files changed, 234 insertions(+), 418 deletions(-) delete mode 100644 aws/.gitignore delete mode 100644 aws/config delete mode 100644 ssh/.ssh/id_ed25519.pub delete mode 100644 ssh/.ssh/id_rsa.pub delete mode 100755 vscode/install_extensions.sh diff --git a/.gitignore b/.gitignore index c4604ff..2ccb4a1 100644 --- a/.gitignore +++ b/.gitignore @@ -1,4 +1,3 @@ -**/.aws/credentials **/.ssh/known_hosts* **/.ssh/config_private *id_rsa* diff --git a/aws/.gitignore b/aws/.gitignore deleted file mode 100644 index 3b0515f..0000000 --- a/aws/.gitignore +++ /dev/null @@ -1,3 +0,0 @@ -# to be safe... -credentials -shell/ \ No newline at end of file diff --git a/aws/config b/aws/config deleted file mode 100644 index 3ee8446..0000000 --- a/aws/config +++ /dev/null @@ -1,3 +0,0 @@ -[default] -region = us-east-1 -output = text diff --git a/firefox/user.js b/firefox/user.js index 86acad0..3ad0cf7 100644 --- a/firefox/user.js +++ b/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); diff --git a/ssh/.ssh/config b/ssh/.ssh/config index 29d8eaa..8770352 100644 --- a/ssh/.ssh/config +++ b/ssh/.ssh/config @@ -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 diff --git a/ssh/.ssh/id_ed25519.pub b/ssh/.ssh/id_ed25519.pub deleted file mode 100644 index 74279a0..0000000 --- a/ssh/.ssh/id_ed25519.pub +++ /dev/null @@ -1 +0,0 @@ -ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIHeuNlSZmqygM4XN7++pmfrNUsFzAjlxaYHoO/JXVdT5 jake@jarv.is \ No newline at end of file diff --git a/ssh/.ssh/id_rsa.pub b/ssh/.ssh/id_rsa.pub deleted file mode 100644 index b5a8717..0000000 --- a/ssh/.ssh/id_rsa.pub +++ /dev/null @@ -1 +0,0 @@ -ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQCYZ5gJTqUnJkkcZ2UQFRpQ8bAjhf//MN+wjT177ByUHz1wcvw3mRrI3PDE9HCpbBlrqSZ46Y2lKktnTJ2Gl8f1XHbBYN2UbeLscprxeFZ/0M508LoJSjTs2Ao8B0x0VH9KxnKKDWzz2BrrkJ670ZWeV5D4WHaIrk/zvbnUeUnkQIJ303FQlHFXwk2/IgkscSM80W/qssW3nQAf+FgHhBc1nbFIP6y/Xz21pKQ3+Uh6eZcUGs4a9Rw/EfB3z41qB83BZKU2BxSTdet4xlEO0xfHRe5q7LLc3VsGcIwhHTZTtAW24UJvgNp5fqCQeJPlkhDy6F/WOag+EXsQq7R7MOEp jakejarvis@gmail.com \ No newline at end of file diff --git a/vscode/install_extensions.sh b/vscode/install_extensions.sh deleted file mode 100755 index 7a9099d..0000000 --- a/vscode/install_extensions.sh +++ /dev/null @@ -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 diff --git a/zsh/.zshrc b/zsh/.zshrc index 00fe954..96c9b74 100644 --- a/zsh/.zshrc +++ b/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" diff --git a/zsh/aliases.zsh b/zsh/aliases.zsh index 222ebc8..2fdbeea 100644 --- a/zsh/aliases.zsh +++ b/zsh/aliases.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'" diff --git a/zsh/functions.zsh b/zsh/functions.zsh index 282fb02..3ee24d3 100644 --- a/zsh/functions.zsh +++ b/zsh/functions.zsh @@ -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] []..." + 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 "| ". + # 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 +} diff --git a/zsh/macos.zsh b/zsh/macos.zsh index 48c3d12..7528b5c 100644 --- a/zsh/macos.zsh +++ b/zsh/macos.zsh @@ -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" diff --git a/zsh/path.zsh b/zsh/path.zsh index 220d4f3..e98ade6 100644 --- a/zsh/path.zsh +++ b/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" diff --git a/zsh/plugins/zsh-syntax-highlighting b/zsh/plugins/zsh-syntax-highlighting index caa749d..b2c910a 160000 --- a/zsh/plugins/zsh-syntax-highlighting +++ b/zsh/plugins/zsh-syntax-highlighting @@ -1 +1 @@ -Subproject commit caa749d030d22168445c4cb97befd406d2828db0 +Subproject commit b2c910a85ed84cb7e5108e7cb3406a2e825a858f