Skip to main content

a silhouette of a person's head and shoulders, used as a default avatar

openSUSE Tumbleweed – Review of the week 2021/19

Dear Tumbleweed users and hackers,

First, I want to apologize to our Steam users for making their life harder this week than needed. I misjudged an openQA-reported issue as being a Steam packaging bug instead of realizing that it was in fact a Mesa packaging bug. This in turn made some of you receive scary messages from zypper. A bug for this had been filed in Bugzilla of course: https://bugzilla.opensuse.org/show_bug.cgi?id=1185933. A fixed Mesa package will be part of Snapshot 0514.

Other than that, I did not hear/read a lot of complaints regarding the six snapshots released during this week (0506, 0507, 0508, 0510, 0511, and 0512). The main changes included:

  • GNOME 40.1
  • KDE Plasma 5.21.5
  • Mesa 21.1.0
  • LibreOffice 7.1.3.2
  • QEmu 6.0.0
  • Virtualbox 6.1.22
  • VLC 3.0.13
  • icu 69.1
  • Mozilla Firefox 88.0.1
  • KDE Frameworks 5.82.0
  • Linux kernel 5.12.2, kfence has been disabled. This allows the system to reach idle state easier again
  • Python 3.8.10 (security and bug fixes)

The staging areas are currently filled with these major topics:

  • NodeJS 15 will be removed
  • Linux kernel 5.12.3
  • KDE Gear 21.04.1
  • Base filesystem layout changes: more base directories will change permission from 755 to 555
  • Switch from go 1.15 to go 1.16: most packages fixed, the last failure in Staging:M is cilium
  • GCC 11 as default compiler: Move from special-purpose Staging:Gcc7 to Staging:O (incl. openQA test coverage). There are a few more build failures to be addressed.
  • UsrMerge: The current state is that we checked in all changes and are planning on actually doing the switch somewhen in the not too far future, likely together with the planned distro-rebuild for GCC 11
a silhouette of a person's head and shoulders, used as a default avatar

Lanzada la beta de Plasma 5.22

Una vez finalizado el periodo de mantenimiento de Plasma 5.21 es hora de ir preparando el lanzamiento de la siguiente versión. Es por ello que me complace compartir con vosotros que ha sido lanzada la beta de Plasma 5.22, la próxima versión del escritorio de la Comunidad KDE que nos llega con novedades interesantes, muchas de las cuales se han ido desgranando en el blog de Nate Graham. Es el momento de que esta beta sea probada y que se reporten los errores que se encuentren. ¡No pierdas la oportunidad de contribuir al desarrollo de Plasma!

Lanzada la beta de Plasma 5.22

Hoy 13 de mayo ha sido lanzada la beta de Plasma 5.22. En esta primera versión liberada del 2021, no apta todavía para el usuario domésticos, se ha centrado en que el escritorio de la Comunidad KDE

Unas pinceladas de las novedades del escritorio Plasma más destacadas son:

  • Plasma System Monitor sustituye a KSysguard como aplicación de monitorización del sistema por defecto
  • Nueva función de transparencia adaptativa del panel hace que el panel y los widgets del panel sean más transparentes, pero desactiva la transparencia por completo cuando hay alguna ventana maximizada. También puedes hacer que el panel sea siempre transparente o siempre opaco si así lo deseamos.

Lanzada la beta de Plasma 5.22
  • El nuevo Kickoff ya no sufre un retraso antes de cambiar de categoría o de cambiar accidentalmente de categoría al mover el cursor
  • Soporte para actividades en Wayland
  • El applet del Menú Global ahora permite buscar entre los elementos del menú en Wayland
  • La función «Resaltar ventanas» del Administrador de tareas ahora sólo resalta las ventanas cuando se pasa por encima de la miniatura de esa ventana en la información sobre herramientas, y este comportamiento se ha activado por defecto
  • Los atajos globales que implican símbolos no latinos de teclados no estadounidenses ahora funcionan correctamente
  • Se ha mejorado enormemente el soporte de Wayland en general
  • Ahora se puede cambiar el tamaño del texto en los widgets de notas adhesivas

Y muchas más pequeñas mejoras que hará las delicias de los usuarios de este entorno de trabajo.

Más información: KDE.org

Pruébalo y reporta errores

Lanzada la beta de Plasma 5.22
Konqi siempre se encuentra dispuesto, con nuestra ayuda, a buscar bugs y solucionarlos.

