Sticky RSS news on Fluxbox

Xfce terminal has a file action support for url so the output of the script will be displayed on Terminal and the url can be click from there.

# this will emerge the xfce dependencies
emerge -avDt xfce-extra/terminal

# curl is needed to read on rss page
emerge -avDt curl

# adapted script
nano -w ~/.rsschannel/slashdot
=c=
clear
url=”http://rss.slashdot.org/Slashdot/slashdot”
curl –silent “$url”|egrep “(title>|link>)”|sed -n ‘4,$p’|sed -e ‘s//\n/’ -e ‘s/<\/title>//’ -e ‘s/<link>//’ -e ‘s/<\/link>//’|head -n 19|fmt<br /> echo ‘SLASHDOT’<br /> sleep 3600<br /> exec ~/.rsschannel/slashdot<br /> =c=</p> <p>The problem with the above script is it will leave a running ‘sh’ and ‘sleep’ process everytime you kill your X (Ctrl Alt Backspace, I don’t like xdm). A preferred method is to dump the output of the script into a file and use cat to display it. The updating of the news will be done using cron.</p> <p>nano -w ~/.rsschannel/slashdotdump<br /> =c=<br /> url=”http://rss.slashdot.org/Slashdot/slashdot”<br /> curl –silent “$url”|egrep “(title>|link>)”|sed -n ‘4,$p’|sed -e ‘s/<title>/\n/’ -e ‘s/<\/title>//’ -e ‘s/<link>//’ -e ‘s/<\/link>//’|head -n 19|fmt<br /> =c=</p> <p># enable user to use cron<br /> sudo usermod -G users,wheel,audio,cron your_username</p> <p>relogin the user to activate the added group</p> <p># run the fetching every hour<br /> crontab -e<br /> =c=<br /> 0 * * * * ~/.rsschannel/slashdotdump | cat > ~/.rsschannel/slashdotrss<br /> =c=</p> <p>emerge -avDt elinks<br /> # Put the rss on fluxbox startup<br /> nano -w ~/.fluxbox/startup<br /> Terminal –hide-menubar –hide-borders –hide-toolbars –title=rssreader –geometry=40×25-10+35 -e elinks .rsschannel/slashdotrss &</p> <p>Referrence:<br /> http://gentoo-wiki.com/TIP_Console_Text_on_the_Desktop_using_Eterm#Fluxbox_and_Eterm_Console_Desktop<br /> http://www.macdevcenter.com/pub/a/mac/2004/03/12/rss_scripting.html</p> </div><!-- .entry-content --> <footer class="entry-footer"> <span class="byline"><span class="author vcard"><img alt='' src='http://2.gravatar.com/avatar/5e50aaf142c5d5915b838cd072597846?s=49&d=mm&r=g' srcset='http://2.gravatar.com/avatar/5e50aaf142c5d5915b838cd072597846?s=98&d=mm&r=g 2x' class='avatar avatar-49 photo' height='49' width='49' loading='lazy' decoding='async'/><span class="screen-reader-text">Author </span> <a class="url fn n" href="http://xorprime.azzenti.com/author/xorprime/">xorprime</a></span></span><span class="posted-on"><span class="screen-reader-text">Posted on </span><a href="http://xorprime.azzenti.com/2006/08/21/sticky-rss-news-on-fluxbox/" rel="bookmark"><time class="entry-date published updated" datetime="2006-08-21T14:04:00+10:00">21 August 2006</time></a></span><span class="cat-links"><span class="screen-reader-text">Categories </span><a href="http://xorprime.azzenti.com/category/technology/" rel="category tag">Technology</a></span> </footer><!-- .entry-footer --> </article><!-- #post-152 --> <div id="comments" class="comments-area"> <div id="respond" class="comment-respond"> <h2 id="reply-title" class="comment-reply-title">Leave a Reply</h2><form action="http://xorprime.azzenti.com/wp-comments-post.php" method="post" id="commentform" class="comment-form" novalidate><p class="comment-notes"><span id="email-notes">Your email address will not be published.</span> <span class="required-field-message">Required fields are marked <span class="required">*</span></span></p><p class="comment-form-comment"><label for="comment">Comment <span class="required">*</span></label> <textarea id="comment" name="comment" cols="45" rows="8" maxlength="65525" required></textarea></p><p class="comment-form-author"><label for="author">Name <span class="required">*</span></label> <input id="author" name="author" type="text" value="" size="30" maxlength="245" autocomplete="name" required /></p> <p class="comment-form-email"><label for="email">Email <span class="required">*</span></label> <input id="email" name="email" type="email" value="" size="30" maxlength="100" aria-describedby="email-notes" autocomplete="email" required /></p> <p class="comment-form-url"><label for="url">Website</label> <input id="url" name="url" type="url" value="" size="30" maxlength="200" autocomplete="url" /></p> <p class="comment-form-cookies-consent"><input id="wp-comment-cookies-consent" name="wp-comment-cookies-consent" type="checkbox" value="yes" /> <label for="wp-comment-cookies-consent">Save my name, email, and website in this browser for the next time I comment.</label></p> <p class="form-submit"><input name="submit" type="submit" id="submit" class="submit" value="Post Comment" /> <input type='hidden' name='comment_post_ID' value='152' id='comment_post_ID' /> <input type='hidden' name='comment_parent' id='comment_parent' value='0' /> </p><p style="display: none;"><input type="hidden" id="akismet_comment_nonce" name="akismet_comment_nonce" value="0e05c8e14a" /></p><p style="display: none !important;"><label>Δ<textarea name="ak_hp_textarea" cols="45" rows="8" maxlength="100"></textarea></label><input type="hidden" id="ak_js_1" name="ak_js" value="224"/><script>document.getElementById( "ak_js_1" ).setAttribute( "value", ( new Date() ).getTime() );</script></p></form> </div><!-- #respond --> <p class="akismet_comment_form_privacy_notice">This site uses Akismet to reduce spam. <a href="https://akismet.com/privacy/" target="_blank" rel="nofollow noopener">Learn how your comment data is processed</a>.</p> </div><!-- .comments-area --> <nav class="navigation post-navigation" aria-label="Posts"> <h2 class="screen-reader-text">Post navigation</h2> <div class="nav-links"><div class="nav-previous"><a href="http://xorprime.azzenti.com/2006/08/21/wifi-on-thinkpad-t30-using-wpc54g-v2-texas-instrument-chipset-acx/" rel="prev"><span class="meta-nav" aria-hidden="true">Previous</span> <span class="screen-reader-text">Previous post:</span> <span class="post-title">Wifi on Thinkpad T30 using WPC54G v2 (Texas Instrument chipset acx)</span></a></div><div class="nav-next"><a href="http://xorprime.azzenti.com/2006/08/23/gentoo-beyond-sources-4-kernel-for-thinkpad-t30-gentoo-20060/" rel="next"><span class="meta-nav" aria-hidden="true">Next</span> <span class="screen-reader-text">Next post:</span> <span class="post-title">Gentoo beyond sources 4 kernel for Thinkpad T30 Gentoo 2006.0</span></a></div></div> </nav> </main><!-- .site-main --> </div><!-- .content-area --> <aside id="secondary" class="sidebar widget-area" role="complementary"> <section id="text-330099631" class="widget widget_text"><h2 class="widget-title">About</h2> <div class="textwidget">I am a geek. I work with marketing. I code. And I survive meetings. I am passionate towards web design, web analytics, mobile apps, social media and startups.</div> </section><section id="search-2" class="widget widget_search"> <form role="search" method="get" class="search-form" action="http://xorprime.azzenti.com/"> <label> <span class="screen-reader-text">Search for:</span> <input type="search" class="search-field" placeholder="Search …" value="" name="s" /> </label> <button type="submit" class="search-submit"><span class="screen-reader-text">Search</span></button> </form> </section><section id="categories-99269551" class="widget widget_categories"><h2 class="widget-title">Categories</h2><nav aria-label="Categories"> <ul> <li class="cat-item cat-item-6"><a href="http://xorprime.azzenti.com/category/blog/">Blog</a> </li> <li class="cat-item cat-item-3"><a href="http://xorprime.azzenti.com/category/technology/">Technology</a> </li> </ul> </nav></section><section id="archives-2" class="widget widget_archive"><h2 class="widget-title">Archives</h2> <label class="screen-reader-text" for="archives-dropdown-2">Archives</label> <select id="archives-dropdown-2" name="archive-dropdown"> <option value="">Select Month</option> <option value='http://xorprime.azzenti.com/2022/11/'> November 2022  (1)</option> <option value='http://xorprime.azzenti.com/2021/12/'> December 2021  (1)</option> <option value='http://xorprime.azzenti.com/2013/10/'> October 2013  (1)</option> <option value='http://xorprime.azzenti.com/2013/06/'> June 2013  (1)</option> <option value='http://xorprime.azzenti.com/2013/04/'> April 2013  (2)</option> <option value='http://xorprime.azzenti.com/2013/03/'> March 2013  (1)</option> <option value='http://xorprime.azzenti.com/2012/04/'> April 2012  (1)</option> <option value='http://xorprime.azzenti.com/2011/06/'> June 2011  (1)</option> <option value='http://xorprime.azzenti.com/2011/05/'> May 2011  (1)</option> <option value='http://xorprime.azzenti.com/2011/02/'> February 2011  (1)</option> <option value='http://xorprime.azzenti.com/2010/06/'> June 2010  (1)</option> <option value='http://xorprime.azzenti.com/2010/01/'> January 2010  (2)</option> <option value='http://xorprime.azzenti.com/2009/11/'> November 2009  (1)</option> <option value='http://xorprime.azzenti.com/2009/05/'> May 2009  (1)</option> <option value='http://xorprime.azzenti.com/2009/04/'> April 2009  (1)</option> <option value='http://xorprime.azzenti.com/2009/02/'> February 2009  (3)</option> <option value='http://xorprime.azzenti.com/2009/01/'> January 2009  (8)</option> <option value='http://xorprime.azzenti.com/2008/12/'> December 2008  (2)</option> <option value='http://xorprime.azzenti.com/2008/11/'> November 2008  (1)</option> <option value='http://xorprime.azzenti.com/2008/10/'> October 2008  (1)</option> <option value='http://xorprime.azzenti.com/2008/09/'> September 2008  (1)</option> <option value='http://xorprime.azzenti.com/2008/07/'> July 2008  (2)</option> <option value='http://xorprime.azzenti.com/2008/06/'> June 2008  (4)</option> <option value='http://xorprime.azzenti.com/2008/05/'> May 2008  (5)</option> <option value='http://xorprime.azzenti.com/2008/04/'> April 2008  (1)</option> <option value='http://xorprime.azzenti.com/2008/03/'> March 2008  (2)</option> <option value='http://xorprime.azzenti.com/2007/10/'> October 2007  (1)</option> <option value='http://xorprime.azzenti.com/2007/09/'> September 2007  (1)</option> <option value='http://xorprime.azzenti.com/2007/08/'> August 2007  (1)</option> <option value='http://xorprime.azzenti.com/2006/08/'> August 2006  (6)</option> <option value='http://xorprime.azzenti.com/2006/07/'> July 2006  (11)</option> <option value='http://xorprime.azzenti.com/2006/04/'> April 2006  (1)</option> <option value='http://xorprime.azzenti.com/2006/03/'> March 2006  (1)</option> <option value='http://xorprime.azzenti.com/2006/02/'> February 2006  (1)</option> <option value='http://xorprime.azzenti.com/2005/10/'> October 2005  (1)</option> <option value='http://xorprime.azzenti.com/2005/09/'> September 2005  (6)</option> <option value='http://xorprime.azzenti.com/2005/07/'> July 2005  (1)</option> <option value='http://xorprime.azzenti.com/2005/06/'> June 2005  (2)</option> <option value='http://xorprime.azzenti.com/2005/05/'> May 2005  (8)</option> <option value='http://xorprime.azzenti.com/2005/04/'> April 2005  (1)</option> <option value='http://xorprime.azzenti.com/2005/03/'> March 2005  (4)</option> <option value='http://xorprime.azzenti.com/2005/02/'> February 2005  (11)</option> <option value='http://xorprime.azzenti.com/2005/01/'> January 2005  (2)</option> <option value='http://xorprime.azzenti.com/2004/12/'> December 2004  (3)</option> <option value='http://xorprime.azzenti.com/2004/11/'> November 2004  (9)</option> <option value='http://xorprime.azzenti.com/2004/10/'> October 2004  (4)</option> <option value='http://xorprime.azzenti.com/2004/08/'> August 2004  (3)</option> <option value='http://xorprime.azzenti.com/2004/07/'> July 2004  (13)</option> <option value='http://xorprime.azzenti.com/2004/06/'> June 2004  (1)</option> <option value='http://xorprime.azzenti.com/2004/05/'> May 2004  (5)</option> <option value='http://xorprime.azzenti.com/2004/04/'> April 2004  (2)</option> <option value='http://xorprime.azzenti.com/2004/03/'> March 2004  (6)</option> <option value='http://xorprime.azzenti.com/2004/02/'> February 2004  (1)</option> <option value='http://xorprime.azzenti.com/2003/10/'> October 2003  (1)</option> <option value='http://xorprime.azzenti.com/2003/09/'> September 2003  (3)</option> </select> <script> /* <![CDATA[ */ (function() { var dropdown = document.getElementById( "archives-dropdown-2" ); function onSelectChange() { if ( dropdown.options[ dropdown.selectedIndex ].value !== '' ) { document.location.href = this.options[ this.selectedIndex ].value; } } dropdown.onchange = onSelectChange; })(); /* ]]> */ </script> </section><section id="meta-2" class="widget widget_meta"><h2 class="widget-title">Meta</h2><nav aria-label="Meta"> <ul> <li><a href="http://xorprime.azzenti.com/wp-login.php">Log in</a></li> <li><a href="http://xorprime.azzenti.com/feed/">Entries feed</a></li> <li><a href="http://xorprime.azzenti.com/comments/feed/">Comments feed</a></li> <li><a href="https://wordpress.org/">WordPress.org</a></li> </ul> </nav></section><section id="text-421186671" class="widget widget_text"><h2 class="widget-title">License</h2> <div class="textwidget"><a rel="license" href="http://creativecommons.org/licenses/by/2.5/au/"><img alt="Creative Commons License" style="border-width:0" src="http://i.creativecommons.org/l/by/2.5/au/80x15.png" /></a><br />This work is licensed under a <a rel="license" href="http://creativecommons.org/licenses/by/2.5/au/">Creative Commons Attribution 2.5 Australia License</a>.</div> </section> </aside><!-- .sidebar .widget-area --> </div><!-- .site-content --> <footer id="colophon" class="site-footer" role="contentinfo"> <div class="site-info"> <span class="site-title"><a href="http://xorprime.azzenti.com/" rel="home">xorprime</a></span> <a href="https://wordpress.org/" class="imprint"> Proudly powered by WordPress </a> </div><!-- .site-info --> </footer><!-- .site-footer --> </div><!-- .site-inner --> </div><!-- .site --> <!-- tracker added by Ultimate Google Analytics plugin v1.6.0: http://www.oratransplant.nl/uga --> <script type="text/javascript"> var gaJsHost = (("https:" == document.location.protocol) ? "https://ssl." : "http://www."); document.write(unescape("%3Cscript src='" + gaJsHost + "google-analytics.com/ga.js' type='text/javascript'%3E%3C/script%3E")); </script> <script type="text/javascript"> var pageTracker = _gat._getTracker("UA-640850-5"); pageTracker._initData(); pageTracker._trackPageview(); </script> <script src='http://xorprime.azzenti.com/wp-content/plugins/wp-syntax/js/wp-syntax.js?ver=1.1' id='wp-syntax-js-js'></script> <script src='http://xorprime.azzenti.com/wp-content/themes/twentysixteen/js/skip-link-focus-fix.js?ver=20170530' id='twentysixteen-skip-link-focus-fix-js'></script> <script id='twentysixteen-script-js-extra'> var screenReaderText = {"expand":"expand child menu","collapse":"collapse child menu"}; </script> <script src='http://xorprime.azzenti.com/wp-content/themes/twentysixteen/js/functions.js?ver=20181217' id='twentysixteen-script-js'></script> <script defer src='http://xorprime.azzenti.com/wp-content/plugins/akismet/_inc/akismet-frontend.js?ver=1664416636' id='akismet-frontend-js'></script> </body> </html>