Voyage en Islande

Bons à savoir

  • Prévoir une tenue imperméable avec capuche, des chaussures étanches et un pantalon imperméable : il pleut souvent et la météo peut changer toutes les dix minutes. Une écharpe ou un tour de cou peuvent aussi être bien utiles.
  • Prévoir aussi un maillot de bain et serviettes pour profiter des sources d’eau chaude.
  • Nous avions loué un Kia Stonic, un petit SUV (donc pas un 4×4), et cela nous a suffi pour notre itinéraire. Je conseille tout de même un SUV plutôt qu’une citadine, car certains chemins sont très rocailleux. Attention : les voitures n’ont pas de lunette arrière ; on peut donc voir le contenu du coffre, mais il y a peu ou pas de risque de vol.
  • La plupart des parkings sont payants, souvent autour de 7 €. Certains ont une borne ; pour d’autres, il suffit de scanner un QR code et de payer en ligne, sans installer d’application.
  • Prévoir quelques courses au supermarché dès le départ pour avoir de quoi grignoter et boire pendant les trajets.
  • La carte bancaire est acceptée partout : pas besoin de liquide. Il n’y a pas de pourboire.
  • Pour l’excursion d’observation des baleines, des médicaments contre le mal de mer étaient proposés à l’entrée. Des manteaux chauds étaient disponibles si besoin. Le bateau comporte des espaces intérieurs et extérieurs ; des gants peuvent être utiles.
  • Une taxe de 15 € par jour était à prévoir en supplément lors de la location de la voiture.

Notre séjour

Le Cercle d’Or

  • Þórufoss : jolie cascade gratuite, parfaite pour commencer le séjour.
  • Öxarárfoss : belle cascade située dans la faille intercontinentale. Le paiement d’un parking donne accès aux deux autres parkings du site pour la journée. La route 360 permet ensuite de faire le tour du lac, avec quelques beaux points de vue.
  • Brúarárfoss : magnifiques cascades. Ne pas se contenter des premières chutes visibles : deux autres se trouvent un peu plus bas et sont faciles d’accès depuis le parking payant. Compter une vingtaine de minutes de marche pour atteindre la dernière cascade, dans un cadre plus tranquille. Le sentier était praticable malgré la pluie ; en revanche, le chemin vers le parking gratuit devenait très boueux.
  • Laugarás Lagoon : lieu très agréable pour découvrir les bains islandais en plein air. Il n’y avait personne à l’ouverture.
  • Faxi : cascade sans touriste et agréable pour un arrêt rapide.
  • Geysir : à faire, mais beaucoup de touristes. Le jet jaillit toutes les 4-6 minutes environ.
  • Gullfoss : cascade particulièrement impressionnante ; on finit vite trempé par les embruns. Parking payant.
  • Brúarhlöð : s’arrêter avant le pont et traverser à pied pour prendre quelques photos. Pour un arrêt rapide, le parking payant ne vaut pas forcément le coup.

Les cascades du sud

  • Gluggafoss : superbe cascade nichée dans la nature avec peu de touristes, à ne pas manquer. Un sentier sur la droite permet de grimper facilement sur la colline, de profiter d’un beau panorama et de découvrir une autre cascade cachée plus haut.
  • Seljalandsfoss : cascade impressionnante et très fréquentée. Un sentier permet de passer derrière.
  • Gljúfrabúi : cascade dissimulée dans une cavité, accessible en longeant la colline depuis Seljalandsfoss. Il peut y avoir une longue attente pour y entrer ; nous avons attendu une trentaine de minutes. À moins d’avoir la chance de la voir illuminée par un grand soleil, cela ne vaut peut-être pas la peine d’attendre davantage que 30 minutes.
  • Seljavallalaug : piscine au pied du volcan Eyjafjallajökull. Compter environ un kilomètre sur une route rocailleuse, puis une vingtaine de minutes de marche dans un cadre superbe. L’eau est un peu chaude mais pas suffisamment pour nous convaincre de nous y baigner !
  • Skógafoss : cascade particulièrement belle avec l’arc-en-ciel qui se forme devant, mais très fréquentée.
  • Sólheimajökull : glacier dont l’intérêt nous a paru limité, surtout si vous prévoyez d’en voir un autre plus imposant.
  • Reynisfjara : magnifique plage de sable noir, mais très fréquentée. Marcher un peu plus loin sur la plage permet de s’éloigner de la foule. Un autre point de vue se trouve au bout de la route qui monte jusqu’au phare.