Todas las tareas dentro del mundo del Software Libre son importantes: desarrollar, traducir, empaquetar, diseñar, promocionar, etc. Pero hay una que se suele pasar por alto y de la que solo nos acordamos cuando las cosas no nos funcionan como debería: buscar errores.

Desde el blog te animo a que tú seas una de las personas responsables del éxito del nuevo lanzamiento de Plasma 5.20 de la Comunidad KDE. Para ello debes participar en la tarea de buscar y reportar errores, algo básico para que los desarrolladores los solucionen para que el despegue del escritorio esté bien pulido. Debéis pensar que en muchas ocasiones los errores existen porque no le han aparecido al grupo de desarrolladores ya que no se han dado las circunstancias para que lo hagan.

Para ello debes instalarte esta beta y comunicar los errores que salgan en bugs.kde.org, tal y como expliqué en su día en esta entrada del blog.

the avatar of openSUSE News

Mesa, KDE Frameworks, GlusterFS Update in Tumbleweed

There were three openSUSE Tumbleweed snapshots released so far this week.

The snapshots updated Mozilla Thunderbird, Mozilla Firefox, Mesa, KDE Frameworks, glusterfs, php and several other packages.

The most recently released snapshot, 20210511, updated a little more than a handful of packages. There was one package update from KDE Frameworks 5.82.0 with plotting framework kplotting. The 5.12.2 Linux Kernel updated in the snapshot and brought a thermal sensor correction to the x86 thinkpad_acpi module and some fixes for Advanced Linux Sound Architecture USB audio. Another package update in the snapshot was hivex 1.3.20, which is a system for extracting the contents of the Windows Registry; the hivex version fixed a Common Vulnerabilities and Exposures that would allow an attacker to read memory beyond normal bounds or cause the program to crash.

Mesa 21.1.0 and a majority of the KDE Frameworks 5.82.0 packages updated in snapshot 20210510. The Mesa update added some patches and dropped vulkan_intel.h in /usr/include/vulkan/ but a decision was made to keep the directory empty. The update of KDE Frameworks 5.82.0 added new sidebar show and hide Breeze Icons. The KDBusAddons file was relicensed to LGPL-2.0 or later. Many fixes were made in the frameworks update, including a KTextEditor memory corruption fix and a couple fixes for dragging. The update of Mozilla Thunderbird 78.10.1 restored some previous behavior found in the 78.9.0 version. The fetchmail 6.4.19 update now properly reports option parsing errors. Tumbleweed skipped an entire major version of the of cluster file-system capable of scaling to several peta-bytes in its update of glusterfs from version 7.1 to 9.1; the new major version upgrade added support for 5K volumes, improved the rebalance of sparse files and it is now compiled with Link Time Optimization enabled by default. The full-featured implementation of the DNS protocol bind9 9.16.15, fixed a few CVEs including one that could lead to a RUNTIME_CHECK assertion failure. Also updated in the snapshots were ceph 16.2.3.26, chat client pidgin 2.14.4 and terminal multiplexer tmux 3.2.

The 20210508 snapshot updated Mozilla Firefox 88.0.1, which fixed a corruption of videos playing on Twitter or WebRTC calls on some Gen6 Intel graphics chipsets. A CVE involving web render components was also fixed with the open-source browser. An update in php7 7.4.19 reverted a fix that treated everything as PARAM_STR. Google’s library for parsing, formatting and validating international phone numbers libphonenumber updated to version 8.12.22, which updated carrier data and the geocoding data for Germany’s +49 and Mexico’s +52 calling codes. Other packages updated in the snapshot were hwdata 0.347, perl-CGI 4.52 and ibus-table 1.13.0.

a silhouette of a person's head and shoulders, used as a default avatar

Ver las diferencias en Git entre el commit más reciente y el anterior

En un repositorio git, comprobemos las diferencias entre el último commit realizado y el anterior

¿Qué cambio ha sido el más reciente en nuestro repositorio git? ¿Cómo podemos comprobar los cambios más recientes en nuestro repositorio?

En realidad podemos comprobar las diferencias que existen entre dos commits cual quiera de nuestro repositorio git, pero me centraré en comprobar las diferencias que existen entre el commit más reciente y el anterior.

Para ello ejecutaremos este comando:

git diff HEAD^ HEAD

