
<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Matablogs</title>
	<atom:link href="https://matablogs.com/feed/" rel="self" type="application/rss+xml" />
	<link>https://matablogs.com</link>
	<description>Es un mundo sadico y lo sabes...</description>
	<lastBuildDate>Fri, 15 Nov 2024 21:27:52 +0000</lastBuildDate>
	<language>es</language>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	<generator>https://wordpress.org/?v=6.9.1</generator>
<site xmlns="com-wordpress:feed-additions:1">201874137</site>	<item>
		<title>Pero&#8230; ¿tapas la cámara de tu portátil?</title>
		<link>https://matablogs.com/2024/11/15/pero-tapas-la-camara-de-tu-portatil/</link>
					<comments>https://matablogs.com/2024/11/15/pero-tapas-la-camara-de-tu-portatil/#respond</comments>
		
		<dc:creator><![CDATA[goxonline]]></dc:creator>
		<pubDate>Fri, 15 Nov 2024 21:27:52 +0000</pubDate>
				<category><![CDATA[General]]></category>
		<category><![CDATA[GNU/Linux]]></category>
		<category><![CDATA[linux]]></category>
		<category><![CDATA[seguridad]]></category>
		<guid isPermaLink="false">https://matablogs.com/?p=180</guid>

					<description><![CDATA[Como ya saben muchos, soy uno de esos usuarios que se compra un Thinkpad de segunda mano, le instala GNU/Linux con todo lo necesario para que el mundo en que vivo siga girando.Obviamente, mi Thinkpad tiene cámara web y me encanta, funciona muy bien, no veo nada de malo es que este sin una cinta, [&#8230;]]]></description>
										<content:encoded><![CDATA[
<meta name="fediverse:creator" content="@goxonline@arguos.com">



<p class="has-drop-cap">Como ya saben muchos, soy uno de esos usuarios que se compra un Thinkpad de segunda mano, le instala GNU/Linux con todo lo necesario para que el mundo en que vivo siga girando.<br>Obviamente, mi Thinkpad tiene cámara web y me encanta, funciona muy bien, no veo nada de malo es que este sin una cinta, o un «protector de privacidad». Vamos que no tengo miedo de que me graben en alguna situación comprometida o similar. Pero a diferencia de muchos otros portátiles/laptops, mi Thinkpad no tiene micrófonos&#8230;</p>



<figure class="wp-block-image size-full"><img decoding="async" src="https://matablogs.com/wp-content/uploads/2022/06/Figura-7-Meme-Roll-Safe-Think-About-it-Fuente-Facebook.png" alt="" class="wp-image-221"/><figcaption class="wp-element-caption">Think about this&#8230;</figcaption></figure>



<p class="has-text-align-left">Mi Thinkpad x280, preparado para la batalla, con su modem 4G y su WIFI-ac &#8230; No tiene micrófonos.</p>



<p class="has-text-align-center"><img decoding="async" class="wp-image-223" style="" src="https://matablogs.com/wp-content/uploads/2022/06/nonsnse-nonsense-everywhere.jpg" alt=""></p>



<p class="has-drop-cap">Me he tomado la tarea de desactivar complemente los micrófonos de la placa integrada donde esta la misma cámara web. (Que por cierto, cabe mencionar que en el Thinkpad x280, tiene dos micrófonos y graba audio estéreo).</p>



<p>Tener un micrófono activo en cualquier lugar puede ser y es un grabe agujero de seguridad&#8230;<br>Una cámara web montada en un portátil, normalmente esta pensada para apuntar hace delante y capturar&#8230; Un micrófono escucha todo lo que le rodea a este&#8230;<br>Transmitir y almacenar Audio de forma digital, es mas simple <em>fácil y liviano</em> que transmitir o almacenar Video y Audio.</p>



<p>Uso de CPU para comprimir una imagen, es mucho mayor que el que se utiliza para comprimir audio.<br><br>Consultando el API del Windows Core Audio , para generar una aplicación que grabe, almacene o transmita audio (<a href="https://docs.microsoft.com/en-us/windows/win32/coreaudio/about-the-windows-core-audio-apis">https://docs.microsoft.com/en-us/windows/win32/coreaudio/about-the-windows-core-audio-apis</a>). <br>Pero cabe destacar lo siguiente (y lo he copiado de la documentación):</p>



<ul class="wp-block-list">
<li>Low-latency, glitch-resilient audio streaming.</li>



<li>Improved reliability<strong> (many audio functions have moved from kernel mode to user mode)</strong>.</li>



<li>Improved security <strong>(processing of protected audio content takes place in a secure, lower-privilege process).</strong></li>



<li>Assignment of particular system-wide roles (console, multimedia, and communications) to individual audio devices.</li>



<li>Software abstraction of the audio endpoint devices (for  example, speakers, headphones, and microphones) that the user  manipulates directly.</li>
</ul>



<p>Lo traduciremos rápidamente en una pequeña aplicación que se ejecuta como usuario y que prácticamente no necesita permisos.</p>



<p>Allá por el 2013 se publico un pequeño estudio basado en el descubrimiento de paquetes transmitido por alta frecuencia https://www.scientificamerican.com/article/computers-can-be-hacked-using-high-frequency-sound/</p>



<p>Hoy en día muchas cosas tienen micrófonos&#8230; «para hacernos la vida mas fácil», auriculares, relojes, móviles (obviamente)&#8230; todos listos para escuchar.</p>



<p></p>
]]></content:encoded>
					
					<wfw:commentRss>https://matablogs.com/2024/11/15/pero-tapas-la-camara-de-tu-portatil/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
		<post-id xmlns="com-wordpress:feed-additions:1">180</post-id>	</item>
		<item>
		<title>Installing Pixelfed on Debian 11, without dying in the attempt</title>
		<link>https://matablogs.com/2022/11/25/installing-pixelfed-on-debian-11-without-dying-in-the-attempt/</link>
					<comments>https://matablogs.com/2022/11/25/installing-pixelfed-on-debian-11-without-dying-in-the-attempt/#respond</comments>
		
		<dc:creator><![CDATA[goxonline]]></dc:creator>
		<pubDate>Fri, 25 Nov 2022 16:13:13 +0000</pubDate>
				<category><![CDATA[GNU/Linux]]></category>
		<category><![CDATA[Self Hosting]]></category>
		<category><![CDATA[activitypub]]></category>
		<category><![CDATA[gnu/linux]]></category>
		<category><![CDATA[php]]></category>
		<category><![CDATA[pixelfed]]></category>
		<guid isPermaLink="false">https://matablogs.com/?p=263</guid>

					<description><![CDATA[UNDERSTANDING THIS GUIDE: These are notes that you should read. What is Pixelfed? Pixelfed is an application/service similar to Instagram, but unlike Instagram, Pixelfed is not centralized, it is free and open source. What does it mean that it is not centralized? Unlike other services and applications, Pixelfed is decentralized, it does not depend on [&#8230;]]]></description>
										<content:encoded><![CDATA[
<hr class="wp-block-separator has-alpha-channel-opacity"/>



<h5 class="wp-block-heading">UNDERSTANDING THIS GUIDE:</h5>



<meta name="fediverse:creator" content="@goxonline@arguos.com">



<pre class="wp-block-code has-tertiary-background-color has-background has-small-font-size"><code>&lt;?php echo "This is code, or the content of a file!" ?&gt;</code></pre>



<p class="has-luminous-vivid-amber-background-color has-background has-small-font-size">These are notes that you should read.</p>



<hr class="wp-block-separator has-alpha-channel-opacity"/>



<h4 class="wp-block-heading">What is Pixelfed?</h4>



<p>Pixelfed is an application/service similar to Instagram, but unlike Instagram, Pixelfed is not centralized, it is free and open source.</p>



<h4 class="wp-block-heading">What does it mean that it is not centralized?</h4>



<p>Unlike other services and applications, Pixelfed is decentralized, it does not depend on a single entity and each instance is unique and independent.<br>Also, each Pixelfed instance can interact with other instances, since it uses open protocols.</p>



<hr class="wp-block-separator has-alpha-channel-opacity"/>



<h2 class="wp-block-heading has-text-align-center">Let&#8217;s get started!</h2>



<h4 class="wp-block-heading">Required packages</h4>



<p>Before configuring everything we will install some packages necessary to make everything work, instead of installing them all together, we will do it independently to avoid any problem.</p>



<p>Run:</p>



<pre class="wp-block-code has-base-color has-contrast-background-color has-text-color has-background" style="font-size:0.9rem"><code>apt install git zip psmisc build-essential apache2 mariadb-server curl htop bmon mc pngquant optipng jpegoptim gifsicle ffmpeg redis</code></pre>



<h4 class="wp-block-heading">System user for Pixelfed</h4>



<p>We will create a user for the application, we execute the following:</p>



<pre class="wp-block-code has-base-color has-contrast-background-color has-text-color has-background" style="font-size:0.9rem"><code>useradd pixelfed -m -d /www/pixelfed -s /bin/false -r -c "Pixelfed User"</code></pre>



<h4 class="wp-block-heading">We obtain a copy of Github</h4>



<p>For this we will use the user that we have already created, we execute:</p>



<pre class="wp-block-code has-base-color has-contrast-background-color has-text-color has-background" style="font-size:0.9rem"><code>su -l pixelfed -s /bin/bash ; cd</code></pre>



<p>And we execute:</p>



<pre class="wp-block-code has-base-color has-contrast-background-color has-text-color has-background" style="font-size:0.9rem"><code>git clone -b dev https://github.com/pixelfed/pixelfed.git pixelfed</code></pre>



<p>We should see something like this:</p>



<pre class="wp-block-code has-base-color has-contrast-background-color has-text-color has-background" style="font-size:0.9rem"><code>Clonando en 'pixelfed'... remote: Enumerating objects: 47808, done. remote: Total 47808 (delta 0), reused 0 (delta 0), pack-reused 47808 Recibiendo objetos: 100% (47808/47808), 44.17 MiB | 13.14 MiB/s, listo. Resolviendo deltas: 100% (30423/30423), listo.</code></pre>



<p class="has-small-font-size">(My system is in Spanish)</p>



<hr class="wp-block-separator has-alpha-channel-opacity"/>



<h5 class="wp-block-heading has-text-align-center has-contrast-color has-vivid-red-background-color has-text-color has-background">*I found a BUG!</h5>



<p>There is a bug in the code of the version » dev 0.11.4″, this is due to the change of version of Laravel from 8 to 9. What causes the BUG is that when a file is uploaded and directories are created within «storage», these are created with permissions «0700», which prevents any user other than the owner of the directory, can not access it. To solve this I have requested a PULL, in the GitHUB repository #3825, which makes that the user with which PHP is executed at the moment creates the directories with the correct permissions.</p>



<p>To check if this has been corrected, we edit the file «pixelfed/config/filesystems.php».</p>



<p>We look for the lines:</p>



<pre class="wp-block-code has-tertiary-background-color has-background" style="font-size:0.9rem"><code>    'disks' =&gt; &#91;

        'local' =&gt; &#91;
            'driver' =&gt; 'local',
            'root'   =&gt; storage_path('app'),
        ],</code></pre>



<p>We add the following lines (In red, if they are not there they must be added):</p>



<pre class="wp-block-code has-tertiary-background-color has-background" style="font-size:0.9rem"><code>    'disks' =&gt; &#91;

        'local' =&gt; &#91;
            'driver' =&gt; 'local',
            'root'   =&gt; storage_path('app'),
<mark style="background-color:rgba(0, 0, 0, 0);color:#ff0000" class="has-inline-color"><mark>            'permissions' =&gt; &#91;
                'file' =&gt; &#91;</mark>
<mark>                    'public' =&gt; 0644,</mark>
<mark>                    'private' =&gt; 0644,
                ],
                'dir' =&gt; &#91;</mark>
<mark>                    'public' =&gt; 0755,
                    'private' =&gt; 0755,
                ],
            ],</mark></mark>

        'public' =&gt; &#91;</code></pre>



<p>Save the file and continue.</p>



<hr class="wp-block-separator has-alpha-channel-opacity"/>



<p>We stop using the user «pixelfed».</p>



<hr class="wp-block-separator has-alpha-channel-opacity"/>



<h4 class="wp-block-heading has-luminous-vivid-amber-background-color has-background">NOTE: Working Directory</h4>



<p>The working directory can change according to each one and their preferences, in my case for the WEB applications and WEB sites, I prefer to install everything in a single directory inside the RAIZ of the disk, in my case it is the «/www» and the applications in a directory with its respective name, in this case «pixelfed».<br>To do this we execute this command:</p>



<pre class="wp-block-code has-base-color has-contrast-background-color has-text-color has-background" style="font-size:0.9rem"><code>mkdir /www/pixelfed/ssl -p</code></pre>



<p>«-p» this option will create the parent directories if they do not exist.<br>«ssl» we will use this directory to store the certificates signed by Let&#8217;s Encrypt.</p>



<hr class="wp-block-separator has-alpha-channel-opacity"/>



<h4 class="wp-block-heading">Configuring Apache2</h4>



<p>We will configure the apache web server, so that it can access to «/www/pixelfed», by default the apache service has permissions to work in the directory «/var/www/», we will change this so that the service can access to «www» (this is my example, in your case it can be the directory that ).</p>



<p>Edit the file «/etc/apache2/apache2.conf». Look for the lines:</p>



<pre class="wp-block-code has-contrast-color has-tertiary-background-color has-text-color has-background" style="font-size:0.9rem"><code>&lt;Directory /var/www/&gt;
    Options Indexes FollowSymLinks
    AllowOverride None
    Require all granted
&lt;/Directory&gt;</code></pre>



<p>We can change them or add:</p>



<pre class="wp-block-code has-contrast-color has-tertiary-background-color has-text-color has-background" style="font-size:0.9rem"><code>&lt;Directory /www/&gt;
    Options Indexes FollowSymLinks
    AllowOverride None
    Require all granted
&lt;/Directory&gt;</code></pre>



<h4 class="wp-block-heading">Configure the Virtual Host</h4>



<p>Inside the directory «/etc/apache2/sites-available» the configurations of each virtual host are stored, we will create a new configuration called «pixelfed.conf», for example.<br>Considering that in this example we will use the domain «pixelfed.int» and the working directory «/www/pixelfed/public», they are all loaded in this example.<br>We create the file «/etc/apache2/sites-available/pixelfed.conf» and add the following:</p>



<pre class="wp-block-code has-tertiary-background-color has-background" style="font-size:0.9rem"><code>&lt;VirtualHost *:80&gt;
    ServerName <mark>pixelfed.int</mark>
    ServerAdmin goxonline@arguos.com

    DocumentRoot <mark>/www/pixelfed/pixelfed/public</mark>
    LogLevel debug
    &lt;Directory <mark>/www/pixelfed/pixelfed/public</mark>&gt;
        Options Indexes FollowSymLinks
        AllowOverride All
        Require all granted
    &lt;/Directory&gt;

    ErrorLog ${APACHE_LOG_DIR}/<mark>pidexfed.error.log</mark>
    CustomLog ${APACHE_LOG_DIR}/<mark>pixelfed.access.log</mark> combined
    &lt;FilesMatch \.php$&gt;
        SetHandler "proxy:unix:/var/run/php.pixelfed.sock|fcgi://localhost"
    &lt;/FilesMatch&gt;
&lt;/VirtualHost&gt;</code></pre>



<p>We activate the site by executing:</p>



<pre class="wp-block-code has-base-color has-contrast-background-color has-text-color has-background" style="font-size:0.9rem"><code>a2ensite pixelfed.conf </code></pre>



<p>And we restart the Apache service:</p>



<pre class="wp-block-code has-base-color has-contrast-background-color has-text-color has-background" style="font-size:0.9rem"><code>service apache2 restart</code></pre>



<h4 class="wp-block-heading">SSL support</h4>



<p>This configuration example is for the service without SSL. If we need SSL, we will also create the following configuration file «/etc/apache2/sites-available/ssl.pixelfed.conf» and add the following to the file:</p>



<pre class="wp-block-code has-contrast-color has-tertiary-background-color has-text-color has-background" style="font-size:0.9rem"><code>&lt;VirtualHost *:443&gt;
    ServerName<mark style="background-color:rgba(0, 0, 0, 0);color:#ff0000" class="has-inline-color"> <mark>pixelfed.int</mark></mark>
    ServerAdmin <mark>goxonline@arguos.com</mark>

    DocumentRoot <mark>/www/pixelfed/pixelfed/public</mark>

    &lt;Directory <mark>/www/pixelfed/pixelfed/public</mark>&gt;
        Options Indexes FollowSymLinks
        AllowOverride All
        Require all granted
    &lt;/Directory&gt;

    &lt;FilesMatch \.php$&gt;
        SetHandler "proxy:unix:/var/run/php.pixelfed.sock|fcgi://localhost"
    &lt;/FilesMatch&gt;

    SSLCertificateFile /www/pixelfed/ssl/fullchain.cer
    SSLCertificateKeyFile /www/pixelfed/ssl/pixelfed.key
    Include <mark>/etc/apache2/conf-available/letsencrypt.conf</mark>

    ErrorLog ${APACHE_LOG_DIR}/<mark>ssl.pixelfed.error.log</mark>
    CustomLog ${APACHE_LOG_DIR}/<mark>ssl.pixelfed.access.log</mark> combined
&lt;/VirtualHost&gt;</code></pre>



<p>We also create the file «/etc/apache2/conf-available/letsencrypt.conf» and add to it:</p>



<pre class="wp-block-code has-tertiary-background-color has-background" style="font-size:0.9rem"><code>SSLEngine on

# Intermediate configuration, tweak to your needs
SSLProtocol             all -SSLv2 -SSLv3 -TLSv1 -TLSv1.1
#SSLCipherSuite         HIGH:MEDIUM:!MD5!EXP:!NULL:!LOW:!ADH
#SSLCipherSuite         ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:DHE-RSA-AES128-GCM-SHA256:DHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-AES128-SHA256:ECDHE-RSA-AES128-SHA256:ECDHE-ECDSA-AES128-SHA:ECDHE-RSA-AES256-SHA384:ECDHE-RSA-AES128-SHA:ECDHE-ECDSA-AES256-SHA384:ECDHE-ECDSA-AES256-SHA:ECDHE-RSA-AES256-SHA:DHE-RSA-AES128-SHA256:DHE-RSA-AES128-SHA:DHE-RSA-AES256-SHA256:DHE-RSA-AES256-SHA:ECDHE-ECDSA-DES-CBC3-SHA:ECDHE-RSA-DES-CBC3-SHA:EDH-RSA-DES-CBC3-SHA:AES128-GCM-SHA256:AES256-GCM-SHA384:AES128-SHA256:AES256-SHA256:AES128-SHA:AES256-SHA:DES-CBC3-SHA:!DSS
SSLHonorCipherOrder     on
SSLCompression          off

SSLOptions +StrictRequire</code></pre>



<p>Before activating this configuration, we will request the signature of the certificate. The steps to do this are at the end of the document.</p>



<hr class="wp-block-separator has-alpha-channel-opacity"/>



<h4 class="wp-block-heading">Sign a certificate for our domain with ACME.SH</h4>



<p>We will download the client «acme.sh», but you can use any client, I am used to this one.<br>You can download it from here:</p>



<p><a rel="noreferrer noopener" href="https://github.com/acmesh-official/acme.sh/releases/tag/v3.0.5" target="_blank">Release Normal release · acmesh-official/acme.sh · GitHub</a></p>



<p>Unzip the «acme.sh» in the directory of your choice, inside you will find the script «acme.sh». Psociblemente we will have to register, for this we execute:</p>



<pre class="wp-block-code has-base-color has-contrast-background-color has-text-color has-background" style="font-size:0.9rem"><code>./acme.sh --register-account --insecure --force --email test@test.com</code></pre>



<p>And then we sign the certificate for our domain:</p>



<pre class="wp-block-code has-base-color has-contrast-background-color has-text-color has-background" style="font-size:0.9rem"><code>./acme.sh --issue -d pixelfed.int -w /www/pixelfed/pixelfed/public --cert-file /www/pixelfed/ssl/pixelfed.int.cer \
--key-file /www/pixelfed/ssl/pixelfed.int.key --ca-file /www/pixelfed/ssl/ca.cer \
--fullchain-file /www/pixelfed/ssl/fullchain.cer --force</code></pre>



<p class="has-small-font-size">(where pixelfed.int should be replaced by your domain)</p>



<hr class="wp-block-separator has-alpha-channel-opacity"/>



<p>We will activate the Virtual Hosts in apache with the following command:</p>



<pre class="wp-block-code has-base-color has-contrast-background-color has-text-color has-background" style="font-size:0.9rem"><code>a2ensite ssl.pixelfed.conf</code></pre>



<p>We will also activate the Apache «proxy» modules, which we will use to pass the PHP files from Apache and process them. We will also activate the «Rewrite» module, which is required by Pixelfed. We execute the following command to activate the modules:</p>



<pre class="wp-block-code has-base-color has-contrast-background-color has-text-color has-background" style="font-size:0.9rem"><code>a2enmod proxy* rewrite ssl </code></pre>



<p>And we restart the Apache service with the following command:</p>



<pre class="wp-block-code has-base-color has-contrast-background-color has-text-color has-background" style="font-size:0.9rem"><code>systemctl restart apache2</code></pre>



<h3 class="wp-block-heading">PHP 8.1</h3>



<h4 class="wp-block-heading">We add the alternative PHP repository</h4>



<p>Repository: In order to install PHP 8.1 we will use the packages from https://deb.sury.org. To do this we will execute the following steps:</p>



<pre class="wp-block-code has-base-color has-contrast-background-color has-text-color has-background" style="font-size:0.9rem"><code>apt install apt-transport-https lsb-release ca-certificates

wget -O /etc/apt/trusted.gpg.d/php.gpg https://packages.sury.org/php/apt.gpg

sh -c 'echo "deb https://packages.sury.org/php/ $(lsb_release -sc) main" &gt; /etc/apt/sources.list.d/php.list'

apt update </code></pre>



<p>Install PHP 8.1 with the following command (The repository has several versions of PHP, so we specify the version we need):</p>



<pre class="wp-block-code has-base-color has-contrast-background-color has-text-color has-background" style="font-size:0.9rem"><code>apt-get install php8.1-fpm php8.1 php8.1-common php8.1-cli php8.1-gd php8.1-mbstring php8.1-xml php8.1-bcmath php8.1-pgsql php8.1-curl php8.1-xml php8.1-xmlrpc php8.1-imagick php8.1-gd php8.1-mysql php8.1-cli php8.1-intl php8.1-zip php8.1-redis </code></pre>



<h4 class="wp-block-heading">Configure PHP FPM</h4>



<p>We will create a new PHP pool for our WEB site. For this we will create the file «/etc/php/8.1/fpm/pool.d/pixelfed.conf» and add the following content:</p>



<pre class="wp-block-code has-contrast-color has-tertiary-background-color has-text-color has-background" style="font-size:0.9rem"><code>&#91;pixelfed]
user = pixelfed
group = pixelfed
listen.owner = www-data
listen.group = www-data
listen.mode = 0660
listen = /var/run/php.pixelfed.sock
pm = dynamic
pm.max_children = 20
pm.start_servers = 4
pm.min_spare_servers = 4
pm.max_spare_servers = 20

chdir = /www/pixelfed

php_flag&#91;display_errors] = on
php_admin_value&#91;error_log] = /www/pixelfed/php.error.log

php_admin_flag&#91;log_errors] = on

php_admin_value&#91;open_basedir] = /www/pixelfed:/usr/share/:/tmp:/var/lib/php
</code></pre>



<h3 class="wp-block-heading">Modify the php.ini</h3>



<p>Edit the file «/etc/php/8.1/fpm/php.ini», find the entry «upload_max_filesize = 2M» and modify it to:</p>



<pre class="wp-block-code has-contrast-color has-tertiary-background-color has-text-color has-background" style="font-size:0.9rem"><code>upload_max_filesize = 20M</code></pre>



<p class="has-small-font-size">(20 Megas is enough, this is the parameter that indicates the maximum size that a file can have. If you want to upload videos to your instance, this number should be higher).</p>



<p>We look for the entry «post_max_size = 8M» and modify it:</p>



<pre class="wp-block-code has-contrast-color has-tertiary-background-color has-text-color has-background" style="font-size:0.9rem"><code>post_max_size = 20M</code></pre>



<p class="has-small-font-size">(It must have the same value as «upload_max_filesize»).</p>



<p>Save the file and continue restarting PHP-FPM service with the following command:</p>



<pre class="wp-block-code has-base-color has-contrast-background-color has-text-color has-background" style="font-size:0.9rem"><code>service php8.1-fpm restart</code></pre>



<p>If there are no errors, we verify with the following command that the php is running:</p>



<pre class="wp-block-code has-base-color has-contrast-background-color has-text-color has-background" style="font-size:0.9rem"><code>pstree -cupa | grep php</code></pre>



<p>We should see something like this:</p>



<pre class="wp-block-code has-base-color has-contrast-background-color has-text-color has-background" style="font-size:0.9rem"><code>  |-php-fpm8.1,1392
  |   |-php-fpm8.1,1397,www-data
  |   |-php-fpm8.1,1398,www-data
  |   |-php-fpm8.1,1393,pixelfed
  |   |-php-fpm8.1,1394,pixelfed
  |   |-php-fpm8.1,1395,pixelfed
  |   `-php-fpm8.1,1396,pixelfed
  |           |-grep,1405 php</code></pre>



<h3 class="wp-block-heading">Create a MySQL database</h3>



<p>We will create a database for Pixelfed called «pixelfed» (but you can create the one you want). For this as the user «root» we enter to mysql, it should not request password, since MariaDB, does not request it for the system user «root»:</p>



<pre class="wp-block-code has-base-color has-contrast-background-color has-text-color has-background" style="font-size:0.9rem"><code>:~# mysql
Welcome to the MariaDB monitor.  Commands end with ; or \g.
Your MariaDB connection id is 30
Server version: 10.5.15-MariaDB-0+deb11u1 Debian 11

Copyright (c) 2000, 2018, Oracle, MariaDB Corporation Ab and others.

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

MariaDB &#91;(none)]&gt;</code></pre>



<p>Once inside the MySQL client, we execute the following statement to create the database:</p>



<pre class="wp-block-code has-base-color has-contrast-background-color has-text-color has-background" style="font-size:0.9rem"><code>CREATE DATABASE pixelfed ;</code></pre>



<p>Now we will create a user for the application that has permissions to work in this database.</p>



<pre class="wp-block-code has-base-color has-contrast-background-color has-text-color has-background" style="font-size:0.9rem"><code>GRANT ALL ON pixelfed.* TO pixelfed@localhost IDENTIFIED BY 'the_secure_password';</code></pre>



<p>Note that «the_secure_password» should be changed to a slightly more secure password.</p>



<p>To exit the MySQL client, you can type «exit;».</p>



<h3 class="wp-block-heading">Install PHP Composer</h3>



<p>Run the following to install the PHP composer package:</p>



<pre class="wp-block-code has-base-color has-contrast-background-color has-text-color has-background" style="font-size:0.9rem"><code>php -r "copy('https://getcomposer.org/installer', 'composer-setup.php');"

php -r "if (hash_file('sha384', 'composer-setup.php') === '55ce33d7678c5a611085589f1f3ddf8b3c52d662cd01d4ba75c0ee0459970c2200a51f492d557530c71c15d8dba01eae') { echo 'Installer verified'; } else { echo 'Installer corrupt'; unlink('composer-setup.php'); } echo PHP_EOL;"

php composer-setup.php

php -r "unlink('composer-setup.php');"</code></pre>



<p>We move the package to finish:</p>



<pre class="wp-block-code has-base-color has-contrast-background-color has-text-color has-background" style="font-size:0.9rem"><code>mv composer.phar /usr/local/bin/composer</code></pre>



<h3 class="wp-block-heading">We finish configuring Pixelfed</h3>



<p>We use the user «pixelfed» again, executing:</p>



<pre class="wp-block-code has-base-color has-contrast-background-color has-text-color has-background" style="font-size:0.9rem"><code>su -l pixelfed -s /bin/bash ; cd</code></pre>



<p>We verify the permissions of the directories and files, execute:</p>



<pre class="wp-block-code has-base-color has-contrast-background-color has-text-color has-background" style="font-size:0.9rem"><code>find . -type d -exec chmod 755 {} \;
find . -type f -exec chmod 644 {} \;</code></pre>



<p>This will correct any errors in file and directory permissions that are not covered by Github.</p>



<h4 class="wp-block-heading">Install the dependencies</h4>



<p class="has-small-font-size">(Even with the user pixelfed)</p>



<pre class="wp-block-code has-base-color has-contrast-background-color has-text-color has-background" style="font-size:0.9rem"><code>cd /www/pixelfed/pixelfed ; composer install --no-ansi --no-interaction --optimize-autoloader</code></pre>



<hr class="wp-block-separator has-alpha-channel-opacity"/>



<p>Note: We may also need to update some dependencies, this can be done by executing inside the «/www/pixelfed/pixelfed» directory the following command:</p>



<pre class="wp-block-code has-base-color has-contrast-background-color has-text-color has-background" style="font-size:0.9rem"><code>composer update</code></pre>



<hr class="wp-block-separator has-alpha-channel-opacity"/>



<p>We will see something like this:</p>



<pre class="wp-block-code has-base-color has-contrast-background-color has-text-color has-background" style="font-size:0.9rem"><code>Installing dependencies from lock file (including require-dev)
Verifying lock file contents can be installed on current platform.
Package operations: 181 installs, 0 updates, 0 removals
  - Downloading aws/aws-crt-php (v1.0.2)
  - Downloading dasprid/enum (1.0.3)
  - Downloading bacon/bacon-qr-code (2.0.7)
  - Downloading symfony/polyfill-mbstring (v1.26.0)
  - Downloading symfony/deprecation-contracts (v3.1.1)
  - Downloading symfony/http-foundation (v6.1.7)
  - Downloading psr/http-message (1.0.1)</code></pre>



<p>We copy the environment variables file:</p>



<pre class="wp-block-code has-base-color has-contrast-background-color has-text-color has-background" style="font-size:0.9rem"><code>cp .env.example .env</code></pre>



<p>In this file we can change the variables of the application configuration, for this example we are interested in the following lines:</p>



<pre class="wp-block-code has-contrast-color has-tertiary-background-color has-text-color has-background" style="font-size:0.9rem"><code>APP_NAME="Pixelfed"
APP_ENV="production"
APP_KEY=                                                                                                                                                                                                                                     APP_DEBUG="false"

# Instance Configuration
OPEN_REGISTRATION="false"
ENFORCE_EMAIL_VERIFICATION="false"
PF_MAX_USERS="1000"

# Instance URL Configuration
APP_URL="http://pixelfed.int"
APP_DOMAIN="pixelfed.int"
ADMIN_DOMAIN="pixelfed.int"
SESSION_DOMAIN="pixelfed"

# Database Configuration
DB_CONNECTION="mysql"
DB_HOST="127.0.0.1"
DB_PORT="3306"
DB_DATABASE="pixelfed"
DB_USERNAME="pixelfed"
DB_PASSWORD="the_secure_password"
                                                                                                                                                                                                                                                                                                                                                                                                                                                                # ActivityPub Configuration                                                                                                                                                                                                                  ACTIVITY_PUB="true"                                                                                                                                                                                                                         AP_REMOTE_FOLLOW="true"                                                                                                                                                                                                                     AP_INBOX="true"                                                                                                                                                                                                                             AP_OUTBOX="true"                                                                                                                                                                                                                            AP_SHAREDINBOX="true"</code></pre>



<p>We save and follow up.</p>



<h4 class="wp-block-heading">Single-step execution</h4>



<p>These commands must be executed with the user «pixelfed», inside the «pixelfed» folder:</p>



<pre class="wp-block-code has-base-color has-contrast-background-color has-text-color has-background" style="font-size:0.9rem"><code>su -l pixelfed -s /bin/bash; cd ; cd pixelfed</code></pre>



<p>Execute these commands one by one, in case of error it will have to be investigated.</p>



<pre class="wp-block-code has-base-color has-contrast-background-color has-text-color has-background" style="font-size:0.9rem"><code>php artisan key:generate
php artisan storage:link
php artisan migrate --force
php artisan import:cities
php artisan instance:actor
php artisan passport:keys
php artisan route:cache
php artisan view:cache
php artisan config:cache</code></pre>



<p>If everything went well and you have no errors, then you can create the service, this should be done as the «root» user.</p>



<p>We will create the file «/etc/systemd/system/pixelfed.service» with the following content:</p>



<pre class="wp-block-code has-contrast-color has-tertiary-background-color has-text-color has-background" style="font-size:0.9rem"><code>&#91;Unit]
Description=Pixelfed task queueing via Laravel Horizon
After=network.target
Requires=mariadb
Requires=php-fpm
Requires=redis
Requires=apache

&#91;Service]
Type=simple
ExecStart=/usr/bin/php /www/pixelfed/pixelfed/artisan horizon
User=pixelfed
Restart=on-failure

&#91;Install]
WantedBy=multi-user.target</code></pre>



<p>We enable the service with in the systemd with the following command:</p>



<pre class="wp-block-code has-base-color has-contrast-background-color has-text-color has-background" style="font-size:0.9rem"><code>systemctl enable --now pixelfed</code></pre>



<p>Finally as the user «pixelfed», we will create a user and add one in the crontab.</p>



<p>First we add the user by executing the following:</p>



<pre class="wp-block-code has-base-color has-contrast-background-color has-text-color has-background" style="font-size:0.9rem"><code>php artisan user:create</code></pre>



<p>We will be asked for some information, such as if we want to make you an administrator and if we want to verify your email manually, we will answer yes to everything:</p>



<pre class="wp-block-code has-base-color has-contrast-background-color has-text-color has-background" style="font-size:0.9rem"><code>Creating a new user...

 Name:
 &gt; Gonzalo

 Username:
 &gt; goxonline

 Email:
 &gt; goxonline@somedomain.com

 Password:
 &gt;*******

 Confirm Password:
 &gt;*******

 Make this user an admin? (yes/no) &#91;no]:
 &gt; yes

 Manually verify email address? (yes/no) &#91;no]:
 &gt; yes

 Are you sure you want to create this user? (yes/no) &#91;no]:
 &gt; yes

Created new user!</code></pre>



<p>Add the following entry to the crontab by executing «crontab -e»:</p>



<pre class="wp-block-code has-base-color has-contrast-background-color has-text-color has-background" style="font-size:0.9rem"><code>* * * * * /usr/bin/php /www/pixelfed/pixelfed/artisan schedule:run &gt;&gt; /dev/null 2&gt;&amp;1</code></pre>



<p>If all goes well, enter your domain in a browser, and you should see this:</p>



<figure class="wp-block-image"><img decoding="async" src="https://i0.wp.com/matablogs.com/wp-content/uploads/2022/11/image.png?resize=650%2C431&amp;ssl=1" alt="Pixelfed fresh install home page." class="wp-image-256"/><figcaption class="wp-element-caption">Pagina de inicio de Pixelfed</figcaption></figure>



<p>And that&#8217;s it!<br>Any problems you encounter, leave me a comment!</p>
]]></content:encoded>
					
					<wfw:commentRss>https://matablogs.com/2022/11/25/installing-pixelfed-on-debian-11-without-dying-in-the-attempt/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
		<post-id xmlns="com-wordpress:feed-additions:1">263</post-id>	</item>
		<item>
		<title>Instalar Pixelfed en Debian 11, sin morir en el intento</title>
		<link>https://matablogs.com/2022/11/25/instalar-pixelfed-en-debian-11-sin-morir-en-el-intento/</link>
					<comments>https://matablogs.com/2022/11/25/instalar-pixelfed-en-debian-11-sin-morir-en-el-intento/#respond</comments>
		
		<dc:creator><![CDATA[goxonline]]></dc:creator>
		<pubDate>Fri, 25 Nov 2022 15:13:13 +0000</pubDate>
				<category><![CDATA[GNU/Linux]]></category>
		<category><![CDATA[Self Hosting]]></category>
		<category><![CDATA[activitypub]]></category>
		<category><![CDATA[gnu/linux]]></category>
		<category><![CDATA[php]]></category>
		<category><![CDATA[pixelfed]]></category>
		<guid isPermaLink="false">https://matablogs.com/?p=239</guid>

					<description><![CDATA[Entendiendo esta guia: Estos son comandos: ls -all Esto es el contenido de un archivo: &#60;?php echo «hello world!» ?&#62; Estos son notas que deberás leer. ¿Qué es Pixelfed? Pues Pixelfed es una aplicación/servicio similar a Instagram, pero a diferencia de Instagram, Pixelfed no esta centralizado, es libre y de código abierto ¿Qué significa que [&#8230;]]]></description>
										<content:encoded><![CDATA[
<hr class="wp-block-separator has-alpha-channel-opacity"/>



<h5 class="wp-block-heading">Entendiendo esta guia:</h5>



<meta name="fediverse:creator" content="@goxonline@arguos.com">




<p>Estos son comandos:</p>



<p class="has-base-color has-contrast-background-color has-text-color has-background" style="font-size:0.9rem">ls -all</p>



<p>Esto es el contenido de un archivo:</p>



<p class="has-contrast-color has-tertiary-background-color has-text-color has-background" style="font-size:0.9rem">&lt;?php echo «hello world!» ?&gt;</p>



<p class="has-luminous-vivid-amber-background-color has-background has-small-font-size">Estos son notas que deberás leer.</p>



<hr class="wp-block-separator has-alpha-channel-opacity"/>



<h4 class="wp-block-heading has-text-align-left">¿Qué es Pixelfed?</h4>



<p>Pues Pixelfed es una aplicación/servicio similar a Instagram, pero a diferencia de Instagram, Pixelfed no esta centralizado, es libre y de código abierto</p>



<h4 class="wp-block-heading has-text-align-left">¿Qué significa que no esta centralizado?</h4>



<p>Pues a diferencia de otros servicios y aplicaciones, Pixelfed esta descentralizado, no depende de una única entidad y cada instancia es única he independiente.<br>También cada instancia de Pixelfed puede interactuar con otras instancias, ya que utiliza protocolos abiertos.</p>



<p>Manos a la obra!</p>



<h3 class="wp-block-heading">Paquetes necesarios</h3>



<p>Antes de configurar todo instaláremos algunos paquetes necesarios para hacer funcionar todo, en lugar de instalarlos todos juntos, lo haremos de forma independiente para evitar cualquier problema.</p>



<p>Ejecutamos:</p>



<pre class="wp-block-code has-base-color has-contrast-background-color has-text-color has-background" style="font-size:0.8rem"><code>apt install git zip psmisc build-essential apache2 mariadb-server curl htop bmon mc pngquant optipng jpegoptim gifsicle ffmpeg redis </code></pre>



<h4 class="wp-block-heading">Usuario de sistemas para Pixelfed</h4>



<p>Crearemos un usuario para la aplicación, ejecutamos lo siguiente:</p>



<pre class="wp-block-code has-base-color has-contrast-background-color has-text-color has-background" style="font-size:0.8rem"><code>useradd pixelfed -m -d /www/pixelfed -s /bin/false -r -c "Pixelfed User"</code></pre>



<p>Obtenemos una copia de Github</p>



<p>Para esto utilizaremos el usuario que ya creamos, ejecutamos:</p>



<pre class="wp-block-code has-base-color has-contrast-background-color has-text-color has-background" style="font-size:0.8rem"><code>su -l pixelfed -s /bin/bash ; cd</code></pre>



<p>Y ejecutamos:</p>



<pre class="wp-block-code has-base-color has-contrast-background-color has-text-color has-background" style="font-size:0.8rem"><code>git clone -b dev https://github.com/pixelfed/pixelfed.git pixelfed</code></pre>



<p>Deberemos ver algo asi:</p>



<pre class="wp-block-code has-base-color has-contrast-background-color has-text-color has-background" style="font-size:0.8rem"><code>Clonando en 'pixelfed'...
remote: Enumerating objects: 47808, done.
remote: Total 47808 (delta 0), reused 0 (delta 0), pack-reused 47808
Recibiendo objetos: 100% (47808/47808), 44.17 MiB | 13.14 MiB/s, listo.
Resolviendo deltas: 100% (30423/30423), listo.</code></pre>



<p class="has-small-font-size">(Mi sistema esta en español)</p>



<hr class="wp-block-separator has-alpha-channel-opacity"/>



<h5 class="wp-block-heading has-text-align-center has-background" style="background-color:#fc0000">*Encontre un BUG!</h5>



<p>Existe un bug en el codigo de la version » dev 0.11.4&#8243;, este se debe al cambio de version de Laravel de 8 a 9. Lo que ocasiona el BUG es que cuando se sube un archivo y se crean los directorios dentro de «storage», estos se creen con los permisos «0700», lo que evita que cualquier otro usuario que no sea el propietario del directorio, no pueda acceder al mismo. Para solventarlo he solicitado un PULL, en el repositorio de <a rel="noreferrer noopener" href="https://github.com/pixelfed/pixelfed/pull/3825" target="_blank">GitHUB #3825</a>, lo que hace que el usuario con el que se ejecuta PHP al momento cree los directorios con los permisos correctos. </p>



<p>Para verificar si esto se ha corregido, editamos el archivo «pixelfed/config/filesystems.php».</p>



<p>Buscamos las lineas: </p>



<pre class="wp-block-code has-tertiary-background-color has-background" style="font-size:0.9rem"><code>    'disks' =&gt; &#91;

        'local' =&gt; &#91;
            'driver' =&gt; 'local',
            'root'   =&gt; storage_path('app'),
        ],</code></pre>



<p>Agregamos la siguientes líneas (En rojo, si no están hay que agregarlas):</p>



<pre class="wp-block-code has-tertiary-background-color has-background" style="font-size:0.9rem"><code>    'disks' =&gt; &#91;

        'local' =&gt; &#91;
            'driver' =&gt; 'local',
            'root'   =&gt; storage_path('app'),
<mark style="background-color:rgba(0, 0, 0, 0);color:#ff0000" class="has-inline-color">            'permissions' =&gt; &#91;
                'file' =&gt; &#91;</mark>
<mark style="background-color:rgba(0, 0, 0, 0);color:#ff0000" class="has-inline-color">                    'public' =&gt; 0644,</mark>
<mark style="background-color:rgba(0, 0, 0, 0);color:#ff0000" class="has-inline-color">                    'private' =&gt; 0644,
                ],
                'dir' =&gt; &#91;</mark>
<mark style="background-color:rgba(0, 0, 0, 0);color:#ff0000" class="has-inline-color">                    'public' =&gt; 0755,
                    'private' =&gt; 0755,
                ],
            ],</mark>

        'public' =&gt; &#91;</code></pre>



<p>Guardamos el archivo y continuamos.</p>



<hr class="wp-block-separator has-alpha-channel-opacity"/>



<p>Dejamos de utilizar el usuario «pixelfed» ejecutando:</p>



<pre class="wp-block-code has-base-color has-contrast-background-color has-text-color has-background" style="font-size:0.9rem"><code>exit</code></pre>



<hr class="wp-block-separator has-alpha-channel-opacity"/>



<h5 class="wp-block-heading has-text-align-center has-luminous-vivid-amber-background-color has-background">NOTA: <span style="text-decoration: underline;">Directorio de trabajo</span></h5>



<p>El directorio de trabajo puede cambiar de acuerdo a cada uno y sus preferencias, en mi caso para las aplicaciones WEB y sitios WEB, prefiero instalar todo en un único directorio dentro del RAIZ del disco, en mi caso es el «/www» y las aplicaciones en un directorio con su respectivo nombre, en este caso «pixelfed».<br>Para ello ejecutamos este comando:</p>



<pre class="wp-block-code has-base-color has-contrast-background-color has-text-color has-background" style="font-size:0.8rem"><code>mkdir /www/pixelfed/ssl -p</code></pre>



<p class="has-small-font-size">«-p» esta opción creara los directorios padres si no existen.<br>«ssl» utilizaremos este directorio para guardar los certificados firmados por Let&#8217;s Encrypt. </p>



<hr class="wp-block-separator has-alpha-channel-opacity"/>



<h3 class="wp-block-heading">Configurando Apache2</h3>



<p>Configuraremos el apache web server, para que pueda acceder a «/www/pixelfed», por defecto el servicio de apache tiene permisos para trabajar en el directorio «/var/www/», cambiaremos esto para que el servicio pueda acceder a «www» (este es mi ejemplo, en tu caso puede ser el directorio que ). </p>



<p>Editamos el archivo «<strong>/etc/apache2/apache2.conf</strong>«. Buscamos las líneas:</p>



<pre class="wp-block-code has-tertiary-background-color has-background" style="font-size:0.8rem"><code>&lt;Directory /var/www/&gt;
    Options Indexes FollowSymLinks
    AllowOverride None
    Require all granted
&lt;/Directory&gt;</code></pre>



<p>Podemos cambiarlas o agregar de bajo:</p>



<pre class="wp-block-code has-tertiary-background-color has-background" style="font-size:0.8rem"><code>&lt;Directory /www/&gt;
    Options Indexes FollowSymLinks
    AllowOverride None
    Require all granted
&lt;/Directory&gt;</code></pre>



<h3 class="wp-block-heading">Configuramos el Virtual Host</h3>



<p>Dentro del directorio «/etc/apache2/sites-available» se almacenas las configuraciones de cada virtual host, crearemos una nueva configuración llamada «pixelfed.conf», por ejemplo.<br>Teniendo en cuenta que en este ejemplo utilizaremos el dominio «pixelfed.example.int» y el directorio de trabajo «/www/pixelfed/public», están cargados en todo en este ejemplo.<br>Creamos el archivo «<strong>/etc/apache2/sites-available/pixelfed.conf</strong>» Y agregamos lo siguiente:</p>



<pre class="wp-block-code has-border-color has-cyan-bluish-gray-border-color has-tertiary-background-color has-background" style="border-width:1px;font-size:0.7rem"><code>&lt;VirtualHost *:80&gt;
    ServerName <mark style="background-color:rgba(0, 0, 0, 0);color:#ff0000" class="has-inline-color">pixel.example.int</mark>
    ServerAdmin goxonline@arguos.com

    DocumentRoot <mark style="background-color:rgba(0, 0, 0, 0);color:#ff0000" class="has-inline-color">/www/pixelfed/pixelfed/public</mark>
    LogLevel debug
    &lt;Directory <mark style="background-color:rgba(0, 0, 0, 0);color:#ff0000" class="has-inline-color">/www/pixelfed/pixelfed/public</mark>&gt;
        Options Indexes FollowSymLinks
        AllowOverride All
        Require all granted
    &lt;/Directory&gt;

    ErrorLog ${APACHE_LOG_DIR}/<mark style="background-color:rgba(0, 0, 0, 0);color:#ff0000" class="has-inline-color">pidexfed.error.log</mark>
    CustomLog ${APACHE_LOG_DIR}/<mark style="background-color:rgba(0, 0, 0, 0);color:#ff0000" class="has-inline-color">pixelfed.access.log</mark> combined
    &lt;FilesMatch \.php$&gt;
        SetHandler "proxy:unix:/var/run/php.pixelfed.sock|fcgi://localhost"
    &lt;/FilesMatch&gt;
&lt;/VirtualHost&gt;</code></pre>



<p>Activamos el sitio ejecutando:</p>



<pre class="wp-block-code has-base-color has-contrast-background-color has-text-color has-background has-small-font-size"><code>a2ensite pixelfed.conf </code></pre>



<p>Y reiniciamos el servicio de Apache:</p>



<pre class="wp-block-code has-base-color has-contrast-background-color has-text-color has-background" style="font-size:0.9rem"><code>service apache2 restart</code></pre>



<hr class="wp-block-separator has-alpha-channel-opacity"/>



<h4 class="wp-block-heading has-text-align-center has-luminous-vivid-amber-background-color has-background">Soporte para SSL</h4>



<p>Este ejemplo de configuración es para el servicio sin SSL. Si necesitamos SSL, crearemos también el siguiente archivo de configuración «<strong>/etc/apache2/sites-available/ssl.pixelfed.conf</strong>» y agregaremos lo siguiente al archivo:</p>



<pre class="wp-block-code has-tertiary-background-color has-background" style="font-size:0.7em"><code>&lt;VirtualHost *:443&gt;
    ServerName <mark style="background-color:#ffffff;color:#ff0000" class="has-inline-color">pixelfed.example.int</mark>
    ServerAdmin <mark style="background-color:rgba(0, 0, 0, 0);color:#ff0000" class="has-inline-color">goxonline@arguos.com</mark>

    DocumentRoot <mark style="background-color:rgba(0, 0, 0, 0);color:#ff0000" class="has-inline-color">/www/pixelfed/pixelfed/public</mark>

    &lt;Directory <mark style="background-color:rgba(0, 0, 0, 0);color:#ff0000" class="has-inline-color">/www/pixelfed/pixelfed/public</mark>&gt;
        Options Indexes FollowSymLinks
        AllowOverride All
        Require all granted
    &lt;/Directory&gt;

    &lt;FilesMatch \.php$&gt;
        SetHandler "proxy:unix:/var/run/php.pixelfed.sock|fcgi://localhost"
    &lt;/FilesMatch&gt;

    SSLCertificateFile /www/pixelfed/ssl/fullchain.cer
    SSLCertificateKeyFile /www/pixelfed/ssl/pixelfed.key
    Include <mark style="background-color:#bebebe" class="has-inline-color has-primary-color">/etc/apache2/conf-available/letsencrypt.conf</mark>

    ErrorLog ${APACHE_LOG_DIR}/<mark style="background-color:rgba(0, 0, 0, 0);color:#ea0000" class="has-inline-color">ssl.pixelfed.error.log</mark>
    CustomLog ${APACHE_LOG_DIR}/<mark style="background-color:rgba(0, 0, 0, 0);color:#f80000" class="has-inline-color">ssl.pixelfed.access.log</mark> combined
&lt;/VirtualHost&gt;</code></pre>



<p>También creamos el archivo «/etc/apache2/conf-available/letsencrypt.conf» y agregamos al mismo:</p>



<pre class="wp-block-code has-tertiary-background-color has-background" style="font-size:0.7rem"><code>SSLEngine on

# Intermediate configuration, tweak to your needs
SSLProtocol             all -SSLv2 -SSLv3 -TLSv1 -TLSv1.1
#SSLCipherSuite         HIGH:MEDIUM:!MD5!EXP:!NULL:!LOW:!ADH
#SSLCipherSuite         ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:DHE-RSA-AES128-GCM-SHA256:DHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-AES128-SHA256:ECDHE-RSA-AES128-SHA256:ECDHE-ECDSA-AES128-SHA:ECDHE-RSA-AES256-SHA384:ECDHE-RSA-AES128-SHA:ECDHE-ECDSA-AES256-SHA384:ECDHE-ECDSA-AES256-SHA:ECDHE-RSA-AES256-SHA:DHE-RSA-AES128-SHA256:DHE-RSA-AES128-SHA:DHE-RSA-AES256-SHA256:DHE-RSA-AES256-SHA:ECDHE-ECDSA-DES-CBC3-SHA:ECDHE-RSA-DES-CBC3-SHA:EDH-RSA-DES-CBC3-SHA:AES128-GCM-SHA256:AES256-GCM-SHA384:AES128-SHA256:AES256-SHA256:AES128-SHA:AES256-SHA:DES-CBC3-SHA:!DSS
SSLHonorCipherOrder     on
SSLCompression          off

SSLOptions +StrictRequire</code></pre>



<p><strong>Antes de activar esta configuración, solicitaremos la firma del certificado. Los pasos para hacer esto, están al final del documento.</strong></p>



<hr class="wp-block-separator has-alpha-channel-opacity"/>



<h5 class="wp-block-heading has-luminous-vivid-amber-background-color has-background">Firmamos un certificado para nuestro dominio con ACME.SH</h5>



<p>Descargaremos el cliente «acme.sh», pero se puede utilizar cualquier, yo estoy acostumbrado a este.<br>Puedes descargar el mismo desde aquí:</p>



<p><a rel="noreferrer noopener" href="https://github.com/acmesh-official/acme.sh/releases/tag/v3.0.5" target="_blank">Release Normal release · acmesh-official/acme.sh · GitHub</a></p>



<p>Descomprimimos el «acme.sh» en el directorio que deseemos, dentro de este encontraremos el script «acme.sh». Psociblemente deberemos registrarnos, para esto ejecutamos: </p>



<pre class="wp-block-code has-base-color has-contrast-background-color has-text-color has-background" style="font-size:0.9rem"><code>./acme.sh --register-account --insecure --force --email test@test.com</code></pre>



<p>Y luego firmamos el certificado para nuestro dominio:</p>



<pre class="wp-block-code has-base-color has-contrast-background-color has-text-color has-background" style="font-size:0.9rem"><code>./acme.sh --issue -d pixelfed.int -w /www/pixelfed/pixelfed/public --cert-file /www/pixelfed/ssl/pixelfed.int.cer \
--key-file /www/pixelfed/ssl/pixelfed.int.key --ca-file /www/pixelfed/ssl/ca.cer \
--fullchain-file /www/pixelfed/ssl/fullchain.cer --force</code></pre>



<p>(Donde pixelfed.int deberá ser reemplazado por tu dominio)</p>



<hr class="wp-block-separator has-alpha-channel-opacity"/>



<p>Activaremos el Virtual Hosts en apache con el siguiente comando:</p>



<pre class="wp-block-code has-base-color has-contrast-background-color has-text-color has-background" style="font-size:0.8rem"><code>a2ensite ssl.pixelfed.conf</code></pre>



<p>También activaremos los módulos «proxy» de Apache, estos los utilizaremos para pasar los archivos PHP desde el Apache y procesarlos. Tambien ectivaremos el modulo «Rewrite», el cual es necesario por Pixelfed. Ejecutamos el siguiente comando para activar los módulos:</p>



<pre class="wp-block-code has-base-color has-contrast-background-color has-text-color has-background has-small-font-size"><code>a2enmod proxy* rewrite ssl </code></pre>



<p>Y reiniciamos el servicio Apache con el siguiente comando:</p>



<pre class="wp-block-code has-base-color has-contrast-background-color has-text-color has-background" style="font-size:0.8rem"><code>systemctl restart apache2</code></pre>



<h3 class="wp-block-heading">PHP 8.1</h3>



<h4 class="wp-block-heading">Agregamos el repositorio PHP alternativo</h4>



<p>Repositorio: Para poder instalar PHP 8.1 utilizaremos los paquetes de https://deb.sury.org. Para ello ejecutaremos los siguientes pasos:</p>



<pre class="wp-block-code has-base-color has-contrast-background-color has-text-color has-background" style="font-size:0.8rem"><code>apt install apt-transport-https lsb-release ca-certificates

wget -O /etc/apt/trusted.gpg.d/php.gpg https://packages.sury.org/php/apt.gpg

sh -c 'echo "deb https://packages.sury.org/php/ $(lsb_release -sc) main" &gt; /etc/apt/sources.list.d/php.list'

apt update </code></pre>



<p>Instalamos PHP 8.1 con el siguiente comando (El repositorio tiene varias versiones de PHP, por lo que especificamos la versión que necesitamos ):</p>



<pre class="wp-block-code has-base-color has-contrast-background-color has-text-color has-background" style="font-size:0.8em"><code>apt-get install php8.1-fpm php8.1 php8.1-common php8.1-cli php8.1-gd php8.1-mbstring php8.1-xml php8.1-bcmath php8.1-pgsql php8.1-curl php8.1-xml php8.1-xmlrpc php8.1-imagick php8.1-gd php8.1-mysql php8.1-cli php8.1-intl php8.1-zip php8.1-redis </code></pre>



<h4 class="wp-block-heading">Configuramos el PHP FPM</h4>



<p>Crearemos un nuevo «pool» de PHP para nuestro sitio WEB. Para esto crearemos el archivo «/etc/php/8.1/fpm/pool.d/pixelfed.conf» y agregaremos el siguiente contenido:</p>



<pre class="wp-block-code has-tertiary-background-color has-background" style="font-size:0.8rem"><code>&#91;pixelfed]
user = pixelfed
group = pixelfed
listen.owner = www-data
listen.group = www-data
listen.mode = 0660
listen = /var/run/php.pixelfed.sock
pm = dynamic
pm.max_children = 20
pm.start_servers = 4
pm.min_spare_servers = 4
pm.max_spare_servers = 20

chdir = /www/pixelfed

php_flag&#91;display_errors] = on
php_admin_value&#91;error_log] = /www/pixelfed/php.error.log

php_admin_flag&#91;log_errors] = on

php_admin_value&#91;open_basedir] = /www/pixelfed:/usr/share/:/tmp:/var/lib/php
</code></pre>



<h3 class="wp-block-heading">Modificamos el php.ini</h3>



<p>Editamos el archivo «/etc/php/8.1/fpm/php.ini», buscamos la entrada «upload_max_filesize = 2M» y la modificamos por:</p>



<pre class="wp-block-code has-tertiary-background-color has-background"><code>upload_max_filesize = 20M</code></pre>



<p class="has-small-font-size">(20 Megas es suficiente, este es el parámetro que indica el tamaño máximo que puede tener un archivo. Si quieres subir videos a tu instancia, este numero deberá ser mayor)</p>



<p>Buscamos la entrada «post_max_size = 8M» y la modificamos:</p>



<pre class="wp-block-code has-tertiary-background-color has-background"><code>post_max_size = 20M</code></pre>



<p class="has-small-font-size">(Deberá tener el mismo valor que «upload_max_filesize»).</p>



<p>Salvamos el archivo y continuamos reiniciando servicio de PHP-FPM con el siguiente comando:</p>



<pre class="wp-block-code has-base-color has-contrast-background-color has-text-color has-background"><code>service php8.1-fpm restart</code></pre>



<p>Si no hay errores, verificamos con el siguiente comando que este en ejecucion el php:</p>



<pre class="wp-block-code has-base-color has-contrast-background-color has-text-color has-background"><code>pstree -cupa | grep php</code></pre>



<p>Deberemos ver algo asi:</p>



<pre class="wp-block-code has-base-color has-contrast-background-color has-text-color has-background" style="font-size:0.8rem"><code>  |-php-fpm8.1,1392
  |   |-php-fpm8.1,1397,www-data
  |   |-php-fpm8.1,1398,www-data
  |   |-php-fpm8.1,1393,pixelfed
  |   |-php-fpm8.1,1394,pixelfed
  |   |-php-fpm8.1,1395,pixelfed
  |   `-php-fpm8.1,1396,pixelfed
  |           |-grep,1405 php</code></pre>



<h3 class="wp-block-heading">Creamos una base de datos MySQL</h3>



<p>Crearemos una base de datos para Pixelfed llamada «pixelfed» (Pero puedes crear la que desees). Para esto como el usuario «root» ingresamos a mysql, no deberá solicitar clave, ya que MariaDB, no la solicita para el usuario de sistemas «root»:</p>



<pre class="wp-block-code has-base-color has-contrast-background-color has-text-color has-background" style="font-size:0.8rem"><code>:~# mysql
Welcome to the MariaDB monitor.  Commands end with ; or \g.
Your MariaDB connection id is 30
Server version: 10.5.15-MariaDB-0+deb11u1 Debian 11

Copyright (c) 2000, 2018, Oracle, MariaDB Corporation Ab and others.

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

MariaDB &#91;(none)]&gt;</code></pre>



<p>Una ves dentro del cliente MySQL, ejecutamos la siguiente sentencia para crear la base de datos:</p>



<pre class="wp-block-code has-base-color has-contrast-background-color has-text-color has-background" style="font-size:0.9rem"><code>CREATE DATABASE pixelfed ;</code></pre>



<p>Ahora crearemos un usuario para la aplicación que tenga permisos para trabajar en esta base de datos.</p>



<pre class="wp-block-code has-base-color has-contrast-background-color has-text-color has-background" style="font-size:0.9rem"><code>GRANT ALL ON pixelfed.* TO pixelfed@localhost IDENTIFIED BY 'the_secure_password';</code></pre>



<p>Tener en cuenta que «the_secure_password» debe ser cambiado por una contraseña un poco mas segura.</p>



<p>Para salir de cliente MySQL, pueden escribir «exit;».cd /</p>



<h3 class="wp-block-heading">Instalamor PHP Composer</h3>



<p>Ejecutamos lo siguiente para instalar el paquete PHP composer:</p>



<pre class="wp-block-code has-base-color has-contrast-background-color has-text-color has-background" style="font-size:0.9rem"><code>php -r "copy('https://getcomposer.org/installer', 'composer-setup.php');"

php -r "if (hash_file('sha384', 'composer-setup.php') === '55ce33d7678c5a611085589f1f3ddf8b3c52d662cd01d4ba75c0ee0459970c2200a51f492d557530c71c15d8dba01eae') { echo 'Installer verified'; } else { echo 'Installer corrupt'; unlink('composer-setup.php'); } echo PHP_EOL;"

php composer-setup.php

php -r "unlink('composer-setup.php');"</code></pre>



<p>Movemos el paquete para finalizar:</p>



<pre class="wp-block-code has-base-color has-contrast-background-color has-text-color has-background" style="font-size:0.9rem"><code>mv composer.phar /usr/local/bin/composer</code></pre>



<h3 class="wp-block-heading">Terminamos de configurar Pixelfed</h3>



<p>Utilizamos el usuario «pixelfed» nuevamente, ejecutando:</p>



<pre class="wp-block-code has-base-color has-contrast-background-color has-text-color has-background" style="font-size:0.8rem"><code>su -l pixelfed -s /bin/bash ; cd</code></pre>



<p>Verificamos los permisos de los directorios y los archivos, ejecutamos:</p>



<pre class="wp-block-code has-base-color has-contrast-background-color has-text-color has-background" style="font-size:0.9rem"><code>find . -type d -exec chmod 755 {} \;
find . -type f -exec chmod 644 {} \;</code></pre>



<p>Esto corregirá cualquier error en los permisos de los archivos y directorios que no esta contemplado el Github.</p>



<p>Instalamos las dependencias</p>



<p class="has-small-font-size">(Aun con el usuario pixelfed)</p>



<pre class="wp-block-code has-base-color has-contrast-background-color has-text-color has-background has-small-font-size"><code>cd /www/pixelfed/pixelfed ; composer install --no-ansi --no-interaction --optimize-autoloader</code></pre>



<p></p>



<hr class="wp-block-separator has-alpha-channel-opacity"/>



<p>Nota: Es posible que tambien necesitemos actualizar alguna dependencia, esto se puede hacer ejecutando dentro del directorio «/www/pixelfed/pixelfed» el siguiente comando:</p>



<pre class="wp-block-code has-base-color has-contrast-background-color has-text-color has-background" style="font-size:0.9rem"><code>composer update</code></pre>



<hr class="wp-block-separator has-alpha-channel-opacity"/>



<p>Veremos algo asi:</p>



<pre class="wp-block-code has-base-color has-contrast-background-color has-text-color has-background" style="font-size:0.8rem"><code>Installing dependencies from lock file (including require-dev)
Verifying lock file contents can be installed on current platform.
Package operations: 181 installs, 0 updates, 0 removals
  - Downloading aws/aws-crt-php (v1.0.2)
  - Downloading dasprid/enum (1.0.3)
  - Downloading bacon/bacon-qr-code (2.0.7)
  - Downloading symfony/polyfill-mbstring (v1.26.0)
  - Downloading symfony/deprecation-contracts (v3.1.1)
  - Downloading symfony/http-foundation (v6.1.7)
  - Downloading psr/http-message (1.0.1)</code></pre>



<p>Copiamos en archivo de variables de entorno:</p>



<pre class="wp-block-code has-base-color has-contrast-background-color has-text-color has-background has-small-font-size"><code>cp .env.example .env</code></pre>



<p>En este archivo podemos cambiar las variables de la configuración de la aplicación, para este ejemplo nos interesan las siguientes líneas:</p>



<pre class="wp-block-code has-base-color has-contrast-background-color has-text-color has-background" style="font-size:0.8rem"><code>APP_NAME="Pixelfed"
APP_ENV="production"
APP_KEY=                                                                                                                                                                                                                                     APP_DEBUG="false"

# Instance Configuration
OPEN_REGISTRATION="false"
ENFORCE_EMAIL_VERIFICATION="false"
PF_MAX_USERS="1000"

# Instance URL Configuration
APP_URL="http://pixelfed.int"
APP_DOMAIN="pixelfed.int"
ADMIN_DOMAIN="pixelfed.int"
SESSION_DOMAIN="pixelfed"

# Database Configuration
DB_CONNECTION="mysql"
DB_HOST="127.0.0.1"
DB_PORT="3306"
DB_DATABASE="pixelfed"
DB_USERNAME="pixelfed"
DB_PASSWORD="the_secure_password"
                                                                                                                                                                                                                                                                                                                                                                                                                                                                # ActivityPub Configuration                                                                                                                                                                                                                  ACTIVITY_PUB="true"                                                                                                                                                                                                                         AP_REMOTE_FOLLOW="true"                                                                                                                                                                                                                     AP_INBOX="true"                                                                                                                                                                                                                             AP_OUTBOX="true"                                                                                                                                                                                                                            AP_SHAREDINBOX="true"</code></pre>



<p>Guardamos y preseguimos.</p>



<h4 class="wp-block-heading">Ejecución de solo un paso</h4>



<p>Estos comandos lo debemos ejecutar con el usuario «pixelfed», dentro de la carpeta «pixelfed»:</p>



<pre class="wp-block-code has-base-color has-contrast-background-color has-text-color has-background" style="font-size:0.9rem"><code>su -l pixelfed -s /bin/bash; cd ; cd pixelfed</code></pre>



<p>Ejecuta estos comandos uno, por uno, en caso de error habrá que investigarlo.</p>



<pre class="wp-block-code has-base-color has-contrast-background-color has-text-color has-background" style="font-size:0.9rem"><code>php artisan key:generate
php artisan storage:link
php artisan migrate --force
php artisan import:cities
php artisan instance:actor
php artisan passport:keys
php artisan route:cache
php artisan view:cache
php artisan config:cache</code></pre>



<p>Si todo ha ido bien y no tienes errores, pues puedes crear el servicio, esto deberas hacerlo como el usuario «root».</p>



<p>Crearemos el archivo «<code>/etc/systemd/system/pixelfed.service</code>» con el siguiente contenido:</p>



<pre class="wp-block-code has-tertiary-background-color has-background" style="font-size:0.9rem"><code>&#91;Unit]
Description=Pixelfed task queueing via Laravel Horizon
After=network.target
Requires=mariadb
Requires=php-fpm
Requires=redis
Requires=apache

&#91;Service]
Type=simple
ExecStart=/usr/bin/php /www/pixelfed/pixelfed/artisan horizon
User=pixelfed
Restart=on-failure

&#91;Install]
WantedBy=multi-user.target</code></pre>



<p>Habilitamos el servicio con en el systemd con el siguiente comando:</p>



<pre class="wp-block-code has-base-color has-contrast-background-color has-text-color has-background" style="font-size:0.9rem"><code>systemctl enable --now pixelfed</code></pre>



<p>Por ultimo como el usuario «pixelfed», crearemos un usuario y agregaremos  una en el crontab.</p>



<p>Primero agregamos el usuario ejecutando lo siguiguiente:</p>



<pre class="wp-block-code has-base-color has-contrast-background-color has-text-color has-background" style="font-size:0.9rem"><code>php artisan user:create</code></pre>



<p>Nos solicitara algunos datos, como si lo queremos hacer administrador y si deseamos verificar su email manualmente, responderemos que si a todo:</p>



<pre class="wp-block-code has-base-color has-contrast-background-color has-text-color has-background" style="font-size:0.9rem"><code>Creating a new user...

 Name:
 &gt; Gonzalo

 Username:
 &gt; goxonline

 Email:
 &gt; goxonline@gmail.com

 Password:
 &gt;*******

 Confirm Password:
 &gt;*******

 Make this user an admin? (yes/no) &#91;no]:
 &gt; yes

 Manually verify email address? (yes/no) &#91;no]:
 &gt; yes

 Are you sure you want to create this user? (yes/no) &#91;no]:
 &gt; yes

Created new user!</code></pre>



<p>Agregamos al crontab ejecutando «crontab -e», la siguiente entrada:</p>



<pre class="wp-block-code has-base-color has-contrast-background-color has-text-color has-background" style="font-size:0.9rem"><code>* * * * * /usr/bin/php /www/pixelfed/pixelfed/artisan schedule:run &gt;&gt; /dev/null 2&gt;&amp;1</code></pre>



<p>Si todo va bien, ingresa en un navegador a tu dominio, y deberás ver esto:</p>



<figure class="wp-block-image size-full is-resized"><img decoding="async" src="https://matablogs.com/wp-content/uploads/2022/11/image.png" alt="Pixelfed fresh install home page." class="wp-image-256" style="width:650px;height:431px"/><figcaption class="wp-element-caption">Pagina de inicio de Pixelfed</figcaption></figure>



<p>Y listo! <br>Cualquier problemas que encuentres, pues déjame un comentario!</p>
]]></content:encoded>
					
					<wfw:commentRss>https://matablogs.com/2022/11/25/instalar-pixelfed-en-debian-11-sin-morir-en-el-intento/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
		<post-id xmlns="com-wordpress:feed-additions:1">239</post-id>	</item>
		<item>
		<title>Mi PTT+ for Xiaomi MiJia Walkie-Talkie radio</title>
		<link>https://matablogs.com/2022/06/21/mi-ptt-for-xiaomi-mijia-walkie-talkie-radio/</link>
					<comments>https://matablogs.com/2022/06/21/mi-ptt-for-xiaomi-mijia-walkie-talkie-radio/#respond</comments>
		
		<dc:creator><![CDATA[goxonline]]></dc:creator>
		<pubDate>Tue, 21 Jun 2022 10:35:40 +0000</pubDate>
				<category><![CDATA[General]]></category>
		<category><![CDATA[pmr]]></category>
		<category><![CDATA[radio]]></category>
		<category><![CDATA[xiaomi]]></category>
		<guid isPermaLink="false">https://matablogs.com/?p=218</guid>

					<description><![CDATA[I already told you in a previous post about how to easily set the radio in English, without breaking your head. Today I bring you the modified application «My PTT+». This application makes our life easier, by this I mean that not only allows us to put our radio in English without having to change [&#8230;]]]></description>
										<content:encoded><![CDATA[
<p>I already told you in a previous post about how to easily set the radio in English, without breaking your head.</p>



<figure class="wp-block-image size-full"><img decoding="async" src="https://matablogs.com/wp-content/uploads/2020/05/Screenshot_20200505-101022-e1588666825144.png" alt="Mi PTT+" class="wp-image-200"/><figcaption>Mi PTT+ Icon</figcaption></figure>



<p>Today I bring you the modified application «My PTT+». This application makes our life easier, by this I mean that not only allows us to put our radio in English without having to change the language of the phone, but also allows us to perform a «fine tune» or fine tuning. Install custom firmwares without problems.</p>



<p>The truth is that the application is «amazing».</p>



<p><a href="https://github.com/Mi-Walkie-Talkie-by-Darkhorse/Mi-Walkie-Talkie-Plus" target="_blank" rel="noreferrer noopener">You can visit the Github page here.</a></p>



<p><a href="https://github.com/Mi-Walkie-Talkie-by-Darkhorse/Mi-Walkie-Talkie-Plus/releases" target="_blank" rel="noreferrer noopener">Download the APP from GitHub.</a></p>



<p>Enjoy it!</p>
]]></content:encoded>
					
					<wfw:commentRss>https://matablogs.com/2022/06/21/mi-ptt-for-xiaomi-mijia-walkie-talkie-radio/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
		<post-id xmlns="com-wordpress:feed-additions:1">218</post-id>	</item>
		<item>
		<title>Mi PTT+ para Xiaomi MiJia radio Walkie-Talkie</title>
		<link>https://matablogs.com/2022/06/21/mi-ptt-para-xiaomi-mijia-radio-walkie-talkie/</link>
					<comments>https://matablogs.com/2022/06/21/mi-ptt-para-xiaomi-mijia-radio-walkie-talkie/#respond</comments>
		
		<dc:creator><![CDATA[goxonline]]></dc:creator>
		<pubDate>Tue, 21 Jun 2022 10:31:39 +0000</pubDate>
				<category><![CDATA[General]]></category>
		<category><![CDATA[pmr]]></category>
		<category><![CDATA[radio]]></category>
		<category><![CDATA[xiaomi]]></category>
		<guid isPermaLink="false">https://matablogs.com/?p=216</guid>

					<description><![CDATA[Ya les comentaba en un post anterior de como poner fácilmente la radio en ingles, si romperse la cabeza. Hoy les traigo la aplicación modificada «Mi PTT+». Esta aplicación nos facilita la vida, con esto me refiero que no solo permite poner nuestra radio en ingles sin tener que modificar el idioma del teléfono, si [&#8230;]]]></description>
										<content:encoded><![CDATA[
<p> Ya les comentaba en un post anterior de como poner fácilmente la radio en ingles, si romperse la cabeza. </p>



<figure class="wp-block-image size-full"><img decoding="async" src="https://matablogs.com/wp-content/uploads/2020/05/Screenshot_20200505-101022-e1588666825144.png" alt="Mi PTT+" class="wp-image-200"/><figcaption>Mi PTT+ Icon</figcaption></figure>



<p>Hoy les traigo la aplicación modificada «Mi PTT+». Esta aplicación nos facilita la vida, con esto me refiero que no solo permite poner nuestra radio en ingles sin tener que modificar el idioma del teléfono, si no también nos permite realizar un «fine tune» o ajuste fino de sintonía. Instalar firmwares personalizados sin problemas.</p>



<p>La verdad que la aplicación esta de «perlas».</p>



<p><a href="https://github.com/Mi-Walkie-Talkie-by-Darkhorse/Mi-Walkie-Talkie-Plus" target="_blank" rel="noreferrer noopener">Pueden visitar la pagina de Github de la misma aqui</a>.</p>



<p><a href="https://github.com/Mi-Walkie-Talkie-by-Darkhorse/Mi-Walkie-Talkie-Plus/releases" data-type="URL" data-id="https://github.com/Mi-Walkie-Talkie-by-Darkhorse/Mi-Walkie-Talkie-Plus/releases" target="_blank" rel="noreferrer noopener">Descargarse la APP desde GitHub.</a></p>



<p></p>
]]></content:encoded>
					
					<wfw:commentRss>https://matablogs.com/2022/06/21/mi-ptt-para-xiaomi-mijia-radio-walkie-talkie/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
		<post-id xmlns="com-wordpress:feed-additions:1">216</post-id>	</item>
		<item>
		<title>Review: Kit bateria iPhone6s de iFixit</title>
		<link>https://matablogs.com/2019/04/08/review-kit-bateria-iphone6s-de-ifixit/</link>
					<comments>https://matablogs.com/2019/04/08/review-kit-bateria-iphone6s-de-ifixit/#respond</comments>
		
		<dc:creator><![CDATA[goxonline]]></dc:creator>
		<pubDate>Mon, 08 Apr 2019 14:07:59 +0000</pubDate>
				<category><![CDATA[DYI]]></category>
		<category><![CDATA[General]]></category>
		<category><![CDATA[bateria]]></category>
		<category><![CDATA[bateriaa]]></category>
		<category><![CDATA[dyi]]></category>
		<category><![CDATA[ihpone]]></category>
		<category><![CDATA[iphone]]></category>
		<guid isPermaLink="false">https://matablogs.com/?p=162</guid>

					<description><![CDATA[Pues me a tocado reemplazar la batería de unos de mis iPhones, en este caso el 6s. He decidido por este kit de iFixit que estaba a buen precio. En total me ha costado 38,85€ y me ha tardado 5 días en llegar. Esto no es una guía, pueden consultar la misma en la pagina [&#8230;]]]></description>
										<content:encoded><![CDATA[
<p>Pues me a tocado reemplazar la batería de unos de mis iPhones, en este caso el 6s. He decidido por este kit de <a rel="noreferrer noopener" aria-label=" (abre en una nueva pestaña)" href="https://eustore.ifixit.com/en/Parts/iPhone-Parts/iPhone-6s/iPhone-6s-Replacement-Battery.html" target="_blank">iFixit</a> que estaba a buen precio. En total me ha costado 38,85€ y me ha tardado 5 días en llegar. Esto no es una guía, pueden consultar la misma en la pagina de <a rel="noreferrer noopener" aria-label="iFixit (abre en una nueva pestaña)" href="https://ifixit.com" target="_blank">iFixit</a> (Si no conocen esta pagina, ya están tardando en visitarla!)</p>



<p class="has-primary-background-color has-background">Para ahorrarte tiempo, lo recomiendo! Si estas dudando en comprarte uno, no lo hagas. El precio esta bien y el kit trae todo lo que necesitas para realizar el cambio.</p>



<p>Pues enumeremos todo lo que trae el kit:</p>



<ul class="wp-block-list">
<li>Bateria nueva para iPhone 6s (Que es el que compre).</li>



<li>Adhesivos para la bateria</li>



<li>Adhesivo para la pantalla</li>



<li>Kit destornillador tipo «Bit»</li>



<li>Destornillados de 4mm Bit Pentalobe P2</li>



<li>Destornillados de 4mm Bit Phillips #000</li>



<li>Destornillador de 4mm Bit Tri-point Y000</li>



<li>Ventosa para retirar la pantalla<br></li>



<li>Pinzas profesional</li>



<li>Herramientas de apertura de iFixit</li>



<li>iPhone 5/5s/6/6 Plus/6s/6s Plus Liberation Kit (Dos tornillos que reemplazan a los Pentalobe)</li>
</ul>



<figure class="wp-block-gallery has-nested-images columns-default is-cropped wp-block-gallery-1 is-layout-flex wp-block-gallery-is-layout-flex">
<figure class="wp-block-image"><img decoding="async" data-id="167" src="https://matablogs.com/wp-content/uploads/2019/04/IMG_8062.jpg" alt="" class="wp-image-167"/><figcaption class="wp-element-caption">Contenido de la caja con las herramientas</figcaption></figure>



<figure class="wp-block-image"><img decoding="async" data-id="168" src="https://matablogs.com/wp-content/uploads/2019/04/IMG_8064.jpg" alt="" class="wp-image-168"/><figcaption class="wp-element-caption">Contenido de la caja con las partes</figcaption></figure>



<figure class="wp-block-image"><img decoding="async" data-id="170" src="https://matablogs.com/wp-content/uploads/2019/04/IMG_8070.jpg" alt="" class="wp-image-170"/><figcaption class="wp-element-caption">Caja recibida</figcaption></figure>



<figure class="wp-block-image"><img decoding="async" data-id="171" src="https://matablogs.com/wp-content/uploads/2019/04/IMG_8069.jpg" alt="" class="wp-image-171"/><figcaption class="wp-element-caption">Contenido de la caja</figcaption></figure>
</figure>



<p>Para reemplazar la batería puedes seguir los pasos de la <a href="https://es.ifixit.com/Gu%C3%ADa/Reemplazo+de+bater%C3%ADa+del+iPhone+6s/56607">guía de iFixit.</a></p>



<p>En el proceso de de apertura del iPhone solo hay que tener cuidado,  te recomiendo que te lees todo la guía antes de iniciar el desmontaje del teléfono. Tener especial cuidado con las gomas adhesivas que le ponen a la batería. En mi caso se me han roto y he tenido que doblar un poco la batería para quitarlas completamente.</p>



<figure class="wp-block-image is-resized"><img decoding="async" src="https://matablogs.com/wp-content/uploads/2019/04/IMG_8066.jpg" alt="" class="wp-image-173" style="width:1008px;height:756px"/><figcaption class="wp-element-caption">Realmente cuesta retirar las dichos gomas!</figcaption></figure>



<p class="has-white-color has-text-color has-background" style="background-color:#a30000">Es muy importante tener la batería descargada para evitar que esta se prenda fuego en caso de daño.</p>



<p>La nueva batería va como anillo al dedo.</p>



<figure class="wp-block-image is-resized"><img decoding="async" src="https://matablogs.com/wp-content/uploads/2019/04/IMG_8068.jpg" alt="" class="wp-image-174" style="width:1008px;height:756px"/><figcaption class="wp-element-caption">Batería de iFixit, instalada en el iPhone 6s</figcaption></figure>



<p class="has-primary-background-color has-background">Antes de cerrar el iPhone, retiren todo el adhesivo sobrante de la pantalla como dela carcasa, antes de colocar el nuevo adhesivo.</p>



<figure class="wp-block-image is-resized"><img decoding="async" src="https://matablogs.com/wp-content/uploads/2019/04/IMG_8060.jpg" alt="" class="wp-image-175" style="width:1008px;height:756px"/></figure>



<p>El rendimiento de la batería es perfecto, como un iPhone nuevo. La verdad que el proceso ha sido sencillo, solo hay que tener paciencia y cuidado. Pese a que en el pasado he comprado las baterías directamente en eBay para iPhone 3G, 3GS, 4 y 5. En este caso preferí arriesgarme por este kit ya que incluye todo lo necesario para realizar el cambio. <br>Por eso me anime a escribir este pequeño review y si estas dudando en comprarlo, no lo hagas. El kit es de excelente calidad!</p>
]]></content:encoded>
					
					<wfw:commentRss>https://matablogs.com/2019/04/08/review-kit-bateria-iphone6s-de-ifixit/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
		<post-id xmlns="com-wordpress:feed-additions:1">162</post-id>	</item>
		<item>
		<title>Yo nunca gane nada&#8230; y Lenovo dijo «Hold my beer&#8230;»</title>
		<link>https://matablogs.com/2019/01/08/yo-nunca-gane-nada-y-lenovo-dijo-hold-my-beer/</link>
					<comments>https://matablogs.com/2019/01/08/yo-nunca-gane-nada-y-lenovo-dijo-hold-my-beer/#respond</comments>
		
		<dc:creator><![CDATA[goxonline]]></dc:creator>
		<pubDate>Tue, 08 Jan 2019 10:11:13 +0000</pubDate>
				<guid isPermaLink="false">https://matablogs.com/?p=122</guid>

					<description><![CDATA[Así es, hace un poco mas de dos meses me entregaban mi nueva "Lenovo Tab 4 10 Plus", que me gane en el concurso que organizaba Lenovo. Ya no puedo decir que nunca gane nada...]]></description>
										<content:encoded><![CDATA[<blockquote><p>
</p><p style="text-align: right;">Aclaro que este «review» lo hago sin solicitud alguna por parte de Lenovo.</p>
</blockquote>
<p>Así es, hace un poco mas de dos meses me entregaban mi nueva «<a href="https://www.lenovo.com/es/es/tablets/a-series/tab-4-series/Lenovo-TB-X704/p/ZZITZTATB1X">Lenovo Tab 4 10 Plus</a>«, que me gane en el concurso que organizaba Lenovo. Ya no puedo decir que nunca gane nada y este premio es gigante, creo que compensa todas las veces que no he ganado, digo esto por que la tablet me parece excelente y siendo sincero mis expectativas estaban bajas con respecto a ella.</p>
<h3>Que tenemos entre manos.</h3>
<p>Esto es lo que encontramos en las tripas de esta tablet (solo detallo lo mas importante a mi parecer):</p>
<p>Peso: 425 gramos<br>
SoC: <a href="https://www.qualcomm.com/products/snapdragon/processors/625" target="_blank" rel="noopener">Qualcomm Snapdragon 625</a><br>
RAM: 4GB<br>
Pantalla: 10.1 pulgadas, con una resolución de 1920&#215;1200 pixeles.<br>
Bateria: 7000 mAh. Soporta Quick Charge 3.0 (QC 3.0, pero el cargador que trae no lo es).<br>
Conectividad: 4G LTE, Wifi-AC de doble banda con «<a href="https://en.wikipedia.org/wiki/Multi-user_MIMO" target="_blank" rel="noopener">MU-MIMO</a>«. Bluetooth 4.1.&nbsp;<a href="https://es.wikipedia.org/wiki/GPS">GPS</a> y <a href="https://es.wikipedia.org/wiki/GPS_Asistido">A-GPS</a>,&nbsp;<a href="https://es.wikipedia.org/wiki/GLONASS">GLONASS</a>,&nbsp;<a href="https://es.wikipedia.org/wiki/Beidou">Beidou</a>,&nbsp;<a href="https://es.wikipedia.org/wiki/Galileo_(navegación_por_satélite)">Galileo.</a>&nbsp;USB 2.0 Tipo C. Radio FM.<br>
Para destacar:&nbsp;<a href="https://www.dolby.com/us/en/technologies/mobile/dolby-atmos.html" target="_blank" rel="noopener"><span id="productTitle" class="a-size-large">Dolby Atmos</span></a><span id="productTitle" class="a-size-large">, que le da una excelente calidad de audio y lector de huellas digitales.</span></p>
<p>El tamaño es 24,7 cm x 17,3 cm y un grosos de 7,1mm, lo que lo hace muy delgada. A mi me da la sensación de que podría doblarla&#8230; la misma que me da un iPad con su mismo tamaño.</p>
<h3>El uso.</h3>
<p class="p1"><span class="s1">Pese a que el tablet esta en el mercado desde Mayo del 2017 y el modelo del procesador asuste, <b>esta muy lejos de estar desfasada, pese a tener Android 7.1.</b> La tablet sorprende a simple vista con un diseño cuidado y un peso que no cansa. Se transporta muy bien y es lo que importa en un dispositivo así.</span></p>
<p class="p1"><span class="s1">La interfase es fluida y el tiempo de carga de las aplicaciones es bastante rápido. Comparado con mi Nvidia Shield, yo diría que hasta 4 veces mas rápida, pero no me he puesto a analizar esto.</span></p>
<p class="p1"><span class="s1">La batería de 7000mAh, según el manual, da una 20 horas de uso especificaciones. Yo por mi parte puedo decir que, una tarde viendo películas/series durante 6 horas, aun me quedo batería para seguir jugando durante 8 horas mas, hasta que llego a menos del 10% de batería. Durante la semana con un uso ocasional, no me fue necesario cargar la batería durante los 5 días.</span></p>
<p class="p1"><span class="s1">Comparando con otras, esta no tiene nada que envidiar. La calidad de la imagen de su pantalla y la velocidad en cargar aplicaciones.</span></p>
<p class="p1"><span class="s1">Conozco la «Lenovo P8», es una tablet&nbsp; muy buena y económica. También conozco la «Lenovo Xiaoxin TB» (esta ultima solo se vende en china y siempre que intente comprarla en Aliexpress y Gearbest estaban agotadas. También se dice que esa es la versión china de la Tab 4 10 Plus). <b>Tenia una NVIDIA SHIELD TABLET, que ya sustituí&nbsp;por esta.</b></span></p>
<h3 class="p1"><span class="s1">La cámara.</span></h3>
<p class="p1"><span class="s1">No soy de utilizar la cámara de un tablet para hacer fotos, pero si para sesiones de Skype y HangOuts, la calidad de la imagen es mas que aceptable. La imagen es fluida y nítida, lo que no es muy fácil de encontrar en cámaras de tabletas con Android y mucho menos a buen precio.</span></p>
<h3>El audio.</h3>
<p>Pues como buen «Audiófilo», puedo decir que los altavoces que traen funcionan muy bien. En lugares cerrados como una habitación o sala de reuniones, los altavoces cumplen muy bien su función, ya sea en una video conferencia o disfrutando una película. Los altavoces con «<a href="https://www.dolby.com/us/en/technologies/mobile/dolby-atmos.html">Dolby Atmos</a>» se hacen notar.<br>
En cuanto a la calidad de la salida de audio, no puedo decir nada malo, también funciona muy bien, pero no soy de llevar mi tablet como reproductor MP3 o de audio de HiFi.</p>
<h3>En el trabajo.</h3>
<p class="p1"><span class="s1">Cabe destacar que esta versión tiene 4G LTE, lo que para mi me va perfecta. La utilizo con varios emuladores de terminal y no he tenido problemas de conexión alguno. Siempre que necesite conectarme a algún sitio, siempre estaba lista.<br>
No pesa mucho, de hecho muchas veces he preferido llevar conmigo la tablet en lugar de mi portátil. En simple palabras para trabajos rápidos, funciona perfectamente.</span></p>
<h3>Lo malo.</h3>
<p>Creo que lo malo de la tablet es la falta de accesorios, es muy difícil encontrar una funda «oficial». También es la falta de especificaciones si su puerto USB-C es OTG (el cual lo es!).<br>
El marco de la pantalla puede ser un poco grande para mi gusto, pero con el uso uno se acostumbra a el.</p>
<h3>Finalizando&#8230;</h3>
<p class="p1"><span class="s1">Creo que opino igual que la mayoría de internet, la Tab 4 10 Plus esta al mismo nivel de la Lenovo Xiaoxin TB, la única diferencia, es que la Tab4 10 Plus posee una pantalla de mayor tamaño.<br>
</span><span class="s1">El precio del mercado puede rondar entre los 200 a 360 euros (dependiendo del vendedor). comparando estos con, por ejemplo un iPad Cellular que no bajan de los 500 euros, la calidad/precio es muy buena y no hay que dejarla pasar (Sin mencionar que la tablet tiene Android en las venas).<br>
</span><span class="s1">El rendimiento y su batería son mas que óptimos, es una tablet que no dudaría en comprar, pese a que ya tiene un tiempo en el mercado.</span></p>
<p>Recomendada!</p>


<figure class="wp-block-image"><img decoding="async" src="https://matablogs.com/wp-content/uploads/2019/01/IMG_5022-e1546941942710-2048x1598.jpg" alt="Lenovo TAB 4 Plus" class="wp-image-133"/><figcaption>Mi Lenovo TAB 4 10 Plus</figcaption></figure>



<p></p>
]]></content:encoded>
					
					<wfw:commentRss>https://matablogs.com/2019/01/08/yo-nunca-gane-nada-y-lenovo-dijo-hold-my-beer/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
		<post-id xmlns="com-wordpress:feed-additions:1">122</post-id>	</item>
		<item>
		<title>English firmware for Xiaomi MiJia radio walkie-talkie (MJDJJ01FY)</title>
		<link>https://matablogs.com/2018/07/04/english-firmware-for-xiaomi-mijia-radio-walkie-talkie/</link>
					<comments>https://matablogs.com/2018/07/04/english-firmware-for-xiaomi-mijia-radio-walkie-talkie/#respond</comments>
		
		<dc:creator><![CDATA[goxonline]]></dc:creator>
		<pubDate>Wed, 04 Jul 2018 09:37:39 +0000</pubDate>
				<category><![CDATA[General]]></category>
		<category><![CDATA[pmr]]></category>
		<category><![CDATA[radio]]></category>
		<category><![CDATA[xiaomi]]></category>
		<guid isPermaLink="false">https://matablogs.com/?p=109</guid>

					<description><![CDATA[One of the star products of Xiaomi is its walkie-talkie. The truth is that I am very happy with it, the design is exquisite and its battery lasts long enough to forget to charge it. But the bad thing was that the user interface was only in Chinese, which is very complicated to understand. Even [&#8230;]]]></description>
										<content:encoded><![CDATA[<p>One of the star products of Xiaomi is its walkie-talkie. The truth is that I am very happy with it, the design is exquisite and its battery lasts long enough to forget to charge it. But the bad thing was that the user interface was only in Chinese, which is very complicated to understand.<br />
Even though the Internet indicates that it already has an interface in English, they do not say how to update it or the steps for this, treating it as if it were a secret &#8230;<br />
Well after searching a lot I found the right steps to update it. It can be done with both iPhone and Android.</p>
<p>On iPhone we will download the <a href="https://itunes.apple.com/es/app/%E7%B1%B3%E5%AE%B6%E5%AF%B9%E8%AE%B2%E6%9C%BA/id1193096369?mt=8">My PTT</a> application.</p>
<p><figure id="attachment_101" aria-describedby="caption-attachment-101" style="width: 576px" class="wp-caption alignnone"><a href="https://matablogs.com/wp-content/uploads/2018/07/Image-1.jpg"><img fetchpriority="high" decoding="async" class="wp-image-101 size-large" src="https://matablogs.com/wp-content/uploads/2018/07/Image-1-576x1024.jpg" alt="" width="576" height="1024" /></a><figcaption id="caption-attachment-101" class="wp-caption-text">Mi PTT iPhone</figcaption></figure></p>
<p>In Android if we do not have a Xiaomi phone (we do not have access to the Xiaomi app store) we simply go to <a href="http://app.mi.com/">Mi App Store </a>(Also, we must have enabled on the phone the option that allows us to open applications from other locations).</p>
<p><figure id="attachment_102" aria-describedby="caption-attachment-102" style="width: 576px" class="wp-caption alignnone"><a href="https://matablogs.com/wp-content/uploads/2018/07/Screenshot_20180704-105318.png"><img decoding="async" class="size-large wp-image-102" src="https://matablogs.com/wp-content/uploads/2018/07/Screenshot_20180704-105318-576x1024.png" alt="" width="576" height="1024" /></a><figcaption id="caption-attachment-102" class="wp-caption-text">Mi App Store</figcaption></figure></p>
<p>Then we look for I installed the <a href="http://app.mi.com/details?id=com.ifengyu.intercom&amp;ref=search">My PTT</a>.</p>
<p><figure id="attachment_103" aria-describedby="caption-attachment-103" style="width: 576px" class="wp-caption alignnone"><a href="https://matablogs.com/wp-content/uploads/2018/07/Screenshot_20180704-105402.png"><img decoding="async" class="size-large wp-image-103" src="https://matablogs.com/wp-content/uploads/2018/07/Screenshot_20180704-105402-576x1024.png" alt="" width="576" height="1024" /></a><figcaption id="caption-attachment-103" class="wp-caption-text">Mi PTT Android</figcaption></figure></p>
<p>Now comes the trick, in order to update the firmware to English, the first thing we should do is change the language of the phone interface. Yes, you must change the language of the phone to <strong>English (United States)</strong>. Once this is done, the application will also change to English instead of Chinese.<br />
In the second step we will look for the option to update the firmware of the walkie-talkie. The application will indicate that the language of the application will be unified with the application. When the walkie-talkie is updated, its interface will be in English.</p>
<p><figure id="attachment_104" aria-describedby="caption-attachment-104" style="width: 576px" class="wp-caption alignnone"><a href="https://matablogs.com/wp-content/uploads/2018/07/Screenshot_20180704-105838.png"><img loading="lazy" decoding="async" class="size-large wp-image-104" src="https://matablogs.com/wp-content/uploads/2018/07/Screenshot_20180704-105838-576x1024.png" alt="" width="576" height="1024" /></a><figcaption id="caption-attachment-104" class="wp-caption-text">Mi PTT Update Firmware</figcaption></figure></p>
<p>It is not necessary to have the application installed to use it, so it can be remove without problems. Channels can be added in the same device. One of the good things that are added when updating the firmware is the support of the band 440-470. That is, you can configure the <a href="https://es.wikipedia.org/wiki/PMR446">PMR446</a> channels (At least here in Europe are allowed for public use).</p>
<p>If this has been useful, do not hesitate to comment!</p>
]]></content:encoded>
					
					<wfw:commentRss>https://matablogs.com/2018/07/04/english-firmware-for-xiaomi-mijia-radio-walkie-talkie/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
		<post-id xmlns="com-wordpress:feed-additions:1">109</post-id>	</item>
		<item>
		<title>Firmware en inglés para la radio Xiaomi MiJia walkie-talkie (MJDJJ01FY)</title>
		<link>https://matablogs.com/2018/07/04/firmware-en-ingles-para-la-radio-xiaomi-mijia-walkie-talkie/</link>
					<comments>https://matablogs.com/2018/07/04/firmware-en-ingles-para-la-radio-xiaomi-mijia-walkie-talkie/#respond</comments>
		
		<dc:creator><![CDATA[goxonline]]></dc:creator>
		<pubDate>Wed, 04 Jul 2018 09:26:31 +0000</pubDate>
				<category><![CDATA[General]]></category>
		<category><![CDATA[pmr]]></category>
		<category><![CDATA[radio]]></category>
		<category><![CDATA[xiaomi]]></category>
		<guid isPermaLink="false">https://matablogs.com/?p=97</guid>

					<description><![CDATA[Uno de los productos estrella de xiaomi es su walkie-talkie. La verdad que estoy muy contento con el, el diseño es exquisito y su batería dura lo suficiente para olvidarse de cargarlo. Pero lo malo era que la interface de usuario solo estaba en chino, lo cual es muy complicado de entender. Aún que en [&#8230;]]]></description>
										<content:encoded><![CDATA[<p>Uno de los productos estrella de xiaomi es su walkie-talkie. La verdad que estoy muy contento con el, el diseño es exquisito y su batería dura lo suficiente para olvidarse de cargarlo. Pero lo malo era que la interface de usuario solo estaba en chino, lo cual es muy complicado de entender.<br />
Aún que en internet se indica que el mismo ya posee una interface en inglés, no dicen cómo actualizar el mismo o no dan los pasos para esto, tratando como si de un secreto se tratara&#8230;<br />
Pues luego de buscar bastante he encontrado los pasos correctos para actualizar el mismo. Se puede hacer tanto con <a href="http://apple.com">iPhone</a> como con <a href="https://www.android.com">Android</a>.</p>
<p>En iPhone nos descargaremos la aplicación <a href="https://itunes.apple.com/es/app/%E7%B1%B3%E5%AE%B6%E5%AF%B9%E8%AE%B2%E6%9C%BA/id1193096369?mt=8">Mi PTT</a>.</p>
<p><figure id="attachment_101" aria-describedby="caption-attachment-101" style="width: 576px" class="wp-caption alignnone"><a href="https://matablogs.com/wp-content/uploads/2018/07/Image-1.jpg"><img loading="lazy" decoding="async" class="wp-image-101 size-large" src="https://matablogs.com/wp-content/uploads/2018/07/Image-1-576x1024.jpg" alt="" width="576" height="1024" /></a><figcaption id="caption-attachment-101" class="wp-caption-text">Mi PTT iPhone</figcaption></figure></p>
<p>En Android si no tenemos un teléfono Xiaomi (no se tiene acceso a la app store de Xiaomi) simplemente entramos a <a href="http://app.mi.com/">Mi App Store</a> (Deberemos tener activado en el teléfono la opción que nos permita abre aplicaciones desde otras ubicaciones).</p>
<p><figure id="attachment_102" aria-describedby="caption-attachment-102" style="width: 576px" class="wp-caption alignnone"><a href="https://matablogs.com/wp-content/uploads/2018/07/Screenshot_20180704-105318.png"><img loading="lazy" decoding="async" class="size-large wp-image-102" src="https://matablogs.com/wp-content/uploads/2018/07/Screenshot_20180704-105318-576x1024.png" alt="" width="576" height="1024" /></a><figcaption id="caption-attachment-102" class="wp-caption-text">Mi App Store</figcaption></figure></p>
<p>Luego buscamos he instalamos la <a href="http://app.mi.com/details?id=com.ifengyu.intercom&amp;ref=search">Mi PTT</a>.</p>
<p><figure id="attachment_103" aria-describedby="caption-attachment-103" style="width: 576px" class="wp-caption alignnone"><a href="https://matablogs.com/wp-content/uploads/2018/07/Screenshot_20180704-105402.png"><img loading="lazy" decoding="async" class="size-large wp-image-103" src="https://matablogs.com/wp-content/uploads/2018/07/Screenshot_20180704-105402-576x1024.png" alt="" width="576" height="1024" /></a><figcaption id="caption-attachment-103" class="wp-caption-text">Mi PTT Android</figcaption></figure></p>
<p>Ahora viene el truco, para poder actualizar el firmware a inglés, lo primero que debemos es cambiar el idioma de la interface del teléfono. Si, se deberá cambiar el idioma del teléfono a <strong>Inglés Estados Unidos</strong>. Realizado esto la aplicación también cambiará a inglés en lugar de chino.<br />
En el segundo paso buscaremos la opción para actualizar el firmware del walkie-talkie. La aplicación nos indicará que el idioma del mismo será unificado con el de la aplicación. <strong>Al actualizase el walkie-talkie su interface estará en inglés.</strong></p>
<p><figure id="attachment_104" aria-describedby="caption-attachment-104" style="width: 576px" class="wp-caption alignnone"><a href="https://matablogs.com/wp-content/uploads/2018/07/Screenshot_20180704-105838.png"><img loading="lazy" decoding="async" class="size-large wp-image-104" src="https://matablogs.com/wp-content/uploads/2018/07/Screenshot_20180704-105838-576x1024.png" alt="" width="576" height="1024" /></a><figcaption id="caption-attachment-104" class="wp-caption-text">Mi PTT Update Firmware</figcaption></figure></p>
<p>No es necesario tener la aplicación instalada para utilizar el mismo, por lo que se puede des instalar sin problemas. Desde el mismo dispositivo se pueden agregar los canales. Una de las cosas buenas que se agregan al actualizar el firmware en la banda 440-470. O sea que se pueden configurar los canales <a href="https://es.wikipedia.org/wiki/PMR446">PMR446</a>. Al menos aquí en Europa son los permitidos de uso público.</p>
<p>¡Si te ha sido util, no dudes en comentar!</p>
]]></content:encoded>
					
					<wfw:commentRss>https://matablogs.com/2018/07/04/firmware-en-ingles-para-la-radio-xiaomi-mijia-walkie-talkie/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
		<post-id xmlns="com-wordpress:feed-additions:1">97</post-id>	</item>
		<item>
		<title>cpuminer-multi en Debian 9 (cpu miner)</title>
		<link>https://matablogs.com/2017/10/02/cpuminer-multi-en-debian-9-cpu-miner/</link>
					<comments>https://matablogs.com/2017/10/02/cpuminer-multi-en-debian-9-cpu-miner/#respond</comments>
		
		<dc:creator><![CDATA[goxonline]]></dc:creator>
		<pubDate>Mon, 02 Oct 2017 12:39:22 +0000</pubDate>
				<guid isPermaLink="false">http://matablogs.com/?p=44</guid>

					<description><![CDATA[Hace algún tiempo estaba buscando un CPU miner para poder utilizando en Debian y minar cryptonight (Monero/XMR y Bytecoin/BCN), por suerte he encontrado una vieja version que aun funciona para minar con CPU. Mientras busco alguna version mas optimizada, aquí esta la receta: Como descargar y compilar CPUminer en Debian. Instalaremos algunas dependencias: apt-get update [&#8230;]]]></description>
										<content:encoded><![CDATA[<p>Hace algún tiempo estaba buscando un CPU miner para poder utilizando en Debian y minar cryptonight (Monero/XMR y Bytecoin/BCN), por suerte he encontrado una vieja version que aun funciona para minar con CPU. Mientras busco alguna version mas optimizada, aquí esta la receta:<br />
Como descargar y compilar CPUminer en Debian.</p>
<p>Instalaremos algunas dependencias:</p>
<p><code>apt-get update<br />
apt-get install libcurl4-openssl-dev git<br />
apt-get install  build-essential<br />
apt-get install autotools-dev autoconf<br />
apt-get install libcurl3 libcurl4-gnutls-dev</code></p>
<p>Descargamos la ultima version de cpuminer-multi:</p>
<p><code>mkdir /downloads<br />
cd /downloads<br />
git clone https://github.com/wolf9466/cpuminer-multi<br />
cd cpuminer-multi Compilamos: ./autogen.sh<br />
CFLAGS="-march=native" ./configure<br />
make</code></p>
<p>Para instalarlo:</p>
<p><code>make install</code></p>
<p>Para ejecutarlo:<br />
<code><br />
./minerd -a cryptonight -o stratum+tcp://pool:port 3 -p x -u usuario -t</code></p>
<p>Por ejemplo:</p>
<p><code>./minerd -a cryptonight -o stratum+tcp://mine.moneropool.com:3333 -p x -u USUARIO -t</code></p>
<p>Usuario junto a <a href="https://minergate.com/a/60b3138d5f4ab4ea22e301b6">MinerGate</a>:</p>
<p>Bytecoin/BCN:</p>
<p><code>./minerd -a cryptonight -o stratum+tcp://bcn.pool.minergate.com:45550 -u tu@email.com -p x</code></p>
<p>Monero/XMR:</p>
<p><code>./minerd -a cryptonight -o stratum+tcp://xmr.pool.minergate.com:45550 -u tu@email.com -p x</code></p>
<p><a href="https://minergate.com/a/60b3138d5f4ab4ea22e301b6">MinerGate</a>, posee un cliente para minar varias crypto monedas, para Windows, Linux y MacOS.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://matablogs.com/2017/10/02/cpuminer-multi-en-debian-9-cpu-miner/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
		<post-id xmlns="com-wordpress:feed-additions:1">44</post-id>	</item>
	</channel>
</rss>
