He/דביאן

From GnuCash
Revision as of 06:03, 8 May 2021 by Avma (talk | contribs)
Jump to: navigation, search
שפות Deutsch English Español Français עִברִית Português

כללי

דֶּבְּיאָן גְנוּ/לִינוֹקְס (באנגלית: Debian GNU/Linux) היא הפצת לינוקס קהילתית המפותחת על ידי קבוצה גדולה של מתנדבים מרחבי העולם. בנוסף לגרעין מערכת ההפעלה, כוללת המערכת אלפי חבילות תוכנה חופשיות נוספות, מיעוט התוכנות משולבות בבסיס המערכת ורובן ניתנות להתקנה לפי בחירת וצורך המשתמש מאתרי מקורות של דביאן. דביאן מתאפיינת בהיצמדותה לעקרונות יוּנִיקְס והתוכנה החופשית, בשיתוף הפעולה בפיתוח התוכנות ובתהליך בקרת האיכות שלה, ובאמנה החברתית העומדת במרכזה ומתווה את מטרותיה.

אודות שחרורי דביאן ושמות מהדורות

כל שמות הקוד של ההפצות נלקחו משמות הדמויות מסרטי צעצוע של סיפור של חברת פיקסאר, כגון "באז", "וודי", "רקס" ו"סלינק", וההפצה הלא יציבה מכונה "סיד", על שם דמותו של הילד השכן הורס הצעצועים. מסורת זו החלה מכיוון שברוס פרנס היה מעורב בשלבי הפיתוח הראשוניים של דביאן בעת עבודתו בפיקסאר. חבילות התוכנה בהפצה זו מתעדכנות באופן סדיר ובתדירות גבוהה. לכל חבילה יש מתחזק, אשר אחראי על הכנת חבילות deb מקוד המקור באתרי הפיתוח של התוכנות השונות. באחריות המפתח לוודא את תקינות קוד המקור, לדווח על בעיות למאגר באגים מרכזי, לתעד המידע בחבילה עבור מערכת ניהול החבילות, לוודא פתרון של תלויות בין החבילה ותוכנות אחרות ועוד.

ההפצות הפעילות

כאמור, חבילות ומהדורות דביאן עוברות בדיקות פרוצדוראליות ואיכות נוקשות. להלן תאור מילולי קצר של מודל הפתוח של שלה.

  • הפצת Stable, גרסה יציבה אשר עברה תהליכי בקרת איכות וניפוי תקלים קפדניים, אם כי בדרך כלל פחות עדכנית לגבי תוכנות חדשות. ההפצה היציבה האחרונה יצאה ב־6 ביולי 2019 בשם הקוד 'Buster'.
  • הפצת Unstable, הקרויה גם Sid, שם מתבצע הפיתוח היומיומי של המערכת. חבילות חדשות או גרסאות חדשות של חבילות קיימות נכנסות בתחילה ל־Unstable, ובשל השינויים התדירים בהפצה זו בדרך כלל המשתמשים בה חשופים יותר לבאגים שונים. עם זאת, החבילות בה לרוב חדישות ומתעדכנות בתדירות גבוהה יחסית.
  • הפצת Testing, זוהי הפצה 'אוטומטית', חבילות הנמצאות ב־Unstable למשך זמן מוגדר ונחשבות לנקיות מבאגים עוברות להפצה זו. אחת לכמה זמן מוכרזת 'הקפאה' בהפצה זו, ולאחר תהליך מוקפד של ניפוי באגים ובקרת איכות היא מחליפה את הפצת ה־Stable.

בנוסף קיימים גם:

  • הפצת Oldstable, הגרסה היציבה הקודמת. נתמכת במשך כשנה לאחר יציאת הגרסה היציבה החדשה, על מנת לאפשר מעבר פשוט יותר.
  • הפצת Experimental - זהו מקור חבילות שלא כולל הפצה מלאה. הוא מכיל חבילות חדשות יותר מ־Unstable אשר מסיבה כלשהי אי־אפשר להכניסן מיד, אך הן מעניינות קהל בודקים מספיק גדול.