En direction de l’est

  • Eldhraun Lava Field : immense champ de lave recouvert de mousse, visible le long de la route 1. Un petit parking gratuit permet de s’arrêter pour prendre quelques photos.
  • Systrafoss : belle cascade sauvage, avec peu de touristes. Un sentier assez exigeant monte jusqu’à un lac paisible et offre une vue époustouflante sur les environs.
  • Stjórnarfoss : parking gratuit. La cascade est plus impressionnante en vrai qu’en photo ; quelques minutes de marche suffisent pour s’en approcher.
  • Dverghamrar : formations rocheuses étonnantes, accessibles depuis un parking gratuit.
  • Hamrafoss : très belle cascade visible depuis un petit parking en bord de route, juste avant Dverghamrar. On ne peut pas s’en approcher davantage.
  • Svartifoss : superbe cascade entourée de formations basaltiques. Compter 30 à 45 minutes de marche, sur un sentier assez facile. Plusieurs autres randonnées de longueurs différentes sont proposées dans le secteur.
  • Hof Church : jolie petite église au toit recouvert de tourbe.
  • Fjallsárlón : lac où observer des icebergs turquoise flottant sur l’eau brune (moins impressionnant que Jökulsárlón).
  • Jökulsárlón et Diamond Beach : accessibles depuis le même parking. De grands icebergs turquoise d’un côté, des blocs de glace échoués sur le sable noir de l’autre.

Canyons, cascades et sources chaudes

  • Fjaðrárgljúfur : magnifique canyon, mais très fréquenté (venir très tôt le matin). Le parking du haut était “gratuit” (pas de caméra).
  • Skaftárhreppur Waterfall : cascade accessible par la F206. Nous y sommes allés sans 4×4, sans difficulté particulière : la première moitié de la route était très praticable, puis le terrain devenait plus rocailleux. Il est possible de laisser la voiture à mi-chemin et de terminer à pied. La cascade vaut le détour.
  • Kvernufoss : cascade très agréable, au fond d’un petit canyon. On peut passer derrière.
  • Reykjadalur Hot Spring Thermal River : randonnée longue (environ une heure) et parfois très pentue. Le coin aménagé pour se baigner dans la rivière chaude est fréquenté, même en fin d’après-midi, mais l’expérience reste très sympa. Prévoir de l’eau à boire, un sac plastique pour protéger les affaires sèches et de quoi se changer. Des canettes de bière peuvent aussi être glissées dans le sac pour l’apéro dans l’eau !

Le sud-ouest de l’île

Moins intéressant que le reste du voyage, mais voici quelques recommandations.

  • Strandarkirkja : jolie petite église. En longeant la digue, il est possible d’apercevoir des phoques.
  • Eldborg, près de Geitahlíð : cratère accessible après une dizaine de minutes de marche depuis le parking, en empruntant la route 42 puis le chemin qui mène au site.
  • Krýsuvík : parc géothermique aménagé.
  • Volcano Skali Parking P2 : une coulée de lave (parfois encore fumante) datant de 2021 se trouve à quelques minutes du parking.
  • Brimketill lava rock pool : bel endroit pour observer des piscines naturelles creusées dans la roche de lave.

Reykjavík et les environs

Visiter Stockholm

