Skip to main content

the avatar of Chun-Hung sakana Huang

三大雲平台工具升級 + awscli 指令補齊小記

三大雲平台工具升級 + awscli 指令補齊小記

OS: container with openSUSE Leap 15


上次建立容器化方式來管理雲平台是上個月5號, 這中間三個工具都有版本升級
今天就來寫一下工具升級的方式

首先是 aws cli, 因為使用 pip , 所以就使用 pip install  方式升級

# pip install awscli --upgrade

檢查版本
# aws  --version
aws-cli/1.16.189

接下來是 Google SDK (  gcloud ), 使用  gcloud  components update 方式升級

檢查版本
# gcloud  --version

Google Cloud SDK 240.0.0
bq 2.0.42
core 2019.03.22
gsutil 4.37

升級套件
# gcloud   components  update

檢查版本
# gcloud  --version

Google Cloud SDK 252.0.0
bq 2.0.43
core 2019.06.21
gsutil 4.39

最後是 Azure , 因為當初是將  repo 匯入到 openSUSE, 所以使用 zypper 處理

先更新 repo, 這個部分很重要因為azure 的套件庫預設沒有自動更新
# zypper  refresh
使用 zypper 升級套件
# zypper  update  -y  azure-cli

檢查版本
# az  --version
azure-cli                         2.0.67

同場加映: aws   命令補齊

OS: Mac 10.14.5
awscli:  1.16.157

因為在裝 Google Cloud SDK ( gcloud )  初始化的時候, 就會將 completion 功能整合進去
所以相對應 aws 指令, 沒有預設啟用 completion 就顯得不方便

參考官方網站
我是使用 Mac 10.14.5, shell 是 bash

所以做法上很簡單

啟用命令補齊
$complete -C  '/usr/local/bin/aws_completer'  aws

讓預設開終端機就執行 aws_completer
在 ~/.bash_profile 檔案內
加入
# this is for aws complete
complete -C '/usr/local/bin/aws_completer' aws

大功告成

~ enjoy it

Reference:

the avatar of Federico Mena-Quintero

Bzip2 1.0.7 is released

Bzip2 1.0.7 has been released by Mark Wielaard. We have a slight change of plans since my last post:

  • The 1.0.x series is in strict maintenance mode and will not change build systems. This is targeted towards embedded use, as in projects which already embed the bzip2-1.0.6 sources and undoubtedly patch the build system. Right now this series, and the tagged 1.0.7 release, live in the sourceware repository for bzip2.

  • The 1.1.x series has Meson and CMake build systems, and a couple of extra changes to modernize the C code but which were not fit for the 1.0.7 release. This is targeted towards operating system distributions. This lives in the master branch of the gitlab repository for bzip2.

Distros and embedded users should start using bzip2-1.0.7 immediately. The patches they already have for the bzip2's traditional build system should still apply. The release includes bug fixes and security fixes that have accumulated over the years, including the new CVE-2019-12900.

Once 1.1.0 is released, distributions should be able to remove their patches to the build system and just start using Meson or CMake. You may want to monitor the 1.1.0 milestone — help is appreciated fixing the issues there so we can make the first release with the new build systems!

the avatar of Nathan Wolf

Blathering | Raspberry Pi to Monitor Air Quality with an Arduino based Thermostat

I’d like to call myself a tinkerer, but I don’t tinker enough hold that badge. I do like to look at other projects and see what is out there for things to make my life more efficient. My target is to make my home, work for me, to automate every aspect that is feasible that … Continue reading Blathering | Raspberry Pi to Monitor Air Quality with an Arduino based Thermostat

the avatar of Nathan Wolf

the avatar of Nathan Wolf
the avatar of Efstathios Iosifidis

Εγκατάσταση του Unity 3D στο openSUSE (ισχύει και σε άλλες διανομές)

Unity 3D logo


Το Unity 3D είναι ίσως η δημοφιλέστερη μηχανή κατασκευής παιχνιδιών. Για "προσωπική χρήση" και ειδικότερα για το ξεκίνημά σας παρέχεται δωρεάν, αρκεί τα ετήσια κέρδη να μην υπερβαίνουν τα $100 χιλ. Το παραπάνω έχει μια λογική διότι η εταιρία επιτρέπει τον κάθε χρήστη να χρησιμοποιήσει την πλατφόρμα της, να δημιουργήσει ένα παιχνίδι με βάση το πρόγραμμα Unity 3D και εάν αυτό είναι είναι επιτυχημένο, τότε προτρέπει στην αγορά της άδειας χρήσης. Εάν ο δημιουργός έχει έσοδα 100.000$, τότε δεν θα έχει πρόβλημα να πληρώνει 125$ το μήνα (ήτοι 1500$ το χρόνο).

Στην αρχική σελίδα, επιλέγοντας Personal, θα σας βγάλει στην ιστοσελίδα των λήψεων. Εδώ μπορεί να βρείτε εκδόσεις μόνο για windows και macosx. Οπότε καλύτερα επισκεφθείτε το forum και από εκεί κατεβάστε το Unity Hub για Linux.