באקפורטס
באקפורטים הם חלקים שנלקחו מגרסה חדשה יותר של מערכת תוכנה או רכיב תוכנה ווהחדרתם לגרסה ישנה יותר של אותה תוכנה. במקרה של דביאן, אלו חלקים או חבילות שנלקחו מהמהדורה הבאה של דביאן (המכונה 'בדיקות'), והותאמו והודרו לשימוש בגירסת דביאן יציבה. על מנת להשתמש בבאקפורט הרשמי של דביאן-בוסטר, נא להוסף את השורה הבאה לקובץ רשימת המקורות sources.list:
 deb http://deb.debian.org/debian buster-backports main
מצב נוכחי

דביאן 10 'Buster', גרסה stable (יציבה) יולי 2019, הופצה יחד עם גנוקאש גרסה 3.4, אך ניתן להשתמש בבקפורט.

ניתן למצא באתר ויקיפדיה טבלה שמציגה הפצות עבר, הווה ותכנון לעתיד של חבילות דביאן.

מעט אודות מאגר דביאן

חבילת גנוקאש בדביאן ובאובונטו מופיעה בשם גנוקאש. ניתן למצוא מידע עדכני אודות פיתוח החבילה ב- גשש חבילות דביאן. הגשש מכיל קישורים לגרסאות עדכניות של החבילה: 'מוקפאות' בשלוש המהדורות האחרונות של דביאן, גרסת 'בדיקות', וגרסה 'לא יציבה.'

  • דביאן (sid) 'unstable' מכיל בו את גנוקאש 3.10 (הגירסה ב- sid)
  • בדיקות דביאן (bullseye) מכיל בו את גנוקאש 3.10 (עד שהגרסה הבאה ב- sid תקודם ל- bullseye)
  • דביאן 10 (buster) מכיל בו את גנוקאש 3.4 (לא צפוי להשתנות, אך ניתן להשתמש בבאקפורט)
  • דביאן 9 (stretch) מכיל בו את גנוקאש 2.6.15 (לא צפוי להשתנות)
  • דביאן 8 (jessie) מכיל בו את גנוקאש 2.6.4 (לא צפוי להשתנות)

(הגרסה האחרונה של גנוקאש אמורה להיות כבר ב'בדיקות' דביאן, אך באוקטובר 2018 המתנדב היחיד שתחזק את חבילת דביאן על גנוקאש הצביע על הצורך בעזרה וסיוע. במידה ואתם יכולים לסייע באריזת חבילות, לרבות מיון ותעדול ניפוי תקלים, נא לעיין ב מידע בעמוד הגשש לפרטים נוספים.)

אודות חבילת גנוקאש בדביאן

דביאן מחלקת את חבילת גנוקאש לארבע חבילות:

  • gnucash
  • gnucash-common
  • python-gnucash
  • gnucash-docs

(חבילת python-gnucash כוללת כריכות לקישור גנוקאש לפייטון. חבילת gnucash-docs מכילה את התיעוד במספר שפות ונבנית בנפרד מחבילת מקור נפרדת.)

בנוסף, על מנת להפעיל את היכולת (החלופית) לאחסן נתוני גנוקאש במסד נתונים, נדרש להתקין גם את שתי החבילות:

  • libdbi1
  • libdbi-dev

כמו כן נדרש להתקים את הספריה libdbd לכל אחד ממסדי הנתונים בהם תרצו להשתמש (ניתן להתקין אחד או את כולם):

  • libdbd-sqlite3
  • libdbd-mysql
  • libdbd-pgsql

למרות שכל חבילות מסדות הנתונים עדיין בחזקת 'נסיוני' בגנוקאש 3.x, שרת SQLite3 מסד נתוני הוא הנתמך ביותר ונבדק יותר מהאחרים.

התקנת חבילת גנוקאש תחת דביאן

הדרך הקלה והפשוטה ביותר להתקנת גנוקאש על ידי הרצת הפקודה הבאה ממסוף:

 $ sudo apt install gnucash