Nous avons passé trois jours dans la capitale suédoise. Il n’y a pas énormément de choses à faire, mais voici ce que j’ai retenu :

  • Un tour des canaux en bateau est sympa à faire, d’autant que le guide permet de connaître l’histoire de la ville. Idéal pour commencer son séjour et découvrir l’étendue de la cité. Plusieurs tours sont proposés en face du palais royal. Il suffit de s’y promener pour voir plusieurs opérateurs. Nous avons pris le « wooden boat tour » d’Archipelago Summer Ride – environ 1h30 pour ~34€.
  • La partie ancienne de la ville se concentre sur la petite île du palais royal : on fait rapidement le tour de ses jolies ruelles. – compter 30min–1h pour divaguer dans cette zone.
  • Le palais royal n’a rien d’extraordinaire. Nous ne l’avons d’ailleurs pas visité.
  • L’hôtel de ville (Stadshuset) est, quant à lui, une merveille ! À voir autant pour son extérieur, que pour son intérieur. Il y a plusieurs visites toute la journée (dans différentes langues selon les horaires) : nous avons pris les billets sur place directement. – compter 45 minutes de visite guidée dans le bâtiment pour ~15€.
  • Le musée du groupe ABBA est… intéractif mais l’expérience peut être mitigée selon les individus : il y avait beaucoup de monde lors de notre visite, ce qui rendait le parcours difficile, alors qu’un ami l’a fait sans personne et s’est éclaté. Il faut dire qu’il propose des karaokés, des mises en scène, et autres quizz. Avec une bande de potes, il y a moyen de s’amuser. Par contre, il y a beaucoup de textes à lire (en anglais), et mieux vaut connaître un minimum les membres du groupe. Je l’ai trouvé sympathique mais cher. – compter ~2h pour ~23€
  • Le musée Vasa est très impressionnant car il présente un bateau qui a 400 ans et qui est parfaitement conservé. Vraiment à faire pour découvrir ce chef d’œuvre de la marine suédoise du 17ème siècle. – compter ~2h si vous faites la visite en écoutant sur votre téléphone les audios gratuits et en français, entrée du musée pour ~22€
  • Le soleil se couche tard et se lève tôt en été, de quoi profiter des terrasses-rooftop à toute heure : nous avons essayé les bars qui sont au sommet du Katarina Elevator. Je vous conseille de ne pas prendre l’ascenseur d’en bas, mais de passer par la colline en empruntant la passerelle. Il existe d’autres bars-terrasses (non testés), comme le Stockholm Under Stjärnorna.
  • En parlant de bar, nous sommes tombés par hasard sur un bar flottant, le Bistro de plage, qui fut parfait pour une petite pause durant l’après-midi.
  • La ville se prête très bien aux balades. Pourquoi pas emprunter un vélo pour couvrir une plus grande zone ? Nous n’avons pas essayé.
  • Plusieurs stations de métro sont décorées et peuvent valoir le détour : prenez un ticket, puis parcourez les différentes lignes. Voici les coins qu’on a vus et mes commentaires :
    • T-centrallen : il faut se diriger au niveau -3 sur la ligne bleue (suivre “The blue passageway” si vous êtes sur une autre ligne). Assez joli et la station est très centrale.
    • Stadion : la station arc-en-ciel 🌈, ma préférée ! Descendre et faire quelques photos devant les rainbow avant de remonter dans le prochain train.
    • Kungsträdgården : le décor est assez original, peut occuper entre deux trains.
    • Solno centrum : son rouge sang est assez impressionnant, avec des petites scénettes.
    • Tekniska : la toile se situe entre les quais, mais pas grand chose à voir – bondir du wagon, faire une photo, puis vite remonter avant qu’il ne reparte !
    • Morby centrum : aucun intérêt de s’y arrêter !
    • – prévoir au moins 2h et le prix d’un ticket de métro.

  • Il parait qu’il est sympa de se balader vers Monteliusvägen ou encore Fjällgatan
  • Je m’attendais à trouver des saunas ou spas sympa, mais pas vraiment… en tout cas, rien d’extraordinaire n’est ressorti de mes recherches.

