14/4/2019

Netwerk probleem met OpenSUSE Leap 15

Filed under: — cybrarian @ 3:05 pm

Op één bepaald toestel(*) heb ik een netwerk probleem met OpenSUSE Linux (waarmee ik niet wil gezegd hebben dat het aan OpenSUSE ligt).
Een pc, geïnstalleerd met OpenSUSE Leap 15 KDE, werkt na installatie perfect. Hij wordt op een andere locatie ingezet, en heeft daar na een paar dagen een probleem: geen netwerk.
Het eigenaardige is dat een Windows systeem op een tweede harde schijf wel op het netwerk geraakt op zo’n moment (na herstart dus).
Een Linux laptop met OpenSUSE Leap 42.3 (één met Leap 15 staat klaar om te proberen) geraakt op dezelfde kabel ook op het netwerk.

Conclusie: het ligt niet aan het netwerk?

Na wat proberen het toestel daar weggehaald, en elders updates gedraaid enz; verder niets aan te merken, draait perfect, wordt dagen en weken na elkaar gebruikt.

Conclusie: het ligt niet aan de pc?

Dus terug op originele locatie geïnstalleerd. Terug na een paar dagen offline, met hetzelfde probleem: geen netwerk; andere toestellen wel.

Nu wordt het een typisch moeilijker probleem. Ligt het aan “een combinatie van”? En van wat dan? Het systeem en de hardware (kernel-netwerkkaart)? Dit systeem en de hardware aan de andere kant van de netwerkverbinding (een proximus dsl modem)?

Ik hou er rekening mee dat ik de echte oorzaak nooit vindt, dat het probleem plotseling verdwijnt. Of anderzijds het toestel vervang door een ander en het originele elders vrolijk verder kan gebruiken zonder probleem… Maar als ik iets vindt: vervolg hier.

Update:
Starten van een live dvd met Ubuntu 18.04: netwerk verbonden 100 Mb/s, geen verkeer.
Starten van een live dvd met Fedora 29: geen netwerk verbinding, ziet wel netwerkkaart, cable connect en snelheid

* HP EliteDesk 800 G1 SFF

8/4/2019

btrfs

Filed under: — cybrarian @ 9:34 am

check
btrfs check
Check van het filesystem gaat niet als de drive gemount is:

btrfs check /dev/sda2
/dev/sda2 is currently mounted. Aborting.

Algemene informatie
btrfs fi show

Label: none uuid: 5364b79a-cc9a-4d79-a2a3-6679401aa6f3
Total devices 1 FS bytes used 15.04GiB
devid 1 size 40.00GiB used 19.57GiB path /dev/sda2

Als je wil zien welk filetype de verschillende partities zijn:

df -T

devtmpfs devtmpfs 3039212 8 3039204 1% /dev
tmpfs tmpfs 3046936 69328 2977608 3% /dev/shm
tmpfs tmpfs 3046936 2352 3044584 1% /run
tmpfs tmpfs 3046936 0 3046936 0% /sys/fs/cgroup
/dev/sda2 btrfs 41946112 16576576 24249968 41% /

/dev/sda2 btrfs 41946112 16576576 24249968 41% /tmp
/dev/sda3 xfs 200050240 1121016 198929224 1% /home
tmpfs tmpfs 609388 20 609368 1% /run/user/1000

Fouten-log

btrfs device stats /dev/sda2

[/dev/sda2].write_io_errs 0
[/dev/sda2].read_io_errs 0
[/dev/sda2].flush_io_errs 0
[/dev/sda2].corruption_errs 0
[/dev/sda2].generation_errs 0

Vrije ruimte (df):

btrfs filesystem df /home

ERROR: not a btrfs filesystem: /home

btrfs filesystem df /

Data, single: total=17.01GiB, used=14.31GiB
System, DUP: total=32.00MiB, used=16.00KiB
Metadata, DUP: total=1.25GiB, used=740.53MiB
GlobalReserve, single: total=50.58MiB, used=0.00B

Meer op de btrfs spiekbrief: https://blog.programster.org/btrfs-cheatsheet

25/3/2019

kmail kuren: Akonadi!

Filed under: — cybrarian @ 10:45 am

Een KMail gebruiker ondervindt problemen met het afhalen van e-mail van een imap server. Het afhalen van de mail gaat goed tot zo’n 98%, daar blijft het afhalen hangen. Er komt geen verdere mail meer binnen, en het afbreken van het afhalen door klikken op het rode icoon daarvoor geeft ook geen zichtbaar resultaat (maw het afbreken lijkt ook oneindig te duren).
Afsluiten en terug starten van KMail helpt niet.

Akonadi herstarten
De oorzaak zit eerder bij Akonadi. Afsluiten van akonadi kan in de commandolijn met:

akonadictl stop

Als kmail nog draait, zal dat programma zelf aangeven dat de Akonadi dienst niet draait en een knop aanbieden om die te starten.

shell script
Zet dat commando in een bestand in de bin map met bv de naam: “StopAkonadi.sh”
Open een commandovenster: menu, Systeem, Konsole. Daar kan je het oproepen met:
./bin/StopAkonadi.sh

Link
Je kan op de desktop een link maken naar de killer: rechtsklik, Nieuwe aanmaken, koppeling naar toepassing.

Ga naar tab Toepassing, bij commando bladeren kies je het shell script in de bin directory, bewaar.

Wijzig eventueel de naam en/of het icoon.

22/2/2019

Raspberry pi wifi draadloos netwerk

Filed under: — cybrarian @ 9:41 am

wifi
Bij het installeren van Raspbian krijg je de keuwe om aan te sluiten op een bestaand draadloos netwerk. Daarna kan de pi dat netwerk gebruiken.

Wijzigen
De hulpmiddelen om een draadloos netwerk te kiezen en/of in te stellen bij basic raspbian zijn niet zo uitgebreid als bij desktop distributies als openSUSE/KDE, waar je een uitgebreid informatie krijgt en kan fijnregelen.
Raspbian heeft bij het ontbreken van een (draadloze) netwerkverbinding bovenaan rechts een symbool staan dat lijkt op een mengpaneel met twee schuiven (die een rood kruisje hebben). En ja, dat is het symbool voor draadloos netwerk (wie heeft dat bedacht). Wel nee, die twee kruisjes geven aan dat zowel lan als wifi niet werken toont de tooltip als je er met de muiscursor boven gaat staan:

eth0: Link is down
wlan0: Not associated

Klik op het symbool om het instellingenvester te openen? Niet dus. Rechtsklik, kies netwerk instellingen “Wireless and wired network settings”.