ככל שברירות המחדל נשמרו, הפקודה apt תתקין באופן אוטומטי גם את החבילות הבאות: gnucash-common, gnucash-docs ו- python-gnucash.

על מנת להתקין באופן מפורש את כל החבילות (ולא להסתמך על ברירית המחדל), ניתן להקיש לתוך שורת הפקודה במסוף, את הפקודה הבאה:

 $ sudo apt install gnucash gnucash-common gnucash-docs python-gnucash libdbi1 libdbi-dev libdbd-sqlite3 libdbd-mysql libdbd-pgsql

שימוש בארכיב דביאן

ניתן להוריד חבילות בודדות של גנוקאש מעמוד http://ftp.us.debian.org/debian/pool/main/g/gnucash/ ארכיב המשמש מאגר לאחסון ההפצות הישנות של דביאן, למרות שבדרך כלל כהמאגר ולל גם גרסאות עדכניות למדי של גנוקאש.

ראו גם http://ftp.us.debian.org/debian/README.html.

מילה אודות GetDeb

ייתכן שתתקלו בהפניות ל "GetDeb" באתר ויקי זה או בדיונים שבארכיון, האתר הכיל בעבר חבילות דביאן באקפורט לא רשמיות של יישומים פופולריים, לרבות גנוקאש. האתר תוחזק על ידי קבוצה קטנה של מתנדבים פרטיים. זמן מה לפני 2018 האתר הפך מיושן ובסופו של דבר נעלם לחלוטין. בשנת 2019 מישהו רכש את שם המתחם (domain) ונראה שכיום הוא משמש כאתר חדשות.

בנקאות מקוונת

על מנת לספק יכולות בנקאות מקוונת, גנוקאש משתמשת בספרית AqBanking. בגלל בעיות תאימות ברישוי, חבילות דביאן ואובונטו לא אפשרו פעילות בנקאות מקוונת בחבילת הגנוקאש הפועלת עליהן. אך החל מגרסת גנוקאש 2.2.6 ו- AqBanking גרסה 3.0 אי ההתאמה הזו באה לפתרונה.

דביאן לני (Lenny) ואובונטו 8.10 אינטרפיד (Intrepid) מספקות כעת את חבילות גנוקאש כאשר תכונות הבנקאות המקוונת כמבר מאופשרות. לכן ניתן להתקין את חבילת גונוקש הכלולה בהפצות אלו.

For Ubuntu Hardy, a backport of gnucash 2.2.6 are available from https://launchpad.net/~gnucash/+archive For Debian Etch, a backport of gnucash is available in etch-backports. http://packages.debian.org/etch-backports/gnucash

הערה: In Debian the gwenhywfar library is split into a number of packages see https://packages.debian.org/testing/source/libgwenhywfar.