Bon à savoir :

  • La carte bancaire est acceptée de partout, et est même le moyen de paiement à privilégier.
  • On peut faire toute la ville à pied : il n’est pas forcément nécessaire d’emprunter les transports en commun, cependant il peut être intéressant de prendre ponctuellement un bateau-bus ou un métro. On peut payer avec la CB en tapant les bornes d’entrée (nous n’avons pas testé et avons pris un ticket au guichet).

Mise à jour d’un serveur Kimsufi (OVH) depuis Debian 12 (Bookworm) vers Debian 13 (Trixie)

Cette mise à jour est similaire à ce qui a pu être fait précédemment.

Je vais essayer d’expliquer brièvement les étapes à suivre.

  1. D’abord s’assurer de la version actuelle de Debian avec la commande suivante :
    lsb_release -a
  2. Il est recommandé d’utiliser le programme /usr/bin/script pour enregistrer une transcription de la session de mise à niveau. Ainsi, quand un problème survient, on a un enregistrement de ce qui s’est passé. Pour démarrer un enregistrement, taper :
    script -t 2>~/upgrade-debian.time -a ~/upgrade-debian.script
  3. On va effectuer une mise à jour des paquets :
    apt-get update && apt-get upgrade
  4. On fait une sauvegarde de plusieurs éléments dans le répertoire /root/svg_special :
    mkdir /root/svg_special; cp -R /var/lib/dpkg /root/svg_special/; cp /var/lib/apt/extended_states /root/svg_special/; dpkg --get-selections "*" > /root/svg_special/dpkg_get_selection; cp -R /etc /root/svg_special/etc
  5. Si vous utilisez MariaDB, il peut être bien de faire une sauvegarde complète des bases de données :
    /usr/bin/mariadb-dump --all-databases --single-transaction -u root -p | gzip > /root/svg_special/backup-databases.sql.gz
  6. Créez un tar.gz du répertoire de la sauvegarde, puis le télécharger dans un lieu sûr :
    tar -czf /root/backup-pre-debian13.tar.gz /root/svg_special
  7. Ensuite il est conseillé d’utiliser screen pour pouvoir se reconnecter (avec screen -r) en cas de déconnexion :
    screen

    À noter que si vous n’arrivez pas à scroller dans une session “screen”, il faut alors utiliser la commande CTRL+A, ESC pour cela. Et pour arrêter screen on fait CTRL+A, k

  8. On peut lancer la commande dpkg --audit pour s’assurer que tout est bon avant la migration. On peut également taper dpkg --get-selections "*" | more et vérifier qu’aucun paquet n’est en on hold
  9. On peut supprimer les résidus de fichiers de configuration avec la commande :
    find /etc -name '*.dpkg-*' -o -name '*.ucf-*' -o -name '*.merge-error' -delete
    
  10. Faire un tour dans /etc/apt/ afin de voir si des paquets ne sont pas marqués “bookworm” ou s’ils proviennent de sources tiers. Par exemple /etc/apt/sources.list.d/php.list qui pourrait indiquer deb [signed-by=/etc/apt/keyrings/sury-php.gpg] https://packages.sury.org/php/ bookworm main – pour ce type de paquet ne provenant pas de Debian, on peut commenter la liste avec # le temps de l’upgrade. Rien ne sera désinstallé, et après l’upgrade il faudra s’occuper de ces sources tierces.
  11. Maintenant il faut remplacer tous les “bookworm” de /etc/apt/sources.list par des “trixie”.
    On pourra par exemple utiliser la commande suivante :

    sed -i 's/bookworm/trixie/g' /etc/apt/sources.list
  12. On passe aux choses sérieuses, en commençant par mettre à jour les listes des paquets :
    apt update
  13. On va vérifier qu’on a la place suffisante (un message explicite apparait sinon) :
    apt -o APT::Get::Trivial-Only=true full-upgrade
  14. On va maintenant faire une mise à jour minimale :
    apt upgrade --without-new-pkgs
  15. Et à partir de là le système va vous questionner… en général choisir l’option par défaut si vous ne savez pas quoi répondre
  16. Puis on termine avec
    apt full-upgrade

