Systemd — and how to a adapt for read-only NFS for Raspberry PIs Thinclients

Systemd is a powerful init-system for Unix; most of the Distros have moved away from sysv-based (System V, init calls scripts based on /etc/inittab and /etc/rc*.d). Notable forks of “traditional” (back-wards oriented?) distributions are Devuan (Debian without Systemd), funtoo (forked from Gentoo).

Now systemd has many nice features such as fine-grained dependency-tracking and therefore concurrent, parallel startup of independent resources. Dependency may be one service depending on the other (feature-wise or time-wise) or even a provided resource (a device, a mount-point, a file within a mount-point).
With all this flexibility comes power, and complexity.

At HS-Esslingen, I maintain a computer pool with lots of Raspberry PIs: this I want to boot over the network, namely NFS, so that I don’t have to juggle with SD-cards being overwritten, being in a poor state and always out-of-sync. Students should be able to do anything on their respective RPI (like programming and loading a kernel module), yet be able to go back to reboot the well-tested and full-featured Raspbian provided to them centrally.

Read-only NFS works very well (except for corner-cases such as Chromium requiring loads of dynamic libraries that need to be fetched single-file over NFS).
However, with every Raspbian update, there are changes that require adaptations: With Raspbian 10.2 being based on Debian Buster, there are several ones, one particular I want to highlight here:
The Service systemd_timesyncd requires access to the file /var/lib/systemd/timesync/clock –this directory therefore has to be read-writable. To do so, we need to mount an overlay on top of RAM-backed tmpfs.
This is to be only, if we have the common case of student work on the RPIs, but should not be done, when we *want* to access and update files in /var/lib. Another directory made accessible locally using RAM-backed storage is /var/cache, e.g. to allow work with aptitude apt search.

Previously, I had done this check, the creation of mount-point directories and the mounts themselves in one extra systemd service and hooking that into the systemd local-fs.target. This is not very elegant.

A better way is to specify two mount-targets: var-lib.mount and var-cache.mount, which are very similar:

[Unit]
Description=Overlay FS for /var/lib
Documentation=https://www.kernel.org/doc/Documentation/filesystems/overlayfs.txt
Documentation=https://www.freedesktop.org/wiki/Software/systemd/APIFileSystems
Wants=create_tmp_dirs.service
After=create_tmp_dirs.service
ConditionPathIsMountPoint=/var/tmp

[Mount]
What=overlay
Where=/var/lib
Options=lowerdir=/var/lib,upperdir=/var/tmp/lib_upper,workdir=/var/tmp/lib_work
Type=overlay

Then, one may adapt systemd-timesyncd.service by replacing it into /etc/systemd/system, adding just one line:
RequiresMountsFor=/var/lib/systemd/timesync/clock.

Veröffentlicht unter Allgemein | Schreib einen Kommentar

Compiling GCC-SVN on MacOS 10.15

It could be so easy, but with every MacOS release several things change and some break — again so with MacOS Catalina (aka MacOS 10.15).

For GCC compilation, the directory /usr/include finally is gone for good (no .pkg-file to install aftwards to make it available again — see previous entry on GCC on MacOS 10.14).

With /usr/include gone, one needs to specify the SDK’s directory containing the native system files:

--with-build-sysroot=/Library/Developer/CommandLineTools/SDKs/MacOSX10.15.sdk/

The MacOS system header files have evolved. Bootstrapping the compiler fails compiling in libstdc++/libsupc++ the file atexit_thread.cc:

libtool: compile: /Users/hpcraink/DATA/SOFTWARE/gcc-svn/BUILD-MacOS/./gcc/xgcc -shared-libgcc -B/Users/hpcraink/DATA/SOFTWARE/gcc-svn/BUILD-MacOS/./gcc -nostdinc++ -L/Users/hpcraink/DATA/SOFTWARE/gcc-svn/BUILD-MacOS/x86_64-apple-darwin19.0.0/libstdc++-v3/src -L/Users/hpcraink/DATA/SOFTWARE/gcc-svn/BUILD-MacOS/x86_64-apple-darwin19.0.0/libstdc++-v3/src/.libs -L/Users/hpcraink/DATA/SOFTWARE/gcc-svn/BUILD-MacOS/x86_64-apple-darwin19.0.0/libstdc++-v3/libsupc++/.libs -B/Users/hpcraink/DATA/SOFTWARE/gcc-svn/BUILD-MacOS/usr/x86_64-apple-darwin19.0.0/bin/ -B/Users/hpcraink/DATA/SOFTWARE/gcc-svn/BUILD-MacOS/usr/x86_64-apple-darwin19.0.0/lib/ -isystem /Users/hpcraink/DATA/SOFTWARE/gcc-svn/BUILD-MacOS/usr/x86_64-apple-darwin19.0.0/include -isystem /Users/hpcraink/DATA/SOFTWARE/gcc-svn/BUILD-MacOS/usr/x86_64-apple-darwin19.0.0/sys-include --sysroot=/Library/Developer/CommandLineTools/SDKs/MacOSX10.15.sdk/ -fno-checking -I/Users/hpcraink/DATA/SOFTWARE/gcc-svn/libstdc++-v3/../libgcc -I/Users/hpcraink/DATA/SOFTWARE/gcc-svn/BUILD-MacOS/x86_64-apple-darwin19.0.0/libstdc++-v3/include/x86_64-apple-darwin19.0.0 -I/Users/hpcraink/DATA/SOFTWARE/gcc-svn/BUILD-MacOS/x86_64-apple-darwin19.0.0/libstdc++-v3/include -I/Users/hpcraink/DATA/SOFTWARE/gcc-svn/libstdc++-v3/libsupc++ -D_GLIBCXX_SHARED -fno-implicit-templates -Wall -Wextra -Wwrite-strings -Wcast-qual -Wabi=2 -fdiagnostics-show-location=once -ffunction-sections -fdata-sections -frandom-seed=atexit_thread.lo -g -O2 -c ../../../../libstdc++-v3/libsupc++/atexit_thread.cc -fno-common -DPIC -D_GLIBCXX_SHARED -o atexit_thread.o
In file included from /Library/Developer/CommandLineTools/SDKs/MacOSX10.15.sdk/usr/include/sys/wait.h:110,
from /Library/Developer/CommandLineTools/SDKs/MacOSX10.15.sdk/usr/include/stdlib.h:66,
from /Users/hpcraink/DATA/SOFTWARE/gcc-svn/BUILD-MacOS/x86_64-apple-darwin19.0.0/libstdc++-v3/include/cstdlib:75,
from ../../../../libstdc++-v3/libsupc++/atexit_thread.cc:25:
/Library/Developer/CommandLineTools/SDKs/MacOSX10.15.sdk/usr/include/sys/resource.h:443:34: error: expected initializer before ‘__OSX_AVAILABLE_STARTING’
443 | int getiopolicy_np(int, int) __OSX_AVAILABLE_STARTING(__MAC_10_5, __IPHONE_2_0);
| ^~~~~~~~~~~~~~~~~~~~~~~~

This is due to the system header’s file Availability.h not defining the macro __OSX_AVAILABLE_STARTING, since the just-compiled cc1 does not offer defined(__has_feature)

One needs to amend the header Availability.h with the following patch:

--- Availability.h 2019-11-10 15:02:48.000000000 +0100
+++ Availability.h.WORKS 2019-11-10 15:05:10.000000000 +0100
@@ -290,6 +290,12 @@
#define __OSX_AVAILABLE_BUT_DEPRECATED_MSG(_osxIntro, _osxDep, _iosIntro, _iosDep, _msg)
#endif
#endif
+
+ #ifndef __OSX_AVAILABLE_STARTING
+   #define __OSX_AVAILABLE_STARTING(_osx, _ios)
+   #define __OSX_AVAILABLE_BUT_DEPRECATED(_osxIntro, _osxDep, _iosIntro, _iosDep)
+   #define __OSX_AVAILABLE_BUT_DEPRECATED_MSG(_osxIntro, _osxDep, _iosIntro, _iosDep, _msg)
+ #endif
#endif /* __OSX_AVAILABLE_STARTING */

#else
Veröffentlicht unter Allgemein, Tec | Schreib einen Kommentar

