{"id":1641,"date":"2015-07-27T22:42:57","date_gmt":"2015-07-27T22:42:57","guid":{"rendered":"http:\/\/blog.rastersoft.com\/?p=1641"},"modified":"2015-07-27T22:42:57","modified_gmt":"2015-07-27T22:42:57","slug":"actualizando-la-gentoo-del-webtv-desde-el-pc","status":"publish","type":"post","link":"https:\/\/blog.rastersoft.com\/?p=1641","title":{"rendered":"Actualizando la Gentoo del WebTV desde el PC"},"content":{"rendered":"<p>Siguiendo con lo que hice el otro d\u00eda, ahora quer\u00eda empezar a instalar cosas en el sistema Gentoo del WebTV. Por desgracia la cosa no es tan sencilla porque enseguida pide actualizar algunos paquetes, lo cual tarda mucho tiempo al hacer la compilaci\u00f3n en el propio dispositivo. Y por si fuera poco, con alguno necesita tanta memoria que, directamente, casca a la mitad de la compilaci\u00f3n.<\/p>\n<p>Afortunadamente hay una forma de hacer todo esto directamente en un PC, pero haciendo creer al sistema Gentoo que est\u00e1 corriendo de forma nativa en un sistema Mipsel. Para ello s\u00f3lo necesitamos QEMU.<\/p>\n<p>Para empezar necesitamos el binario <em>\/usr\/bin\/qemu-mipsel-static<\/em>, as\u00ed que buscamos en qu\u00e9 paquete est\u00e1 disponible y lo instalamos en nuestro sistema. En el caso de Debian, el paquete es <em>qemu-user-static.<\/em> Este binario nos permite ejecutar binarios de la arquitectura deseada, pero (y esto es lo interesante) encaminando las llamadas al n\u00facleo directamente al de la m\u00e1quina f\u00edsica, con lo que no necesitamos compilar otro n\u00facleo.<\/p>\n<p>Ahora descomprimimos el fichero <em>entorno_gentoo_<\/em><em>mipsel.tar.bz2<\/em> en un directorio (por ejemplo, en <em>\/tmp<\/em>), y descomprimimos en lugar adecuado (en nuestro ejemplo, en <em>\/tmp\/bg_apps\/usr<\/em>) tambi\u00e9n el fichero de <em>portage<\/em>, tras bajarlo. Por \u00faltimo, copiamos <em>\/usr\/bin\/qemu-mipsel-static<\/em> dentro de nuestro sistema <em>mipsel<\/em> (en nuestro caso, en <em>\/tmp\/bg_apps\/usr\/bin\/<\/em>). Con esto hemos terminado los preparativos.<\/p>\n<p>Ahora lanzamos nuestra sesi\u00f3n mediante:<\/p>\n<div class=\"mycode\">\n<pre class=\"mycode\">sudo systemd-nspawn -u 1000 -D \/tmp\/bg_apps \/bin\/bash<\/pre>\n<\/div>\n<p>De esta manera lanzamos nuestra sesi\u00f3n como usuario 1000 (que es el que usa el WebTV cuando se arranca una sesi\u00f3n en segundo plano). Adem\u00e1s, gracias a que copiamos el binario de <em>qemu<\/em>, los binarios de mipsel se ejecutar\u00e1n directamente, sin ning\u00fan problema, como si fuesen nativos de nuestro sistema (por incre\u00edble que parezca).<\/p>\n<p>Una vez hecho esto ya podemos actualizar el sistema y dem\u00e1s, sin temor a quedarnos sin memoria y a mucha m\u00e1s velocidad. Pero echad un vistazo tambi\u00e9n a esta entrada posterior: <a href=\"https:\/\/blog.rastersoft.com\/?p=1645\">https:\/\/blog.rastersoft.com\/?p=1645<\/a>.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Siguiendo con lo que hice el otro d\u00eda, ahora quer\u00eda empezar a instalar cosas en el sistema Gentoo del WebTV. Por desgracia la cosa no es tan sencilla porque enseguida pide actualizar algunos paquetes, lo cual tarda mucho tiempo al hacer la compilaci\u00f3n en el propio dispositivo. Y por si fuera poco, con alguno necesita &hellip; <a href=\"https:\/\/blog.rastersoft.com\/?p=1641\" class=\"more-link\">Seguir leyendo <span class=\"screen-reader-text\">Actualizando la Gentoo del WebTV desde el PC<\/span> <span class=\"meta-nav\">&rarr;<\/span><\/a><\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[2,6,7],"tags":[],"class_list":["post-1641","post","type-post","status-publish","format-standard","hentry","category-cacharreo","category-trucos","category-tutoriales"],"_links":{"self":[{"href":"https:\/\/blog.rastersoft.com\/index.php?rest_route=\/wp\/v2\/posts\/1641","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/blog.rastersoft.com\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/blog.rastersoft.com\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/blog.rastersoft.com\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/blog.rastersoft.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=1641"}],"version-history":[{"count":0,"href":"https:\/\/blog.rastersoft.com\/index.php?rest_route=\/wp\/v2\/posts\/1641\/revisions"}],"wp:attachment":[{"href":"https:\/\/blog.rastersoft.com\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=1641"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/blog.rastersoft.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=1641"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/blog.rastersoft.com\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=1641"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}