Cette dernière étape va durer un certain temps. Une fois terminé, vous pouvez redémarrer le serveur pour s’assurer que tout va bien.

Réactiver les sources tierces

On va reprendre un par un les fichiers dans /etc/apt/sources.list.d afin de les décommenter. On remplacera “bookworm” par “trixie”, puis on fait apt update && apt upgrade.

MariaDB

On va vérifier la version de MariaDB qu’on a avec mariadb --version. Debian aura installé la version la plus récente qui est disponible dans ses dépôts, mais on peut vouloir utiliser le fichier /etc/apt/sources.list.d/mariadb.sources afin d’avoir des mises à jour plus rapides. Plus d’explications sont disponibles sur le site de MariaDB.

PHP

Il est bien de vérifier que la version actuelle de PHP est correctement utilisée par Apache et qu’elle correspond à ce qu’on veut. Pour cela on vérifie la version avec:

php -v

Ensuite on regarde les versions de PHP disponibles dans les modules d’Apache :

ls -l /etc/apache2/mods-available/php*

Et on regarde celle activée :

ls -l /etc/apache2/mods-enabled/php*

Si la version souhaitée est manquante dans les modules, alors on l’installe, par exemple pour la 8.4 :

apt-get install php8.4 php8.4-mysql

On s’assure ensuite de bien activer la bonne version, par exemple en passant de la v7.4 à v8.4 :

a2dismod php7.4
a2enmod php8.4

Et on redémarre Apache :

systemctl restart apache2

Pour finir

Une fois les erreurs corrigées, on va nettoyer tous les paquets avec :

apt-get autoremove

Visiter Berlin

Nous avons passé 4 jours dans la capitale allemande, et j’aimerais partager des trucs et astuces et les endroits que nous avons découverts.

À savoir :

  • Il faut réserver plusieurs semaines avant la coupole du Bunderstag – nous n’avons pas pu le faire car on s’y est pris 2 semaines avant et tout était plein. Cela semble être le seul moyen de pénétrer dans le Parlement allemand.
  • Nous avons pris la Welcome Card (qui inclue les transports en commun ainsi que des réductions dans certains lieux), mais avons été déçus car il faut l’imprimer pour qu’elle soit valide, et sa validité commence à minuit du jour de début de la période. Nous l’avons acheté un jeudi à 18h en arrivant à l’aéroport en pensant l’utiliser 4 jours jusqu’au lundi 18h, mais non, sa validité commençait à 00h le jeudi…. De plus, il n’y a pas forcément beaucoup de lieux partenaires intéressants je trouve, à part la tour de TV et la Berliner Dom.
  • Il en coûte 5€ d’aller de l’aéroport à Berlin centre via le FEX (train express). Il est possible d’acheter les billets sur les quais.
  • Berlin possède de nombreux transports en commun, mais qui coûtent chers (4€ par trajet). Les distances étant parfois longues entre les différents quartiers, je pense nécessaire d’utiliser les métros. Plusieurs choix sont alors possibles:
    1. Frauder : il n’y a pas de portiques de sécurité, et le réseau est immense… la probabilité de croiser des contrôleurs semble faible, et l’amende est de 50 €
    2. WelcomeCard : j’en ai parlé au-dessus – cette carte permet des trajets illimités en zone A-B, ou A-B-C (qui inclue l’aéroport)
    3. City Tour Card : cette carte semble fonctionner exactement comme la Welcome Card mais légèrement moins chère.
    4. Tickets BVG : La BVG (compagnie de transport berlinoise) propose plusieurs options qu’il est possible d’acheter sur les quais ou via leur application mobile (attention tout n’est pas disponible dans l’appli).
  • Les restaurants ferment assez tôt, donc prévoir de ne pas manger trop tard.
  • Certains lieux n’acceptent que le cash – ils ne sont pas nombreux et c’est toujours affiché sur la devanture.
  • On voit parfois “hbf” sur les panneaux : cela signifie “gare centrale”, par exemple “Berlin Hbf” signifie “gare centrale de Berlin”.

