{"id":768,"date":"2018-08-15T11:21:43","date_gmt":"2018-08-15T09:21:43","guid":{"rendered":"https:\/\/blogs.gentoo.org\/mgorny\/?p=768"},"modified":"2018-08-15T11:21:43","modified_gmt":"2018-08-15T09:21:43","slug":"new-helpers-can-read-from-stdin","status":"publish","type":"post","link":"https:\/\/blogs.gentoo.org\/mgorny\/2018\/08\/15\/new-helpers-can-read-from-stdin\/","title":{"rendered":"new* helpers can read from\u00a0stdin"},"content":{"rendered":"<p>Did you know that <kbd>new*<\/kbd> helpers can read from\u00a0stdin?  Well, now you know!  So instead of\u00a0writing to a\u00a0temporary file you can install your inline text straight to the\u00a0destination:<\/p>\n<pre>src_install() {\r\n  # old code\r\n  cat &lt;&lt;-EOF &gt;\"${T}\"\/mywrapper || die\r\n    #!\/bin\/sh\r\n    exec do-something --with-some-argument\r\n  EOF\r\n  dobin \"${T}\"\/mywrapper\r\n\r\n  # replacement\r\n  newbin - mywrapper &lt;&lt;-EOF\r\n    #!\/bin\/sh\r\n    exec do-something --with-some-argument\r\n  EOF\r\n}<\/pre>\n","protected":false},"excerpt":{"rendered":"<p>Did you know that new* helpers can read from\u00a0stdin? Well, now you know! So instead of\u00a0writing to a\u00a0temporary file you can install your inline text straight to the\u00a0destination: src_install() { # old code cat &lt;&lt;-EOF &gt;&#8221;${T}&#8221;\/mywrapper || die #!\/bin\/sh exec do-something &#8211;with-some-argument EOF dobin &#8220;${T}&#8221;\/mywrapper # replacement newbin &#8211; mywrapper &lt;&lt;-EOF #!\/bin\/sh exec do-something &#8211;with-some-argument &hellip; <a href=\"https:\/\/blogs.gentoo.org\/mgorny\/2018\/08\/15\/new-helpers-can-read-from-stdin\/\" class=\"more-link\">Continue reading<span class=\"screen-reader-text\"> &#8220;new* helpers can read from\u00a0stdin&#8221;<\/span><\/a><\/p>\n","protected":false},"author":137,"featured_media":0,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"jetpack_publicize_message":"","jetpack_is_tweetstorm":false,"jetpack_publicize_feature_enabled":true},"categories":[11],"tags":[],"jetpack_publicize_connections":[],"jetpack_featured_media_url":"","_links":{"self":[{"href":"https:\/\/blogs.gentoo.org\/mgorny\/wp-json\/wp\/v2\/posts\/768"}],"collection":[{"href":"https:\/\/blogs.gentoo.org\/mgorny\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/blogs.gentoo.org\/mgorny\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/blogs.gentoo.org\/mgorny\/wp-json\/wp\/v2\/users\/137"}],"replies":[{"embeddable":true,"href":"https:\/\/blogs.gentoo.org\/mgorny\/wp-json\/wp\/v2\/comments?post=768"}],"version-history":[{"count":3,"href":"https:\/\/blogs.gentoo.org\/mgorny\/wp-json\/wp\/v2\/posts\/768\/revisions"}],"predecessor-version":[{"id":771,"href":"https:\/\/blogs.gentoo.org\/mgorny\/wp-json\/wp\/v2\/posts\/768\/revisions\/771"}],"wp:attachment":[{"href":"https:\/\/blogs.gentoo.org\/mgorny\/wp-json\/wp\/v2\/media?parent=768"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/blogs.gentoo.org\/mgorny\/wp-json\/wp\/v2\/categories?post=768"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/blogs.gentoo.org\/mgorny\/wp-json\/wp\/v2\/tags?post=768"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}