نو زه به کار واخلم ptouch-770د ورور P-Touch 770 پرنټر کنټرول لپاره CLI چې زه یې د لیبلونو چاپولو لپاره کاروم.
زه پدې باندې مختلف لیبلونه چاپوم ، او تاسو ممکن دا دمخه په تیرو مقالو کې لیدلي وي. یو څه دمخه ، ما په Python کې د GUI ریپر یو کوچنی برنامه لیکلې وه (ځکه چې دا په Gtk + کې دی ، دا باید بیا لیکل شي ، او دا د زده کړې ښه دلیل دی).
ورور P-Touch 770 لیبل پرنټر. ایا دا د هایکو سره کار کوي؟
د هایکو بسته بندۍ مدیر د کتابتونونو او امرونو په اړه پوهیږي، نو که زه د چلولو په وخت کې "لبینتل موندلی نه شم" پیغام ترلاسه کړم. configure - زه یوازې پیلوم pkgman install devel:libintl او اړین بسته به وموندل شي. همداسې pkgman install cmd:rsync. ښه، etc.
پرته له دې چې دا کار نه کوي:
/Haiku/home> git clone https://github.com/probonopd/ptouch-770
Cloning into 'ptouch-770'...
remote: Enumerating objects: 134, done.
remote: Total 134 (delta 0), reused 0 (delta 0), pack-reused 134
Receiving objects: 100% (134/134), 98.91 KiB | 637.00 KiB/s, done.
Resolving deltas: 100% (71/71), done./Haiku/home> cd ptouch-770//Haiku/home/ptouch-770> make
gcc -Wall -O2 -c -o ptouch-770-write.o ptouch-770-write.c
ptouch-770-write.c:28:10: fatal error: libudev.h: No such file or directory
#include <libudev.h>
^~~~~~~~~~~
compilation terminated.
Makefile:16: recipe for target 'ptouch-770-write.o' failed
make: *** [ptouch-770-write.o] Error 1/Haiku/home/ptouch-770> pkgman install devel:libudev
100% repochecksum-1 [65 bytes]
Validating checksum for Haiku...done.
100% repochecksum-1 [64 bytes]
Validating checksum for HaikuPorts...done.
*** Failed to find a match for "devel:libudev": Name not found/Haiku/home/ptouch-770> pkgman install devel:udev
100% repochecksum-1 [65 bytes]
Validating checksum for Haiku...done.
100% repochecksum-1 [64 bytes]
Validating checksum for HaikuPorts...done.
*** Failed to find a match for "devel:udev": Name not found
شاید udev ډیر لینکس میشته وي او له همدې امله د هایکو لپاره شتون نلري. دا پدې مانا ده چې زه اړتیا لرم د سرچینې کوډ ترمیم کړم چې زه یې د راټولولو هڅه کوم.
هو، تاسو نشئ کولی په خپل سر ټوپ کړئ، او زه حتی نه پوهیږم چې چیرته پیل وکړم.
دریمه هڅه
دا به ښه وي چې ولري tmate د هایکو لپاره، نو زه به د هایکو پراختیا کونکو ته اجازه ورکړم چې زما ترمینل ناستې سره وصل شي - که چیرې یو څه غلط شي. لارښوونې خورا ساده دي:
./autogen.sh
./configure
make
make install
ښه ښکاري، نو ولې په هایکو کې هڅه نه کوئ؟
/Haiku/home> git clone https://github.com/tmate-io/tmate/Haiku/home> cd tmate//Haiku/home/tmate> ./autogen.sh
(...)/Haiku/home/tmate> ./configure
(...)
checking for libevent... no
checking for library containing event_init... no
configure: error: "libevent not found"/Haiku/home/tmate> pkgman install devel:libevent
(...)
The following changes will be made:
in system:
install package libevent21-2.1.8-2 from repository HaikuPorts
install package libevent21_devel-2.1.8-2 from repository HaikuPorts
Continue? [yes/no] (yes) :
100% libevent21-2.1.8-2-x86_64.hpkg [965.22 KiB]
(...)
[system] Done.checking for ncurses... no
checking for library containing setupterm... no
configure: error: "curses not found"/Haiku/home/tmate> pkgman install devel:libcurses
(...)
*** Failed to find a match for "devel:libcurses": Name not found/Haiku/home/tmate> pkgman install devel:curses
(...)
*** Failed to find a match for "devel:curses": Name not found
پدې مرحله کې زه د هایکو ډیپو خلاصوم او لټون کوم curses.
یو څه وموندل شو، کوم چې ما د یوې وړ پوښتنې لپاره اشاره راکړه:
/Haiku/home/tmate> pkgman install devel:libncurses
(...)
100% ncurses6_devel-6.1-1-x86_64.hpkg [835.62 KiB]
(...)./configure
(...)
checking for msgpack >= 1.1.0... no
configure: error: "msgpack >= 1.1.0 not found"/Haiku/home/tmate> pkgman install devel:msgpack
(...)
*** Failed to find a match for "devel:msgpack": Name not found/Haiku/home/tmate> pkgman install devel:libmsgpack
(...)
*** Failed to find a match for "devel:libmsgpack": Name not found
بیا زه هایکو ډیپو ته لاړم، او البته، زه وموم devel:msgpack_c_cpp_devel. دا عجیب نومونه څه دي؟
/Haiku/home/tmate> pkgman install devel:msgpack_c_cpp_devel
100% repochecksum-1 [65 bytes]
Validating checksum for Haiku...done.
100% repochecksum-1 [64 bytes]
Validating checksum for HaikuPorts...done.
*** Failed to find a match for "devel:msgpack_c_cpp_devel": Name not found# Why is it not finding it? To hell with the "devel:".../Haiku/home/tmate> pkgman install msgpack_c_cpp_devel
(...)
The following changes will be made:
in system:
install package msgpack_c_cpp-3.1.1-1 from repository HaikuPorts
install package msgpack_c_cpp_devel-3.1.1-1 from repository HaikuPorts
Continue? [yes/no] (yes) :
(...)/Haiku/home/tmate> ./configure
(...)
checking for libssh >= 0.8.4... no
configure: error: "libssh >= 0.8.4 not found"/Haiku/home/tmate> pkgman install devel:libssh/Haiku/home/tmate> make
(...)
In file included from /boot/system/develop/headers/msgpack.h:22,
from tmate.h:5,
from cfg.c:29:
/boot/system/develop/headers/msgpack/vrefbuffer.h:19:8: error: redefinition of struct iovec'
struct iovec {
^~~~~
In file included from tmux.h:27,
from cfg.c:28:
/boot/system/develop/headers/posix/sys/uio.h:12:16: note: originally defined here
typedef struct iovec {
^~~~~
Makefile:969: recipe for target 'cfg.o' failed
make: *** [cfg.o] Error 1
/Haiku/home/tmate> pkgman update
(...)
The following changes will be made:
in system:
upgrade package msgpack_c_cpp-3.1.1-1 to 3.2.0-2 from repository HaikuPorts
upgrade package msgpack_c_cpp_devel-3.1.1-1 to 3.2.0-2 from repository HaikuPorts
Continue? [yes/no] (yes) : y
100% msgpack_c_cpp-3.2.0-2-x86_64.hpkg [13.43 KiB]
(...)
[system] Done.
په غیر متوقع ډول ښه. دا هغه څه دي چې ما وویل؟!
زه بیرته اصلي ستونزې ته راګرځم:
/Haiku/home/tmate> make
(...)
In file included from tmux.h:40,
from tty.c:32:
compat.h:266: warning: "AT_FDCWD" redefined
#define AT_FDCWD -100
In file included from tty.c:25:
/boot/system/develop/headers/posix/fcntl.h:62: note: this is the location of the previous definition
#define AT_FDCWD (-1) /* CWD FD for the *at() functions */
tty.c: In function 'tty_init_termios':
tty.c:278:48: error: 'IMAXBEL' undeclared (first use in this function); did you mean 'MAXLABEL'?
tio.c_iflag &= ~(IXON|IXOFF|ICRNL|INLCR|IGNCR|IMAXBEL|ISTRIP);
^~~~~~~
MAXLABEL
tty.c:278:48: note: each undeclared identifier is reported only once for each function it appears in
Makefile:969: recipe for target 'tty.o' failed
make: *** [tty.o] Error 1
اوس داسې ښکاري چې msgpack ګناه نه ده. زه تبصره کوم IMAXLABEL в tty.c نو:
osdep-unknown.c: In function 'osdep_get_cwd':
osdep-unknown.c:32:19: warning: unused parameter 'fd' [-Wunused-parameter]
osdep_get_cwd(int fd)
~~~~^~
make: *** No rule to make target 'compat/forkpty-unknown.c', needed by 'compat/forkpty-unknown.o'. Stop.
ښه، دلته موږ بیا ځو ... په لاره کې:
/Haiku/home/tmate> ./configure | grep -i OPENAT
checking for openat... no
/Haiku/home/tmate> ./configure LDFLAGS="-lbsd"
(...)/Haiku/home/tmate> make
(...)
In file included from tmux.h:40,
from window.c:31:
compat.h:266: warning: "AT_FDCWD" redefined
#define AT_FDCWD -100
In file included from window.c:22:
/boot/system/develop/headers/posix/fcntl.h:62: note: this is the location of the previous definition
#define AT_FDCWD (-1) /* CWD FD for the *at() functions */
make: *** No rule to make target 'compat/forkpty-unknown.c', needed by 'compat/forkpty-unknown.o'. Stop.
دوی ماته څرګنده کړه چې په هایکو کې د libresolv سربیره په لیبنټ ورک کې بل څه شتون لري. په ښکاره ډول کوډ باید نور ترمیم شي. فکر کول پکار دي…
find . -type f -exec sed -i -e 's|lresolv|lnetwork|g' {} ;
ابدي پوښتنه: څه روان دي؟
/Haiku/home/tmate> ./configure LDFLAGS="-lbsd"
(...)/Haiku/home/tmate> make
(...)
# Success!# Let's run it:/Haiku/home/tmate> ./tmate
runtime_loader: /boot/system/lib/libssh.so.4.7.2: Could not resolve symbol '__stack_chk_guard'
resolve symbol "__stack_chk_guard" returned: -2147478780
runtime_loader: /boot/system/lib/libssh.so.4.7.2: Troubles relocating: Symbol not found
ورته شی، یوازې په پروفایل کې. ګوګل او دا وموندل. که تاسو اضافه کړئ -lssp "کله ناکله" مرسته کوي، زه هڅه کوم:
/Haiku/home/tmate> ./configure LDFLAGS="-lbsd -lssp"
(...)/Haiku/home/tmate> make
(...)/Haiku/home/tmate> ./tmate
وا! دا پیل دی! خو…
[tmate] ssh.tmate.io lookup failure. Retrying in 2 seconds (non-recoverable failure in name resolution)
یوازې هغه څه چې زه ورته اړتیا لرم - که په عامه توګه د بسته بندۍ خوشې کولو لپاره د لارې په لټه کې نه وي. مګر دا د بل پوسټ لپاره موضوع ده.
د هایکوپورټر او هایکوپورټ نصب کول
cd /boot/home/
git clone https://github.com/haikuports/haikuporter --depth=50
git clone https://github.com/haikuports/haikuports --depth=50
ln -s /boot/home/haikuporter/haikuporter /boot/home/config/non-packaged/bin/ # make it runnable from anywhere
cd haikuporter
cp haikuports-sample.conf /boot/home/config/settings/haikuports.conf
sed -i -e 's|/mydisk/haikuports|/boot/home/haikuports|g' /boot/home/config/settings/haikuports.conf
د ترکیب لیکل
SUMMARY="Demo QtQuick application"
DESCRIPTION="QtQuickApp is a demo QtQuick application for testing Haiku porting and packaging"
HOMEPAGE="https://github.com/probonopd/QtQuickApp"
COPYRIGHT="None"
LICENSE="MIT"
REVISION="1"
SOURCE_URI="https://github.com/probonopd/QtQuickApp.git"
#PATCHES=""
ARCHITECTURES="x86_64"
PROVIDES="
QtQuickApp = $portVersion
"
REQUIRES="
haiku
"
BUILD_REQUIRES="
haiku_devel
cmd:qmake
"BUILD()
{
qmake .
make $jobArgs
}INSTALL()
{
make install
}
~/QtQuickApp> haikuporter QtQuickApp-1.0.recipe
Checking if any dependency-infos need to be updated ...
Looking for stale dependency-infos ...
Error: QtQuickApp not found in repository
دا حقیقت مجلس ډیر پیچلی کوي. زه په ځانګړې توګه دا نه خوښوم، مګر زه فکر کوم چې دا اړینه ده چې بالاخره د خلاصې سرچینې سافټویر په هایکو پورټس کې ښکاره شي.
زه لاندې ترلاسه کوم:
~/QtQuickApp> haikuporter -S QtQuickApp-1.0.recipe
Checking if any dependency-infos need to be updated ...
updating dependency infos of QtQuickApp-1.0
Looking for stale dependency-infos ...
Error: QtQuickApp-1.0.recipe not found in tree.
څه ستونزه ده؟ د irc لوستلو وروسته زه دا کوم:
~/QtQuickApp> haikuporter -S QtQuickApp
Checking if any dependency-infos need to be updated ...
updating dependency infos of QtQuickApp-1.0
Looking for stale dependency-infos ...
----------------------------------------------------------------------
app-misc::QtQuickApp-1.0
/boot/home/haikuports/app-misc/QtQuickApp/QtQuickApp-1.0.recipe
----------------------------------------------------------------------Downloading: https://github.com/probonopd/QtQuickApp.git ...
--2019-07-14 16:12:44-- https://github.com/probonopd/QtQuickApp.git
Resolving github.com... 140.82.118.3
Connecting to github.com|140.82.118.3|:443... connected.
HTTP request sent, awaiting response... 301 Moved Permanently
Location: https://github.com/probonopd/QtQuickApp [following]
--2019-07-14 16:12:45-- https://github.com/probonopd/QtQuickApp
Reusing existing connection to github.com:443.
HTTP request sent, awaiting response... 200 OK
Length: unspecified [text/html]
Saving to: ‘/boot/home/haikuports/app-misc/QtQuickApp/download/QtQuickApp.git’
0K . 1.34M=0.06s
2019-07-14 16:12:45 (1.34 MB/s) - ‘/boot/home/haikuports/app-misc/QtQuickApp/download/QtQuickApp.git’ saved [90094]
Validating checksum of QtQuickApp.git
Warning: ----- CHECKSUM TEMPLATE -----
Warning: CHECKSUM_SHA256="cf906a65442748c95df16730c66307a46d02ab3a12137f89076ec7018d8ce18c"
Warning: -----------------------------
Error: No checksum found in recipe!
یوه جالبه پوښتنه را پیدا شوه. که زه په ترکیب کې چکسم اضافه کړم - ایا دا به د دوامداره ادغام لپاره د وروستي ګیټ ژمنې سره سمون ولري؟ (پراختیا کونکي تاییدوي: "دا به کار ونکړي. ترکیبونه ډیزاین شوي ترڅو نسبتا مستحکم وي.")
~/QtQuickApp> haikuporter -S QtQuickApp
Checking if any dependency-infos need to be updated ...
updating dependency infos of QtQuickApp-1.0
Looking for stale dependency-infos ...
----------------------------------------------------------------------
app-misc::QtQuickApp-1.0
/boot/home/haikuports/app-misc/QtQuickApp/QtQuickApp-1.0.recipe
----------------------------------------------------------------------
Skipping download of source for QtQuickApp.git
Validating checksum of QtQuickApp.git
Unpacking source of QtQuickApp.git
Error: Unrecognized archive type in file /boot/home/haikuports/app-misc/QtQuickApp/download/QtQuickApp.git
هغه څه کوي؟ په هرصورت ، دا د ګیټ ذخیره ده ، کوډ دمخه مستقیم شتون لري ، د خلاصولو لپاره هیڅ شتون نلري. زما له نظره، وسیله باید دومره هوښیار وي چې د یو انپیکر په لټه کې نه وي که دا د GitHub url څخه پورته وي.
ښه، هو، دلیل د غونډې لپاره د ترلاسه شوي معلوماتو بشپړتیا چک کولو هیله وه. یو له اختیارونو څخه د آرشیف چیک سم تصدیق کول دي ، مګر تاسو کولی شئ ، البته ، انفرادي فایلونه هش کړئ ، کوم چې به پلي نشي ، ځکه چې دا ډیر وخت نیسي. د دې پایله د git او نورو VCS "ناامني" ده. دا به ډیری احتمال تل قضیه وي ، ځکه چې په GitHub کې آرشیف رامینځته کول خورا اسانه او ډیری وختونه ګړندي دي. ښه، په راتلونکي کې، شاید د خطا پیغام به دومره روښانه نه وي ... (موږ نور په هایکو پورټ کې دا ډول ترکیبونه نه یوځای کوو).
~/QtQuickApp> haikuporter -S QtQuickApp
Checking if any dependency-infos need to be updated ...
Looking for stale dependency-infos ...
----------------------------------------------------------------------
app-misc::QtQuickApp-1.0
/boot/home/haikuports/app-misc/QtQuickApp/QtQuickApp-1.0.recipe
----------------------------------------------------------------------Downloading: git+https://github.com/probonopd/QtQuickApp.git ...
Warning: UNSAFE SOURCES ARE BAD AND SHOULD NOT BE USED IN PRODUCTION
Warning: PLEASE MOVE TO A STATIC ARCHIVE DOWNLOAD WITH CHECKSUM ASAP!
Cloning into bare repository '/boot/home/haikuports/app-misc/QtQuickApp/download/QtQuickApp.git'...
Unpacking source of QtQuickApp.git
tar: /boot/home/haikuports/app-misc/QtQuickApp/work-1.0/sources/QtQuickApp-1.0: Cannot open: No such file or directory
tar: Error is not recoverable: exiting now
Command 'git archive HEAD | tar -x -C "/boot/home/haikuports/app-misc/QtQuickApp/work-1.0/sources/QtQuickApp-1.0"' returned non-zero exit status 2
د زوړ عادت له مخې، زه د irc.freenode.net شبکې # هایکو چینل کې د ښو خلکو څخه پوښتنه کوم. او زه به له دوی پرته چیرته وم؟ د اشارې وروسته، ما پوهیده چې زه باید وکاروم:
ښه، دا روښانه شوه چې دا څه کوي - دا د یو ځانګړي بیاکتنې د سرچینې کوډ سره آرشیف ډاونلوډ کوي. دا احمق دی، زما له نظره، او په حقیقت کې هغه څه نه چې ما غوښتل، د بیلګې په توګه، د ماسټر څانګې څخه وروستی بیاکتنه ډاونلوډ کړئ.
یو له پراختیا کونکو څخه دا پدې ډول تشریح کوي:
موږ خپل CI لرو، نو هر هغه څه چې د هایکوپورټ ذخیره کې ځای په ځای شوي د ټولو کاروونکو لپاره بسته بندي کیږي، او موږ نه غواړو چې "هر څه په وروستي نسخه کې اپسټریم کې راټول او وړاندې کړو."
پوه شو! په هرصورت، دا هغه څه دي چې پیښ شوي:
waiting for build package QtQuickApp-1.0-1 to be activated
waiting for build package QtQuickApp-1.0-1 to be activated
waiting for build package QtQuickApp-1.0-1 to be activated
waiting for build package QtQuickApp-1.0-1 to be activated
waiting for build package QtQuickApp-1.0-1 to be activated
(...)
دا دا اعلان انفینیتم تکراروي. ظاهرا دا یوه تېروتنه ده (ایا یو غوښتنلیک شتون لري؟ زه یې نشو موندلی).
په حقیقت کې، هایکو پورټر د ډیفالټ له مخې خورا سخت دی (پلس د لینټ حالت او همدارنګه یو سخت حالت شتون لري ترڅو دا نور هم سخت کړي!)، مګر یوازې دا چې دا بستې رامینځته کوي چې کار به وکړي، نه یوازې د کڅوړو جوړولو پر ځای. له همدې امله هغه د غیر اعلان شوي انحصار، کتابتونونو په سمه توګه نه وارد شوي، ناسم نسخې او داسې نور په اړه شکایت کوي. هدف دا دی چې هر ډول او ټولې ستونزې په ګوته کړي ، په شمول د راتلونکي په شمول ، مخکې لدې چې کارونکي پدې اړه پوه شي (له همدې امله د avrdude نصب کول ممکن ندي ، ځکه چې انحصار واقعیا په ترکیب کې مشخص شوی و). کتابتونونه یوازې انفرادي کڅوړې یا حتی ځانګړي SO نسخې ندي. HaikuPorter ډاډ ورکوي چې دا ټول پخپله په ترکیبونو کې لیدل کیږي ترڅو د اجرا کولو پرمهال د غلطیو مخه ونیسي.
په اصولو کې، د عملیاتي سیسټم رامینځته کولو پر مهال د سختۍ دا کچه توجیه کیږي، مګر دا زما لپاره د "هیلو نړۍ" غوښتنلیک لپاره غیر ضروري ښکاري. ما پریکړه وکړه چې یو بل څه هڅه وکړم.
امکان لری، دا ایا ساده لارښوونې زما لپاره ښه کار کوي؟
mkdir -p apps/
cp QtQuickApp apps/cat > .PackageInfo <<EOF
name QtQuickApp
version 1.0-1
architecture x86_64
summary "Demo QtQuick application"
description "QtQuickApp is a demo QtQuick application for testing Haiku porting and packaging"
packager "probono"
vendor "probono"
copyrights "probono"
licenses "MIT"
provides {
QtQuickApp = 1.0-1
}requires {
qt5
}
EOFpackage create -b QtQuickApp.hpkg
package add QtQuickApp.hpkg apps# See below if you also want the application
# to appear in the menu
په غیر متوقع ډول چټک، غیر متوقع ډول ساده، غیر متوقع ډول اغیزمن. دقیقا څنګه زه دا خوښوم ، حیرانونکی!
نصب - څه او چیرته؟
د QtQuickApp.hpkg فایل ته لیږدول شوی ~/config/packagesد فایل مدیر په کارولو سره ، له هغې وروسته QtQuickApp په جادویی ډول څرګند شو ~/config/apps.
بیا بیا، په غیر متوقع ډول چټک، ساده او اغیزمن. حیرانوونکی، د نه منلو وړ!
مګر ... (موږ به له دوی پرته چیرته یو!)
ایپ لاهم د ایپس مینو لیست او QuickLaunch څخه ورک دی. زه فکر کوم چې زه دمخه پوهیږم چې دا څنګه حل کړم. د فایل مدیر کې زه QtQuickApp.hpkg له ~/config/packages څخه /system/packages ته حرکت کوم.
نه، لا تر اوسه ورک دی. په ښکاره ډول، ما (ښه، او لارښوونې) یو څه له لاسه ورکړ.
ما حیران کړل: ایا دا واقعیا اړینه ده چې غوښتنلیکونه کوربه کړئ؟ /system/apps، که کاروونکي دوی هلته وګوري، دا ناغوښتل دي. شاید دا به غوره وي چې دوی په بل ځای کې ځای په ځای کړئ چیرې چې کارونکي به ورسره مخ نشي؟ لکه څنګه چې دا په Mac OS X کې ترسره شوی، چیرې چې د کڅوړو مینځپانګې .app، کوم چې باید د کارونکي لپاره نه لیدل کیږي /Applicationsد /سیسټم/کتابتون/…“ په ژورو کې پټول.
ایا هایکو باید د یوې پالیسۍ په اضافه کولو سره نور پیچلي شي چې یوه کڅوړه باید د هایکو څخه بهر په کڅوړو پورې تړاو ونلري؟ haikuports؟ (زه غواړم، ځکه چې دا ډول پالیسي به شیان خورا اسانه کړي - سیسټم به په اتوماتيک ډول د هر ځای څخه ډاونلوډ شوي هر کڅوړې انحصار حل کړي، پرته له دې چې د اضافي کڅوړې سرچینې سره ګډوډ شي.)
ښاغلی. waddlesplash تشریح کوي:
موږ نه غواړو د پراختیا کونکو آزادي دومره محدوده کړو ، ځکه چې دا څرګنده ده چې که CompanyX غواړي د انحصار سره د خپل سافټویر سیټ ملاتړ وکړي (او له همدې امله ذخیره) ، نو دا به په بشپړ ډول په آزاده توګه ترسره کړي.
په دې حالت کې، دا ممکن د سپارښتنې وړ وي چې د دریمې ډلې کڅوړې په هر هغه څه باندې له انحصار څخه ډډه وکړي چې په هایکوپورټ کې شامل ندي په بشپړ ډول د غوښتنلیک سره اړین هرڅه بسته کولو سره. مګر زه فکر کوم چې دا پدې لړۍ کې د راتلونکي مقالې لپاره موضوع ده. [ایا لیکوال د AppImage په لور روان دی؟ - نږدې ژباړن]
د غوښتنلیک آیکون اضافه کول
څه که زه غواړم زما د نوي جوړ شوي غوښتنلیک سرچینو کې یو له پاک جوړ شوي عکسونو څخه اضافه کړم؟ دا معلومه شوه چې دا یوه حیرانونکې موضوع ده، نو دا به د راتلونکې مقالې اساس وي.