

{"id":11846,"date":"2019-02-02T09:36:40","date_gmt":"2019-02-02T14:36:40","guid":{"rendered":"https:\/\/rud.is\/b\/?p=11846"},"modified":"2019-02-02T09:36:40","modified_gmt":"2019-02-02T14:36:40","slug":"homebrew-2-0-0-released-homebrewanalytics-package-updated","status":"publish","type":"post","link":"https:\/\/rud.is\/b\/2019\/02\/02\/homebrew-2-0-0-released-homebrewanalytics-package-updated\/","title":{"rendered":"Homebrew 2.0.0 Released == homebrewanalytics package updated"},"content":{"rendered":"<p>A major new release of Homebrew <a href=\"https:\/\/brew.sh\/2019\/02\/02\/homebrew-2.0.0\/\">has landed<\/a> and now includes support for Linux as well as Windows! via the Windows Subsystem for Linux. There are overall stability and speed improvements baked in as well. The aforelinked notification has all the info you need to see the minutiae. Unless you&#8217;ve been super-lax in updating, <code>brew update<\/code> will get you the latest release.<\/p>\n<p>There are extra formulae analytics endpoints and the <a href=\"https:\/\/git.sr.ht\/~hrbrmstr\/homebrewanalytics\"><code>homebrewanalytics<\/code>?<\/a> R package has been updated to handle them. A change worth noting in the package is that all the API calls are memoised to avoid hammering the Homebrew servers (though the &#8220;API&#8221; is really just file endpoints and they aren&#8217;t big files but bandwidth is bandwidth). Use the facilities in the <code>memoise<\/code> package to invalidate the cache if you have long running scripts.<\/p>\n<p>Use your favorite social coding site to install it (If I don&#8217;t maintain mirrors on your open social coding platform of choice just drop a note in the comments and I&#8217;ll start mirroring there as well):<\/p>\n<pre><code class=\"language-r\">devtools::install_git(\"https:\/\/git.sr.ht\/~hrbrmstr\/homebrewanalytics\")\n# or\ndevtools::install_gitlab(\"hrbrmstr\/homebrewanalytics\")\n# or\ndevtools::install_github(\"hrbrmstr\/homebrewanalytics\")\n<\/code><\/pre>\n<p>The <a href=\"https:\/\/gitlab.com\/hrbrmstr\/homebrewanalytics\/blob\/master\/README.md\">README<\/a> and in-package manual pages provide basic examples of retrieving data. But we can improve upon those here, such as finding out the dependency distribution of Homebrew formulae:<\/p>\n<pre><code class=\"language-r\">library(hrbrthemes)\nlibrary(homebrewanalytics) # git.sr.hr\/~hrbrmstr ; git[la|hu]b\/hrbrmstr\nlibrary(tidyverse)\n\nf &lt;- brew_formulae()\n\nmutate(f, n_dependencies = lengths(build_dependencies)) %&gt;% \n  count(n_dependencies) %&gt;% \n  mutate(n_dependencies = factor(n_dependencies)) %&gt;% \n  ggplot() +\n  geom_col(aes(n_dependencies, n), fill = ft_cols$slate, width = 0.65) +\n  scale_y_comma(\"# formulae\") +\n  labs(\n    x = \"# Dependencies\",\n    title = \"Dependency distribution for Homebrew formulae\"\n  ) +\n  theme_ft_rc(grid=\"Y\")\n<\/code><\/pre>\n<p><a href=\"https:\/\/rud.is\/b\/2019\/02\/02\/homebrew-2-0-0-released-homebrewanalytics-package-updated\/01-dep-dist\/\" rel=\"attachment wp-att-11847\"><img data-recalc-dims=\"1\" loading=\"lazy\" decoding=\"async\" data-attachment-id=\"11847\" data-permalink=\"https:\/\/rud.is\/b\/2019\/02\/02\/homebrew-2-0-0-released-homebrewanalytics-package-updated\/01-dep-dist\/\" data-orig-file=\"https:\/\/i0.wp.com\/rud.is\/b\/wp-content\/uploads\/2019\/02\/01-dep-dist.png?fit=2084%2C1022&amp;ssl=1\" data-orig-size=\"2084,1022\" data-comments-opened=\"1\" data-image-meta=\"{&quot;aperture&quot;:&quot;0&quot;,&quot;credit&quot;:&quot;&quot;,&quot;camera&quot;:&quot;&quot;,&quot;caption&quot;:&quot;&quot;,&quot;created_timestamp&quot;:&quot;0&quot;,&quot;copyright&quot;:&quot;&quot;,&quot;focal_length&quot;:&quot;0&quot;,&quot;iso&quot;:&quot;0&quot;,&quot;shutter_speed&quot;:&quot;0&quot;,&quot;title&quot;:&quot;&quot;,&quot;orientation&quot;:&quot;0&quot;}\" data-image-title=\"01-dep-dist\" data-image-description=\"\" data-image-caption=\"\" data-large-file=\"https:\/\/i0.wp.com\/rud.is\/b\/wp-content\/uploads\/2019\/02\/01-dep-dist.png?fit=510%2C250&amp;ssl=1\" src=\"https:\/\/i0.wp.com\/rud.is\/b\/wp-content\/uploads\/2019\/02\/01-dep-dist.png?resize=510%2C250&#038;ssl=1\" alt=\"\" width=\"510\" height=\"250\" class=\"aligncenter size-full wp-image-11847\" \/><\/a><\/p>\n<p>Given how long it sometimes takes to upgrade my various Homebrew installations I was surprised to see <code>0<\/code> be so prevalent, but one of the major changes in 2.0.0 is going to be more binary installs (unless you really need custom builds) so that is likely part of my experience, especially with the formulae I need to support cybersecurity and spatial operations.<\/p>\n<p>We can also see which formuale are in the top 50%:<\/p>\n<pre><code class=\"language-r\">unlist(f$dependencies) %&gt;% \n  table(dnn = \"library\") %&gt;% \n  broom::tidy() %&gt;% \n  arrange(desc(n)) %&gt;% \n  mutate(pct = n\/sum(n), cpct = cumsum(pct)) %&gt;% \n  filter(cpct &lt;= 0.5) %&gt;% \n  mutate(pct = scales::percent(pct)) %&gt;% \n  mutate(library = factor(library, levels = rev(library))) %&gt;% \n  ggplot(aes(n, library)) +\n  geom_segment(aes(xend=0, yend=library), color = ft_cols$slate, size=3.5) +\n  geom_text(\n    aes(x = (n+max(n)*0.005), label = sprintf(\"%s (%s)\", n, pct)), \n    hjust = 0, size = 3, family = font_rc, color = ft_cols$gray\n  ) +\n  scale_x_comma(position = \"top\", limits=c(0, 500)) +\n  labs(\n    x = \"# package using the library\", y = NULL,\n    title = \"Top 50% of libraries used across Homebrew formulae\"\n  ) +\n  theme_ft_rc(grid=\"X\") +\n  theme(axis.text.y = element_text(family = \"mono\"))\n<\/code><\/pre>\n<p><a href=\"https:\/\/rud.is\/b\/2019\/02\/02\/homebrew-2-0-0-released-homebrewanalytics-package-updated\/02-50-libs-01\/\" rel=\"attachment wp-att-11851\"><img data-recalc-dims=\"1\" loading=\"lazy\" decoding=\"async\" data-attachment-id=\"11851\" data-permalink=\"https:\/\/rud.is\/b\/2019\/02\/02\/homebrew-2-0-0-released-homebrewanalytics-package-updated\/02-50-libs-01\/\" data-orig-file=\"https:\/\/i0.wp.com\/rud.is\/b\/wp-content\/uploads\/2019\/02\/02-50-libs-01.png?fit=1748%2C1744&amp;ssl=1\" data-orig-size=\"1748,1744\" data-comments-opened=\"1\" data-image-meta=\"{&quot;aperture&quot;:&quot;0&quot;,&quot;credit&quot;:&quot;&quot;,&quot;camera&quot;:&quot;&quot;,&quot;caption&quot;:&quot;&quot;,&quot;created_timestamp&quot;:&quot;0&quot;,&quot;copyright&quot;:&quot;&quot;,&quot;focal_length&quot;:&quot;0&quot;,&quot;iso&quot;:&quot;0&quot;,&quot;shutter_speed&quot;:&quot;0&quot;,&quot;title&quot;:&quot;&quot;,&quot;orientation&quot;:&quot;0&quot;}\" data-image-title=\"02-50-libs-01\" data-image-description=\"\" data-image-caption=\"\" data-large-file=\"https:\/\/i0.wp.com\/rud.is\/b\/wp-content\/uploads\/2019\/02\/02-50-libs-01.png?fit=510%2C509&amp;ssl=1\" src=\"https:\/\/i0.wp.com\/rud.is\/b\/wp-content\/uploads\/2019\/02\/02-50-libs-01.png?resize=510%2C509&#038;ssl=1\" alt=\"\" width=\"510\" height=\"509\" class=\"aligncenter size-full wp-image-11851\" \/><\/a><\/p>\n<p>It seems <code>openssl<\/code> is pretty popular (not surprising but always good to see cybersecurity things at the top of good lists for a change)! macOS ships with an even more dreadful (<em>I know that&#8217;s hard to imagine<\/em>) default Python setup than usual so it being number 2 is not unexpected.<\/p>\n<p>And, finally, we can also check on how frequently formulae are installed. Let&#8217;s look back on the last 90 days:<\/p>\n<pre><code class=\"language-r\">ggplot() +\n  geom_density(\n    aes(x = installs$count, y = stat(count)),\n    color = ft_cols$slate, fill = alpha(ft_cols$slate, 1\/2)\n  ) +\n  scale_x_comma(\"# install events\", trans = \"log10\") +\n  scale_y_comma(\"# formulae\") +\n  labs(\n    title = \"Homebrew Formulate 'Install Events' Distribution (Past 90 days)\"\n  ) +\n  theme_ft_rc(grid=\"XY\")\n<\/code><\/pre>\n<p><a href=\"https:\/\/rud.is\/b\/2019\/02\/02\/homebrew-2-0-0-released-homebrewanalytics-package-updated\/03-install-events\/\" rel=\"attachment wp-att-11853\"><img data-recalc-dims=\"1\" loading=\"lazy\" decoding=\"async\" data-attachment-id=\"11853\" data-permalink=\"https:\/\/rud.is\/b\/2019\/02\/02\/homebrew-2-0-0-released-homebrewanalytics-package-updated\/03-install-events\/\" data-orig-file=\"https:\/\/i0.wp.com\/rud.is\/b\/wp-content\/uploads\/2019\/02\/03-install-events.png?fit=1764%2C890&amp;ssl=1\" data-orig-size=\"1764,890\" data-comments-opened=\"1\" data-image-meta=\"{&quot;aperture&quot;:&quot;0&quot;,&quot;credit&quot;:&quot;&quot;,&quot;camera&quot;:&quot;&quot;,&quot;caption&quot;:&quot;&quot;,&quot;created_timestamp&quot;:&quot;0&quot;,&quot;copyright&quot;:&quot;&quot;,&quot;focal_length&quot;:&quot;0&quot;,&quot;iso&quot;:&quot;0&quot;,&quot;shutter_speed&quot;:&quot;0&quot;,&quot;title&quot;:&quot;&quot;,&quot;orientation&quot;:&quot;0&quot;}\" data-image-title=\"03-install-events\" data-image-description=\"\" data-image-caption=\"\" data-large-file=\"https:\/\/i0.wp.com\/rud.is\/b\/wp-content\/uploads\/2019\/02\/03-install-events.png?fit=510%2C257&amp;ssl=1\" src=\"https:\/\/i0.wp.com\/rud.is\/b\/wp-content\/uploads\/2019\/02\/03-install-events.png?resize=510%2C257&#038;ssl=1\" alt=\"\" width=\"510\" height=\"257\" class=\"aligncenter size-full wp-image-11853\" \/><\/a><\/p>\n<p>I&#8217;ll let you play with the package to find out who the heavy hitters are and explore more about the Homebrew ecosystem.<\/p>\n<h3>FIN<\/h3>\n<p>Kick the tyres. File issues &amp; PRs and a hearty &#8220;Welcome!&#8221; to the Homebrew ecosystem for Linux and Windows users. My hope is that the WSL availability will eventually make it easier to develop for Windows systems and avoid the &#8220;download the kinda sketchy compiled windows libraries from github on package install&#8221; practice we have today.<\/p>\n<p>If you crank out some analytics using the packages don&#8217;t forget to blog about it and drop a link in the comments!<\/p>\n","protected":false},"excerpt":{"rendered":"<p>A major new release of Homebrew has landed and now includes support for Linux as well as Windows! via the Windows Subsystem for Linux. There are overall stability and speed improvements baked in as well. The aforelinked notification has all the info you need to see the minutiae. Unless you&#8217;ve been super-lax in updating, brew [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":11851,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"jetpack_post_was_ever_published":false,"_jetpack_newsletter_access":"","_jetpack_dont_email_post_to_subs":false,"_jetpack_newsletter_tier_id":0,"_jetpack_memberships_contains_paywalled_content":false,"_jetpack_memberships_contains_paid_content":false,"activitypub_content_warning":"","activitypub_content_visibility":"","activitypub_max_image_attachments":3,"activitypub_interaction_policy_quote":"anyone","activitypub_status":"","footnotes":""},"categories":[641,91],"tags":[],"class_list":["post-11846","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-homebrew","category-r"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v27.3 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>Homebrew 2.0.0 Released == homebrewanalytics package updated - rud.is<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/rud.is\/b\/2019\/02\/02\/homebrew-2-0-0-released-homebrewanalytics-package-updated\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Homebrew 2.0.0 Released == homebrewanalytics package updated - rud.is\" \/>\n<meta property=\"og:description\" content=\"A major new release of Homebrew has landed and now includes support for Linux as well as Windows! via the Windows Subsystem for Linux. There are overall stability and speed improvements baked in as well. The aforelinked notification has all the info you need to see the minutiae. Unless you&#8217;ve been super-lax in updating, brew [&hellip;]\" \/>\n<meta property=\"og:url\" content=\"https:\/\/rud.is\/b\/2019\/02\/02\/homebrew-2-0-0-released-homebrewanalytics-package-updated\/\" \/>\n<meta property=\"og:site_name\" content=\"rud.is\" \/>\n<meta property=\"article:published_time\" content=\"2019-02-02T14:36:40+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/i0.wp.com\/rud.is\/b\/wp-content\/uploads\/2019\/02\/02-50-libs-01.png?fit=1748%2C1744&ssl=1\" \/>\n\t<meta property=\"og:image:width\" content=\"1748\" \/>\n\t<meta property=\"og:image:height\" content=\"1744\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/png\" \/>\n<meta name=\"author\" content=\"hrbrmstr\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"hrbrmstr\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"3 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\\\/\\\/rud.is\\\/b\\\/2019\\\/02\\\/02\\\/homebrew-2-0-0-released-homebrewanalytics-package-updated\\\/#article\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/rud.is\\\/b\\\/2019\\\/02\\\/02\\\/homebrew-2-0-0-released-homebrewanalytics-package-updated\\\/\"},\"author\":{\"name\":\"hrbrmstr\",\"@id\":\"https:\\\/\\\/rud.is\\\/b\\\/#\\\/schema\\\/person\\\/d7cb7487ab0527447f7fda5c423ff886\"},\"headline\":\"Homebrew 2.0.0 Released == homebrewanalytics package updated\",\"datePublished\":\"2019-02-02T14:36:40+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/rud.is\\\/b\\\/2019\\\/02\\\/02\\\/homebrew-2-0-0-released-homebrewanalytics-package-updated\\\/\"},\"wordCount\":446,\"commentCount\":5,\"publisher\":{\"@id\":\"https:\\\/\\\/rud.is\\\/b\\\/#\\\/schema\\\/person\\\/d7cb7487ab0527447f7fda5c423ff886\"},\"image\":{\"@id\":\"https:\\\/\\\/rud.is\\\/b\\\/2019\\\/02\\\/02\\\/homebrew-2-0-0-released-homebrewanalytics-package-updated\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/i0.wp.com\\\/rud.is\\\/b\\\/wp-content\\\/uploads\\\/2019\\\/02\\\/02-50-libs-01.png?fit=1748%2C1744&ssl=1\",\"articleSection\":[\"homebrew\",\"R\"],\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\\\/\\\/rud.is\\\/b\\\/2019\\\/02\\\/02\\\/homebrew-2-0-0-released-homebrewanalytics-package-updated\\\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/rud.is\\\/b\\\/2019\\\/02\\\/02\\\/homebrew-2-0-0-released-homebrewanalytics-package-updated\\\/\",\"url\":\"https:\\\/\\\/rud.is\\\/b\\\/2019\\\/02\\\/02\\\/homebrew-2-0-0-released-homebrewanalytics-package-updated\\\/\",\"name\":\"Homebrew 2.0.0 Released == homebrewanalytics package updated - rud.is\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/rud.is\\\/b\\\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\\\/\\\/rud.is\\\/b\\\/2019\\\/02\\\/02\\\/homebrew-2-0-0-released-homebrewanalytics-package-updated\\\/#primaryimage\"},\"image\":{\"@id\":\"https:\\\/\\\/rud.is\\\/b\\\/2019\\\/02\\\/02\\\/homebrew-2-0-0-released-homebrewanalytics-package-updated\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/i0.wp.com\\\/rud.is\\\/b\\\/wp-content\\\/uploads\\\/2019\\\/02\\\/02-50-libs-01.png?fit=1748%2C1744&ssl=1\",\"datePublished\":\"2019-02-02T14:36:40+00:00\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/rud.is\\\/b\\\/2019\\\/02\\\/02\\\/homebrew-2-0-0-released-homebrewanalytics-package-updated\\\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/rud.is\\\/b\\\/2019\\\/02\\\/02\\\/homebrew-2-0-0-released-homebrewanalytics-package-updated\\\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/rud.is\\\/b\\\/2019\\\/02\\\/02\\\/homebrew-2-0-0-released-homebrewanalytics-package-updated\\\/#primaryimage\",\"url\":\"https:\\\/\\\/i0.wp.com\\\/rud.is\\\/b\\\/wp-content\\\/uploads\\\/2019\\\/02\\\/02-50-libs-01.png?fit=1748%2C1744&ssl=1\",\"contentUrl\":\"https:\\\/\\\/i0.wp.com\\\/rud.is\\\/b\\\/wp-content\\\/uploads\\\/2019\\\/02\\\/02-50-libs-01.png?fit=1748%2C1744&ssl=1\",\"width\":1748,\"height\":1744},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/rud.is\\\/b\\\/2019\\\/02\\\/02\\\/homebrew-2-0-0-released-homebrewanalytics-package-updated\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/rud.is\\\/b\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Homebrew 2.0.0 Released == homebrewanalytics package updated\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/rud.is\\\/b\\\/#website\",\"url\":\"https:\\\/\\\/rud.is\\\/b\\\/\",\"name\":\"rud.is\",\"description\":\"&quot;In God we trust. All others must bring data&quot;\",\"publisher\":{\"@id\":\"https:\\\/\\\/rud.is\\\/b\\\/#\\\/schema\\\/person\\\/d7cb7487ab0527447f7fda5c423ff886\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/rud.is\\\/b\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":[\"Person\",\"Organization\"],\"@id\":\"https:\\\/\\\/rud.is\\\/b\\\/#\\\/schema\\\/person\\\/d7cb7487ab0527447f7fda5c423ff886\",\"name\":\"hrbrmstr\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/i0.wp.com\\\/rud.is\\\/b\\\/wp-content\\\/uploads\\\/2023\\\/10\\\/ukr-shield.png?fit=460%2C460&ssl=1\",\"url\":\"https:\\\/\\\/i0.wp.com\\\/rud.is\\\/b\\\/wp-content\\\/uploads\\\/2023\\\/10\\\/ukr-shield.png?fit=460%2C460&ssl=1\",\"contentUrl\":\"https:\\\/\\\/i0.wp.com\\\/rud.is\\\/b\\\/wp-content\\\/uploads\\\/2023\\\/10\\\/ukr-shield.png?fit=460%2C460&ssl=1\",\"width\":460,\"height\":460,\"caption\":\"hrbrmstr\"},\"logo\":{\"@id\":\"https:\\\/\\\/i0.wp.com\\\/rud.is\\\/b\\\/wp-content\\\/uploads\\\/2023\\\/10\\\/ukr-shield.png?fit=460%2C460&ssl=1\"},\"description\":\"Don't look at me\u2026I do what he does \u2014 just slower. #rstats avuncular \u2022 ?Resistance Fighter \u2022 Cook \u2022 Christian \u2022 [Master] Chef des Donn\u00e9es de S\u00e9curit\u00e9 @ @rapid7\",\"sameAs\":[\"http:\\\/\\\/rud.is\"],\"url\":\"https:\\\/\\\/rud.is\\\/b\\\/author\\\/hrbrmstr\\\/\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Homebrew 2.0.0 Released == homebrewanalytics package updated - rud.is","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/rud.is\/b\/2019\/02\/02\/homebrew-2-0-0-released-homebrewanalytics-package-updated\/","og_locale":"en_US","og_type":"article","og_title":"Homebrew 2.0.0 Released == homebrewanalytics package updated - rud.is","og_description":"A major new release of Homebrew has landed and now includes support for Linux as well as Windows! via the Windows Subsystem for Linux. There are overall stability and speed improvements baked in as well. The aforelinked notification has all the info you need to see the minutiae. Unless you&#8217;ve been super-lax in updating, brew [&hellip;]","og_url":"https:\/\/rud.is\/b\/2019\/02\/02\/homebrew-2-0-0-released-homebrewanalytics-package-updated\/","og_site_name":"rud.is","article_published_time":"2019-02-02T14:36:40+00:00","og_image":[{"width":1748,"height":1744,"url":"https:\/\/i0.wp.com\/rud.is\/b\/wp-content\/uploads\/2019\/02\/02-50-libs-01.png?fit=1748%2C1744&ssl=1","type":"image\/png"}],"author":"hrbrmstr","twitter_card":"summary_large_image","twitter_misc":{"Written by":"hrbrmstr","Est. reading time":"3 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/rud.is\/b\/2019\/02\/02\/homebrew-2-0-0-released-homebrewanalytics-package-updated\/#article","isPartOf":{"@id":"https:\/\/rud.is\/b\/2019\/02\/02\/homebrew-2-0-0-released-homebrewanalytics-package-updated\/"},"author":{"name":"hrbrmstr","@id":"https:\/\/rud.is\/b\/#\/schema\/person\/d7cb7487ab0527447f7fda5c423ff886"},"headline":"Homebrew 2.0.0 Released == homebrewanalytics package updated","datePublished":"2019-02-02T14:36:40+00:00","mainEntityOfPage":{"@id":"https:\/\/rud.is\/b\/2019\/02\/02\/homebrew-2-0-0-released-homebrewanalytics-package-updated\/"},"wordCount":446,"commentCount":5,"publisher":{"@id":"https:\/\/rud.is\/b\/#\/schema\/person\/d7cb7487ab0527447f7fda5c423ff886"},"image":{"@id":"https:\/\/rud.is\/b\/2019\/02\/02\/homebrew-2-0-0-released-homebrewanalytics-package-updated\/#primaryimage"},"thumbnailUrl":"https:\/\/i0.wp.com\/rud.is\/b\/wp-content\/uploads\/2019\/02\/02-50-libs-01.png?fit=1748%2C1744&ssl=1","articleSection":["homebrew","R"],"inLanguage":"en-US","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/rud.is\/b\/2019\/02\/02\/homebrew-2-0-0-released-homebrewanalytics-package-updated\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/rud.is\/b\/2019\/02\/02\/homebrew-2-0-0-released-homebrewanalytics-package-updated\/","url":"https:\/\/rud.is\/b\/2019\/02\/02\/homebrew-2-0-0-released-homebrewanalytics-package-updated\/","name":"Homebrew 2.0.0 Released == homebrewanalytics package updated - rud.is","isPartOf":{"@id":"https:\/\/rud.is\/b\/#website"},"primaryImageOfPage":{"@id":"https:\/\/rud.is\/b\/2019\/02\/02\/homebrew-2-0-0-released-homebrewanalytics-package-updated\/#primaryimage"},"image":{"@id":"https:\/\/rud.is\/b\/2019\/02\/02\/homebrew-2-0-0-released-homebrewanalytics-package-updated\/#primaryimage"},"thumbnailUrl":"https:\/\/i0.wp.com\/rud.is\/b\/wp-content\/uploads\/2019\/02\/02-50-libs-01.png?fit=1748%2C1744&ssl=1","datePublished":"2019-02-02T14:36:40+00:00","breadcrumb":{"@id":"https:\/\/rud.is\/b\/2019\/02\/02\/homebrew-2-0-0-released-homebrewanalytics-package-updated\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/rud.is\/b\/2019\/02\/02\/homebrew-2-0-0-released-homebrewanalytics-package-updated\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/rud.is\/b\/2019\/02\/02\/homebrew-2-0-0-released-homebrewanalytics-package-updated\/#primaryimage","url":"https:\/\/i0.wp.com\/rud.is\/b\/wp-content\/uploads\/2019\/02\/02-50-libs-01.png?fit=1748%2C1744&ssl=1","contentUrl":"https:\/\/i0.wp.com\/rud.is\/b\/wp-content\/uploads\/2019\/02\/02-50-libs-01.png?fit=1748%2C1744&ssl=1","width":1748,"height":1744},{"@type":"BreadcrumbList","@id":"https:\/\/rud.is\/b\/2019\/02\/02\/homebrew-2-0-0-released-homebrewanalytics-package-updated\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/rud.is\/b\/"},{"@type":"ListItem","position":2,"name":"Homebrew 2.0.0 Released == homebrewanalytics package updated"}]},{"@type":"WebSite","@id":"https:\/\/rud.is\/b\/#website","url":"https:\/\/rud.is\/b\/","name":"rud.is","description":"&quot;In God we trust. All others must bring data&quot;","publisher":{"@id":"https:\/\/rud.is\/b\/#\/schema\/person\/d7cb7487ab0527447f7fda5c423ff886"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/rud.is\/b\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":["Person","Organization"],"@id":"https:\/\/rud.is\/b\/#\/schema\/person\/d7cb7487ab0527447f7fda5c423ff886","name":"hrbrmstr","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/i0.wp.com\/rud.is\/b\/wp-content\/uploads\/2023\/10\/ukr-shield.png?fit=460%2C460&ssl=1","url":"https:\/\/i0.wp.com\/rud.is\/b\/wp-content\/uploads\/2023\/10\/ukr-shield.png?fit=460%2C460&ssl=1","contentUrl":"https:\/\/i0.wp.com\/rud.is\/b\/wp-content\/uploads\/2023\/10\/ukr-shield.png?fit=460%2C460&ssl=1","width":460,"height":460,"caption":"hrbrmstr"},"logo":{"@id":"https:\/\/i0.wp.com\/rud.is\/b\/wp-content\/uploads\/2023\/10\/ukr-shield.png?fit=460%2C460&ssl=1"},"description":"Don't look at me\u2026I do what he does \u2014 just slower. #rstats avuncular \u2022 ?Resistance Fighter \u2022 Cook \u2022 Christian \u2022 [Master] Chef des Donn\u00e9es de S\u00e9curit\u00e9 @ @rapid7","sameAs":["http:\/\/rud.is"],"url":"https:\/\/rud.is\/b\/author\/hrbrmstr\/"}]}},"jetpack_featured_media_url":"https:\/\/i0.wp.com\/rud.is\/b\/wp-content\/uploads\/2019\/02\/02-50-libs-01.png?fit=1748%2C1744&ssl=1","jetpack_shortlink":"https:\/\/wp.me\/p23idr-354","jetpack_likes_enabled":true,"jetpack-related-posts":[{"id":3732,"url":"https:\/\/rud.is\/b\/2015\/10\/22\/installing-r-on-os-x-100-homebrew-edition\/","url_meta":{"origin":11846,"position":0},"title":"Installing R on OS X &#8211; &#8220;100% Homebrew Edition&#8221;","author":"hrbrmstr","date":"2015-10-22","format":false,"excerpt":"In a previous post I provided \"mouse-heavy\" instructions for getting R running on your Mac. A few of the comments suggested that an \"all Homebrew\" solution may be preferable for some folks. Now, there are issues with this since getting \"support\" for what may be R issues will be very\u2026","rel":"","context":"In &quot;OS X&quot;","block_context":{"text":"OS X","link":"https:\/\/rud.is\/b\/category\/os-x\/"},"img":{"alt_text":"","src":"","width":0,"height":0},"classes":[]},{"id":2962,"url":"https:\/\/rud.is\/b\/2014\/04\/21\/getting-fit2tcx-working-on-mac-os-x-10-9-x\/","url_meta":{"origin":11846,"position":1},"title":"Getting Fit2Tcx Working on Mac OS X (10.9.x)","author":"hrbrmstr","date":"2014-04-21","format":false,"excerpt":"Andreas Diesner's `#spiffy` [Fit2Tcx](https:\/\/github.com\/adiesner\/Fit2Tcx) command-line utility is a lightweight way to convert Garmin\/ANT [FIT](http:\/\/www.thisisant.com\/resources\/fit) files to [TCX](http:\/\/en.wikipedia.org\/wiki\/Training_Center_XML) for further processing. On a linux system, installing it is as simple as: sudo add-apt-repository ppa:andreas-diesner\/garminplugin sudo apt-get update sudo apt-get install fit2tcx On a Mac OS X system, you'll need to first\u2026","rel":"","context":"In &quot;hacks&quot;","block_context":{"text":"hacks","link":"https:\/\/rud.is\/b\/category\/hacks\/"},"img":{"alt_text":"","src":"","width":0,"height":0},"classes":[]},{"id":3709,"url":"https:\/\/rud.is\/b\/2015\/10\/20\/installing-r-on-os-x\/","url_meta":{"origin":11846,"position":2},"title":"Installing R on OS X","author":"hrbrmstr","date":"2015-10-20","format":false,"excerpt":"NOTE: The comments are a must read for this. Some excellent additional advice and \"gotchas\" by some super-helpful readers. I was in a conversation with an academic colleague (wicked smart dude) and the subject of installing R came up (NOTE: this will happen to you, too, if you ever have\u2026","rel":"","context":"In &quot;OS X&quot;","block_context":{"text":"OS X","link":"https:\/\/rud.is\/b\/category\/os-x\/"},"img":{"alt_text":"","src":"","width":0,"height":0},"classes":[]},{"id":12945,"url":"https:\/\/rud.is\/b\/2021\/02\/07\/fully-native-m1-apple-silicon-r-setup\/","url_meta":{"origin":11846,"position":3},"title":"Fully Native M1\/Apple Silicon R Setup","author":"hrbrmstr","date":"2021-02-07","format":false,"excerpt":"Presented without much commentary since I stopped once {ggrepel} and {graphlayouts} failed (RStudio doesn't support it yet, either, which I knew). The following steps will get you a fully working and STUPID FAST fully native ARM64 M1\/Apple Silicon R setup with {tidyverse} and {rJava}. Just remember, that if you need\u2026","rel":"","context":"In &quot;R&quot;","block_context":{"text":"R","link":"https:\/\/rud.is\/b\/category\/r\/"},"img":{"alt_text":"","src":"","width":0,"height":0},"classes":[]},{"id":886,"url":"https:\/\/rud.is\/b\/2012\/03\/26\/getting-homebrew-working-in-mountain-lion-developer-preview-2-with-xcode-4-4-developer-preview-2\/","url_meta":{"origin":11846,"position":4},"title":"Getting Homebrew Working in Mountain Lion Developer Preview 2 with Xcode 4.4 Developer Preview 2","author":"hrbrmstr","date":"2012-03-26","format":false,"excerpt":"Work & home chaos has me a bit behind in the \"ThinkStats\u2026in R\" posts, but I \"needed\" to get some of the homebrew kit working in Mountain Lion Developer Preview 2 (to run some network discovery tools while waiting for #4's surgery to be done at the hospital). Keying off\u2026","rel":"","context":"In &quot;homebrew&quot;","block_context":{"text":"homebrew","link":"https:\/\/rud.is\/b\/category\/homebrew\/"},"img":{"alt_text":"","src":"","width":0,"height":0},"classes":[]},{"id":2564,"url":"https:\/\/rud.is\/b\/2013\/08\/12\/reverse-ip-address-lookups-with-r-from-simple-to-bulkasynchronous\/","url_meta":{"origin":11846,"position":5},"title":"Reverse IP Address Lookups With R (From Simple To Bulk\/Asynchronous)","author":"hrbrmstr","date":"2013-08-12","format":false,"excerpt":"R lacks some of the more \"utilitarian\" features found in other scripting languages that were\/are more geared\u2014at least initially\u2014towards systems administration. One of the most frustrating missing pieces for security data scientists is the lack of ability to perform basic IP address manipulations, including reverse DNS resolution (even though it\u2026","rel":"","context":"In &quot;Data Analysis&quot;","block_context":{"text":"Data Analysis","link":"https:\/\/rud.is\/b\/category\/data-analysis-2\/"},"img":{"alt_text":"","src":"","width":0,"height":0},"classes":[]}],"jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/rud.is\/b\/wp-json\/wp\/v2\/posts\/11846","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/rud.is\/b\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/rud.is\/b\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/rud.is\/b\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/rud.is\/b\/wp-json\/wp\/v2\/comments?post=11846"}],"version-history":[{"count":0,"href":"https:\/\/rud.is\/b\/wp-json\/wp\/v2\/posts\/11846\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/rud.is\/b\/wp-json\/wp\/v2\/media\/11851"}],"wp:attachment":[{"href":"https:\/\/rud.is\/b\/wp-json\/wp\/v2\/media?parent=11846"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/rud.is\/b\/wp-json\/wp\/v2\/categories?post=11846"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/rud.is\/b\/wp-json\/wp\/v2\/tags?post=11846"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}