helio.loureiro.eng.br
  • Home
  • Unix
  • Linux
  • Blog
  • Python
  • Programação
  • Tudo
  • Suécia
  1. You are here:  
  2. Home
  3. Unix
  4. Linux

Os artigos mais lidos de 2024

  • linux-br.org num ritmo mais lento
  • Criando um serviço de relay de DNS-over-HTTPS
  • Minha palestra sobre a história do Unix na IX BSD Day
  • Pedal forte de 2023 em dados do Google
  • Linux vs GNU/Linux

Estado dos processadores em termos de vulnerabilidade com Linux

Details
Written by: Helio Loureiro
Category: Linux
Published: August 23, 2024
Hits: 1082

Estávamos discutindo sobre upgrade de firmware no grupo Linux Brasil eu resolvi dar uma revisitada no artigo que escrevi sobre vulnerabilidades de CPU: falhas de segurança em CPU nas distros com linux-libre.

Olhando aqui meu desktop, estou até que bem protegido.

  
root@goosfraba ~# for v in /sys/devices/system/cpu/vulnerabilities/*
                      echo -n "$v:"; cat $v
                  end
/sys/devices/system/cpu/vulnerabilities/gather_data_sampling:Not affected
/sys/devices/system/cpu/vulnerabilities/itlb_multihit:Not affected
/sys/devices/system/cpu/vulnerabilities/l1tf:Not affected
/sys/devices/system/cpu/vulnerabilities/mds:Not affected
/sys/devices/system/cpu/vulnerabilities/meltdown:Not affected
/sys/devices/system/cpu/vulnerabilities/mmio_stale_data:Not affected
/sys/devices/system/cpu/vulnerabilities/reg_file_data_sampling:Not affected
/sys/devices/system/cpu/vulnerabilities/retbleed:Mitigation: untrained return thunk; SMT disabled
/sys/devices/system/cpu/vulnerabilities/spec_rstack_overflow:Not affected
/sys/devices/system/cpu/vulnerabilities/spec_store_bypass:Mitigation: Speculative Store Bypass disabled via prctl
/sys/devices/system/cpu/vulnerabilities/spectre_v1:Mitigation: usercopy/swapgs barriers and __user pointer sanitization
/sys/devices/system/cpu/vulnerabilities/spectre_v2:Mitigation: Retpolines; STIBP: disabled; RSB filling; PBRSB-eIBRS: Not affected; BHI: Not affected
/sys/devices/system/cpu/vulnerabilities/srbds:Not affected
/sys/devices/system/cpu/vulnerabilities/tsx_async_abort:Not affected
    
  

Eu fiz recentemente um upgrade de firmware aqui usando o fwupgrmgr. Não salvei o resultando, mas salvei o que fiz no sh1bb0l33t.

E falando sh1bb0l33t:

  
root@sh1bb0l33t ~# for v in /sys/devices/system/cpu/vulnerabilities/*
                                             echo -n "$v:"; cat $v
                                         end
/sys/devices/system/cpu/vulnerabilities/gather_data_sampling:Mitigation: Microcode
/sys/devices/system/cpu/vulnerabilities/itlb_multihit:KVM: Mitigation: VMX disabled
/sys/devices/system/cpu/vulnerabilities/l1tf:Mitigation: PTE Inversion; VMX: conditional cache flushes, SMT vulnerable
/sys/devices/system/cpu/vulnerabilities/mds:Mitigation: Clear CPU buffers; SMT vulnerable
/sys/devices/system/cpu/vulnerabilities/meltdown:Mitigation: PTI
/sys/devices/system/cpu/vulnerabilities/mmio_stale_data:Mitigation: Clear CPU buffers; SMT vulnerable
/sys/devices/system/cpu/vulnerabilities/reg_file_data_sampling:Not affected
/sys/devices/system/cpu/vulnerabilities/retbleed:Mitigation: IBRS
/sys/devices/system/cpu/vulnerabilities/spec_rstack_overflow:Not affected
/sys/devices/system/cpu/vulnerabilities/spec_store_bypass:Mitigation: Speculative Store Bypass disabled via prctl
/sys/devices/system/cpu/vulnerabilities/spectre_v1:Mitigation: usercopy/swapgs barriers and __user pointer sanitization
/sys/devices/system/cpu/vulnerabilities/spectre_v2:Mitigation: IBRS; IBPB: conditional; STIBP: conditional; RSB filling; PBRSB-eIBRS: Not affected; BHI: Not affected
/sys/devices/system/cpu/vulnerabilities/srbds:Mitigation: Microcode
/sys/devices/system/cpu/vulnerabilities/tsx_async_abort:Mitigation: TSX disabled
  