En este comando HEAD^ representa el penúltimo commit y HEAD representa al último commit. De igual manera podemos utilizar este comando que es más corto de escribir:

git diff HEAD^..

Si en vez los cambios realizados, queremos ver los archivos que se han visto modificados en el último commit, podemos ver el listado de esos archivos mediante:

git diff HEAD^.. --name-status

Las diferencias realizadas en los archivos marcarán el estado de cada archivo mostrando si han sido añadidos (A), copiados (C), eliminados (D), modificados (M), o renombrados (R).

Si esos cambios han implicado la modificación de muchos archivos, y queremos únicamente centrarnos en los cambios realizados en uno llamado, por ejemplo, archivo1.txt Ejecutaremos lo siguiente:

git diff HEAD^.. -- ./archivo1.txt

Y si queremos ver un listado rápido de los archivos modificados junto con las modificaciones que se han realizado en ellos, ejecutaremos:

git diff HEAD^.. --stat

Pero también podemos utilizar una variante de estos comandos para comparar el último commit, con los cambios realizados en los últimos, por ejemplo, 5 commits anteriores. Para ello, envez de utilizar HEAD^ lo que haremos es HEAD~5 sui queremos como en el ejemplo compararlo con los 5 commits anteriores. Un ejemplo:

git diff HEAD~5..

Y de manera similar con los demás comandos y opciones que hemos visto anteriormente.

Y hasta aquí esta pequeña guía, de algo que he necesitado hacer hoy y que he encontrado en las guías oficiales sobre Git y que me han servido para lo que quería. Espero que también a ti te pueda ser de utilidad (y a mi yo del futuro).

a silhouette of a person's head and shoulders, used as a default avatar

Aritmètica en GCompris – A fondo @g_compris (9)

Sigo aprovechándome de una publicación de Valencia Tech en la que se realizaba un listado completo de juegos que ofrece GCompris he empezado una serie donde se describen con más detalles las actividades. Seguimos la serie con la subsección de «Aritmética» en GCompris la cual está dentro de la sección de matemáticas.

Aritmètica en GCompris – A fondo @g_compris (9)

Para poder tener claro lo que hacen las aplicaciones de GCompris he pensado hacer una revisión a su enorme colección de juegos y actividades, realizando una simple captura de pantalla y una breve descripción.

Ya hemos descrito la secciones de:

Y ya es hora de hablar de la actividades de la sección «Aritmètica» de GCompris, más de una decena de miniaplicaciones pensada para aprender a realizar las operaciones básicas de las matemáticas.

Aprender a sumar: Un juego donde simplemente deben marcar el resultado de las operaciones básicas de sumas en los círculos blancos.

Aritmètica en GCompris – A fondo @g_compris (9)

Aprender a restar: Como el anterior pero con sustracciones.

El sombrero del mago (sumas y restas): Si queremos dar un toque más lúdico al tema de las restas y sumas tenemos este minijuego donde aprendemos a hacer operaciones con unidades, decenas e incluso centenas., similar a un ábaco.

Aritmètica en GCompris – A fondo @g_compris (9)

Practica la suma con tu puntería: Combinar habilidad y artimética es posible con este juego de dardos donde ganamos si acertamos las operaciones numéricas con los número que seleccionemos.

Múltiplos con el Gnumch: primero juego de la serie donde aparece un personaje glotón que debe comerse los múltiplos del número que aparece en pantalla. Si se equivoca le da un empacho y pierdes.

Aritmètica en GCompris – A fondo @g_compris (9)

Adivina la operación: En esta ocasión nos dan el resultado que queremos obtener y debemos montar la operación numérica, colocando los números y las operaciones.

Juegos de memoria: Agrupo en una solo sección la colección de juegos de memoria para emparejar donde tendremos todo tipo de variantes: de sumas, de restas, de multiplicaciones, de divisiones, combinadas, etc. Casi todas ellas en modo solitario o contra Tux.

Comparte los dulces: excelente aplicación para iniciar a los niños y niñas en el concepto de división partitiva.

Aritmètica en GCompris – A fondo @g_compris (9)

Tabla de multiplicar: realiza las operaciones antes de que el globo con tux y su pareja lleguen a la parte inferior de la pantalla.

División de números: pasamos a dividir de forma sistemática con el mismo sistema que la actividad anterior.

Resta y Sumas de números: similar a los anteriores pero con operaciones aditivas o sustractivas.