Configure
– interface
– SSID — dan krijg je een combobox met vooringevulde keuzes van netwerknamen.
Je kan dan ook de andere gegevens invullen, zoals IP address, Router, DNS server en Search, …
Als je op “toepassen” drukt, krijg je geen feedback. Het is mij totaal onduidelijk wat de impact is van dit instellingenvenster, moet je bv zelf herstarten achteraf? (inderdaad, sluiten en herstarten).

Menu
Via het menu, voorkeuren kan je naar Raspberry Pi configuratieprogramma.
Daar kan je het wifi-land instellen, en de hostename (en network at boot).

Opstart-krachten
Bij het opstarten krijg je kort een melding over het indrukken van de shift toets (for recovery mode hold shift); daarmee krijg je een soort NOOBS installatiemenu, maar ook een paar andere knoppen waaronder “wifi”. Die keuze toont ook de werking van de wifi aan, want je kan er de beschikbare netwerken zien, en een netwerk kiezen om mee te verbinden.
Je kan hier bv ook kiezen om de volledige raspbian te installeren (6738 MB).

commandolijn
Inhoud van de instellingen wifi bekijken:
cat /etc/wpa_supplicant/wpa_supplicant.conf

Kijken wat er in de lucht hangt (checkt dat draadloos werkt, geeft beschikbare netwerken)
sudo iwlist wlan0 scan

Welke dns instellingen?
cat /etc/resolv.conf

Herstarten van het netwerk (ipv volledig herstarten)
sudo ifdown wlan0 && sudo ifup wlan0

Volledig herstarten
sudo shutdown -r now

Instellingen doen:
sudo raspi-config
Dan 2. Network options
Daarmee kan je:
– hostname instellen (naam van de computer in het netwerk)
– SSID wifi (could not communicat with wpa_supplicant)
– predictable network names (aan of afzetten van de netwerk interface namen als eth0 wlan0)
Daarna moet herstart worden om de instellingen aktief te maken.

16/2/2019

KMail kapot. Of is het Akonadi? Of MySQL?

Filed under: — cybrarian @ 1:03 am

KMail
Mijn e-mail programma KMail op KDE/openSUSE 42.3 start niet meer.
(Ik herinner me een probleem voordien met een mail die ik maar niet verwijderd kreeg)
KMail probeert te starten, geeft dan de melding dat de akonadi service niet draait.
De knop voor meer info levert niets op, en het mailprogramma sluit onherroepelijk terug af.
Niet alleen kan ik dus geen nieuwe mails ontvangen/versturen, ik heb ook geen toegang meer tot alle reeds afgehaalde en verstuurde mails.

Onhandig.

KDE/KMail ontwikkelaars: maak aub een noodprocedure in kmail, of desnoods een CLI als reserve.

Welke fout?
Op de commandolijn zocht ik naar meer informatie over het onverwachte overlijden van mijn geliefde mailclient.
Start een konsole en kmail met:
kmail
Dit start gewoon de desktopversie van kmail, dus geeft niet veel extra informatie.
De boosdoener is duidelijk Akonadi, dus daarnaar op zoek. Akonadi is een groot beest:

cybr@laptop:/var/lib> akonadi
akonadi_agent_launcher akonadi_kolab_resource
akonadi_agent_server akonadi_maildir_resource
akonadi_akonotes_resource akonadi_maildispatcher_agent
akonadi_archivemail_agent akonadi_mailfilter_agent
akonadi_birthdays_resource akonadi_mbox_resource
akonadi_contacts_resource akonadi_migration_agent
akonadi_control akonadi_mixedmaildir_resource
akonadictl akonadi_newmailnotifier_agent
akonadi_davgroupware_resource akonadi_notes_agent
akonadi_followupreminder_agent akonadi_notes_resource
akonadi_googlecalendar_resource akonadi_openxchange_resource
akonadi_googlecontacts_resource akonadi_pop3_resource
akonadi_icaldir_resource akonadi_rds
akonadi_ical_resource akonadiselftest
akonadi_imap_resource akonadi_sendlater_agent
akonadi_indexing_agent akonadiserver
akonadi_invitations_agent akonaditest
akonadi_kalarm_dir_resource akonadi_tomboynotes_resource
akonadi_kalarm_resource akonadi_vcarddir_resource
akonadi_knut_resource akonadi_vcard_resource

Een serverdienst met een bekend voorkomend onderdeel?
akonadictl

Usage: akonadictl [options] start|stop|restart|status|vacuum|fsck
Akonadi server manipulation tool

Even proberen …

akonadictl start

Connecting to deprecated signal QDBusConnectionInterface::serviceOwnerChanged(QString,QString,QString)
cybr@laptitude:/var/lib> org.kde.pim.akonadiserver: Failed to connect to database!
org.kde.pim.akonadiserver: Database error: “Can’t connect to local MySQL server through socket ‘/tmp/akonadi-cybr.dt9jR1/mysql.socket’ (111 \”Connection refused\”) QMYSQL: Unable to connect”
org.kde.pim.akonadiserver: Failed to remove runtime connection config file
org.kde.pim.akonadicontrol: Application ‘akonadiserver’ exited normally…
^C

Ik heb het met ctrl-c moeten beëindigen om terug op de commandprompt terecht te komen.
Maar dit ziet er interessante informatie uit:

Failed to remove runtime connection config file

ls /tmp/akonadi-cybr.

akonadi-cybr.dt9jR1/ akonadi-cybr.OB5NMk/

Tijdelijke bestanden/directories die aangemaakt worden op het moment van het starten?
Deze ene wordt vermeld in de bovenstaande akonadi-melding; weg daarmee?

rm -r /tmp/akonadi-cybr.dt9jR1/

Kde start terug normaal!

9/2/2019

Sailfish update Sipoonkorpi

Filed under: — cybrarian @ 7:44 pm

Update
En er gebeuren nog altijd Sailfish updates: de huidig klaarstaande update is Sipoonkorpi, 3.0.1.11.

Vooral een bugfix update zeggen ze zelf. Ook de behandeling van e-mail mappen zou verbeterd zijn. En de encryptie voor SD-kaartjes! En een nieuwe firewall.

Hier de release notes.

Je kan er ook vinden welke Sony Xperia compatibel zijn (Xperia XA2 en X modellen)


Sipoonkorpi

is een beschermd natuur en bosgebied in de buurt van Helsinki in Finland.

Installatie
Download is een goede 300 Mb.

Update ready for installation