Compiling GCC-SVN on MacOS 10.14.5

Again SIP has brought along some user-visible changes (see previous issue with Apple Mail). With the update of XCode 10 the directory /usr/include is not available anymore — not even after installing XCode and xcode-select --install. Without /usr/include, one cannot compile the GNU Compiler from source anymore. The forum’s preferred solution is to install the package /Library/Developer/CommandLineTools/Packages/macOS_SDK_headers_for_macOS_10.14.pkg

Prior to compiling GCC, one needs updated libraries, e.g. using brew: brew update. Then run brew install gmp mpfr libmpc isl

My configure line for GCC currently is:

../configure --prefix=$PWD/usr --enable-bootstrap --enable-languages=c,c++,fortran,jit,lto --enable-host-shared --disable-multiarch

The options mean:

  • --prefix= Installation path is in the present working directory under usr/. This allows prepending this installation’s bin directory to my PATH (and equivalent for the library’s directory to LD_LIBRARY_PATH) in order to test the new compiler.
  • --enable-bootstrap After compiling GCC with the system compiler (Apple uses an adapted Clang compiler), recompile GCC with itself in multiple sttages.
  • --enable-languages Apart from C and C++, compile with the Fortran compiler, the Just-in-Time compilation support (which requires --enable-host-shared) and link-time-optimization frontend (to allow optimization at the final link-step, which offers more optimization opportunities).
  • --enable-host-shared The GCC-internal host libraries are build as shared libraries. These are required to be dynamically loadable at runtime by applications compiling just-in-time code.
  • --disable-multilib Just compile natively for x86_64-architecture, do not compile multi-library version, e.g. 32-bit i386.

Alternatively using --with-native-system-header-dir one may search for header files in the directory found above, not in the non-existent /usr/include; so here, this would be --with-native-system-header-dir=/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/usr/include.

Veröffentlicht unter Tec | Verschlagwortet mit | Ein Kommentar

Apple Mail cannot retrieve Emails after MacOS upgrade.

Since MacOS 10.11 (El Capitan), Apple’s Operating System features System Integration Protection or short SIP, which protects certain directories from write-accesses. This protection gets more thorough by the versions. This led to a bunch of mishaps when upgrading my laptop.

One of them was, Apple Mail could not access my Mail-Directory under ~/Library/, however, the visible errors where of the likes that the mail retrieval from my servers did not work…

It took a while to figure out SIP was to blame. Just add Apple Mail.app to Settings->Security&Privacy->Full Disk Access. Hopefully there are no bugs in Apple Mail that would allow it to read & write to parts of the disk — which otherwise would be protected by SIP.

Veröffentlicht unter Allgemein | Ein Kommentar

Compile GCC-8.1 for Raspberry PI 3

The British company Arm Holdings licences the ARM Central Processing Unit (CPU) design to manufacturers such as Samsung, Apple and Broadcom for their own chip-design, which may include further functionalities into the design.
Since March 2018 the Raspberry PI 3B+ is available. It features a Broadcom BCM2837B0 SOC (System-on-Chip), containing an Cortex-A53 CPU. This CPU abides to the ARMv8.0-A instruction set.

The ARMv8.0-A instruction set has made previously optional functionality now mandatory. One of the biggest differences relate to the floating-point unit (FPU). Previously to make up for a missing FPU, the operating system (OS) had to provide a Software FPU, in short soft-fpu.
Operating Systems such as Raspbian Linux based on the rather conservative Debian Linux distribution ships with gcc-6.3.0 as default compiler, which does not know about the intricacies of the ARMv8 architecture. In fact, it assumes, it compiles for ARMv6!
To verify, compile a simple C code using the base gcc-6 using the command-line
gcc -march=native -S -fverbose-asm -mprint-tune-info -o stub.S stub.c
In the assembler dump stub.S You’ll find the inherent options passed (due to -fverbose-asm) including -march=armv6, -mfloat-abi=hard (which is good) and -mfpu=vfp (which is not so good).

The information to provide is based on the above Wiki-pages and on output generated from cat /proc/cpuinfo:

...
Features: half thumb fastmult vfp edsp neon vfpv3 tls vfpv4 idiva divt vfpd32 lpae evtstrm crc32
...