Igualdad, factores , desigualdades y primos con Gnumch: pack de cuatro aplicaciones similares donde el monstruo verde debe comerse los números que sigan un determinado criterio.

the avatar of Chun-Hung sakana Huang

三大雲平台工具容器升級小記 - ansible 2.10.9 / AWS Cli 2.2.4 / gcloud 340.0

三大雲平台工具容器升級小記 - ansible 2.10.9 / AWS Cli 2.2.4 / gcloud 340.0


OS: container with openSUSE Leap 15.2



上次升級是 2020/11/29 , 這次會來升級的原因是 


然後也同步紀錄一下目前 Azure CloudShell 上面的 Ansible 資訊

  • Ansible: 2.10.2 / python 3.7.3 (已經升級到 python 3)




先整理結果


升級前

OS: openSUSE Leap 15.2

awscli:  aws-cli/2.1.4 Python/3.7.3

gcloud: Google Cloud SDK 319.0.0

azure-cli: 2.15.1 (目前有 bug)

ansible: 2.10.3


升級後

OS: openSUSE Leap 15.2

awscli:  aws-cli/2.2.4 Python/3.8.8

gcloud: Google Cloud SDK 340.0.0

azure-cli: 2.23.0 (目前有 bug)

ansible: 2.10.9


AWS CLI v2 安裝文件


GCP Cloud SDK 版本




這次的做法還是會透過 docker build 指令來進行

  • 我有比較過 docker build 以及使用現有的 docker image 修改後再使用 docker commit 建立的 image 大小還是很有差異的


Dockerfile 的部分我是拿之前 openSUSE Leap 15.2 來修改


修改細節

  • Update time

  • Google SDK 版本還有下載的檔案路徑以及檔案名稱



列出 diff 的結果給大家參考



> diff opensuseLeap152_ansible_20210513_Dockerfile  opensuseLeap151_ansible_20201129_Dockerfile 



6c6

< # update time: 20210513

---

> # update: 20201129

75c75

< # Install google cloud SDK 340.0.0

---

> # Install google cloud SDK 319.0.0

77,78c77,78

< RUN wget https://dl.google.com/dl/cloudsdk/channels/rapid/downloads/google-cloud-sdk-340.0.0-linux-x86_64.tar.gz && \

<   tar zxvf google-cloud-sdk-340.0.0-linux-x86_64.tar.gz && \

---

> RUN wget https://dl.google.com/dl/cloudsdk/channels/rapid/downloads/google-cloud-sdk-319.0.0-linux-x86_64.tar.gz && \

>   tar zxvf google-cloud-sdk-319.0.0-linux-x86_64.tar.gz && \




Dockerfile 內容如下




# openSUSE Leap 15.2 with ansible, azure-cli, aws cli, gcloud

FROM opensuse/leap:15.2


# Author

# MAINTAINER 已經棄用, 之後要使用 LABEL 方式

# update time: 20210513

LABEL maintainer="sakana@cycu.org.tw"


# Set LANG for UTF-8 - for Chinese

ENV LANG C.UTF-8


# Install python3-pip, upgrade pip, ansible, boto, boto3

RUN zypper install -y python3-pip && \

  pip3 install --upgrade pip && \

  pip3 install ansible && \

  pip3 install boto boto3


# Install openssh, set ls alias

RUN zypper install -y openssh

RUN echo "alias ls='ls --color=tty'" >> /root/.bashrc


# Install wget, download azure_rm.py, set permission

RUN zypper install -y wget


# azure_rm.py no need to download 

# Starting with Ansible 2.8, Ansible provides an Azure dynamic-inventory plug-in

# https://docs.ansible.com/ansible/latest/plugins/inventory/azure_rm.html

# old azure_rm.py URL https://raw.githubusercontent.com/ansible/ansible/devel/contrib/inventory/azure_rm.py


# Create working directory in /root

RUN mkdir /root/.azure && \

  mkdir /root/.aws && \

  mkdir /root/playbook && \

  mkdir -p /root/.config/gcloud && \

  wget https://raw.githubusercontent.com/sakanamax/LearnAnsible/master/template/ansible.cfg && \

  mv /ansible.cfg /root && \

  wget https://raw.githubusercontent.com/sakanamax/LearnAnsible/master/template/hosts && \

  mv /hosts /root


#### Azure #### 

# Install azure-cli