Voici des recommandations de choses à faire :

  • Le quartier autour du Palais du Reichstag, pour lequel il faut réserver plusieurs semaines en avance pour y pénétrer et accéder à la coupole. C’est dans ce coin qu’on trouve la fameuse Porte de Brandebourg. Depuis la Porte, on remonte l’avenue “Unter den Linden” pour arriver à la cathédrale “Berliner Dom” (visite payante), puis à la mairie (Rotes Rathaus), et enfin à la tour de la TV (Fernsehturm de Berlin). Il est possible de monter en haut de la tour de TV : la vue est sympa (je recommande éventuellement de la faire au moment du coucher du soleil), mais on n’y reste que quelques minutes – compter une grosse demie-journée pour tout ce quartier.
  • Non loin de la place , il y a un l’immeuble Neurotitan Shop & Gallery qui présente une cage d’escalier recouvertes d’autocollants qui mène à deux boutiques dans les étages. Juste à côté, on peut pénétrer dans la cour intérieur du CHAMÄLEON Theater pour admirer son style art déco. On trouve dans les environs des restaurants et cafés. Il y a également le rooftop ZOE bar (non testé) qui n’ouvre qu’à partir de 18h.
  • Concernant la partie seconde guerre mondiale, il y a le fameux Checkpoint Charlie avec le très bon Topographie de la Terreur (entrée gratuite) qui explique les massacres orchestrés par les nazis. Pour rester dans cette thématique, il faut aller voir le Mémorial aux Juifs assassinés d’Europe. – compter moins de deux heures pour tout cette partie.
  • La statue de la victoire se trouve au centre du parc Berlin-Tiergarten. Elle vaut le détour : on peut accéder à ses pieds en passant par des passages souterrains, par contre l’accès à l’intérieur de la statue est payant (cash only). De la on peut se perdre dans l’immense parc. Certains le font en vélo pour perdre moins de temps. Il n’y a pas forcément des choses à voir, mais la balade y est agréable. – compter deux ou trois heures selon si vous flânez.
  • À l’ouest du parc, on trouve le Zoo de Berlin : j’ai beaucoup aimé ! Il y a un aquarium assez sympa, et le zoo en lui-même où on peut y voir des pandas, lions, jaguar, ours, rhinocéros, etc. On trouve plusieurs maisons thématiques des pays associés aux animaux qui permettent d’admirer les animaux de près, tout en évitant la pluie par exemple. À l’entrée du zoo, on peut voir l’Église du Souvenir. – compter au moins 3h entre l’aquarium et les animaux.
  • Au nord de la ville, il y a le Dokumentationszentrum Berliner Mauer qui est gratuit et retrace l’histoire du Mur. À ses pieds, on trouve des vestiges du Mur avec des tourelles. Très intéressant ! Dans les environs, il y a le Berliner Unterwelten qui propose de découvrir le Berlin souterrain : nous avons fait Fuir sous le Mur (17€) où, pendant 90 minutes, un guide nous explique la construction du Mur, les familles séparées de chaque côté, puis comment et où les tunnels ont été construits. Durant cette visite-là, on nous emmène dans différentes caves d’un bâtiment, d’où on peut voir des reconstitutions des tunnels de l’époque. Une expérience passionnante pour mieux comprendre ce proche passé. Selon le circuit choisi, le départ peut être à des endroits différents. – compter environ 3 heures entre le musée du Mur, la visite du Berlin Underworld, et les trajets; À noter que le dimanche, on peut flâner dans le Mauerpark pour y découvrir le marché aux puces.
  • Dans l’Est de Berlin, vous trouverez le RAW Gelände, une espèce de friche industrielle avec des bars, galeries et autres… Nous y sommes passés le samedi matin et c’était désert, mais apparemment l’animation a plutôt lieu le soir. On poursuit la marche jusqu’au Pont Oberbaum qui, au milieu de l’espace urbain, n’est pas facile à photographier : je conseille de prendre les photos de ce côté. Du pont on remonte vers l’Ouest pour longer les morceaux du Mur qui sont recouverts de street art (dont le célèbre baiser fraternel socialiste). On longe le Park an der Spree qui possède des cerisiers qui étaient en fleurs à notre passage en avril ! En poursuivant vers l’Ouest, on finit par arriver au Holzmarkt 25, un regroupement de bars et restos au bord du fleuve dans une ambiance très sympa : à faire plutôt le soir pour un apéro pour bien en profiter. – compter ~3 heures pour faire tout ce coin

