<?xml version="1.0" encoding="utf-8"?>
<?xml-stylesheet type="text/xsl" href="../assets/xml/rss.xsl" media="all"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Linux Sin Humo (Publicaciones sobre dtrx)</title><link>https://sergiobelkin.com/</link><description></description><atom:link href="https://sergiobelkin.com/categories/dtrx.xml" rel="self" type="application/rss+xml"></atom:link><language>es</language><copyright>Contents © 2025 &lt;a href="mailto:sebelk@gmail.com"&gt;sebelk&lt;/a&gt; 
&lt;a rel="license" href="https://creativecommons.org/licenses/by-nc-sa/4.0/"&gt;
&lt;img alt="Creative Commons License BY-NC-SA"
style="border-width:0; margin-bottom:12px;"
src="https://i.creativecommons.org/l/by-nc-sa/4.0/88x31.png"&gt;&lt;/a&gt;
</copyright><lastBuildDate>Thu, 30 Oct 2025 22:19:42 GMT</lastBuildDate><generator>Nikola (getnikola.com)</generator><docs>http://blogs.law.harvard.edu/tech/rss</docs><item><title>Sistemas de contrucción de paquetes (Parte 2)</title><link>https://sergiobelkin.com/posts/2011/03/12/sistemas-de-contruccion-de-paquetes-parte-2/</link><dc:creator>sebelk</dc:creator><description>&lt;p&gt;El siguiente paso fue descomprimir de manera recursiva los paquetes, para luego poder inspeccionar en ellos. Lo hice con una herramienta poco conocida &lt;a title="dtrx" href="http://brettcsmith.org/2007/dtrx/"&gt;dtrx&lt;/a&gt;. Lo interesante de este script de python es que puede realizar extracciones recursivas y de acuerdo a la extensión del archivo utiliza el software de extracción necesario. Esperemos que pronto esté en los repositorios de Fedora (ver la solicitud en &lt;a title="Review Request" href="https://bugzilla.redhat.com/show_bug.cgi?id=683684" target="_blank"&gt;Red Hat Bugzilla&lt;/a&gt;).&lt;/p&gt;
&lt;p&gt;Una vez descompridos todos los paquetes, se corrió el siguiente script&lt;/p&gt;
&lt;p&gt;&lt;code&gt;
#! /bin/bash
#Very simple script to get Build System Statistc
dir=1&lt;br&gt;
rm -f /tmp/ant /tmp/cmake /tmp/autotools /tmp/makefile /tmp/autoconf /tmp/autotools_procedure&lt;br&gt;
for i in (find dir -maxdepth 1 -mindepth 1 -type d)&lt;br&gt;
do&lt;br&gt;
 ls -R1 i | grep -q -P -m1 "^configure.(ac|in)"&lt;br&gt;
 if [[ ? -eq 0 ]];then&lt;br&gt;
 ls -R1 i | grep -P -q -m1 "^Makefile\.(am|in)"&lt;br&gt;
 if [[ ? -eq 0 ]];then&lt;br&gt;
 echo "{i##&lt;em&gt;/}" &amp;gt;&amp;gt; /tmp/autotools 2&amp;gt;/dev/null&lt;br&gt;
 cant_autotools=(($cant_autotools+1))&lt;br&gt;
 else&lt;br&gt;
 echo "{i##&lt;/em&gt;/}" &amp;gt;&amp;gt; /tmp/autoconf 2&amp;gt;/dev/null&lt;br&gt;
 cant_autoconf=(($cant_autoconf+1))&lt;br&gt;
 fi&lt;br&gt;
 fi&lt;br&gt;
 #cmake&lt;br&gt;
 ls -R1 i | grep -q -m1 CMakeLists.txt&lt;br&gt;
 if [[ ? -eq 0 ]];then&lt;br&gt;
 cant_cmake=((cant_cmake+1))&lt;br&gt;
 echo "{i##&lt;em&gt;/}" &amp;gt;&amp;gt; /tmp/cmake 2&amp;gt;/dev/null&lt;br&gt;
 fi&lt;br&gt;
 #Plain makefile&lt;br&gt;
 ls -R1 i | grep -q -P -m1 "^configure\.(ac|in)"&lt;br&gt;
 if [[ ? -ne 0 ]];then&lt;br&gt;
 ls -R1 i | grep -q -P -m1 "^(Makefile.(am|in)|CMakeLists.txt)"&lt;br&gt;
 if [[ ? -ne 0 ]];then&lt;br&gt;
 ls -R1 i | grep -q -P -m1 "^Makefile"&lt;br&gt;
 if [[ ? -eq 0 ]];then&lt;br&gt;
 cant_makefile=((cant_makefile+1))&lt;br&gt;
 echo "${i##&lt;/em&gt;/}" &amp;gt;&amp;gt; /tmp/makefile 2&amp;gt; /dev/null&lt;br&gt;
 fi&lt;br&gt;
 fi&lt;br&gt;
 fi&lt;br&gt;
 find i -name "*.spec" | xargs pcregrep -q -M "%build(.*\n)*(./|%)configure.*\n(.*\n)*make(.*\n)*%install"&lt;br&gt;
 if [[ ? -eq 0 ]];then&lt;br&gt;
 cant_autotools_build_section=(($cant_autotools_build_section+1))&lt;br&gt;
 echo "{i##*/}" &amp;gt;&amp;gt; /tmp/autotools_procedure&lt;br&gt;
 fi&lt;br&gt;
done&lt;br&gt;
echo "###Resultados###"&lt;br&gt;
[ -f /tmp/autotools ] &amp;amp;&amp;amp; echo -e "There are cant_autotools with autotools:\n\n(sort /tmp/autotools)\n\n"&lt;br&gt;
[ -f /tmp/cmake ] &amp;amp;&amp;amp; echo -e "cant_cmake with cmake:\n\n(sort /tmp/cmake)\n\n"&lt;br&gt;
[ -f /tmp/makefile ] &amp;amp;&amp;amp; echo -e "cant_makefile with makefile:\n\n(sort /tmp/makefile)\n\n"&lt;br&gt;
[ -f /tmp/autoconf ] &amp;amp;&amp;amp; echo -e "cant_autoconf with only autoconf:\n\n(sort /tmp/autoconf)\n\n"&lt;br&gt;
[ -f /tmp/autotools_procedure ] &amp;amp;&amp;amp; echo -e "cant_autotools_build_section with only autotools_build_section\n\n(sort /tmp/autotools_procedure)"&lt;/code&gt;&lt;/p&gt;&lt;br&gt;


&lt;p&gt;En la &lt;a href="https://sergiobelkin.com/posts/2011/03/12/sistemas-de-construccion-de-paquetes-parte-3/"&gt;siguiente&lt;/a&gt; parte veremos los resultados….&lt;/p&gt;</description><category>autootools</category><category>dtrx</category><category>paquetes</category><guid>https://sergiobelkin.com/posts/2011/03/12/sistemas-de-contruccion-de-paquetes-parte-2/</guid><pubDate>Sun, 06 Oct 2019 15:36:08 GMT</pubDate></item></channel></rss>