# 2020/11/29 Still have az login issue in Github https://github.com/Azure/azure-cli/issues/13209

RUN zypper install -y curl && \

  rpm --import https://packages.microsoft.com/keys/microsoft.asc && \

  zypper addrepo --name 'Azure CLI' --check https://packages.microsoft.com/yumrepos/azure-cli azure-cli && \

  zypper install --from azure-cli -y azure-cli


# Install Ansible azure module

# After ansible 2.10, some module move to ansible collect, change install method

RUN zypper install -y curl && \ 

  curl -O https://raw.githubusercontent.com/ansible-collections/azure/dev/requirements-azure.txt && \

  pip3 install -r requirements-azure.txt && \

  rm -f requirements-azure.txt && \

  ansible-galaxy collection install azure.azcollection




#install vim tar gzip jq unzip less bind-utils iputils groff

RUN zypper install -y vim tar gzip jq unzip less bind-utils iputils groff

RUN echo "set encoding=utf8" > /root/.vimrc


#### AWS ####

# Install awscli v1

#RUN pip3 install awscli

#RUN echo "source /usr/bin/aws_bash_completer" >> /root/.bashrc


# Install awscli v2

RUN curl "https://awscli.amazonaws.com/awscli-exe-linux-x86_64.zip" -o "awscliv2.zip" && \

  unzip awscliv2.zip && \

  /aws/install

RUN echo "complete -C '/usr/local/bin/aws_completer' aws" >> /root/.bashrc


#### GCP ####

# Install google cloud SDK 340.0.0

ENV CLOUDSDK_CORE_DISABLE_PROMPTS 1

RUN wget https://dl.google.com/dl/cloudsdk/channels/rapid/downloads/google-cloud-sdk-340.0.0-linux-x86_64.tar.gz && \

  tar zxvf google-cloud-sdk-340.0.0-linux-x86_64.tar.gz && \

  /google-cloud-sdk/install.sh && \

  echo "if [ -f '/google-cloud-sdk/path.bash.inc' ]; then . '/google-cloud-sdk/path.bash.inc'; fi" >> /root/.bashrc && \

  echo "if [ -f '/google-cloud-sdk/completion.bash.inc' ]; then . '/google-cloud-sdk/completion.bash.inc'; fi" >> /root/.bashrc




使用 docker build 指令建立 image


> docker build  -t  sakana/ansible_opensuse152:20210513  -f  ./opensuseLeap152_ansible_20210513_Dockerfile   .


  • 使用 -f 指定 Dockerfile 名稱

  • 最後是 ” . “ 目前的目錄



測試 container image


> docker  run  -v  ~/.aws:/root/.aws  -v  ~/.azure:/root/.azure  -v ~/.config/gcloud:/root/.config/gcloud  -it  sakana/ansible_opensuse152:20210513  /bin/bash


測試結果 OK, 建立  tag


  • 這邊目前因為 openSUSE Leap 15 使用舊的 azure cli 以及相依性, 所以現在 az 指令會有問題, 已經 update issue 以及花了很多時間調整, 目前還是要等 openSUSE and Azure 看是否會有後續更新

  • 但是 ansible with azure 沒有問題, 所以目前 az 指令可能會暫時透過 Azure cloud shell




觀察資訊

> docker  images


REPOSITORY                   TAG                 IMAGE ID            CREATED             SIZE

sakana/ansible_opensuse152   20210513            c69c2e1c6e9e        13 minutes ago      2.45GB

opensuse/leap                15.2                573008f769b5        20 hours ago        106MB

sakana/ansible_opensuse152   latest              9f8d6b777cc9        2 weeks ago         1.82GB





建立 tag 

> docker  tag  c69c2e1c6e9e  sakana/ansible_opensuse152:latest


登入 docker

> docker  login


上傳 image

> docker  push  sakana/ansible_opensuse152:20210513


> docker  push  sakana/ansible_opensuse152:latest


完工, 以後使用就用


> docker  run  -v  ~/.aws:/root/.aws  -v  ~/.azure:/root/.azure  -v ~/.config/gcloud:/root/.config/gcloud  -it  sakana/ansible_opensuse152  /bin/bash