הנחיות לגבי הפצות ישנות (אובונטו גוטסי ומטה, דביאן סטאג' ומטה)

הוראות אלה חלות על הגרסת 2.0.1-2 של חבילת הגנוקאש דביאן, פועלת על דביאן 4.0 ("איטצ'"). הם חלים גם על אובונטו אדג' גרסת גנוקאש 2.0.1-3ubuntu3, אך נא לעיין בעמוד אובונטו לקבלת הוראות ספציפיות של אובונטו. ככל שהזמן חולף, והחבילה מתעדכנת, הפרטים המסוימים בהוראות אלה יתיישנו, לכן יהיה צורך לחפש חבילות חדשות יותר (כמו, libaqbanking17-dev במקום libaqbanking-16.dev) או להשתמש במספרי גרסאות גבוהים יותר (למשל. ,2.0.2 במקום 2.0.1) לפי הצורך.

בנוסף, נדרש להדר גם את libaqbanking.

הורדת חבילות דרישות קדם

ראשית, נא להתקין את החבילות הנדרשות לבניית חבילת דביאן כל שהיא, את החבילות הנדרשות לבניית חבילת גנוקאש, את החבילה לספריית הפיתוח AqBanking ועוד כמה חבילות בהן נשתמש בהוראות להלן. :

# sudo aptitude install build-essential devscripts fakeroot libaqbanking16-dev aqbanking16-qt-wizard
# sudo aptitude build-dep gnucash libaqbanking


If libaqbanking16-dev can not be found, try asking apt to install libaqbanking-dev. Apt should then tell you which package you really need. Or try searching for libaqbanking on packages.debian.org or packages.ubuntu.com to find the correct version. Try [1] or [2].

צרו תיקיית עבודה והורידו וחילצו את קוד המקור של גנוקאש לתוך תקיית העבודה:

$ mkdir gnucash
$ cd gnucash
$ apt-get source gnucash libaqbanking

גנוקאש

תצור

The source code for gnucash will now be extracted to a directory named gnucash-2.x.x. Now, we enable HBCI support. To do this, edit the debian/rules file:

 $ cd gnucash-2.*
 $ editor debian/rules

This is a makefile that specifies how to build the gnucash packages. Find where gnucash's configure script is invoked, and add --enable-hbci to the configure script's arguments. When I did this I found it on line 24. I changed the line to read:

env LDFLAGS="-L/usr/X11R6/lib" GUILE=/usr/bin/guile-1.6 CFLAGS="$(CFLAGS)" ./configure 
--disable-static --sysconfdir=/etc --prefix=/usr --mandir=/usr/share/man 
--infodir=/usr/share/info --libexecdir=/usr/lib --libdir=/usr/lib/gnucash --enable-ofx 
--disable-error-on-warning --enable-hbci || cat config.log

הערה: --enable-mt940 is no longer required as of 2.2.0; it is included in --enable-hbci. For pre-2.2.0 builds, add --enable-mt940 after --enable-hbci if that functionality is needed.

Optional, but strongly recommended: make a note of the changes you have made in the package's changelog. The devscripts package contains a utility to automate the process:

$ debchange --nmu 'Enable HBCI support'

This enables a few nice behaviors for your package.

  1. When you wonder in six months time, "what changes did I make to that package?", you can check by examining the /usr/share/doc/gnucash/changelog.Debian.gz file.
  2. The version of the package you are building will be slightly higher than the version of the packages in the Debian or Ubuntu archive. This will prevent apt from overwriting the new package with the old package from the archives. If a new version of gnucash is packaged by the Debian or Ubuntu package maintainers, it will be installed over the package we are building here. (You would then have to repeat these instructions.)

If this is not the desired result, you can apply a hold to the gnucash package. See below for more information.

בניה

כעת אנחנו מוכנים לבנית החבילה.

 $ dpkg-buildpackage -b -us -uc -rfakeroot

זה הזמן להכין כוס תה (או אם יש לכם מחשב איטי במיוחד, לכו וצפו בנחת בטרילוגיית שר הטבעות). כדי לוודא שהכל בוצע נכון, הפקודה תפיק פלט, ממש בהתחלה, עם מלא שורות שמתחילותבמילים "בדיקת המצאות ..." (checking for ...) . חפשו את השורות

checking whether to use OFX... yes -- failure is fatal
checking for libofx version >= 0.7.0... found 0.8.0
checking for libofx/libofx.h... yes
checking for libofx... yes
configure: WARNING: MT940 importing support is enabled but is totally experimental!
checking for aqbanking >= "1.3.0"... yes
checking HBCI_CFLAGS...  
checking HBCI_LIBS... -laqbanking  
checking for aqbanking >= "1.0.0"... yes
checking HBCI_CFLAGS...  
checking HBCI_LIBS... -laqbanking

כמו כן, בתום כל הבדיקות, 'configure' ייצר פלט דוח סיכום. שימו לב ל- ofx, hbci ו- mt940 בשורת הרכיבים האופציונליים.

Options detected/selected
  -------------------------
  gnucash version ...... : 2.0.1
  Build for host ....... : i686-pc-linux-gnu
  Optional components....: ofx hbci mt940

השלמת ההתקנה

$ cd ..
# sudo dpkg --install gnucash_*.deb gnucash-common_*.deb

לבסוף, כדאי לפנות כמה מ"ב של שטח אחסון (לאחר וודוא שגנוקאש פועל ומתפקד כצפוי) ולהסיר את התיקייה בה נבנתה גנוקאש (נא להחליף את N.n במספר הגרסה הרצוי):

$ rm -r gnucash-N.n

ניתן ל'הקפיא' את החבילה בגרסה הנוכחית שלה ולמנוע התקנת גרסאות חבילת חדשות דרך מנהל ההתקנות של מערכת ההפעלה, פקודת apt מאפשרת זאת ותמנע ממנה לעדכן את החבילה. אחת הדרכים להחיל הקפאה כזאת (ניתן לעשות זאת גם במאמצעות מנהלי החבילות השונות) היא על ידי הפעלת:

$ echo "gnucash hold" | sudo dpkg --set-selections

מידע נוסף לגבי אפשרות זאת ניתן למצוא ב- debian-administration.org וב- APT כיצד לבצע

libaqbanking

תצור

את קוד המקור של libaqbanking נחלץ ונשמור בתיקיה בשם libaqbanking-2.x.x. כעת, נאפשר תמיכת aqofxconnect. על מנת לבצע זאת, נבטל את ה שינויים הללו.

ובמיוחד:

עריכת קובץ debian/rules:

$ cd libaqbanking-2.*
$ editor debian/rules

הוסיפו את aqofxconnect לרשימת השרתים.

כלומר מ-:

DEB_CONFIGURE_EXTRA_FLAGS := --disable-static --with-backends="aqhbci aqdtaus aqgeldkarte" --with-frontends="cbanking g2banking qbanking kbanking"

ל-:

DEB_CONFIGURE_EXTRA_FLAGS := --disable-static --with-backends="aqhbci aqdtaus aqgeldkarte aqofxconnect" --with-frontends="cbanking g2banking qbanking kbanking"

צרו את הקובץ debian/libaqbanking-ofx0.install:

$ editor debian/libaqbanking-ofx0.install

והעתיקו את המלל הבא לתוכו:

usr/lib/aqbanking/plugins/16/imexporters/ofx.*
usr/lib/aqbanking/plugins/16/providers/aqofxconnect.*
usr/lib/aqbanking/plugins/16/frontends/qbanking/cfgmodules/aqofxconnect.*
usr/lib/libaqofxconnect.so.*
$ edit debian/control

והוסיפו את זה (שימו לב לרווח הבודד בתחילת חלק מהשורות):

Package: libaqbanking-ofx0
Provides: libaqbanking-backend
Enhances: libaqbanking0c2a
Section: libs
Architecture: any
Depends: ${shlibs:Depends}
Conflicts: libaqofxconnect4
Description: library for OFX online banking
 AqBanking provides a middle layer between the applications
 and online banking libraries implementing various file formats and protocols.
 Plugins supporting OFX, DTAUS, and HBCI are available. For the latter,
 AqHBCI is required.
 .
 This package provides support for Open Financial Exchange (OFX) in AqBanking.
 OFX is a specification for the electronic exchange of financial data between
 financial institutions, business and consumers via the Internet.
 .
 Homepage: http://www.aquamaniac.de/aqbanking/
debchange --nmu 'Enable aqofxconnect'

בניה

$ dpkg-buildpackage -b -us -uc -rfakeroot

חפשו את aqofxconnect:

Summary
----------------------------------------------------
AqBanking version  : 2.2.3.0-stable
Supported backends : aqhbci aqdtaus aqgeldkarte aqofxconnect
Supported frontends: cbanking g2banking qbanking kbanking

התקנה

 $ cd ..
 # sudo dpkg --install libaqbanking-ofx0_*.deb

לחילופין:

 $ rm -r libaqbanking-2.*
 $ echo "libaqbanking-ofx0 hold" | sudo dpkg --set-selections

אפשור סמל ניפוי תקלים

הליך זהה לזה שמעל:

# aptitude install build-essential fakeroot devscripts
# aptitude build-dep gnucash
$ mkdir gnucash
$ cd gnucash
$ apt-get source gnucash
$ cd gnucash-2.0.1
$ editor debian/rules

Now add the --enable-debug option to the arguments of the configure script.

$ debchange --nmu 'Enable debugging'
$ DEB_BUILD_OPTIONS=nostrip dpkg-buildpackage -b -us -uc -rfakeroot
$ cd ..
# dpkg --install gnucash_*.deb gnucash-common_*.deb

לחילופין, בנית גרסת גנוקאש אחרת ישירות מקוד המקור

גרסת גנוקאש >= 3.0

Gnucash from version 3.0 no longer uses autotools for configuring the build and uses CMake instead. Until Debian specific instructions are provided consider adapting the build instructions for Ubuntu distributions Building#Ubuntu

גרסת גנוקאש <= 2.6.21

This may be useful if you want to use a later version than the ones in Debian's repositories. Rather than building a Debian package I just used the instructions provided by Gnucash for any flavour of Linux. These notes are no more than confirmation that those instructions work. I don't know enough about building packages - integrating a build within a package would presumably be a better longer term solution but the following gets the job done. I performed this install of Gnucash 2.2.4 into Debian Etch - this was my first foray into compiling and it wasn't difficult.

  $ sudo aptitude purge gnucash

First install all dependencies

  $ sudo aptitude update
  $ sudo aptitude install build-essential
  $ sudo aptitude build-dep gnucash

(someone else may know if any of these are not essential for this task, but they are sufficient)

download source and docs from Gnucash web site (in my case to my desktop)

	http://sourceforge.net/projects/gnucash/

move them to a new gnucash-source directory (obviously change "russell" to your own login name):

  $ cd ~
  $ mkdir gnucash-source
  $ mv /home/russell/Desktop/gnucash* /home/russell/gnucash-source

unpack (creates 2 directories) - modify the file names as necessary (e.g. ...2.2.5 etc)

  $ tar -xf gnucash-source/gnucash-2.2.4.tar.bz2
  $ tar -xf gnucash-source/gnucash-docs-2.2.0.tar.gz

Installation instructions are in /home/russell/gnucash-source/gnucash-2.2.4/INSTALL which you may wish to read.

Now move into the directory you are going to compile from:

  $ cd ~/gnucash-2.2.4

First you run the ./configure script. I am advised that you can get a cleaner install if you add --prefix in order to install in a separate directory i.e.

  $ ./configure --prefix=/opt/gnucash-2.2.4

This means that gnucash will install into /opt/gnucash-2.2.4 instead of the default /usr/local. The problem with the default is that it may be difficult to uninstall it if you want to upgrade the system with a later version or a Debian gnucash package, because there may also be other applications in /usr/local. However I didn't know about this at the time so I just used ./configure, next time I may try the --prefix

  $ ./configure
  $ make
  $ make check
  (may not be necessary to do make check, but do it anyway in case it indicates a problem)
  $ sudo make install

Also you will need to build the docs as they are a separate package

  $ cd ~/gnucash-docs-2.2.0
  $ ./configure
     (if you want to use the --prefix make sure you use the same directory as above i.e.
      ./configure --prefix=/opt/gnucash-2.2.4)
  $ make
  $ sudo make install

If you need to find the binary it should be in /opt/gnucash-2.2.4/bin or /usr/local/bin depending on whether or not you used the --prefix with ./configure.

When running Gnucash for the first time you will have to go through the setup - I chose default values

Optional cleanup: First you might want to archive the downloaded source if you want to be able to reinstall it later

    $ mv /home/russell/gnucash-source/ whereever/

לאחר מכן ניתן להסיר את קובצי ההידור על ידי:

    $ cd ~/gnucash-2.2.4
    $ make clean
    $ make distclean
    $ cd ~/gnucash-docs-2.2.0
    $ make clean
    $ make distclean

הפניות

Template:הפניות