Reading the Linux source code in file arch/arm/kernel/setup.c these include Advanced Single-Instruction Multiple Data (SIMD) instructions called NEON (neon) with 32 64-Bit registers (vfpd32) include cyclic-redundancy check instructions (crc32) but not the crypto extension (such as aes, sha1, sha2).

Now we want to compile an up-to-date gcc-8.1.0 on Raspberry PI, to make best usage of the instruction set and the Cortex-A53’s units.
There are already websites/blogs documenting how to compile gcc-8.1.0, however, they fail to address the issues mentioned above.
I found that configuring gcc with the following options provides good results:
SOURCE_DIR_OF_GCC/configure --program-suffix=-8.1 --with-arch=armv8-a+simd+crc --with-float=hard --build=arm-linux-gnueabihf --enable-languages=c,c++,fortran,lto --disable-multilib --enable-checking=release

These are the differences in the configuration with regard to the above Blog:

  • Use a shorter suffix, so the new compiler will be automatically available in path /usr/local/bin as gcc-8.1, g++-8.1 and gfortran-8.1 now including Link Time Optimizations (lto)
  • Properly set the architecture of the processor: it is an ARMv-8.0-A architecture, which does have SIMD and CRC instructions.
  • Includes link-time optimizations (lto) to C, C++ and Fortran.
  • Does limited checking on the compiler (reducing memory footprint).
  • Only sets the build-information, so that necessary libraries are found in /usr/lib/arm-linux-gnueabihf, but does not set cross-compiling flags such as --target.

After having installed this compiler, we may compile OpenCV and friends using updated compiler flags:
ccmake SOURCE_TO_OPENCV -DCMAKE_C_COMPILER=gcc-8.1 -DCMAKE_CXX_COMPILER=g++-8.1 -DCMAKE_CXX_FLAGS="-march=armv8-a+simd+crc -mfpu=auto -mtune=cortex-a53" -DCMAKE_C_FLAGS="-march=armv8-a+simd+crc -mfpu=auto -mtune=cortex-a53" ... .

Veröffentlicht unter Allgemein | Verschlagwortet mit , , | Schreib einen Kommentar

Night sky

The night over the Caroo shows an amazing display of stars! One clearly sees the milky-way._MG_3340_Balanced_small
_MG_3341_Balanced_small

Veröffentlicht unter Allgemein | Schreib einen Kommentar

SNOW – Finally!

On the way from Citrusdal to Ceres over the Cederberg Mountains we were suddenly caught in the clouds. Looking back on the pass from the valley below we saw the montaintops cowerd in SNOW! We finnaly get a piece of winter in South Africa!

0822_Snow 0822_Snow1 0822_Snow2
0822_Snow3

Veröffentlicht unter Allgemein | Schreib einen Kommentar

Sevilla Rock Art Trail

The Khoi-Khoi, or sometimes Khoen-Khoen, are as combination as in Khoi-San are the indigeneous people inhabitating Sub-Saharan Africa for thousands of years. They lived as separate ethnic groups in pastoral (Khoikhoi) and hunter-gatherer live-style. With the arrival of various Bantu-ethnic groups such as the Zulu and Xhosa moving south-wards, they were more and more driven out of their habitats — even though they somewhat intermingled. Of course, this process intensified much more, when not much later the V.O.C. (the Dutch East Indian Trade Company) set up shop at Cape Town to replenish ships and the first white settlers inhabited the land.

San-people’s traditions are being shown e.g. at !Khwa ttu just north of Cape Town.
Their art however is visible all over South Africa.

Just out of Clanwilliam, there’s the Sevilla Rock Art trail, where one hikes along a beautiful river next to the Fynbos and beautiful flowers — seeing the San’s rock art, being between 8000 and 800 years old!_MG_3076_small

Above Elke shows an attentive Spring-bok fan the gathering of men around a fire(?) in black overpainted with a group of red figurines.

But there’s also, Elephants, Zebra-foals, and “monsters”, i.e. dinosaur-looking creatures:
_MG_3081_smallAs we learned, these drawings were made from a color mixed from Elands blood and fat: the fat would allow the color to drain the rock and fixate it, allowing it to withstand thousands of years of rain and other weather.