額外小記: 又碰到 Azure 的認證資訊已經超過一年了, 參考之前自己的筆記

  • http://sakananote2.blogspot.com/2020/05/azure-dynamic-inventory-with-ansible.html

  • 使用 az  ad  sp list  --all --output table | grep azure-cli 找出舊的認證, 

  • 刪除他 ex: # az  ad  sp delete --id d06f8905-ad21-425b-9da5-3e0bcf22a853 

  • 然後建立新的認證 ex: # az  ad  sp  create-for-rbac --query  '{"client_id": appId, "secret": password, "tenant": tenant}'

  • 查詢 subscription_id, ex: # az  account  show  --query  "{ subscription_id: id }"

  • 更新  ~/.azure/credentials



~ enjoy it


Reference:

the avatar of openSUSE News

Shells, openSUSE Unite with Partnership

A startup bringing personal workspaces in the cloud for students, workers, coders, and creators along with a Linux project for developers, system administrators and users are teaming up to extend the use of a secure desktop from any device, anywhere.

Shells and openSUSE Project have entered into a partnership to expand the use of Shells with the availability of openSUSE distributions on Shells’ private virtual desktop environment powered by cloud computing.

“This is a great way to give an openSUSE distribution a spin - without downloading or installing anything locally,” said Gerald Pfeifer, chairperson of the openSUSE Project. “And it’s a completely new way to use a feature rich, full fledged open source-based environment from your tablet or other device.”

Shells’ CEO Alex Lee couldn’t agree more.

“We’re thrilled with the images that have been created that are now available for our customers to choose from when setting up their Shells virtual desktop,” Lee said. “It’s been a pleasure collaborating with the openSUSE team for the past few months. Both of the openSUSE and Shells tech teams have put in a lot of hard work to drive this project to completion, and it is clearly evident in the end products.

“We are honored by the fact that the group at openSUSE selected this project to work on during their SUSE HackWeek,” Lee added.

Shells has multiple use cases and openSUSE distributions are just one of many other operating systems offered by Shells. With the partnership, openSUSE will be a member of Shells Affiliate Program. The two organizations are working closely on a way to allow users to trial the distribution and its desktop environments. Further extending this partnership, Shells has become an Emerald Sponsor of this year’s openSUSE Conference and Lee will give a keynote on June 18.

Developers can rapidly spin up multiple secure environments that are automatically backed up. Music producers can access production grade programs across devices to collaborate on the next hit.

The use of Shells by educators allows for remote learning on any device, which becomes affordable, less complex for students and the accessibility and learning with the many operating systems and tools add synergy to the classroom. Students across the world can easily access openSUSE distributions on whatever device that is available to them, whether that be at school, the library or at home.

“The openSUSE leadership team has always expressed the fact that it is important to have the right tool for the right job,” Pfeifer said. “openSUSE has a lot of powerful tools. Securely accessing openSUSE and its toolset from anywhere extends the power of the distribution to the device in someone’s pocket, to a smart TV, or VR browser of a user in an instant.”

A key member of the Shells tech team involved with the collaboration is Debian developer and former Purism Chief Technical Officer Zlatan Todoric.

“The Shells and openSUSE collaboration is one of those that we all enjoy in the FLOSS community,” Todoric said, who is currently serving at Shells’ Vice President of Technology. “Sharing knowledge, ideas, and helping each other to benefit the entire community is obviously what it is all about. openSUSE is a well known integrator and has vast experience in desktop and cloud environments, and having them as an option for our Shells cloud computers is a win-win solution for everyone. The collaboration will continue to expand even further as time goes on and I can already tell you that the openSUSE experience on Shells is going to be loved.”

Disclaimer: The initial go-live images are Tumbleweed images that make it easier to adjust as the distro changes. The release team is working toward having an openSUSE Leap image.

Get your openSUSE virtual desktop here.

Media Contacts:

Alex Lee Shells.com alex@shells.com

Douglas DeMaio openSUSE ddemaio@opensuse.org

a silhouette of a person's head and shoulders, used as a default avatar

We10X pack de iconos Windows para nuestro Plasma 5

Aunque me encantan los iconos por defecto de Plasma 5 siempre está bien tener alternativas para personalizar nuestro entorno de trabajo. Y si una de esa alternativa puede cumplir algo más que la simple decoración, mejor que mejor. Hoy os presento We10X pack de iconos para Windows para nuestro Plasma 5 que sirven tanto para dar un aspecto especial a nuestro escritorio como para camuflarlo en determinadas circunstancias.

We10X pack de iconos Windows para nuestro Plasma 5

