{"id":248,"date":"2008-01-04T01:04:18","date_gmt":"2008-01-04T05:04:18","guid":{"rendered":"https:\/\/skatox.com\/blog\/?p=248"},"modified":"2023-02-28T09:31:54","modified_gmt":"2023-02-28T14:31:54","slug":"como-crear-y-aplicar-un-parche-a-un-codigo-fuente","status":"publish","type":"post","link":"https:\/\/skatox.com\/blog\/2008\/01\/04\/como-crear-y-aplicar-un-parche-a-un-codigo-fuente\/","title":{"rendered":"Como crear y aplicar un parche a un c\u00f3digo fuente"},"content":{"rendered":"\n<p>A veces cuando se descarga el c\u00f3digo fuente de un programa puede ser necesario cambiar algunas cosas para hacerlo funcionar: el c\u00f3digo est\u00e1 obsoleto y necesita cambios, algunas librer\u00ed\u00adas se encuentran en otro lado, errores en el c\u00f3digo. O tambi\u00e9n puede ser necesario agregarle\/remover c\u00f3digo para funcione mas r\u00e1pido, tenga nuevas funciones, mayores optimizaciones, etc.<\/p>\n\n\n\n<p>Para ello se usa un parche, que es un archivo que contiene informaci\u00f3n de lo que se debe cambiar al archivo original para que quede a como se modific\u00f3 previamente por otra persona (o uno mismo). As\u00ed\u00ad que en vez de que cada persona que desea modificar de la misma manera el c\u00f3digo deba abrir cada archivo, buscar las l\u00ed\u00adneas donde se mete el c\u00f3digo nuevo, borrar lo necesario y guardar; se les da el parche que realiza esta tarea de manera automatizada. Esto es usado por ejemplo por algunos empaquetadores que deben modificar el c\u00f3digo fuente de un programa para que cumpla el est\u00e1ndar \u00f3 funcione como lo pide su distribuci\u00f3n, para enviar cambios c\u00f3digo fuente a un proyecto de software, entre otras cosas.<\/p>\n\n\n\n<p>Por ejemplo, existen modificaciones no oficiales que se la hacen al kernel linux para agregarle nuevas funcionalidades, nuevas optimizaciones de velocidad, soporte para algunos dispositivos (ejem: el hardware del PS3), entre muchas cosas. Pero para ello, no es necesario hacer copias de todo el c\u00f3digo fuente para cada modificaci\u00f3n hecha: por ejemplo, el sitio <a href=\"https:\/\/www.kernel.org\/\">kernel.org<\/a> no tiene que colocar el todo c\u00f3digo fuente de linux modificado para funcionar mejor en escritorio, todo el c\u00f3digo fuente del kernel para el ps3, el c\u00f3digo fuente para correr en una plataforma no soportado, sino s\u00f3lo ofrecer el c\u00f3digo fuente original y los \u00abprogramadores\/empaquetadores\/geeks\u00bb se <strong>encargar\u00e1n de aplicar un parche<\/strong> para modificar el archivo original agregando los cambios necesario para su prop\u00f3sito.<\/p>\n\n\n\n<p>Los pasos a seguir para crear un parche se hace con solo 1 comando, primero modificamos el programa de acuerdo a nuestras necesidades en una carpeta\/archivo aparte (para no perder el original), y utilizamos el programa <em>diff<\/em> para ver la diferencia entre el archivo original y el nuevo (modificado). Usamos el siguiente comando para guardar la informaci\u00f3n de cambios en un archivo\/directorio en un archivo patch:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code lang=\"bash\" class=\"language-bash\"># se pueden usar directorios para modificaciones m\u00faltiples de archivos\ndiff -Naur dir_archivo_original archivo_nuevo > parche.patch<\/code><\/pre>\n\n\n\n<p>Con esto ya se tiene guardado en el archivo parche.patch la informaci\u00f3n acerca de los cambios realizados y donde se encuentran los mismos. Ahora la persona que recibe o quiere usar el parche para cambiar el c\u00f3digo fuente original por lo que necesita s\u00f3lo debe hacer:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code lang=\"bash\" class=\"language-bash\"># se puede usar un directorio en vez de archivo a modificar\npatch -Np1 -i ruta_archivo_parche ruta_archivo_a_modificar<\/code><\/pre>\n\n\n\n<p>\u00a1Y listo! De esta manera es como se recomienda enviar cambios de un c\u00f3digo, ya que la persona no tiene que leer todo el c\u00f3digo para encontrar los cambios (el mismo parche te dice donde se han realizado) y puede aplicar los cambios si lo desea y sin perder el original.<\/p>\n\n\n\n<p><strong>Nota: Disculpen, creo que lo escrib\u00ed\u00ad un poco confuso.<\/strong><\/p>\n","protected":false},"excerpt":{"rendered":"<p>A veces cuando se descarga el c\u00f3digo fuente de un programa puede ser necesario cambiar algunas cosas para hacerlo funcionar: el c\u00f3digo est\u00e1 obsoleto y&#8230;<\/p>\n<div class=\"more-link-wrapper\"><a class=\"more-link\" href=\"https:\/\/skatox.com\/blog\/2008\/01\/04\/como-crear-y-aplicar-un-parche-a-un-codigo-fuente\/\">Seguir leyendo<span class=\"screen-reader-text\">Como crear y aplicar un parche a un c\u00f3digo fuente<\/span><\/a><\/div>\n","protected":false},"author":2,"featured_media":0,"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,"footnotes":"","jetpack_publicize_message":"","jetpack_publicize_feature_enabled":true,"jetpack_social_post_already_shared":false,"jetpack_social_options":{"image_generator_settings":{"template":"highway","default_image_id":0,"font":"","enabled":false},"version":2}},"categories":[3,5],"tags":[269,270,268,271],"class_list":["post-248","post","type-post","status-publish","format-standard","hentry","category-gnulinux","category-informatica","tag-codigo-fuente","tag-parche","tag-patch","tag-source-code","entry"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v27.5 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>Como crear y aplicar un parche a un c\u00f3digo fuente - El blog de Skatox<\/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:\/\/skatox.com\/blog\/2008\/01\/04\/como-crear-y-aplicar-un-parche-a-un-codigo-fuente\/\" \/>\n<meta property=\"og:locale\" content=\"es_ES\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Como crear y aplicar un parche a un c\u00f3digo fuente - El blog de Skatox\" \/>\n<meta property=\"og:description\" content=\"A veces cuando se descarga el c\u00f3digo fuente de un programa puede ser necesario cambiar algunas cosas para hacerlo funcionar: el c\u00f3digo est\u00e1 obsoleto y&#8230;\" \/>\n<meta property=\"og:url\" content=\"https:\/\/skatox.com\/blog\/2008\/01\/04\/como-crear-y-aplicar-un-parche-a-un-codigo-fuente\/\" \/>\n<meta property=\"og:site_name\" content=\"El blog de Skatox\" \/>\n<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/ElWeblogdeSkatox\/\" \/>\n<meta property=\"article:published_time\" content=\"2008-01-04T05:04:18+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2023-02-28T14:31:54+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/skatox.com\/blog\/images\/2015\/12\/skatux.png\" \/>\n\t<meta property=\"og:image:width\" content=\"625\" \/>\n\t<meta property=\"og:image:height\" content=\"603\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/png\" \/>\n<meta name=\"author\" content=\"Miguel Useche\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:creator\" content=\"@skatox\" \/>\n<meta name=\"twitter:site\" content=\"@skatox\" \/>\n<meta name=\"twitter:label1\" content=\"Escrito por\" \/>\n\t<meta name=\"twitter:data1\" content=\"Miguel Useche\" \/>\n\t<meta name=\"twitter:label2\" content=\"Tiempo de lectura\" \/>\n\t<meta name=\"twitter:data2\" content=\"3 minutos\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\\\/\\\/skatox.com\\\/blog\\\/2008\\\/01\\\/04\\\/como-crear-y-aplicar-un-parche-a-un-codigo-fuente\\\/#article\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/skatox.com\\\/blog\\\/2008\\\/01\\\/04\\\/como-crear-y-aplicar-un-parche-a-un-codigo-fuente\\\/\"},\"author\":{\"name\":\"Miguel Useche\",\"@id\":\"https:\\\/\\\/skatox.com\\\/blog\\\/#\\\/schema\\\/person\\\/e081bf33c5b0f1b0514e253cb578e1ba\"},\"headline\":\"Como crear y aplicar un parche a un c\u00f3digo fuente\",\"datePublished\":\"2008-01-04T05:04:18+00:00\",\"dateModified\":\"2023-02-28T14:31:54+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/skatox.com\\\/blog\\\/2008\\\/01\\\/04\\\/como-crear-y-aplicar-un-parche-a-un-codigo-fuente\\\/\"},\"wordCount\":516,\"commentCount\":7,\"publisher\":{\"@id\":\"https:\\\/\\\/skatox.com\\\/blog\\\/#organization\"},\"keywords\":[\"codigo fuente\",\"parche\",\"patch\",\"source code\"],\"articleSection\":[\"Gnu\\\/Linux\",\"Inform\u00e1tica\"],\"inLanguage\":\"es\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\\\/\\\/skatox.com\\\/blog\\\/2008\\\/01\\\/04\\\/como-crear-y-aplicar-un-parche-a-un-codigo-fuente\\\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/skatox.com\\\/blog\\\/2008\\\/01\\\/04\\\/como-crear-y-aplicar-un-parche-a-un-codigo-fuente\\\/\",\"url\":\"https:\\\/\\\/skatox.com\\\/blog\\\/2008\\\/01\\\/04\\\/como-crear-y-aplicar-un-parche-a-un-codigo-fuente\\\/\",\"name\":\"Como crear y aplicar un parche a un c\u00f3digo fuente - El blog de Skatox\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/skatox.com\\\/blog\\\/#website\"},\"datePublished\":\"2008-01-04T05:04:18+00:00\",\"dateModified\":\"2023-02-28T14:31:54+00:00\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/skatox.com\\\/blog\\\/2008\\\/01\\\/04\\\/como-crear-y-aplicar-un-parche-a-un-codigo-fuente\\\/#breadcrumb\"},\"inLanguage\":\"es\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/skatox.com\\\/blog\\\/2008\\\/01\\\/04\\\/como-crear-y-aplicar-un-parche-a-un-codigo-fuente\\\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/skatox.com\\\/blog\\\/2008\\\/01\\\/04\\\/como-crear-y-aplicar-un-parche-a-un-codigo-fuente\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Portada\",\"item\":\"https:\\\/\\\/skatox.com\\\/blog\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Como crear y aplicar un parche a un c\u00f3digo fuente\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/skatox.com\\\/blog\\\/#website\",\"url\":\"https:\\\/\\\/skatox.com\\\/blog\\\/\",\"name\":\"El blog de Skatox\",\"description\":\"Compartiendo mis opiniones inform\u00e1ticas mas all\u00e1 de los 280 caracteres\",\"publisher\":{\"@id\":\"https:\\\/\\\/skatox.com\\\/blog\\\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/skatox.com\\\/blog\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"es\"},{\"@type\":\"Organization\",\"@id\":\"https:\\\/\\\/skatox.com\\\/blog\\\/#organization\",\"name\":\"El blog de Skatox\",\"url\":\"https:\\\/\\\/skatox.com\\\/blog\\\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"es\",\"@id\":\"https:\\\/\\\/skatox.com\\\/blog\\\/#\\\/schema\\\/logo\\\/image\\\/\",\"url\":\"https:\\\/\\\/skatox.com\\\/blog\\\/images\\\/2022\\\/03\\\/tux.png\",\"contentUrl\":\"https:\\\/\\\/skatox.com\\\/blog\\\/images\\\/2022\\\/03\\\/tux.png\",\"width\":218,\"height\":218,\"caption\":\"El blog de Skatox\"},\"image\":{\"@id\":\"https:\\\/\\\/skatox.com\\\/blog\\\/#\\\/schema\\\/logo\\\/image\\\/\"},\"sameAs\":[\"https:\\\/\\\/www.facebook.com\\\/ElWeblogdeSkatox\\\/\",\"https:\\\/\\\/x.com\\\/skatox\",\"https:\\\/\\\/www.linkedin.com\\\/in\\\/skatox\\\/\",\"https:\\\/\\\/www.youtube.com\\\/c\\\/MiguelAngelUsecheCastro\",\"https:\\\/\\\/x.com\\\/skatox\\\/\"]},{\"@type\":\"Person\",\"@id\":\"https:\\\/\\\/skatox.com\\\/blog\\\/#\\\/schema\\\/person\\\/e081bf33c5b0f1b0514e253cb578e1ba\",\"name\":\"Miguel Useche\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"es\",\"@id\":\"https:\\\/\\\/skatox.com\\\/blog\\\/wp-content\\\/litespeed\\\/avatar\\\/aec95b02408138cb9d08288435373552.jpg?ver=1776995078\",\"url\":\"https:\\\/\\\/skatox.com\\\/blog\\\/wp-content\\\/litespeed\\\/avatar\\\/aec95b02408138cb9d08288435373552.jpg?ver=1776995078\",\"contentUrl\":\"https:\\\/\\\/skatox.com\\\/blog\\\/wp-content\\\/litespeed\\\/avatar\\\/aec95b02408138cb9d08288435373552.jpg?ver=1776995078\",\"caption\":\"Miguel Useche\"},\"sameAs\":[\"https:\\\/\\\/skatox.com\",\"https:\\\/\\\/x.com\\\/skatox\"]}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Como crear y aplicar un parche a un c\u00f3digo fuente - El blog de Skatox","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:\/\/skatox.com\/blog\/2008\/01\/04\/como-crear-y-aplicar-un-parche-a-un-codigo-fuente\/","og_locale":"es_ES","og_type":"article","og_title":"Como crear y aplicar un parche a un c\u00f3digo fuente - El blog de Skatox","og_description":"A veces cuando se descarga el c\u00f3digo fuente de un programa puede ser necesario cambiar algunas cosas para hacerlo funcionar: el c\u00f3digo est\u00e1 obsoleto y&#8230;","og_url":"https:\/\/skatox.com\/blog\/2008\/01\/04\/como-crear-y-aplicar-un-parche-a-un-codigo-fuente\/","og_site_name":"El blog de Skatox","article_publisher":"https:\/\/www.facebook.com\/ElWeblogdeSkatox\/","article_published_time":"2008-01-04T05:04:18+00:00","article_modified_time":"2023-02-28T14:31:54+00:00","og_image":[{"width":625,"height":603,"url":"https:\/\/skatox.com\/blog\/images\/2015\/12\/skatux.png","type":"image\/png"}],"author":"Miguel Useche","twitter_card":"summary_large_image","twitter_creator":"@skatox","twitter_site":"@skatox","twitter_misc":{"Escrito por":"Miguel Useche","Tiempo de lectura":"3 minutos"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/skatox.com\/blog\/2008\/01\/04\/como-crear-y-aplicar-un-parche-a-un-codigo-fuente\/#article","isPartOf":{"@id":"https:\/\/skatox.com\/blog\/2008\/01\/04\/como-crear-y-aplicar-un-parche-a-un-codigo-fuente\/"},"author":{"name":"Miguel Useche","@id":"https:\/\/skatox.com\/blog\/#\/schema\/person\/e081bf33c5b0f1b0514e253cb578e1ba"},"headline":"Como crear y aplicar un parche a un c\u00f3digo fuente","datePublished":"2008-01-04T05:04:18+00:00","dateModified":"2023-02-28T14:31:54+00:00","mainEntityOfPage":{"@id":"https:\/\/skatox.com\/blog\/2008\/01\/04\/como-crear-y-aplicar-un-parche-a-un-codigo-fuente\/"},"wordCount":516,"commentCount":7,"publisher":{"@id":"https:\/\/skatox.com\/blog\/#organization"},"keywords":["codigo fuente","parche","patch","source code"],"articleSection":["Gnu\/Linux","Inform\u00e1tica"],"inLanguage":"es","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/skatox.com\/blog\/2008\/01\/04\/como-crear-y-aplicar-un-parche-a-un-codigo-fuente\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/skatox.com\/blog\/2008\/01\/04\/como-crear-y-aplicar-un-parche-a-un-codigo-fuente\/","url":"https:\/\/skatox.com\/blog\/2008\/01\/04\/como-crear-y-aplicar-un-parche-a-un-codigo-fuente\/","name":"Como crear y aplicar un parche a un c\u00f3digo fuente - El blog de Skatox","isPartOf":{"@id":"https:\/\/skatox.com\/blog\/#website"},"datePublished":"2008-01-04T05:04:18+00:00","dateModified":"2023-02-28T14:31:54+00:00","breadcrumb":{"@id":"https:\/\/skatox.com\/blog\/2008\/01\/04\/como-crear-y-aplicar-un-parche-a-un-codigo-fuente\/#breadcrumb"},"inLanguage":"es","potentialAction":[{"@type":"ReadAction","target":["https:\/\/skatox.com\/blog\/2008\/01\/04\/como-crear-y-aplicar-un-parche-a-un-codigo-fuente\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/skatox.com\/blog\/2008\/01\/04\/como-crear-y-aplicar-un-parche-a-un-codigo-fuente\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Portada","item":"https:\/\/skatox.com\/blog\/"},{"@type":"ListItem","position":2,"name":"Como crear y aplicar un parche a un c\u00f3digo fuente"}]},{"@type":"WebSite","@id":"https:\/\/skatox.com\/blog\/#website","url":"https:\/\/skatox.com\/blog\/","name":"El blog de Skatox","description":"Compartiendo mis opiniones inform\u00e1ticas mas all\u00e1 de los 280 caracteres","publisher":{"@id":"https:\/\/skatox.com\/blog\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/skatox.com\/blog\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"es"},{"@type":"Organization","@id":"https:\/\/skatox.com\/blog\/#organization","name":"El blog de Skatox","url":"https:\/\/skatox.com\/blog\/","logo":{"@type":"ImageObject","inLanguage":"es","@id":"https:\/\/skatox.com\/blog\/#\/schema\/logo\/image\/","url":"https:\/\/skatox.com\/blog\/images\/2022\/03\/tux.png","contentUrl":"https:\/\/skatox.com\/blog\/images\/2022\/03\/tux.png","width":218,"height":218,"caption":"El blog de Skatox"},"image":{"@id":"https:\/\/skatox.com\/blog\/#\/schema\/logo\/image\/"},"sameAs":["https:\/\/www.facebook.com\/ElWeblogdeSkatox\/","https:\/\/x.com\/skatox","https:\/\/www.linkedin.com\/in\/skatox\/","https:\/\/www.youtube.com\/c\/MiguelAngelUsecheCastro","https:\/\/x.com\/skatox\/"]},{"@type":"Person","@id":"https:\/\/skatox.com\/blog\/#\/schema\/person\/e081bf33c5b0f1b0514e253cb578e1ba","name":"Miguel Useche","image":{"@type":"ImageObject","inLanguage":"es","@id":"https:\/\/skatox.com\/blog\/wp-content\/litespeed\/avatar\/aec95b02408138cb9d08288435373552.jpg?ver=1776995078","url":"https:\/\/skatox.com\/blog\/wp-content\/litespeed\/avatar\/aec95b02408138cb9d08288435373552.jpg?ver=1776995078","contentUrl":"https:\/\/skatox.com\/blog\/wp-content\/litespeed\/avatar\/aec95b02408138cb9d08288435373552.jpg?ver=1776995078","caption":"Miguel Useche"},"sameAs":["https:\/\/skatox.com","https:\/\/x.com\/skatox"]}]}},"jetpack_publicize_connections":[],"jetpack_featured_media_url":"","jetpack_sharing_enabled":true,"jetpack-related-posts":[{"id":2268,"url":"https:\/\/skatox.com\/blog\/2012\/01\/14\/auto-completacion-de-codigo-php-con-yii-en-netbeans\/","url_meta":{"origin":248,"position":0},"title":"Auto-completaci\u00f3n de c\u00f3digo PHP con YII en Netbeans","author":"Miguel Useche","date":"14 de enero de 2012","format":false,"excerpt":"Netbeans es mi IDE favorito desde hace a\u00f1os y \u00faltimamente me ha tocado realizar varios proyectos usando el framework Yii. Para todo desarrollador \/ programador es una realidad que no conocemos en totalidad un lenguaje o framework y por ello siempre estamos acudiendo a la documentaci\u00f3n\u00a0 para repasar sintaxis y\u2026","rel":"","context":"En \u00abDesarrollo web\u00bb","block_context":{"text":"Desarrollo web","link":"https:\/\/skatox.com\/blog\/category\/todo-lo-relacionado-al-desarrollo-de-software\/desarrollo-web\/"},"img":{"alt_text":"Completado de c\u00f3digo PHP con Yii en Netbeans","src":"https:\/\/i0.wp.com\/skatox.com\/blog\/images\/2012\/01\/YiiAutoCompletionNetbeans.jpg?resize=350%2C200&ssl=1","width":350,"height":200,"srcset":"https:\/\/i0.wp.com\/skatox.com\/blog\/images\/2012\/01\/YiiAutoCompletionNetbeans.jpg?resize=350%2C200&ssl=1 1x, https:\/\/i0.wp.com\/skatox.com\/blog\/images\/2012\/01\/YiiAutoCompletionNetbeans.jpg?resize=525%2C300&ssl=1 1.5x, https:\/\/i0.wp.com\/skatox.com\/blog\/images\/2012\/01\/YiiAutoCompletionNetbeans.jpg?resize=700%2C400&ssl=1 2x"},"classes":[]},{"id":3520,"url":"https:\/\/skatox.com\/blog\/2017\/02\/27\/parodia-de-rage-against-the-machine-por-suse\/","url_meta":{"origin":248,"position":1},"title":"Parodia de Rage Against the Machine por SuSE","author":"Miguel Useche","date":"27 de febrero de 2017","format":false,"excerpt":"El equipo de SuSE cada cierto tiempo realiza unos v\u00eddeos musicales donde parodian temas musicales muy conocidos pero con letras sobre software libre, por ejemplo, hace tiempo hicieron uno de Bruno Mars llamado Uptime Funk donde hablan del parche de Linux 4.0 que permite recargar el n\u00facleo en memoria sin\u2026","rel":"","context":"En \u00abMusica Geek\u00bb","block_context":{"text":"Musica Geek","link":"https:\/\/skatox.com\/blog\/category\/musica-geek\/"},"img":{"alt_text":"","src":"https:\/\/i0.wp.com\/img.youtube.com\/vi\/50Qs4gVHB_E\/0.jpg?resize=350%2C200","width":350,"height":200},"classes":[]},{"id":3108,"url":"https:\/\/skatox.com\/blog\/2014\/11\/22\/como-migrar-los-issues-de-bitbucket-github\/","url_meta":{"origin":248,"position":2},"title":"C\u00f3mo migrar los issues de Bitbucket a Github","author":"Miguel Useche","date":"22 de noviembre de 2014","format":false,"excerpt":"Hace unos d\u00edas en la organizaci\u00f3n donde trabajo, nos toc\u00f3 migrar de Bitbucket a Github y principalmente nuestra necesidad era migrar el c\u00f3digo (obviamente) y la lista de issues junto con los datos asociados a ellos. El c\u00f3digo fuente fue sencillo pues Github tiene un asistente que permite clonar cualquier\u2026","rel":"","context":"En \u00abDesarrollo y Programaci\u00f3n\u00bb","block_context":{"text":"Desarrollo y Programaci\u00f3n","link":"https:\/\/skatox.com\/blog\/category\/todo-lo-relacionado-al-desarrollo-de-software\/"},"img":{"alt_text":"","src":"","width":0,"height":0},"classes":[]},{"id":4719,"url":"https:\/\/skatox.com\/blog\/2024\/03\/19\/google-optimizo-en-un-40-la-gestion-de-red-en-linux\/","url_meta":{"origin":248,"position":3},"title":"Google optimiz\u00f3 en un 40% la gesti\u00f3n de red en Linux","author":"Miguel Useche","date":"19 de marzo de 2024","format":false,"excerpt":"Hace un par de d\u00edas vi un parche para Linux por parte de Google, sobre como lograron optimizar la gesti\u00f3n de red hasta en un 40% en plataformas con muchas conexiones y procesadores AMD. Al decir Linux me refiero al kernel Me llam\u00f3 la atenci\u00f3n por la simplicidad del c\u00f3digo,\u2026","rel":"","context":"En \u00abGnu\/Linux\u00bb","block_context":{"text":"Gnu\/Linux","link":"https:\/\/skatox.com\/blog\/category\/gnulinux\/"},"img":{"alt_text":"","src":"https:\/\/i0.wp.com\/skatox.com\/blog\/images\/2018\/12\/DisketLinux.jpg?resize=350%2C200&ssl=1","width":350,"height":200,"srcset":"https:\/\/i0.wp.com\/skatox.com\/blog\/images\/2018\/12\/DisketLinux.jpg?resize=350%2C200&ssl=1 1x, https:\/\/i0.wp.com\/skatox.com\/blog\/images\/2018\/12\/DisketLinux.jpg?resize=525%2C300&ssl=1 1.5x, https:\/\/i0.wp.com\/skatox.com\/blog\/images\/2018\/12\/DisketLinux.jpg?resize=700%2C400&ssl=1 2x"},"classes":[]},{"id":213,"url":"https:\/\/skatox.com\/blog\/2007\/09\/17\/programa-para-resolver-sudokus\/","url_meta":{"origin":248,"position":4},"title":"Programa para resolver Sudokus","author":"Miguel Useche","date":"17 de septiembre de 2007","format":false,"excerpt":"Sudokus, quer\u00ed\u00ada que fuese r\u00e1pido, portable a otro sistema operartivo (pero como queria que fuese r\u00e1pido no pod\u00ed\u00ada usar Java) y f\u00e1cil de programar. Por lo que program\u00e9 un programa que resuelve Sudokus utilizando las librer\u00ed\u00adas de Gtkmm, ya que la misma funciona bajo Linux y Windows (no prob\u00e9 mac),\u2026","rel":"","context":"En \u00abC++\u00bb","block_context":{"text":"C++","link":"https:\/\/skatox.com\/blog\/category\/todo-lo-relacionado-al-desarrollo-de-software\/c\/"},"img":{"alt_text":"","src":"","width":0,"height":0},"classes":[]},{"id":3232,"url":"https:\/\/skatox.com\/blog\/2015\/12\/14\/como-enviar-los-correos-electronicos-predefinidos-de-woocommerce\/","url_meta":{"origin":248,"position":5},"title":"C\u00f3mo enviar los correos electr\u00f3nicos predefinidos de Woocommerce","author":"Miguel Useche","date":"14 de diciembre de 2015","format":false,"excerpt":"WooCommerce es una excelente herramienta para montar tu propia tienda en l\u00ednea, es f\u00e1cil de instalar y usar gracias que est\u00e1 construida sobre WordPress. Ademas es posible modificar todo su comportamiento mediante la instalaci\u00f3n o construcci\u00f3n de plugins. Hace unas semanas construyendo un plugin para cambiar el flujo normal de\u2026","rel":"","context":"En \u00abDesarrollo web\u00bb","block_context":{"text":"Desarrollo web","link":"https:\/\/skatox.com\/blog\/category\/todo-lo-relacionado-al-desarrollo-de-software\/desarrollo-web\/"},"img":{"alt_text":"","src":"","width":0,"height":0},"classes":[]}],"_links":{"self":[{"href":"https:\/\/skatox.com\/blog\/wp-json\/wp\/v2\/posts\/248","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/skatox.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/skatox.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/skatox.com\/blog\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/skatox.com\/blog\/wp-json\/wp\/v2\/comments?post=248"}],"version-history":[{"count":0,"href":"https:\/\/skatox.com\/blog\/wp-json\/wp\/v2\/posts\/248\/revisions"}],"wp:attachment":[{"href":"https:\/\/skatox.com\/blog\/wp-json\/wp\/v2\/media?parent=248"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/skatox.com\/blog\/wp-json\/wp\/v2\/categories?post=248"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/skatox.com\/blog\/wp-json\/wp\/v2\/tags?post=248"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}