Se estranharem a sintaxe do comando no shell, é porque estou usando fish pra shell interativo. Adotei e não largo mais.

Voltando ao assunto de updates de firmwares, fwupdmgr faz tudo pra você hoje em dia. Os tempos de ter um disco com Windows ou Dos ou FreeDOS pra atualizar são coisa do passado.

Existe a possibilidade de dar algo errado? Claro. Sempre. Estamos falando de firmware de placa-mãe e HDDs/SSDs. Se o processo parar no meio pode dar errado. E alguns updates acabam provocando efeitos indesejados como lentidão (exemplo de correções pra ataques de side channel de processador). Então algumas pessoas preferem escolher mais meticulosamente os updates antes de aplicar.

Mas se esse não é seu caso, eu fortemente recomendo usar o fwupdmgr e atualizar os firmwares de seu computador.

E deixo aqui a frase dita e escrita pelo grande Kevlin Henney durante uma palestra em Estocolmo na Ericsson, e registrada muito péssimamente pela minha câmera do celular (Kevlin, se estiver lendo isso aqui, eu peço desculpas pela fotografia tão borrada).

Melhorando a previsão do ano do Linux no desktop

Details
Written by: Helio Loureiro
Category: Linux
Published: August 23, 2024
Hits: 1156
  • linux
  • python
  • desktop
  • previsão

Eu resolvi melhorar a previsão e o modelo pra tal sobre o Linux no desktop, uma realidade inegável.  Então escrevi algo em python pra fazer isso pra mim o trabalho e usar de algum modelo já pronto.


(venv) helio@goosfraba ~/D/linux-desktop-dominance-forecast (main)> ./forecasting.py
            Windows  OS X  Unknown  Linux  Chrome OS  iOS  Android  \
Date                                                                 
2009-01-01    95.42  3.68     0.17   0.64        0.0  0.0      0.0   
2009-02-01    95.39  3.76     0.14   0.62        0.0  0.0      0.0   
2009-03-01    95.22  3.87     0.16   0.65        0.0  0.0      0.0   
2009-04-01    95.13  3.92     0.17   0.66        0.0  0.0      0.0   
2009-05-01    95.25  3.75     0.24   0.65        0.0  0.0      0.0   

            Playstation  Other  
Date                            
2009-01-01         0.08   0.02  
2009-02-01         0.07   0.02  
2009-03-01         0.08   0.02  
2009-04-01         0.10   0.02  
2009-05-01         0.09   0.02  
            Windows   OS X  Unknown  Linux  Chrome OS  iOS  Android  \
Date                                                                  
2024-01-01    73.00  16.11     5.33   3.77       1.78  0.0      0.0   
2024-02-01    72.17  15.42     6.10   4.03       2.27  0.0      0.0   
2024-03-01    72.47  14.68     6.52   4.05       2.27  0.0      0.0   
2024-04-01    73.50  14.70     5.34   3.88       2.56  0.0      0.0   
2024-05-01    73.91  14.90     4.87   3.77       2.54  0.0      0.0   
2024-06-01    72.81  14.97     6.23   4.05       1.93  0.0      0.0   
2024-07-01    72.10  14.92     7.13   4.44       1.41  0.0      0.0   

            Playstation  Other  
Date                            
2024-01-01          0.0   0.01  
2024-02-01          0.0   0.01  
2024-03-01          0.0   0.01  
2024-04-01          0.0   0.01  
2024-05-01          0.0   0.01  
2024-06-01          0.0   0.01  
2024-07-01          0.0   0.01  
/home/helio/DEVEL/linux-desktop-dominance-forecast/venv/lib/python3.12/site-packages/statsmodels/tsa/base/tsa_model.py:473: ValueWarning: No frequency information was provided, so inferred frequency MS will be used.
  self._init_dates(dates, freq)
/home/helio/DEVEL/linux-desktop-dominance-forecast/venv/lib/python3.12/site-packages/statsmodels/tsa/base/tsa_model.py:473: ValueWarning: No frequency information was provided, so inferred frequency MS will be used.
  self._init_dates(dates, freq)