En plus :

  • On a visité l’Urban Nation qui est une salle d’exposition gratuite avec du street art, et on a bien aimé – compter ~30 minutes.
  • plusieurs personnes m’ont parlé du Tempelhofer Feld qui est un ancien aéroport transformé en un vaste parc, mais nous n’avons pas eu le temps d’y aller.

Make a field ReadOnly in SharePoint List

We can make a field readonly or editable in SharePoint using REST API. I usually use it when I want to update a bunch of SharePoint List Items without changing their Modified date and Editor details. Below is an example to make “Editor” readonly again (you’ll first need to get the Digest Token):

fetch(`${siteUrl}/_api/web/lists/getByTitle('${listName}')/fields/getbyinternalnameortitle('Editor')`, {
    method: "POST",
    headers: {
      "Accept": "application/json;odata=verbose",
      "Content-Type": "application/json;odata=verbose",
      "X-HTTP-Method": "MERGE",
      "IF-MATCH": "*",
      "X-RequestDigest": requestDigest
    },
    body: JSON.stringify({
      "__metadata": { "type": "SP.FieldUser" },
      "ReadOnlyField": true
    })
  });

This method works even if the list has more than 5,000 items.

To verify if a field is readonly or not, we can simply use the endpoint `${siteUrl}/_api/web/lists/getByTitle('${listName}')/fields/getbyinternalnameortitle('Editor')?$select=ReadOnlyField`

Issues with the Chrome extension “Microsoft Single Sign On”

When you use Chrome on a corporate network, you need an extension called “Microsoft Single Sign On” to be correctly authenticated with the Microsoft 365 websites (like SharePoint, …).

Recently the extension failed multitimes and I was not able to connect to my Microsoft work account anymore using Chrome. I had to clear cookies, restart the computer, etc.

By searching on reddit, I found it’s now possible to get ride of the extension because Chrome can natively handle this type of connection. To proceed, you need to edit the Windows Registry (Computer\HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Google\Chrome) to add the REG_DWORD (DWORD (32-bit) Value) called “CloudAPAuthEnabled” and put the value 1, as explained in the Chrome documentation.

It’s been a couple of weeks I’m using it, and no more issues!

Power Automate Flow: copy folder when one of its files is updated

I had the scenario where when files are updated in a specific folder of a SharePoint Documents Library, then the folder should be copied to another document library.

Because we don’t want the copy process to trigger for ever changes (like if we bulk upload files, or if someone is doing changes in live in a file), so here is my solution:

  1. Create a SharePoint List called “File Processing” with two fields:
    • A lookup field called “File” that is based on our source Document Library – make sure to select the option “Enforce unique values”;
    • A Date and Time field called “LastModified”.
  2. Create a Power Automate Flow that is manually triggered – we’ll call it with “Run a Child”: this one is only used to do the copy of the folder from source to destination
  3. Create a Power Automate Flow that triggers when a file is created or modified (properties only):
    1. When we confirm the file updates happened in the correct folder, then we add an entry in the “File Processing” list with the file ID and the file Modified date;
    2. Terminate the flow.
  4. Create a Power Automate Flow that triggers when an item is created or modified in the “File Process” list:
    1. Add a “Delay” of 5 minutes;
    2. Add the action “Get file properties” from our source document library using the file ID from the item;
    3. Check with a condition if the field “LastModified” is greater or equal to the Modified date of the file:
      • If yes, then use the action “Get items” on the “File Processing” list to see if we have any other items in the list: if no other items, run the child process to make the copy – and, finally, delete the current item in “File Processing” whatever there is other items or not;
      • If no, then update the field “LastModified” of the current item using the Modified date of the file.