Το Unity Hub είναι μια αυτόνομη εφαρμογή που συγκεντρώνει όλα τα απαραίτητα για να δημιουργήσετε το δικό σας παιχνίδι. Πάμε να δούμε πως γίνεται η εγκατάσταση.

1. Αφού κατεβάσατε το Unity Hub για Linux, πρέπει να το κάνετε εκτελέσιμο. Πατήστε δεξί πλήκτρο>Ιδιότητες και στην καρτέλα δικαιώματα, επιλέξτε το Να επιτρέπεται η εκτέλεση του αρχείου ως πρόγραμμα.

Unity 3D, Εκτέλεση του αρχείου ως πρόγραμμα

2. Διπλό κλικ πάνω στο αρχείο. Θα ερωτηθείτε εάν συμφωνείτε με την άδεια χρήσης:

Unity 3D, Άδεια χρήσης

Ενώ στη συνέχεια θα ερωτηθείτε εάν θέλετε να προστεθεί στο μενού.

Unity 3D, Προσθήκη στο μενού

Η αλήθεια είναι ότι όταν το εγκατέστησα δεν μου το πρόσθεσε. Κάθε φορά το άνοιγα με διπλό κλικ στο αρχείο. Εναλλακτικά μπορείτε να το εισάγετε με το menulibre ή με τερματικό:

Δημιουργήστε ένα αρχείο unity3d.desktop στο /usr/share/applications (ή ~/.local/share/applications ή κατευθείαν στο ~/Desktop) με τον παρακάτω κώδικα:

[Desktop Entry]
Encoding=UTF-8
Name=Unity 3D
Exec=/path/to/unity/executable
Icon=/path/to/unity/icon
Type=Application
Categories=Development;

Θα αλλάξετε μόνο τα:

Exec=/path/to/unity/executable (εκεί που βρίσκεται το appimage)
Icon=/path/to/unity/icon (εκεί που βρίσκεται το εικονίδιο της εφαρμογής)

3. Μόλις ανοίξει, θα σας ζητήσει άδεια χρήσης. Προφανώς έχετε την προσωπική χρήση, οπότε απλά δεν σας ενδιαφέρει για τώρα.

Unity 3D, Ερώτηση για άδεια χρήσης

Πατήστε επάνω δεξιά για να εισέλθετε (εάν έχετε λογαριασμό) ή να δημιουργήσετε νέο λογαριασμό.

Unity 3D, Unity ID

Εάν δεν έχετε, πατήστε Create one. Αλλιώς εισάγετε τα όνομα χρήστη και συνθηματικό.

Unity 3D, Οθόνη εισόδου

Αφού εισέλθετε θα δείτε τα στοιχεία σας επάνω δεξιά.

Unity 3D, Εισήλθαμε στον λογαριασμό μας

4. Μετακινούμαστε στην οθόνη των Projects.

Unity 3D, Οθόνη projects

Εδώ θεωρητικά πατάμε το Add και ξεκινάμε νέο έργο για κατασκευή παιχνιδιού. Όμως δεν είναι ακόμα εγκατεστημένο το Unity 3D. Οπότε πρέπει να πατήσουμε στο Installs.

5. Στο Installs, πατάμε το Add.

Unity 3D, Εγκατάσταση Unity

Τώρα θα μας ρωτήσει ποια έκδοση Unity θέλουμε να εγκαταστήσουμε.

Unity 3D, Επιλογή έκδοσης Unity

Αφού επιλέξουμε την έκδοση, θα πρέπει να επιλέξουμε και κάποια πρόσθετα. Ανάλογα για ποια πλατφόρμα θέλετε να έχετε διαθέσιμο το παιχνίδι, εγκαθιστάτε τα ανάλογα πρόσθετα.

Unity 3D, Εγκατάσταση προσθέτων

Όταν τελειώστε, πρέπει να περιμένετε, ανάλογα με την ταχύτητα του δικτύου σας.

Παρόμοια διαδικασία ακολουθείται και στις άλλες διανομές.

Εσείς έχετε φτιάξει κάποιο παιχνίδι; Αν ναι, αφήστε σχόλιο να το δοκιμάσουμε.

the avatar of Sébastien sogal Poher

Les nouveaux Node.js LTS, débogueur GNU et libvirt débarquent dans les instantanés Tumbleweed

Les trois instantanés openSUSE Tumbleweed publiés cette semaine ont mis à jour certains paquets clés pour les utilisateurs de cette version en publication continue.