The landscape is amazing, with the close-by river allowing rich versatile range of live, no wonder, the San were amazed by the spirituality of this place:
_MG_3089_90_91_92_93_Photographic_small

The most magnificient piece is a small, supposedly unfinished set of baboons underneath a huge rock balancing on two points:
_MG_3094-_MG_3099_2_smallP1050684_small

The last of the way-points detailed in the guide is #9 featuring lots and lots of drawings:
_MG_3188_89_90_91_92_Natural_small

Wonderful adventurous rock-formations all along the way:
_MG_3163_small

There was a bit of wild-live all along the way:

_MG_3106_tonemapped_small(ah, yes, this picture of this fast little critter was a bit tweaked, but not much, the lizzard really was that colorful in comparison to the red rocks!)

Veröffentlicht unter Allgemein | Schreib einen Kommentar

Springflowers around the Cederberg Mountains

The ‘Ramskop Wild Flower Garden’ in Clanwilliam and the Biedouw Valley on the way to Wupperthal around the Cederberg Wilderness Area shows also the brightes colours, dressed in Springflowers like Bittergousblom (Arctotis fastuosa), Gousblom (Gazania krebsiana), Rankvygie (Jordaaniella cuprea), Skaabos (Tripteris oppositifolia),…

0819_Ced 0819_Ced1 0819_Ced3
0819_Ced7 0819_Ced4 0819_Ced8

0819_Ced9

Veröffentlicht unter Allgemein, South Africa | Schreib einen Kommentar

Rooibos Tea, Clanwilliam

Rooibos, meaning ‘red bush’ (Aspalathus linearis) belongs to the fynbos family and is indigenous to South Africa. It has adapted well to the harsh conditions of the Cederberg region and is cultivated in a radius of 150 km around Clanwilliam. Here you can also find the only Rooibos-Teahouse in the world. They offer more than 100 flavoured/blended rooibosteas – all direct from the farm. Of course we do not want to miss a tasting…

0818_roo 0818_roo1
0818_roo0
0818_roo2
0818_roo3 0818_roo4

 

 

Veröffentlicht unter Allgemein, South Africa, Tastings | Schreib einen Kommentar

SPRINGFLOWERS – West Coast National Park – and all around!

This week seams to be the Peak of the Spring-Flower-Season along the WestCoast between Saldanha Bay, Langebaan and the WestCoast National Park. The white ‘Namakwa Daisy’ (Dimorphotheca pluvialis) shines brilliant and the mass of flowers can easily be confused with snow all allong the hills!
0815_Flowers
0815_Flowers0
0815_Flowers2
0815_Flowers3
0815_Flowers6
0815_Flowers5
0815_Flowers1

Veröffentlicht unter Allgemein | Schreib einen Kommentar

Swartberg Pass, Oudtshoorn to Prince Albert

On the way from Oudtshoorn to Prince Albert past many ostriches on the fields.
0813_Pass0
Don’t miss the famos Cango Caves!
0813_Pass1
Where the tar road ends – this is where the fun beginns!
0813_Pass3
Upwards to the Swartberg Pass
0813_Pass4
0813_Pass5
Viewing the amazing canyon on the way down to Prince Albert.
0813_Pass7
0813_Pass8

Veröffentlicht unter South Africa | Schreib einen Kommentar

Cango Ostrich Farm, Oudtshoorn

0811_Strauss0
0811_Strau

Ein Straußenei kann bis zu 100 kg Belastung aushalten, das sollte also locker Jonathan UND Rainer tragen! Mal sehen, ob das stimmt…
0811_Strauss2
Der Afrikanische Strauß ist der größte lebende Vogel der Welt. Ein Straußenei ergibt so viel Rührei wie ca. 25 Hühnereier! Strauße lieben alles glitzernde, also Vorsicht mit Ohrsteckern und Piercings…
0811_Strauss1

Das Strauße den “Kopf in den Sand” stecken, ist auf jeden Fall ein Gerücht, das NICHT stimmt! Sie baden höchstens mal im Sand…
0811_Strauss