No es broma, hay algunas distribuciones GNU/Linux que quieren aparentar ser un sistema Windows. Las razones pueden ser variadas aunque las más evidentes podrían ser pasar desapercibido en algún sitio donde lo normal es que sea de uso habitual el sistema privativo de Microsoft o hacer que el usuario no vea «demasiado extraño» el entorno de trabajo al que está acostumbrado a manejar y hacer que la transición hacía un sistema libre sea menos «traumática».

Por este par de razones y porque seguro que hay gente que le gusta ese estilo de iconos existen algunas alternativas como Iconos Windows 10, 7 Icons o Windows Vista de los que ya hablé en el blog, pero en esta ocasión os ofrezo We10X, una creación de yeyushengfan258 que basándose en los iconos Windows permite mimetizar el famoso escritorio de Microsoft.

We10X pack de iconos Windows para nuestro Plasma 5

Y como siempre digo, si os gusta el pack de iconos podéis “pagarlo” de muchas formas en la nueva página de KDE Store, que estoy seguro que el desarrollador lo agradecerá: puntúale positivamente, hazle un comentario en la página o realiza una donación. Ayudar al desarrollo del Software Libre también se hace simplemente dando las gracias, ayuda mucho más de lo que os podéis imaginar, recordad la campaña I love Free Software Day de la Free Software Foundation donde se nos recordaba esta forma tan sencilla de colaborar con el gran proyecto del Software Libre y que en el blog dedicamos un artículo.

Más información: KDE Store

a silhouette of a person's head and shoulders, used as a default avatar

Curso de Vim: atajos de teclado de #Vim en tmux

Veamos cómo movernos entre paneles y cómo copiar en tmux con los atajos de teclado de Vim

Desde hace un tiempo, estoy “redescubriendo” tmux para crear diferentes paneles y ventanas en nuestra consola. Y quise poder aplicar los movimientos y atajos de teclado para copiar de Vim a tmux.

Este artículo es una nueva entrega del curso “improVIMsado” que desde hace meses vengo publicando en mi blog sobre el editor Vim y que puedes seguir en estos enlaces:

Y más recursos en la guía en español para aprender Vim:

Con tmux podemos crear paneles, ventanas dentro de nuestra consola, para poder dedicar cada una a una tarea. Además de poder desconectarnos de tmux, dejando todo trabajando en segundo plano y volver a conectarnos cuando queramos.

Quería poder moverme entre los paneles, no con las flechas del cursor, si no con las teclas de movimiento de Vim, ya sabes: hjkl

Y también quería poder utilizar la selección de texto del modo visual de Vim en tmux para seleccionar texto y copiarlo.

Así que para ello añadí lo siguiente en el archivo tmux.conf en mi /home que es el archivo de configuración de tmux.

# Movimientos de Vi para moverse entre paneles
bind h select-pane -L
bind j select-pane -D
bind k select-pane -U
bind l select-pane -R

## Atajos de Vi para copiar texto
setw -g mode-keys vi
set-option -s set-clipboard off
bind P paste-buffer
bind-key -T copy-mode-vi v send-keys -X begin-selection
bind-key -T copy-mode-vi y send-keys -X rectangle-toggle
unbind -T copy-mode-vi Enter
bind-key -T copy-mode-vi Enter send-keys -X copy-pipe-and-cancel 'xclip -se c -i'
bind-key -T copy-mode-vi MouseDragEnd1Pane send-keys -X copy-pipe-and-cancel 'xclip -se c -i'

Así ahora pulsado C-a (tengo esa configuración en tmux en vez del predeterminado C-b) y las teclas h,j,k o l podré moverme al panel izquierdo, inferior, superior o derecho respectivamente.

También puedo entrar en el modo copiar de tmux con el predeterminado C-[ y entrar en el modo visual, copiar texto y pegarlo en otro panel o ventana. Veamos los pasos:

  • Pulsamos C-a C-[ (ya sabes Control y la tecla a y después Control y [ ) Para entrar en el modo copiar
  • Nos desplazamos por el texto hasta donde queremos. Entramos en el modo visual con v y seleccionamos el texto que queremos y pulsamos Enter
  • Vamos a otro panel o ventana y para pegar el texto, pulsaremos C-a P

Espero que os sirva y haya gustado. Unimos estas dos grandes herramientas como son Vim y tmux.

the avatar of openQA-Bites