Un de ces paquets clés était une mise à jour du débogueur GNU, gdb 8.3, publié dans l'instantané 20190607. Le débogueur a activé les tests ada sur les plate-formes ppc64le et riscv64. Les versions multitarget pour riscv64 ont également été activées. L'instantané a également ajouté les tests unitaires pour Logical Volume Manager (LVM) sur disque modulaire (MD) avec la mise à jour de libstorage-ng 4.1.127. Plusieurs correctifs et corrections de bogues ont été appliqués avec la mise à jour de libvirt 5.4.0, ce qui a également permis d'améliorer les liens statiques inutiles, qui entraînait à la fois l'encombrement du disque et de la mémoire. Libvirt a également introduit le support du bit md-clear CPUID. Le package python-libvirt-python 5.4.0 a ajouté la nouvelle interface de programmation (API) et des constantes dans libvirt 5.4.0. L’éditeur de texte vim 8.1.1467 présentait de multiples correctifs, mais l’instantané Tumbleweed a introduit de nouveaux bogues et affiche actuellement une cote de 86, selon le commentateur d’instantané.

Les deux instantanés précédents ont enregistré une note exceptionnelle exceptionnelle de 98 selon le relecteur d’instantané (http://review.tumbleweed.boombatower.com/).

L'instantané 20190606 n'a mis à jour que deux paquets. Le paquet nodejs10 a mis en place une nouvelle version amont à support à long terme (LTS) avec nodejs10 10.16.0 et une mise à jour des sources d'openssl et libuv en version 1.28.0. L'autre mise à jour importante du paquet dans l'instantané était xfdesktop en 4.12.5; ce package pour Xfce 4 a corrigé la taille des icônes dans les paramètres, réinitialisé l'ordre des icônes du bureau et corrigé une [fuite de timer](https://bugzilla.xfce.org /show_bug.cgi?id=13887).

L'instantané 20190605 comportait trois packages mis à jour. Le noyau Linux 5.1.7 avait quelques corrections concernant Btrfs telles que la correction de l'état interne avec un périphérique de stockage situé entre fsync et l'écriture différée des plages adjacentes. La mise à jour du noyau a également supprimé les dépendances avec les éléments internes du pilote arch_timer pour l'architecture arm et ajouté la prise en charge d'Ice Lake au sein de la gestion d'alimentation [x86] d'Intel. Les fuseaux horaires ont été mis à jour avec le package libical 3.0.5 et le package libinput 1.13.2 a apporté des modifications à la prise en charge des pavés tactiles Wacom et Apple Bluetooth.

Le responsable des publications, Dominique Leuenberger, a rédigé un compte rendu des deux semaines précédentes et a déclaré qu'openssl 1.1.1c, Texlive 2019, KDE Plasma 5.16, Qt 5.13, LLVM 8, swig 4.0 et cmake 3.14 progressaient tous dans la file d'attente et seraient bientôt disponibles dans les prochains instantanés de Tumbleweed.

Tags: opensuse

the avatar of Nathan Wolf

the avatar of Federico Mena-Quintero

Preparing the bzip2-1.0.7 release

ATTENTION ALL DISTRIBUTIONS: this is for you. THE SONAME MAY CHANGE!

I am preparing a bzip2-1.0.7 release. You can see the release notes, which should be of interest:

  • Many historical patches from various distributions are integrated now.

  • We have a new fix for the just-published CVE-2019-12900, courtesy of Albert Astals Cid.

  • Bzip2 has moved to Meson for its preferred build system, courtesy of Dylan Baker. For special situations, a CMake build system is also provided, courtesy of Micah Snyder.

What's with the soname?

From bzip2-1.0.1 (from the year 2000), until bzip2-1.0.6 (from 2010), release tarballs came with a special Makefile-libbz2_so to generate a shared library instead of a static one.

This never used libtool or anything; it specified linker flags by hand. Various distributions either patched this special makefile, or replaced it by another one, or outright replaced the complete build system for a different one.

Some things to note:

  • This hand-written Makefile-libbz2_so used a link line like $(CC) -shared -Wl,-soname -Wl,libbz2.so.1.0 -o libbz2.so.1.0.6. This means, make the DT_SONAME field inside the ELF file be libbz2.so.1.0 (note the two digits in 1.0), and make the filename of the shared library be libbz2.so.1.0.6.

  • Fedora patched the soname in a patch called "saneso" to just be libbz2.so.1.

  • Stanislav Brabec, from openSUSE, replaced the hand-written makefiles with autotools, which meant using libtool. It has this interesting note:

Incompatible changes:

soname change. Libtool has no support for two parts soname suffix (e. g. libbz2.so.1.0). It must be a single number (e. g. libbz2.so.1). That is why soname must change. But I see not a big problem with it. Several distributions already use the new number instead of the non-standard number from Makefile-libbz2_so.

(In fact, if I do objdump -x /usr/lib64/*.so | grep SONAME, I see that most libraries have single-digit sonames.)

In my experience, both Fedora and openSUSE are very strict, and correct, about obscure things like library sonames.

With the switch to Meson, bzip2 no longer uses libtool. It will have a single-digit soname — this is not in the meson.build yet, but expect it to be there within the next couple of days.

I don't know what distros which decided to preserve the 1.0 soname will need to do; maybe they will need to patch meson.build on their own.

Fortunately, the API/ABI are still exactly the same. You can preserve the old soname which your distro was using and linking libbz2 will probably keep working as usual.

(This is a C-only release as usual. The Rust branch is still experimental.)

the avatar of Nathan Wolf