/home/helio/DEVEL/linux-desktop-dominance-forecast/venv/lib/python3.12/site-packages/statsmodels/tsa/statespace/sarimax.py:978: UserWarning: Non-invertible starting MA parameters found. Using zeros as starting parameters.
  warn('Non-invertible starting MA parameters found.'
RUNNING THE L-BFGS-B CODE

           * * *

Machine precision = 2.220D-16
 N =           11     M =           10
 This problem is unconstrained.

At X0         0 variables are exactly at the bounds

At iterate    0    f=  2.00575D-01    |proj g|=  1.24633D+00

At iterate    5    f= -1.49635D-01    |proj g|=  1.77236D-01

At iterate   10    f= -3.64537D-01    |proj g|=  1.24837D-01

At iterate   15    f= -3.84843D-01    |proj g|=  1.22570D-01

At iterate   20    f= -4.20877D-01    |proj g|=  9.71167D-02

At iterate   25    f= -4.29351D-01    |proj g|=  1.13565D-01

At iterate   30    f= -4.33425D-01    |proj g|=  9.06436D-02

At iterate   35    f= -4.34142D-01    |proj g|=  3.98871D-02

At iterate   40    f= -4.36192D-01    |proj g|=  4.26757D-01

At iterate   45    f= -4.37801D-01    |proj g|=  6.82859D-02

At iterate   50    f= -4.37938D-01    |proj g|=  1.67285D-02

           * * *

Tit   = total number of iterations
Tnf   = total number of function evaluations
Tnint = total number of segments explored during Cauchy searches
Skip  = number of BFGS updates skipped
Nact  = number of active bounds at final generalized Cauchy point
Projg = norm of the final projected gradient
F     = final function value

           * * *

   N    Tit     Tnf  Tnint  Skip  Nact     Projg        F
   11     50     55      1     0     0   1.673D-02  -4.379D-01
  F = -0.43793754789434586     

STOP: TOTAL NO. of ITERATIONS REACHED LIMIT                 
/home/helio/DEVEL/linux-desktop-dominance-forecast/venv/lib/python3.12/site-packages/statsmodels/base/model.py:607:
  ConvergenceWarning: Maximum Likelihood optimization failed to converge. Check mle_retvals
  warnings.warn("Maximum Likelihood optimization failed to "
The year of Linux on the Desktop: 2036-11-30 00:00:00

Se ignorarmos os pequenos erros e avisos que aparecem, coisa pouca e irrelevante como valor divergir demais, podemos ver claramente quando o ano do Linux no desktop acontece: 2036-11-30

Então a previsão revisada é que logo estaremos em todos os lugares. Aguardem-nos!

E claro que publiquei isso tudo no GitHub:

https://github.com/helioloureiro/linux-desktop-dominance-forecast

E usei o seguinte artigo como referência (e código, diga-se de passagem):

https://builtin.com/data-science/time-series-forecasting-python

Bom ano do Linux no desktop pra todos vocês.

O ano do Linux no desktop está chegando!

Details
Written by: Helio Loureiro
Category: Linux
Published: August 22, 2024
Hits: 1143

Parece que finalmente acordaram pra aquilo que era óbvio: Linux chegou pra dominar também o desktop!

Lorem ipsum dolor sit amet, consectetur adipiscing elit. Sed molestie scelerisque ultrices. Nullam venenatis, felis ut accumsan vestibulum, diam leo congue nisl, eget luctus sapien libero eget urna. Duis ac pellentesque nisi.

Foram meros 4%, mas a tendência é de crescimento e não tem volta.  Até mesmo peguei os dados diretamente do site statcounter.

Claramente Linux está em plena ascensão.  Seja porque razão for, o importante é estar lá.  E vai chegar ao 100% com certeza.  Eu até fiz uma checagem usando uma função forecast do libreoffice pra ver quantos anos serão necessários.

Ou seja, Linux dominará completamente o desktop em outubro de 2151.  Marquem em suas agendas pois será uma data inesquecível.  E não temos meta, mas quando chegarmos na meta nós dobraremos a meta.  Aguardem-nos!

Ataques de força bruta no login do linux-br.org

Details
Written by: Helio Loureiro
Category: Linux
Published: August 02, 2024
Hits: 1026
  • wordpress
  • wordfence
  • segurança
  • ataques de força bruta

Eu segui uma dica do @This email address is being protected from spambots. You need JavaScript enabled to view it. sobre usar o Wordfence no WordPress.  E realmente funciona legal barrando várias tentativas de ataques.

Eu dei uma olhada nos de força bruta e aqui estão os logins mais usados:


MariaDB [(none)]> select username, fail, inet6_ntoa(ip), UA from wp_wflogins into outfile 'ataques.csv';

> awk '{print $1}' ataques.csv | sort -n | uniq -c | sort -n
      1 -
      1 123123
      1 1234
      1 123456
      1 123456789
      1 443/wp-login.php
      1 aaa
      1 abcd1234
      1 admaster
      1 admin.
      1 AdMiN
      1 admin123
      1 admina
      1 admini
      1 administrators
      1 adminPeach
      1 adminwp
      1 admon
      1 Adsystem
      1 This email address is being protected from spambots. You need JavaScript enabled to view it.
      1 ahmed
      1 alfons
      1 alireza
      1 anna
      1 arrow
      1 artsadd
      1 ask6776
      1 atarihost
      1 autonewsbot
      1 awen
      1 azaret
      1 This email address is being protected from spambots. You need JavaScript enabled to view it.
      1 Beast3x
      1 beescleaning
      1 carpetsdubai
      1 Casper_Security
      1 catmeow
      1 chris
      1 christiane
      1 Christophe
      1 control
      1 cpolo
      1 dagon
      1 darcy56
      1 Darcy56
      1 dedi
      1 demilation
      1 DemoDemo
      1 demo_w1p
      1 devadmin
      1 dexter
      1 digilabs
      1 donaljkt9
      1 dummy_store_5
      1 editor
      1 ednabanaag
      1 eliasaf
      1 enamad
      1 eosuperadmin
      1 Fabien
      1 Farribeiro
      1 gestinet
      1 globalint
      1 goog
      1 This email address is being protected from spambots. You need JavaScript enabled to view it.
      1 GP_Admin
      1 grupovhn
      1 gtfobiash
      1 This email address is being protected from spambots. You need JavaScript enabled to view it.
      1 hopefox34
      1 This email address is being protected from spambots. You need JavaScript enabled to view it.
      1 info
      1 This email address is being protected from spambots. You need JavaScript enabled to view it.
      1 Ivan
      1 This email address is being protected from spambots. You need JavaScript enabled to view it.
      1 jbalazs8178
      1 This email address is being protected from spambots. You need JavaScript enabled to view it.
      1 john
      1 justin
      1 kinga
      1 kobieta
      1 kulturecom
      1 This email address is being protected from spambots. You need JavaScript enabled to view it.
      1 lluis
      1 loafa
      1 This email address is being protected from spambots. You need JavaScript enabled to view it.
      1 mainstream
      1 marina
      1 martinharvey
      1 Megusta
      1 microadmin
      1 miruku
      1 mohit
      1 monica
      1 mungmee
      1 MUWY
      1 ndvtzaifnz
      1 Nwildner
      1 oktay-dogangun
      1 options
      1 ovauser-admin
      1 PiSh3r
      1 protan
      1 qiang521
      1 quantri
      1 raeesa
      1 Rahul
      1 redtor
      1 richard
      1 Richard
      1 ridiz
      1 rikimoh39
      1 root
      1 rootadmin
      1 roottn
      1 rzu4bd
      1 sadminusez
      1 santi2
      1 senterprisys_admin
      1 SEOExpert
      1 seojiwo
      1 seomaster009
      1 shelby96
      1 Sion
      1 siteadmin
      1 smngrs952
      1 Support
      1 temp3
      1 This email address is being protected from spambots. You need JavaScript enabled to view it.
      1 test3
      1 tester
      1 testionos
      1 tuanduongthe
      1 tuanpham
      1 upastra007
      1 Username
      1 Vikash
      1 voquanghuy
      1 wadmiine
      1 wdmgpvt
      1 webstone24
      1 webuser
      1 wpadmin
      1 WPADMIN
      1 w-padmine
      1 wp-admine
      1 wp-blog
      1 wp_developer
      1 wpengine
      1 wp_rest_api
      1 wpsystem
      1 wpupdate
      1 wuser
      1 wwwadm
      1 xcom
      1 xtw183870bbe
      1 xtw18387106f
      1 xtw1838711ab
      1 xtw183871206
      1 xtw183871550
      1 xtw183872fc0
      1 xtw18387331a
      1 xtw1838738ca
      1 xtw183873c09
      1 xtw183874283
      1 xtw183875328
      1 xtw1838754ba
      1 xtw18387596a
      1 xtw183875977
      1 xtw1838761a5
      1 xtw183876e88
      1 xtw18387757d
      1 xtw183877c79
      1 xtw183878b0d
      1 xtw18387958b
      1 xtw183879670
      1 This email address is being protected from spambots. You need JavaScript enabled to view it.
      1 xtw18387a0c5
      1 xtw18387a9de
      1 xtw18387aa3b
      1 xtw18387adf8
      1 xtw18387c077
      1 xtw18387c339
      1 xtw18387d0aa
      1 xtw18387daad
      1 xtw18387e84d
      1 xtw18387e943
      1 xtw18387f29e
      1 xuanphong
      1 yanz
      1 zestful
      1 Zestful
      1 zokaroll
      2 12345678
      2 ac
      2 adminlin
      2 adminsup
      2 adminusez
      2 Auto
      2 bapaksaya
      2 burnolurko
      2 Clare
      2 francisunderwood
      2 greeceman
      2 happy
      2 hex
      2 hxq1879
      2 ismm
      2 jacquespermisdeconduire
      2 jatin
      2 jisuo
      2 lashkari
      2 maximixer789
      2 Nacht
      2 pajero_sports
      2 smngrs953
      2 smngrs955
      2 susan
      2 swilliams
      2 testuser
      2 thuylt
      2 wadmines
      2 This email address is being protected from spambots. You need JavaScript enabled to view it.
      2 wiktorB
      2 woopayplug
      2 wordpress_admin_bak
      2 wordpress_administratora
      2 wordpressauto
      2 wp
      2 wpenginesupport
      2 wpmanager
      2 wp_postadmin
      2 wpuser
      2 x
      2 xrumertest
      2 xtw1838729c0
      2 xtw18387754d
      2 yanz@123457
      2 yeuthuongmongmanh
      2 zadminz
      2 zutodoko
      2 This email address is being protected from spambots. You need JavaScript enabled to view it.
      3 admim
      3 admin1
      3 admin6
      3 admingusar
      3 bimak73555
      3 Chris
      3 demo
      3 This email address is being protected from spambots. You need JavaScript enabled to view it.
      3 mevivu
      3 qwee123123
      3 Reseller-webmaster
      3 talhas
      3 test1
      3 wadmine
      4 1001010
      4 andremachado
      4 crander
      4 hostingadmin
      4 matakucing3
      4 patola
      4 server
      4 stender
      4 username
      4 wordcamp
      4 wordpress_administrator
      5 administratoir
      5 administrator
      5 This email address is being protected from spambots. You need JavaScript enabled to view it.
      5 excontrol
      5 itsme
      5 support
      5 user
      5 wpadmins
      5 wpcore
      6 smngrs951
      7 nwildner
      7 paulomartins
     11 test
     12 farribeiro
     18 Admin
     19 wadminw
     28 wwwadmin
     54 linux-br
    151 df7c8c98dfd88d9dfad
   1270 admin

Realmente alguns logins existem e devem estar assinados nas páginas.  Mas o restante é estilo Forrest Gump correndo de um lado pro outro atravessando os Estados Unidos sem saber o porquê.

Linux vs GNU/Linux

Details
Written by: Helio Loureiro
Category: Linux
Published: March 08, 2024
Hits: 2285

A controvérsia quanto à nomenclatura GNU/Linux é uma disputa entre membros da comunidade de software livre e código aberto. É centrada em torno da denominação do núcleo de sistema chamado "Linux", e a vontade de utilizar esta nomenclatura como um termo genérico para tudo relacionado ao mesmo. O termo defendido pela Free Software Foundation (FSF), para relacionar o núcleo do sistema com as ferramentas desenvolvidas pela fundação GNU seria GNU/Linux, ficando o nome "Linux" para ser utilizado apenas quando se referindo ao núcleo Linux. O nome é por vezes pronunciado como "GNU com Linux".

https://pt.wikipedia.org/wiki/Controv%C3%A9rsia_quanto_%C3%A0_nomenclatura_GNU/Linux

Eu peguei esse trecho da wikipedia.  Abrindo um pequeno comentário sobre o mesmo:  a versão em português está bem diferente da versão em inglês e fica ao critério do leitor dar uma olhada em ambos e decidir qual está melhor.  Voltando ao assunto, a guerra entre os termo Linux e GNU/Linux.  A briga vem de longa data, basicamente quando Linux começou a crescer exponencialmente em popularidade e deixou o projeto GNU em sua sombra.  O bom doutor, Richard Stallman, ficou famoso por suas longas interjeições sobre o assunto.  E virou meme.  Infinitos memes.

O sistema operacional era GNU no início, mas por conta do kernel na época não estar pronto, usaram Linux.  Mas não imaginavam que a força de comunidade ao redor do Linux seria tão grande e tão marcante.  Ao ponto do Linux ter sido somente um kernel no início, mas hoje ser uma fundação e com vários projetos abrigados, como o OpenTofu, Linux para setor automobilístico, CNCF (Cloud Native Computing Foundation), etc.  Por simplicidade, muita gente chama o sistema operacional inteiro com Linux somente.  E isso, claro, ganhou força por ser mais fácil e simples que dizer GNU/Linux ou GNU+Linux.

Dentro dessa discussão existe ainda o ponto que alguns levantam que dentro de um sistema operacional, geralmente aquilo que você usa de uma distro - distribuição de Linux, não depende só do GNU.  Existem outros códigos, projetos e licenças ali.  De MIT a Apache, de KDE a Gnome, e assim por diante.  Então se fosse pra dar crédito a todos ali, deveria ser chamado MIT/Xorg/Apache/Git/GNU/Linux ou qualquer outra coisa tão bizarra ou até mais que isso.

Claro que grande parte das coisas ali não existiriam sem a contribuição do projeto GNU, principalmente com o GCC.  Até mesmo os BSDs dependeram do GCC até a Apple botar dinheiro no llvm/clang - e por conta disso estavam todos parados no GCC 3.2 por causa da mudança pra licença GPLv3, então a Apple ajudou muito.

E existe ainda a discussão, bastante rasa, de alguns de que Linux não roda sem GNU.  Isso já foi demonstrado tanto pelo Android que não é verdade.  E agora existem tanto o Chimera Linux, sem absolutamente nada de GNU e usando algumas ferramentas escritas em rust, quanto o Alpine Linux, feito pra containers.

Mas o ponto que eu queria abordar aqui, pois essa discussão já existe faz décadas e nada mudou muito, foi um artigo que peguei no site do GNU.  Eu particularmente achei maravilhoso.

https://www.gnu.org/distros/common-distros.en.html

tl;dr: basicamente o que está escrito é que o projeto GNU não endossa as distribuições porque pra isso não pode distribuir nada que não seja software livre.  Então quem usa firmwares binários, os blobs, não é endossado como GNU.  Nem quem permite instalação de software proprietário.  Sim, quem permite.  Pois o OpenBSD não carrega firmwares binários por questões de segurança.  Nem contém softwares proprietários no sistema operacional.  Mas o sistema de ports, que são scripts e Makefiles de contribuidores e de usuários, esse instala softwares não livres.  E isso é o suficiente pra GNU não endossar como... um sistema GNU???  Apesar da hipocrisia, acho que não seria o caso de nomear o OpenBSD como GNU de qualquer forma.

Mas o interessante é que ela acaba com a discussão.  Se contém firmware ou é possível instalar software proprietários (steam, google chrome, etc) então não é GNU.  Muito bem.  Então nem é mais preciso a discussão sobre o nome.  O nome é Linux e pronto :)

Interessante que referem-se às distros como GNU/Linux, como no caso do Arch GNU/Linux, enquanto o próprio Arch está como Arch Linux.

Pra terminar, deixo aqui vocês com os melhores memes desse tema.

 

  1. Resolvendo o problema de conexão ssh travando no raspberry pi
  2. Renderizando as fotos da GoPro em vídeo mpeg4 com ffmpeg e NVIDIA
  3. Reconectando por software um dispositivo USB no Linux
  4. Mantendo pacote no AUR

Page 2 of 20

  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10

Estatísticas

  • Users 2
  • Articles 454
  • Articles View Hits 3212732

Imagem aleatória