(je krijgt de opmerking dat je het apparaat niet kan gebruiken tijdens de installatie – logisch – en dat het zal herstarten als de installatie klaar is.

Install duurde 9:36 – 9:50 ongeveer.

Een opmerkzaam oog zag hier op de zaterdag-agenda van FOSDEM (02/02/2019) het SailfishOS voorkomen:
Sailfish logo

23/1/2019

OpenSUSE Leap 15 – KDE desktop

Filed under: — cybrarian @ 1:39 pm

Installatie van een DVD bij het tijdschrift Linux Format (jan 2019?)
De installatie-DVD bevat verder nog 32-bit distro’s Sparky 5.3 en Trisquel 8.
De DVD is zelfstartend en bevat een menu waarin OpenSUSE Leap 15/KDE zit. Daarmee start de computer een KDE desktop in OpenSUSE 15.0 zelf. Op de desktop staat een icoontje voor Installation, dat zoekt op internet de repositories en haalt de nodige bestanden af. De computer moet dus aangesloten zijn aan het netwerk en internettoegang hebben. Vermoedelijk komt dit overeen met de network install die je kan afhalen op de download site van Suse…*

Foutmelding
Al helemaal in het begin krijg ik een foutmelding, iets van “Repository not found”. Dit komt omdat de internetverbinding niet is aangesloten of niet werkt.
Een tweede start geeft een andere foutmelding, blijkbaar kan de repository informatie niet worden bewaard. De oorzaak is dat de update procedure in de achtergrond gestart is, en de repository bestanden in beslag neemt. Je kan dat zien aan het update logo rechts in de balk onderaan (Software updates, groene of rode bol). Je kan die onderbreken (of even wachten tot hij klaar is met checken – je krijgt dan een melding dat er x updates zijn.)
Daarna wijn die repository bestanden vrij en kan je de installatie wel starten.

Enkele punten uit de installatie (algemeen: volg de aanwijzingen op het scherm)

  • Taal, maar vooral toetsenbordinstelling! Je zit momenteel in een qwerty toetsenbordinstelling (LXF is een Brits tijdschrift). Als je de huidige desktop wil wijzigen: Desktop settings, invoerapparaten, toevoegen van bv BE.
  • Netwerkverbinding: toont een netwerkkaart die niet geconfigureerd is. Dat lijkt raar, want ondertussen ben je al online; maar dat is in het live systeem, dat zelf de configuratie opspoorde. Kies hostname voor je toestel, dan DHCP (of vast IP als je zo werkt).
  • System Role keuze: Hier kan je alsnog een andere richting uit; Desktop met KDE Plasma, Desktop met Gnome, Server, Transactional Server, Custom. (KDE Desktop)
  • Partitionering wordt voorgesteld, waarbij bv de MS-DOS partities verwijderd worden en een aantal systeempartities voor Linux worden aangemaakt. Je kan ook kiezen om zelf de details te bepalen.
  • Klok en tijdszone instellen.
  • Gebruikersnaam en wachtwoord, (ook voor Root), eventueel automatische login
  • Je krijgt een overzicht van de keuzes, en de knop Install om te beginnen.

Ik heb op de desktop een paar “Widgets” toegevoegd (rechtsklik, add widgets): Network monitor, Hard Disk I/O (rechtsklik, kies sda, sr0 ..), en Hard Disk Space usage.

Tijdens de installatie heb je vooral netwerk trafiek, en harde schijf aktiviteit, er wordt niets van de DVD gelezen. Dit bevestigt de Network Install-theorie.*

Opgelet! Screensaver!
Eens de installatie op gang is, zal je misschien even weggaan van de computer, om hem terug te vinden met een screensaver met lock!
Dus hopelijk ken je het wachtwoord dat je voordien ingesteld hebt voor de gebruiker, want dat is nu geldig!
Afzetten: Menu, Configure Desktop (System Settings), Workspace behaviour, Screen Locking: afvinken. (Lock screen, lock screen on resume).
Opgelet: daarmee zet je de screensaver af van het op dit moment draaiende systeem; nl het live-dvd systeem dat je gestart hebt in het werkgeheugen. Dus niet dat van het te installeren systeem; daar moet je deze handeling opnieuw doen!

Time-Out
Tussendoor kreeg ik een foutmelding:
Time-out overschreden bij toegang tot ‘http://download.opensuse.org/distribution/leap/15.0/repo/oss/noarch/kdepim-addons-lang-17.12.3-lp150.1.2.noarch.rpm’.
Een klik deed de installatie echter voortlopen.

Help! Herstart!
Als de installatie klaar is, komt er een melding dat het systeem gaat herstarten (van de geïnstalleerde versie op harde schijf dus). Je hebt een tiental seconden die aftellen om op de STOP knop de drukken. Als dat lukt kan je de andere dingen die je aan het doen was op je virtuele desktop (bv een Firefox venster met een Blog artikel over de installatie van ..).
Alles bewaard? Ok!

Na herstarten de desktopinstellingen aanpassen (screensaver/lock-screen), en de updates afhalen en toepassen, eventueel herstarten.

18/1/2019

Your branch and ‘origin/dev’ have diverged …

Filed under: — cybrarian @ 10:46 pm

Bij git status, en na een fetch:

git status
On branch dev
Your branch is ahead of ‘origin/dev’ by 2 commits.
(use “git push” to publish your local commits)
nothing to commit, working tree clean
git fetch
remote: Enumerating objects: 60, done.
remote: Counting objects: 100% (60/60), done.
remote: Compressing objects: 100% (42/42), done.
remote: Total 43 (delta 29), reused 1 (delta 0)
Unpacking objects: 100% (43/43), done.
From gitlab.com:GrpE3/e3
5f82217..4df07f6 dev -> origin/dev
65ecfe5..d86a92f dayreqflow -> origin/dayreqflow
git status
On branch dev
Your branch and ‘origin/dev’ have diverged,
and have 2 and 8 different commits each
, respectively.
(use “git pull” to merge the remote branch into yours)
nothing to commit, working tree clean

Check waar het mogelijk aan ligt – hier een lokale commit (zonder push) en ondertussen commits op origin – met bv oa:

git log -3
git log --name-status HEAD^..HEAD

git rebase origin/dev

First, rewinding head to replay your work on top of it…
Applying: correct quote signs in changes.sql
Using index info to reconstruct a base tree…
M Changes.sql
.git/rebase-apply/patch:9: trailing whitespace.
ALTER TABLE `reqproc` CHANGE `name` `process` CHAR(64) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL;
warning: 1 line adds whitespace errors.
Falling back to patching base and 3-way merge…
Auto-merging Changes.sql
CONFLICT (content): Merge conflict in Changes.sql
error: Failed to merge in the changes.
Patch failed at 0001 correct quote signs in changes.sql
The copy of the patch that failed is found in: .git/rebase-apply/patch

When you have resolved this problem, run “git rebase –continue”.
If you prefer to skip this patch, run “git rebase –skip” instead.
To check out the original branch and stop rebasing, run “git rebase –abort”.

(Corrigeer bestand Changesl.sql)

git rebase --continue

Changes.sql: needs merge
You must edit all merge conflicts and then
mark them as resolved using git add

git status

rebase in progress; onto 4df07f6
You are currently rebasing branch ‘dev’ on ‘4df07f6’.
(fix conflicts and then run “git rebase –continue”)
(use “git rebase –skip” to skip this patch)
(use “git rebase –abort” to check out the original branch)

Unmerged paths:
(use “git reset HEAD …” to unstage)
(use “git add
…” to mark resolution)

both modified: Changes.sql

no changes added to commit (use “git add” and/or “git commit -a”)

git add Changes.sql
git commit -am "fix Changes.sql diverged"

[detached HEAD b351146] fix Changes.sql diverged
1 file changed, 1 insertion(+), 2 deletions(-)

git status
rebase in progress; onto 4df07f6
You are currently rebasing branch ‘dev’ on ‘4df07f6’.
(all conflicts fixed: run “git rebase –continue”)

nothing to commit, working tree clean
git rebase --continue

Applying: correct quote signs in changes.sql
No changes – did you forget to use ‘git add’?
If there is nothing left to stage, chances are that something else
already introduced the same changes; you might want to skip this patch.

When you have resolved this problem, run “git rebase –continue”.
If you prefer to skip this patch, run “git rebase –skip” instead.
To check out the original branch and stop rebasing, run “git rebase –abort”.

git rebase --skip

Dat deed het uiteindelijk, en het Changes.sql bestand eindigde juist.

4/1/2019

Lange lijst snel naar 3 kolommen: Scribus!

Filed under: — cybrarian @ 5:56 pm

IN: lange lijst van korte items onder elkaar
(bv serienummers om te checken)

OUT: mooie print in 3 kolommen

Bron van de lijst
De lijst kan uit een databank komen, een kolom uit een rekenblad, een inhoudstabel, enz.
De lijst wordt best in een .txt formaat klaargezet, met op elke lijn een item.

Vb. Je kan zelf snel een lijst genereren door in een commandolijn in je documentdirectory ls>list.txt te doen.

Als je dit print krijg je veel bladzijden met op iedere regel enkel links wat bedrukking. De lijst manueel knippen en in kolommen plakken is te omslachtig.

Snel verdelen
Start Scribus, nieuw document (start standaard zo)
– kies automatische tekstframes
– zet op 3 kolommen.
– Ok.

In het nieuwe document: menu bestand, importeren, tekst verkrijgen. Kies de tekst en OK.

Ook: Origineel openen met bv kate, selecteer alles met ctrl-A.
In het nieuwe document, dubbelklik in de eerste kolom
Doe ctrl-v (plak de tekst hier).

Meer pagina’s
Als de tekst niet helemaal op de pagina past: menu pagina, toevoegen, en je voegt er naar wens toe. De tekst zal automatisch doorlopen op de volgende pagina’s, die ook 3 kolommen hebben.

Meer over tekstkolommen in Scribus:
https://wiki.scribus.net/canvas/Working_with_text_frames#Automatic_Text_Frame_Creation

21/12/2018

Sailfish 2.x naar 3.0.0.8: Lemmenjoki

Filed under: — cybrarian @ 11:37 pm

Er staan al een tijdje updates klaar op mijn klassieke jolla, en ik ga nu van 2.x naar 3.0.0.8.
Ik heb af en toe last van een blokkerende gsm verbinding, en hoop dat hiermee opgelost te zien…(nu helpt zelfs het uitschakelen van data of via vliegtuigmodus niet; ik moet echt het toestel uitschakelen en terug starten)

Backup naar SD kaart.
Backup file naar pc.
Aan usb (100% opgelanden)
Downloading update … Update ready for installation
Install:
One moment …
jolla …
SAILFISH OS …
___ …
jolla …
O ….
Welcome to Sailfish 3!
The third generation of the Sailfish OS is here! It is all about faster performance, deepened security, and smoother user experience for corporate use and Sailfish daily users!

Daaronder een van rechts naar links scrollend beeld met iconen waarbij telkens een titeltje erboven verschijnt als het icoon in het midden komt.

Daaronder een knop: [Start]

Locked
(code ingeven)

Vaststellingen:

  • Achtergrond
    1e vaststelling: mijn eigen ingestelde achtergrond is weg.
  • Hoek swipe melding
    Ik open de agenda omdat ik daar het meest benieuwd naar ben (was ver niet zo goed als die van Palm, die kleine kleurcodes aanbracht op het overzicht bv, en die een “voorblad” had waarop vooruitgekeken werd.)

    Ik krijg een melding dat ik van de hoeken naar beneden kan swipen om de toepassing te sluiten. (“Close the app by swiping from the corners” – ik hoop dat die dat niet elke keer gaat zeggen…)

  • Screenshots
    Bij gallery heb je nu ipv 2 items Photos en Videos ook nog Screenshots. Ze zijn allemaal geanimeerd aan het swappen; en ervoor staat het aantal bestanden van elk.

14/12/2018

Nextcloud client in openSUSE 42.3

Filed under: — cybrarian @ 1:39 pm

Desktop client
Voor wie een Nextcloud server heeft, openSUSE heeft in zijn repository een client:

https://en.opensuse.org/SDB:Nextcloud

In het menu krijg je dan: Hulpmiddelen / NextCloud desktop sync client

Verbindingsprobleem

Op een laptop merkte ik een probleem met de werking van de NextCloud client na het gebruik van de laptop buiten het netwerk met de NextCloud server.

Geen verbinding met NextCloud op https://cloud.domain.tld. Host cloud.domain.tld could not be found

De verbinding met de server bleef verbroken, en ook manueel uitloggen en terug verbinden in de client lukte niet. De melding zei iets over server niet gevonden;
In de Nextcloud client: account, afmelden:

Uitgelogd van https://cloud.domain.tld als usernaam

In de client terug aanmelden: Account, Meld u aan:

Voer Nextcloud wachtwoord in:
Gebruiker: usernaam Account:
usernaam@cloud.domain.tld
Klik hier om een nieuw app wachtwoord via de webinterface op te vragen.

Het wachtwoord ingeven levert geen verandering op, er is ook geen verschil tussen gewoon enter, een zeker verkeerd wachtwoord, en het (juiste) wachtwoord; de verbinding blijft verbroken, de melding blijft “Geen verbinding met…”

het leek alsof ten onrechte onthouden werd dat de server niet beschikbaar was, terwijl ik terug op het juiste netwerk was aangesloten (wel dubbel: met kabel en wifi).

Remedies?
Enkele instellingen verzet:
– Starten bij systeemstart: nu af (hoewel ik geen verschil merk)
– Netwerk: nu geen proxy (ipv gebruik systeemproxy)

Ook installeerde ik wat extra software:

zypper in nextcloud-client-dolphin nextcloud-client

Het probleem lijkt verholpen, maar ik weet niet wat nu juist het verschil maakte.
Upd: ik blijf regelmatig na het opstarten geen synchronisatie hebben, waarbij NextCloud client

Uitproberen:

  • Nextcloud client: Account, afmelden. Account, aanmelden.
  • Destkop gebruiker uitloggen en terug inloggen: vraagt KWallet wachtwoord voor Nextcloud? Misschien is het een KWallet probleem, of is de wallet nog niet open op het moment dat Nextcloud verbinding maakt; nochtans staat client Starten bij systeemstart AF ondertussen
  • Nextcloud client de-installeren en terug installeren; hoewel dat hielp kan dat niet de bedoeling zijn, was enkel om te checken of installatie ok was.

28/11/2018

Temperatuursensor DS18?20 aansluiten, uitlezen

Filed under: — cybrarian @ 7:02 pm

Een temperatuurvoeler als deze bestaat in een driebenige behuizing, of in een ingebedde voeler met metalen kop en een draad van een meter of meer, eindigend in een 3-kleurige aansluiting (1-wire systeem).
ps: Een andere sensor had maar 2 draden, die is eerder geschikt voor gebruik met Arduino, en heeft een veranderende weerstand waaruit de temperatuur kan afgeleid worden.

Sensor
De sensor die ik zelf in handen kreeg is de DS18S20, bedoeld voor de C-Control hardware. Ik vermoed dat het een variant is op de DS18x20 reeks zoals DS18B20, WT18B20, ..

Deze sensor bevat zelf wat logica en een register. Hij heeft een soort serienummer, zodat meer sensoren parrallel kunnen aangesloten worden en toch apart uitgelezen kunnen worden.

Sommige versies hebben een grotere nauwkeurigheid, en dan moet je eventueel in je software een omzetting doen voor de interpretatie van de uitlezing.

Aansluiting

Hij heeft drie draden:
Groen: + 3 V (plus)
Bruin: massa (ground)
Wit: data (de zogenaamde 1 wire)

Je hebt een pin met + 3 V nodig, een pin voor ground en een pin om de gegevens uit te lezen: data aan GPIO4 (of Raspberry Pi pin 7). Er komt een weerstand van 4.7 kilo-Ohm tussen de +3 V en de data kabel.
Er zijn beschrijvingen en schema’s te vinden voor de bedrading, bv op: http://domoticx.com/raspberry-pi-temperatuur-sensor-ds18b20-uitlezen/

Config
Raspberry Pi instellen om de 1 wire bus op GPIO te gebruiken:
sudo nano /boot/config.txt
Voeg aan het einde toe:
dtoverlay=w1-gpio

Dan commando om 1-wire protocol uit te lezen:
sudo modprobe w1-gpio
sudo modprobe w1-therm

Vanaf dan kan je de waarde van het register vinden in je systeem:

cat /sys/bus/w1/devices/10-0008032a0831/w1_slave

Je krijgt iets als:

38 00 4b 46 ff ff 10 10 66 : crc=66 YES
38 00 4b 46 ff ff 10 10 66 t=27750

De uitlezing hier is in milligraden (27750 = 27,75°).

Multi

Zoals gezegd kan je meer sensoren samen aansluiten, op dezelfde pins op de Raspberry Pi; het verschil in identiteitsnummer laat toe die ook uit te lezen met een aangepast commando:

cat /sys/bus/w1/devices/10-0008032a0831/w1_slave
cat /sys/bus/w1/devices/10-0008032a0f9d/w1_slave

Het verschil is klein bij twee samen aangekochte sensoren.
Bij andere gelijkaardige sensoren of andere systemen/versies kan je misschien even moeten zoeken in de directorie(s)

/sys/bus/w1/devices/

De verwerking kan verder in software gebeuren, mbv scripts, cronjobs, … of ook met Gambas3

13/11/2018

Git: hoe haal ik of zie ik remote branch?

Filed under: — cybrarian @ 1:16 pm

(in de reeks Git…)

Zien
Online (in de web interface) zie ik de branches:

  • master
  • test
  • issue1

Maar lokaal zie ik alleen mijn eigen master (sic!):

git branch -l
* master

Ook na een git fetch blijft dat zo.

Git fetch heeft een standaardgedrag of volgt instellingen, maar je kan meer specifiek git fetch origin doen:

~/Git/TrypoPrj/TrypoPrj> git fetch origin
~/Git/TrypoPrj/TrypoPrj> git branch -l
* master

Bovendien moet je eigenlijk –list gebruiken (-l dient om een reflog aan te maken), en toont git branch –list enkel de lokale branches. Maar

git branch -r

origin/HEAD -> origin/master
origin/feat-01
origin/master
origin/test

toont de remote, of wil je alles:

git branch -a

* master
remotes/origin/HEAD -> origin/master
remotes/origin/feat-01
remotes/origin/master
remotes/origin/test

met extra info als laatste commit message:

git branch -v -a

* master 8ab6216 [ahead 1] remove .directory from tracked files
remotes/origin/HEAD -> origin/master
remotes/origin/feat01 2bbd368 Complete changes.txt with done work
remotes/origin/master de381ad Resolve merge conflict by combine and reorder lines in changes.txt

Afhalen
Als je een branch van remote wil halen kan je die opgeven

git fetch origin branch-naam
Daarna logischerwijze merge in je eigen (bv master) en commit:

git merge origin/branch-naam
git commit ...

Git ingore negeert opgegeven bestand niet

Filed under: — cybrarian @ 10:47 am

(in de reeks Git…)

Hoewel ik .settings heb toegevoegd tot gitignore, blijft het af en toe opduiken als gewijzigd bestand, klaar om mee te committen. Ik begrijp niet of het komt door merge met andere medewerkers die misschien een andere instelling hebben (hoewel ik dacht dat die lokaal was).

Oorzaak is bv dat het bestand oorspronkelijk niet in gitignore zat, en er pas later is aan toegevoeg, toen het al getracked werd. En .gitignore werkt alleen voor “untracked” files (voor nieuwe bestanden dus).

Er is een extraatje nodig (how to make git forget..):

git update-index --assume-unchanged

git update-index --assume-unchanged .settings

Je krijgt geen feedback na dit commando.

28/10/2018

KMail backup: waar zit de mail?

Filed under: — cybrarian @ 4:25 pm

(KMail KDE OpenSUSE 42.3)

Mail als bestanden
De mail is in mijn huidige OpenSUSE Leap 42.3 terug te vinden in de map local-mail, die in de directory staat die is ingesteld in KMail (bv ~/.local/share/).
Daar zie je de mappen die je aangemaakt hebt in je mail programma als directories staan.

Onderverdeling mappen
De sub-mappen in je mail programma vind je niet allemaal terug; enkel de bovenste laag vind je als map met dezelfde naam terug in die directory. Zet de zichtbaarheid van verborgen bestanden aan (alt .) om de verwijzing naar de submappen te vinden.

Backup
Voor de backup gebruik ik RSYNC naar een gemounte harde schijf:
rsync -a ~/.local/share/local-mail/ mountedDisk/local-mail

28/9/2018

Git voorbeeld: SourceForge

Filed under: — cybrarian @ 10:24 am

(Reeks Githandboek (nl)commando’s vbbranch, mergeGitLab vbSourceForge vbgit en gambas)

SourceForge (https://sourceforge.net/) was in de open source en free softwarewereld zowat de eerste, grootste en bekendste website voor het online houden van een open source of free software project. Je kon de broncode gewoon uploaden als .tar.gz bestanden, of het Code Versioning System gebruiken (cvs), naast de vele project-tools voor opvolging van bugs, communicatie enz. (zie 2009)

SourceForge heeft achtergrond in VA Software (denk ook aan VA Linux, Geeknet, enz), ondertussen horen ze bij Slashdot media.
Het traject van de zoektocht naar rendabiliteit en de overnames deed Sourceforge geen goed en zaaide twijfel bij developers.
Heel wat nieuwe projecten gingen naar GitHub, (en meer recent GitLab), die specifiek gericht waren op het ondertussen in de FOSS wereld populaire geworden git-broncodebeheersysteem.

Maar ondertussen biedt SourceForge ook Git aan. Sinds januari 2018 promoten ze het aktief met een importeer-tool om GitHub projecten over te zetten naar SourceForge.
https://sourceforge.net/blog/introducing-the-new-sourceforge/

Wie al op Sourceforge zit kan zijn project beginnen beheren met git: https://sourceforge.net/p/forge/documentation/Git/

Om gemakkelijk te communiceren met de sourceforge repository is het best om een public key/private key communicatie op te zetten. Daarvoor moet je een “key” hebben, die je maakt met ssh-keygen.
Daarna moet je de projectdirectory initialiseren voor gebruik met git. En dan moet je je startcode “uploaden”, in git-terminologie comit-en en push-en.

1. Keys

1.1 keys maken:

De handleiding van sourceforge zegt:

ssh-keygen -t ed25519 -C “gebruikersnaam@shell.sf.net”

De plaats waar je dit doet is eender (bv kan je al in de projectdirectory staan).
De gebruikersnaam is die van je login, niet de weergegeven naam!
Na het commando krijg je de vraag in welk bestand de key bewaard mag worden, je kan het voorstel gewoon bevestigen.
Daarna kan je een wachtwoord ingeven (veiliger), wat je moet heringeven om te bevestigen.
Het eindigt met de plaatsen waar je identificatie en je public key bewaard werden*, en met je fingerprint.
Daaronder komt een beetje “ascii-art” met je randomart image.
* Je kan je instellingen checken in de bestanden:
private key: /home/usernaam/.ssh/id_ed25519 (deze moet je geheim houden!)
public key: /home/usernaam/.ssh/id_ed25519.pub (deze moet je meedelen)

1.2 keys registreren

Log in op SF en ga naar:
https://sourceforge.net/auth/shell_services
Daar plak je de inhoud van je .pub bestand.

2. Projectdirectory

De directory die je wil opnemen in het git beheer moet je initialiseren voor git gebruik.
Ga in de directory staan (cd projectdir), en check git:

git status
Als je … krijgt is er al een git repository van gemaakt!
Als er nog geen git initialisatie gebeurd is op deze directory krijg je een melding als:

fatal: Not a git repository

…(enz)

Tik het initialisatiecommando dat de nodige subdirectories en bestanden maakt:
init git

Initialised empty Git repository in …

Opgelet! Nu zijn er een aantal (onzichtbare) directories/bestanden bijgekomen voor git, gebruik deze projectdirectory niet meer om op een andere manier te kopiëren als project sourcecode, want hij is “vervuild” met git.

3. Stel de bron in

Als de broncode nog niet in de directory staat, kopieer je die ernaartoe. Ze vormen de verzameling van alle onderdelen die je nodig hebt om een programma te kunnen compileren.
Met git status toont git wat het daar ziet.

Je stelt ook de bestanden in die NIET naar de git-server moeten, omdat ze enkel lokaal nut of belang hebben (bv lokale instellingen van de programmeeromgeving), of omdat ze prive-informatie bevatten.
Maak daarvoor een bestand .gitignore in de projectdirectory.

git rm --chached (file) om iets wat er per vergissing toch is terechtgekomen; check met git status.

git commit -am ‘initial commit at version 0.1.5’

Je krijgt de melding dat een ‘standaard’ e-mail adres gebruikt is; je kan het instellen met:

git config --global --edit

pas aan, bewaar (standaard met ESC :w en :q), en daarna fix de identiteit die gebruikt werd met:

git commit --amend --reset-author

Je krijgt dan een tekst te zien (waarin je bv het e-mail adres kan verbeteren, dacht ik, maar dat blijkt achteraf niet met git log**); ook weer ESC :wq om te bewaren en verlaten.

4. Stel de server in

Nu moet je een verbinding instellen met de server, waar de broncode naartoe moet.

git remote add origin ssh://login@git.code.sf.net/p/gitin/code

(met je eigen login natuurlijk; de username).

En dan de eigenlijke “upload”:

git push -u origin master
Er wordt een bevestiging gevraagd van de git.code.sf.net server (met ip)
Die wordt dan toegevoegd aan de “known hosts”.
Daarna moet je je wachtwoord ingeven (dat van de ssh key).

Met wat geluk eindigt alles met:

Branch master set up to track remote branch master from origin.

Nu kan je via de website het resultaat zien onder het tabblad “code”:
https://sourceforge.net/p/projectname/code/

De projectdirectory is volledig te “browsen”!
Onderaan verschijnt de inhoud van het readme.txt bestand.

Zeer handig is de kolom “Commit”, want daar verschijnt de commit message, en je kan daarmee snel zien wat de laatste verandering is in een directory of bestand.


**)
Je moet eerst expliciet de gegevens instellen, bv het e-mail adres wordt afgeleid uit je username en je hostname, dus je krijgt username@host, en dat kan bv de lokale hostname van je pc zijn.

Je moet dan eerst expliciet de username of het e-mail adres instellen:

git config --global user.name "gebruikersnaam"
git config --global user.email "user@domein.abc"


5. Gebruik.

– Code

git commit -am 'initial commit at v.0.1.3'

Nadat van een project de originele code naar de server geladen is, wordt ze zichtbaar in de “code” tab van de Sourceforge website, bv als:

Tree[987456] master/

Op die pagina krijg je ook de commando’s aangeboden die je nodig hebt om ssh/https/RO (read-only) toegang te krijgen.

– Clone

RO is genoeg om het project af te halen:

git clone git://git.code.sf.net/p/projectnaam/code projectnaam-code

Dit maakt een lokale directory projectnaam-code, verwijzend naar de structuur op de server (beetje verschillend van GitLab).

Om ook schrijftoegang te hebben moeten eventueel de rechten aangepast worden door de admin van het project, en moet je één van de voorgestelde read/write commando’s geven.

git branch --list toont: “* master”

fatal: remote error: access denied or repository not exported…

Als je oorspronkelijk enkel read-access hebt gevraagd (bij project clone), kan je nadien de instellingen aanpassen in het .git/config bestand. Volgens de documentatie:

git://PROJECTNAME.git.sourceforge.net/gitroot/PROJECTNAME/REPONAME (read-only)
ssh://USERNAME@PROJECTNAME.git.sourceforge.net/gitroot/PROJECTNAME/REPONAME (read/write)

Bij mij zag het er iets anders uit:

url = git://git.code.sf.net/p/projectnaam/code

url = ssh://USERNAME@git.code.sf.net/p/projectnaam/code

Zoek de regel die begint met git:// en verander hem naar ssh:// waarbij je “USERNAME@” toevoegt (maar dan je echte loginnaam natuurlijk).

9/9/2018

Teamviewer gebruiken

Filed under: — cybrarian @ 11:07 pm

Na installatie van Teamviewer op openSUSE Leap 42.3 komt het programma voor in het Kde menu onder systeem of hulpmiddelen? Nee, onder “Internet”.

Bij het starten geeft het een aantal gegevens die je kan gebruiken om een koppeling te maken met een andere computer.

user id

password

Op de “andere computer” start je ook het programma.

De id invullen, het wachtwoord invullen…

(Eerste keer blijft hij altijd het wachtwoord vragen, alsof het fout is. In beide richtingen trouwens, als ik omgekeerd probeer ook dus. Ik moet afsluiten wegens tijdgebrek en beslis morgen verder te proberen).

Volgende dag lukt het wel: open het programma op beide computers, neem de nummer van de ene mee, alsook het wachtwoord; en je krijgt het scherm te zien.

De verbinding is niet razendsnel; je moet echt wel rekening houden met de vertraging bij bv het typen van een tekst, het verplaatsen vergroten/kleinen van vensters, enz.

Maar het werkt dus wel, je kan op afstand iemand helpen.

Teamviewer installeren

Filed under: — cybrarian @ 10:23 pm

Teamviewer op openSuse Leap 42.3

1. download 32 of 64 bit versie? Suse 64bit. (kies “Save File” (Bewaren) in de browser)
www.teamviewer.com/nl/download/linux/

2. ga naar de download map (klik op download pijl rechtsboven in Firefox, kies “open containing folder”)
Open een terminal (rechtsklik actions, open terminal here) en installeer met de commandolijn:

sudo zypper install teamviewer-suse_13.2.13582.x86_64.rpm

Loading repository data…
Reading installed packages…
Resolving package dependencies…

The following NEW package is going to be installed:
teamviewer-suse

1 new package to install.
Overall download size: 12.2 MiB. Already cached: 0 B. After the operation, additional
59.3 MiB will be used.
Continue? [y/n/…? shows all options] (y):

y

Retrieving package teamviewer-suse-13.2.13582-0.x86_64
(1/1), 12.2 MiB ( 59.3 MiB unpacked)
teamviewer-suse_13.2.13582.x86_64.rpm:
Header V4 RSA/SHA1 Signature, key ID 0c1289c0: NOKEY
V4 RSA/SHA1 Signature, key ID 0c1289c0: NOKEY

teamviewer-suse-13.2.13582-0.x86_64 (Plain RPM files cache): Signature verification failed [4-Signatures public key is not available]
Abort, retry, ignore? [a/r/i] (a):

Er wordt een vraag gesteld over signing; blijkbaar deden ze dat nooit, de packages signen voor Linux, dus ik ignore de waarschuwing met i.

i

Checking for file conflicts: ……………………………………………..[done]
(1/1) Installing: teamviewer-suse-13.2.13582-0.x86_64 ……………………….[done]
Additional rpm output:
warning: /var/cache/zypper/RPMS/teamviewer-suse_13.2.13582.x86_64.rpm: Header V4 RSA/SHA1 Signature, key ID 0c1289c0: NOKEY
gtk-update-icon-cache: Cache file created successfully.

3. Start de daemon (kan al gestart zijn door de installatie)
Check eerst of hij al loopt, zo ja, geen probleem.

systemctl status teamviewerd

systemctl status teamviewerd
● teamviewerd.service – TeamViewer remote control daemon
Loaded: loaded (/etc/systemd/system/teamviewerd.service; enabled; vendor preset: disabled)
Active: active (running) since Sun 2018-09-09 23:22:12 CEST; 3min 9s ago
Process: 5628 ExecStart=/opt/teamviewer/tv_bin/teamviewerd -d (code=exited, status=0/SUCCESS)
Main PID: 5633 (teamviewerd)
Tasks: 16 (limit: 512)
CGroup: /system.slice/teamviewerd.service
└─5633 /opt/teamviewer/tv_bin/teamviewerd -d

Sep 09 23:22:12 TCM-S4VCR72 systemd[1]: Starting TeamViewer remote control daemon…
Sep 09 23:22:12 TCM-S4VCR72 systemd[1]: teamviewerd.service: PID file /var/run/team…ry
Sep 09 23:22:12 TCM-S4VCR72 systemd[1]: Started TeamViewer remote control daemon.
Hint: Some lines were ellipsized, use -l to show in full.

Zo nee, start hem manueel.
sudo systemctl start teamviewerd

4. Voeg toe aan de opstartfase als je dat wil.

sudo systemctl enable teamviewered

Het desktopprogramma is opgenomen in het menu Internet als Teamviewer 13.

Geraadpleegde bron: www.linuxbabe.com

Zie verder: Wacht om te zien of het werkt … Teamviewer gebruiken op Linux

4/9/2018

Git gebruik organiseren: branches, comit, merge

Filed under: — cybrarian @ 8:59 pm

(Reeks Githandboek (nl)commando’s vbbranch, mergeGitLab vbSourceForge vbgit en gambas)
Zie ook artikel over branches in git, (Engelstalig, 2015)

Branch commando’s

git branch (--list)= toon branches; git branch -a = toon alle (ook remote)
git branch -v = toon laatste commit messages
git branch Testing = maak nieuwe branch met naam “Testing”
git checkout Testing = overschakelen naar branch
git merge bugfix = merge bugfix in huidige branch (vorige checkout branch, hier dus Testing)
git branch -d bugfix = verwijder branch (gaat niet? checked out?)

Branch, merge
Veelgebruikte struktuur van vertakkingen:

Master branch (-> production server)
Develop branch (-> staging server)

  • Feature branch
  • Hotfix branch
  • Release branch
  • Support branch

Git Branching and merging strategies beschrijft het zo:

Master – Test – Develop

Uit Master wordt initieel test gemaakt, uit test develop, en uit develop de feature branches.

Master - Test - Develop -- Feature-1
                        -- Feature-2

(

De Develop stage krijgt updates uit de feature branch die gewijzigd is;

.. Develop <-- Feature-1
           <-- Feature-2

De feature branches houden zich up to date door de wijzigingen uit de develop regelmatig af te halen (rebase). Hoe beter ze onderling op de hoogte blijven van de ontwikkeling, hoe minder conflicten later.

.. Develop --> Feature-1
           --> Feature-2

En alles van develop gaat uiteindelijk naar boven naar test, dan naar Master.

Vanuit Master wordt een Release 1.0 branch gemaakt.
Later vanuit Master een Release 2.0 branch.

De bugs die ontdekt worden in de Release branches, kunnen gepatcht worden (éérst op eerste versie waar die voorkomt)
bv comit op Release 1 –
van daaruit Merge naar Release 2
van daaruit Merge naar Develop (waarna het met rebase bij de feature branches komt, en waar het klaar zit voor de volgende release naar boven)

Overzicht van bestaande branches:

git branch --list

bugfix
* master
testing

Verschillende commits:

  • Merge
  • Fast-Forward
  • Rebase

Branch namen

Vb van een prefix die onderscheidend werkt:

feat-shortname bv: feat-stocklist
fix-shortname bv: fix-bugitem1234
hot-shortname bv: hot-fixCrashStartWithoutDb
rel-shortname bv: rel-v1-2
try-shortname bv: try-stocklistlocalcache

Branch lokaal-remote

Een lokaal gemaakte branch kan nadien gewoon naar de server gestuurd worden:

git push origin feat-1

Voorbeeld 1 merge (recursive):

master: bestand 1 veranderd; commit
develop: bestand 2 veranderd; commit

git checkout master
git merge testing

Merge made by the ‘recursive’ strategy.
TweedeBestand.txt | 1 +
1 file changed, 1 insertion(+)

Voorbeeld 2 merge (fast-forward):

git checkout master
git checkout -b bugfix

Switched to a new branch ‘bugfix’

Wijzig bestand 2, en …

git commit -a -m "voeg commentaar toe"

[bugfix 02aa0b3] voeg commentaar toe
1 file changed, 1 insertion(+)

git checkout master

Switched to branch ‘master’
Your branch is ahead of ‘origin/master’ by 3 commits.
(use “git push” to publish your local commits)

git merge bugfix

Updating feb4282..02aa0b3
Fast-forward
TweedeBestand.txt | 1 +
1 file changed, 1 insertion(+)


Voorbeeld 3: opkuisen na merge

Daarna mag de tak van de bugfix weg:

git branch -d bugfix

Deleted branch bugfix (was 02aa0b3).

Als hij nog aktief staat krijg je een fout:

error: Cannot delete branch ‘bugfix’ checked out at ‘/home/..

Voorbeeld 4 merge (rebase)

branch master, test, feat-1, feat-2

wijzigingen feat-1, commit
wijzigingen feat-2, commit

git checkout test
git status

git merge feat-1

Updating f276191..804f3c6
Fast-forward
Project/.src/Filename.class | 12 +++++++++++-
… (bestanden en wijzigingen)
12 files changed, 291 insertions(+), 37 deletions(-)
create mode 100644 Project/.src/FGetText.class
create mode 100644 Project/.src/FGetText.form

git merge feat-2

Auto-merging Project/Changes.txt
Auto-merging Project/.src/MForm.module
Auto-merging Project/.src/FMain.class
Merge made by the ‘recursive’ strategy.
Project/.src/FMain.class | 2 +-
Project/.src/MForm.module | 1 +
… (bestanden en wijzigingen)
7 files changed, 646 insertions(+), 1 deletion(-)
create mode 100644 Project/.src/Class/CIntWeek.class
create mode 100644 Project/.src/Forms/FInterim.class

Om in mijn feat-1 alle wijzigingen van test al mee te krijgen:

git checkout feat-1
git rebase test

(alhoewel niet iedereen voorstander is van rebase gebruik, zie ook fetch/merge, pull)

Voorbeeld 5 merge (diverged/rebase)

Zie hier…
http://linuxuser.copyleft.be/liglog/?p=7490

Merge Error 1

Fout op 1 bestand dat lokaal veranderd is, maar enkel een .settings bestand is dat mag overschreven worden:

git reset --hard
Daarna terug de merge.

Merge Error 2

git checkout test
git merge feat-1

Auto-merging Proj/Changes.txt
CONFLICT (content): Merge conflict in Proj/Changes.txt
Automatic merge failed; fix conflicts and then commit the result.

git status

On branch test
You have unmerged paths.
(fix conflicts and run “git commit”)
(use “git merge –abort” to abort the merge)

Changes to be committed:

modified: Proj/.src/ProjForms/FInterim.class
modified: Proj/.src/ProjForms/FInterim.form

Unmerged paths:
(use “git add …” to mark resolution)

both modified: Proj/Changes.txt

Inderdaad, de Changes.txt file is gewijzigd in beide takken. Als je het bestand in de huidig aktieve branch (de merge branch Test in dit geval) opent, zal je aanduidingen zien van de overlapping:

0.1.2 
...
< <<<<<< HEAD

FFactoring:
0.1.2 
=======
>>>>>>> feat-interim

HEAD : geeft de “hoofd”-branch aan, waar naartoe gemerged wordt, waarna die tekstversie
====== : geeft de scheiding aan naar het begin van de ingevoegde (feature-,..) branch en de bijhorende tekstversie
Ook de ingevoegde branch naam staat er achter.

Maak van de tekst de versie die het uiteindelijk moet worden, combineer beide stukken of gooi wat weg.
Stage de veranderingen met git add .
Commit de veranderingen met git commit -m "Resolve merge conflict by combining and ordening changes.txt"

Probeer daarna opnieuw een merge.

3/9/2018

Docker hierarchie enz

Filed under: — cybrarian @ 1:09 pm

Hierarchie

concept:

Stack
Services
Container

container directory/files:

directory/dockerfile
directory/app.py
directory/requirements.txt

Woordenlijst

dockerfile : definiëert de container

Python

Docker lijkt sterk gebruik te maken van Python (zie ook installatie)

Powered by WordPress