This solution permits to only trigger the copy process when there is no more files update in the folder.

Note: if we nee to monitor different folders in the source library, we can add a lookup column in “File Process” that contains the folder ID, and when checking if there is no other items for the folder, we just add a condition based on the folder ID.

Power Automate Flow: force a file deletion and force a file replacement

To force a file to be deleted in a SharePoint Document Library, using a Power Automate Flow, we can call the action “Send an HTTP Request to SharePoint“, with the below:

  • Method: POST
  • Uri: _api/web/Lists/GetByTitle(‘Document Library Name’)/GetItemById(@{variables(‘ItemID’)})/recycle
  • Headers: Prefer: bypass-shared-lock

To force a file to be replaced with new content in a SharePoint Document Library, using a Power Automate Flow, we can call the action “Send an HTTP Request to SharePoint“, with the below:

  • Method: POST
  • Uri: _api/web/GetFolderByServerRelativeUrl(‘/sites/SiteCollectionName/SubWebSiteName/’)/Files/add(url=’DestinationFileName.csv’,overwrite=true)
  • Headers: Accept: application/json;odata=nometadata and Content-Type: application/json;odata=nometadata
  • Body: whatever body/content you want

Set People Picker field in a SharePoint List Item using Microsoft Graph

When we want to use MS Graph to add an item into a SharePoint List that contains a People Picker, then here what needs to be done:

  1. Retrieve the Site ID for the root site collection, using https://graph.microsoft.com/v1.0/sites/[CORP].sharepoint.com:/sites/MySiteCollection
  2. Retrieve the Site ID for the target end website, using https://graph.microsoft.com/v1.0/sites/[CORP].sharepoint.com:/sites/MySiteCollection/MyParentSiteWeb/MyTargetWebsite/
  3. Use the user’s email address to retrieve the SharePoint User ID of that person from the User Information List, using https://graph.microsoft.com/v1.0/sites/[ROOT_SITE_ID]/lists/User%20Information%20List/items?expand=fields&filter=fields/EMail%20eq%20'[ENCODED_EMAIL]'&top=1" – the email must be encoded to be passed in an URL
  4. If the user doesn’t exist in this SharePoint yet, then you have to use the REST API call to https://[CORP].sharepoint.com/sites/MySiteCollection/MyParentSiteWeb/MyTargetWebsite/_api/web/ensureUser with the payload {"logonName":"user_email@corp.com"} – you should get the User ID this time
  5. Then we need to get the List ID of where we want to add the item, using https://graph.microsoft.com/v1.0/sites/[TARGET_SIDE_ID]/lists/[LIST_NAME_ENCODED]
  6. Finally, we can add the item using https://graph.microsoft.com/v1.0/sites/[TARGET_SIDE_ID]/lists/[TARGET_LIST_ID]/items with a specific value depending if it’s a multi-selection people picker field or not – let’s say the internal name for my field is “Requestor_x0020_Name”, then I have to append “LookupId” to this name:
    • for a single selection field, the payload contains:
      {"Requestor_x0020_NameLookupId": "[USER_ID_FOUND_WITH_GRAPH]"}
    • for a multi-selection field we have to pass the odata type, and put the User ID into an array, then the payload contains:
      {
      "Requestor_x0020_NamesLookupId@odata.type":"Collection(Edm.String)",
      "Requestor_x0020_NamesLookupId": [ "[USER_ID_FOUND_WITH_GRAPH]" ]
      }