Flutter – Scrollable dialog with Getx

To have a scrollable dialog with Getx, you have multiple possibilities.

1. With Get.dialog

Get.dialog(
  Container(
    width: double.maxFinite,
    child: Column(
        mainAxisAlignment: MainAxisAlignment.center,
        mainAxisSize: MainAxisSize.min,
        children: [
          Text("Description 1",
              style:
                  TextStyle(fontWeight: FontWeight.bold)),
          SizedBox(height: 8),
          Flexible(
            child: SingleChildScrollView(
              child: Text('Very, very large title',
                  textScaleFactor: 15),
            ),
          ),
          ElevatedButton(
            onPressed: () {
              Navigator.of(context).pop();
            },
            child: Text("OK"),
          )
        ]),
  ),
);

2. With Get.defaultDialog

Get.defaultDialog(
  content: Flexible(
    child: SingleChildScrollView(
      child: Text('Very, very large title',
                  textScaleFactor: 15),
    ),
  ),
);

3. By combining Get.dialog and AlertDialog

Get.dialog(AlertDialog(
  content: Container(
    width: double.maxFinite,
    child: Column(
        mainAxisAlignment: MainAxisAlignment.center,
        mainAxisSize: MainAxisSize.min,
        children: [
          Text("Description 1",
              style:
                  TextStyle(fontWeight: FontWeight.bold)),
          SizedBox(height: 8),
          Flexible(
            child: SingleChildScrollView(
              child: Text('Very, very large title',
                  textScaleFactor: 15),
            ),
          ),
          ElevatedButton(
            onPressed: () {
              Navigator.of(context).pop();
            },
            child: Text("OK"),
          )
        ]),
  ),
));

Synology – mise à jour de docker-compose

Par défaut les NAS Synology DSM 7 sont livrés avec docker et docker-compose.

Cependant la version de docker-compose est assez ancienne en version 1.xx alors que nous sommes déjà en version 2.13.

Bref, pour faire simple, le mieux est de rajouter dans votre PATH utilisateur, un répertoire et de mettre une version à jour de docker-compose.

Pratique

connectez-vous en ssh sur le nas avec un compte qui peut utiliser docker.

faites un test:

docker-compose -v
docker ps

allez dans votre HOME, => cd

Remarques: faîtes bien le cd , le bash synology DSM7.1 a un problème sur le répertoire par défaut à la connexion.

créez un répertoire bin à la racine de votre HOME dans lequel vous mettrez tous vos binaires.

mkdir bin
nano .bashrc

ajouter:

export PATH="/volume1/homes/monhome/bin:$PATH"

puis appliquer les modifications à la session courante:

source .bashrc

enfin dans le répertoire bin:

cd bin
curl -L https://github.com/docker/compose/releases/download/v2.13.0/docker-compose-`uname -s`-`uname -m` -o docker-compose

changer la version par la dernière présente sur https://github.com/docker/compose/releases/

faites un test:

docker-compose -v

K3OS, Proxmox et cloud-init

Rapide tutoriel pour install K3OS sur Proxmox et avoir une configuration basique cloud-init.

Pourquoi?

K3OS est le remplaçant de rancherOS avec une base de k3s et une automatisation de sa maintenance, idéal pour du self-hosted.

Proxmox est un virtualiseur léger et puissant.

Sauf que K3OS de base à 2 défauts,

  • un clavier US uniquement
  • une connexion ssh par clef uniquement, bien, mais très limitatif quand on a que noVNC et sans copier-coller…

La solution

  1. créer votre vm classique avec l’image iso K3OS sans la démarrer.
  2. Dans la section matériel, ajouter un lecteur cloud-init
  3. dans la section cloud-init maintenant accessible, configurer l’utilisateur à « rancher » et SSH clé public avec votre clé.

démarrez en mode live-cd.

Attention le clavier est en Qwerty, donc regardez un mapping sur internet pour les touches dont vous avez besoins.

  1. connectez-vous avec le compte rancher sans mot de passe (entrer).
  2. créez un répertoire cd : mkdir /home/rancher/cd
  3. monter le cdrom: mount /dev/cdrom /home/rancher/cd
  4. lancez l’installation: sudo k3os install
  5. à l’étape cloud-init, dîtes yes, puis en path /home/rancher/cd/user-data
  6. finissez l’installation
  7. sur votre poste configurez votre ~/.ssh/config avec par exemple:
Host k3os
 HostName 192.168.1.XX
 User rancher
 PreferredAuthentications publickey
 IdentityFile /Users/moi/mnt/p/.ssh/id_ed25519

au reboot:

ssh k3os

Et voilà!

P.S.: vous pouvez enlevez les volumes cloud-init ensuite.