Veröffentlicht unter Allgemein | Schreib einen Kommentar

On the road again – Little Karoo

North of the Garden Route behind the Langeberg Mountains and separated from the much more extensive Great Karoo by the Swartberg Mountains to the north is the Klein Karoo, a dry semi-desert area. It is one of the more diverse regions in the Western Cape, with gigantic cliffs, desert-like landscapes, crystal clear streams and fertile vineyards.

0810_Karoo

Streets are straight – and for long distances with little traffic, with only one fixed roadway. For oncoming traffic just avoid to the shoulder…

0810_Karoo1

The Parking attendand pays allways attention, not only for the cars…

0810_Karoo2

A car is a allways good for travel, but it is by far not the only suitable vehicle!

0810_Karoo3

 

Veröffentlicht unter Allgemein | Schreib einen Kommentar

Addo Elephant Park

The Greater Addo Elephant Park is located in the 180 000 ha of land in the thick bushveld of the Sundays River in the Eastern Cape. The park, the third largest in South Africa, offers a wide range of game viewing and outdoor activities. The park is the only national park in the world to conserve the “Big 7” – the “Big 5” as well as the Southern Right Whale and great White Shark off the Algoa Bay coast.

We can drive in our own car and Jonathan is watching out for wildlife – just stay in the car!

0809_Addo0
0809_Addo0a

0809_Addo
0809_Addo1

The ‘Circellium bacchu’ or simply called the ‘Addo Elephant Park’s flightless dung beetle’,  is one of the rarest species of dung beetle. He always has the right of way in the park!

0809_Addo3

0809_Addo2 0809_Addo4 0809_Addo6

And, of course, we met a lot of the more as 500 Ellies in the Addo Elephant Park.0809_Addo7 0809_Addo8

Veröffentlicht unter Allgemein, Animals | Schreib einen Kommentar

Knysna

Knysna is a pretty little harbour town in the heart of the Garden Route with a waterfront full of restaurants, arts and craft shops. Famos is Knysna for the Oysters and the very popular annual Knysna Oysters Festival in July.

0808_Kny1

Nevertheless some prefer Spaghetti!
0808_Kny0

0808_Kny
0808_Kny2
0808_Kny3

Veröffentlicht unter Allgemein, Tastings | Schreib einen Kommentar

Knysna Elephant Park

Der private Knysna Elephant Park wurde 1994 mit der Rettung von zwei Elefanten aus dem Krügerpark gegründet. Zwischenzeitlich wurden hier über 40 Elefanten aufgenommen, aufgepäppelt und wieder ‘ausgewildert’. Die derzeitige Herde besteht aus neun Elefanten, wobei zwei davon bald in andere Parks oder Reservate umgesiedelt werden sollen und nicht mehr mit den Besuchern in Kontakt kommen. Oberhaupt der Herde ist ‘Sally’, heute 27 Jahre jung, die zusammen mit ‘Harry’ 1994 nach Knysna kam.

0807_Kny

‘To know an elephant is to be touched by one’

0807_Knys1

‘Walk with an Elephant’

Der Park bietet für Tagesbesucher umfangreiche Informationen, Elefantenfüttern, Elefantenspaziergänge und zweimal am Tag auch Elefantenreiten an. Dabei werden keine Sättel vewendet und die gesamte Herde bleibt immer zusammen. Die restliche Zeit verbringen die Tiere mit grasen auf dem 80 ha großen Gelände.

0807_Knys4
0807_Kny5

Aussergewöhnlich und absolut empfehlenswert sind die sechs Suiten der Elephant Lodge, die direkt im Unterstand der Elefanten gebaut wurden. Von dort aus kann man den Elefanten die ganze Nacht lang beim schlafen zusehen – und zuhören. Ein einmaliges Erlebnis – bis man dann doch auch selber einschläft!
0807_Kny2
0807_Kny3
0807

http://www.knysnaelephantpark.co.za/

Veröffentlicht unter Allgemein, Animals | Schreib einen Kommentar

Tsitsikamma National Park, Storms River Mouth

Im Tsitsikamma Nationalpark, seit 2009 Teil des Garden Route Nationalpark, findet man einen der letzten Urwälder des Landes, einen Küstenregenwald mit bis zu 800 Jahre alten Yellowwood-Bäumen. Eine der zahlreichen Attraktionen ist die Suspension-Bridge. Die Hängebrücke über den Storms River wird auch gerne von den Baboons (Pavianen) benutzt…

0806_Tsitsi
0806_Tsitsi2
0806_Tsitsi3
0806_Tsitsi4
0806_Tsitsi5

Das ‘Storms River Mouth Restcamp’ bietet gut ausgestattete Chalets/ Oceanettes direkt an der Küste – mit atemberaubendem Blick auf die endlose Brandung der Wellenbrecher.

0806_Tsitsi6 0806_Tsitsi7

Veröffentlicht unter Allgemein | Schreib einen Kommentar

Wildebraam Berry Estate, Swellendam

Auf dem Weg von De Hoop zur Garden Route lohnt ein Stop in Swellendam im Wildebraam Berry Estate. Das Familienunternehmen, dass auf seinem Gelände auch Cottages vermietet, produziert so ziemlich alles, das sich aus Beeren herstellen lässt.

0805_BerryCottage

The ‘Berry Cottage’ on Wildebraam Estate

Ein kleiner Blick in den Tasting-Raum. Berry Jams, Gourmet Jams, Cheese Jams, Relishes, Chutneys, Atchars, Mustard, Olives, Liqueurs,… und wieder mal – LECKER! 0805_Tasting

Auf der Farm wachsen hauptsächlich Youngberrys, ein 1905 erstmals gezüchteter Hybrid aus Himbeeren (Raspberries) und Brombeeren (Blackberries). Die restlichen Früchte werden aus der Umgebung zugekauft und direkt auf der Farm verarbeitet.

0805_Wilde

Youngberry Fields on the Farm

Veröffentlicht unter Allgemein | Schreib einen Kommentar

Sand dunes at De Hoop Nature Reserve

The De Hoop Nature Reserve consist of two parts, one is the land which hosts Zebras, several types of Boks (Springbok and the rare Buntebok) and Ostriches, the other part is the adjoining Marine reserve.
P1040301_smallP1040307_small

Driving the dust road towards the coast, one overlooks the river Soutrivier which ends in the De Hoopvlei. The park features overnight stays in cottages and manor house as bed-and-breakfast.
The most stunning view is the Sand dunes seperating the two parts of the park, sticking out bright in the afternoon sun.
There’s small cottages on the hill closer to the coast.
_MG_2428_29_30_31_32_Photographic_small_MG_2413_4_5_6_7_Photographic_small_MG_2467_68_69_70_71_tonemapped_small

We had a blast, Jonathan was excited to run bare-foot in the sand.
_MG_2418_small_MG_2434_small

Together we ran down towards the ocean and up and down again.
_MG_2477_small

What these pictures do not convey is size and vastness of the landscape. We ran about 300m down the hill, about 60m down:

IMG_2492_small IMG_2493_small IMG_2494_smallAnd suddenly we saw a whale, no two, in the end we saw three mothers with their babies swimming side by side. The small baby whales were “sailing” and “lobtailing”, terms we had learned the days before from Hermanus’ Ken “the Whale man”. Sailing means the whale sticks out the tail straight out of the water for a longer time and lobtailing means he’s splashing the tail continously on the water (that’s how I saw them in the first place).

_MG_2457_small _MG_2473_small

Amazing to see them so close to the coast all next to each other.
As we learned in Hermanus:

  • Southern Right Whales gestation period is about a year.
  • Baby whales upon birth are up to 6m long and weigh about a ton!
    Sometimes, another whale helps giving birth as kind of “Midwife”.
  • Being mammals, the new-born are being milked.
    Since they have stiff lips and bartleens, the babies cannot suck. Rather the mother presses a rich, very fatty milk (of tooth-paste like consistency) into the baby’s mouth. She feeds about 600 liter of this “milk” per day!
  • With this diet a baby whale grows about 3cm per day!
    And they are being nursed for about one year.
  • The mother will stay solo for about another year before becoming pregnant again.
Veröffentlicht unter Animals, South Africa | Schreib einen Kommentar