You are not logged in.

#1 2009-08-29 09:13:36

haTem
Member
Registered: 2008-10-24
Posts: 9

[Request] Anjal

Anjal is an email client designed for netbooks, although it looks like it could be nice even if you don't use a netbook. It's the only email client I have seen that implements gmail-style (conversation) threading, which is slightly different than the "normal" threading that exists in most clients. Instead of showing a tree of all the replies in each thread, there is only one listing for each thread with an indicator showing the number of replies it has. When you view a thread you see all the replies at once organized like an instant messaging conversation.

Screenshots/Features: http://blogs.gnome.org/sragavan/2009/05 … n-updates/

The problem is that it needs a patched evolution, evolution-data-server, and webkit to compile. I tried patching evolution myself but I couldn't get the patch to apply cleanly to the current evolution in abs.

All the patches are in the anjal git repo @ git://git.gnome.org/anjal
See http://live.gnome.org/Anjal/Installation for additional information.

Many thanks if you decide to help out!

Offline

#2 2009-09-08 21:37:39

aymara
Member
From: Argentina
Registered: 2008-07-08
Posts: 59
Website

Re: [Request] Anjal

Hi!!! I second this request. I'm a netbook user and i love Arch. I've tested Anjal working on Moblin and its really great, easy to use, simple and fast...


http://archlinux.me/aymara/ ----> Newbie forever...  ¬¬

Offline

#3 2009-09-08 22:23:18

wonder
Developer
From: Bucharest, Romania
Registered: 2006-07-05
Posts: 5,941
Website

Re: [Request] Anjal

requires evolution 2.27.5. here is a draft to use those who are using gnome-unstable repo. i can't continue from this point as gnome-unstable doesn't have x86_64 packages. maybe later i will set up a chroot

pkgname=anjal-git
_pkgname=anjal
pkgver=20090909
pkgrel=1
pkgdesc="Anjal is a new mail UI created on top of Evolution."
arch=('i686' 'x86_64')
url="http://live.gnome.org/Anjal"
license=('GPL2')
depends=('evolution' 'libwebkit')
makedepends=('git' 'intltool')
options=('!libtool')
source=()
md5sum=()

_gitroot=git://git.gnome.org/anjal
_gitname=anjal
build() {
    # Build and install

    cd $srcdir
    if [ -d ${_gitname} ]; then
        cd ${_gitname} && git pull origin
        msg "The local files are updated."
    else
        git clone ${_gitroot}
    fi  
    msg "GIT checkout done or server timeout"
    msg "Starting make..."

    rm -rf "$srcdir/$_gitname-build"
    git clone "$srcdir/$_gitname" "$srcdir/$_gitname-build"
    cd "$srcdir/$_gitname-build"

    ./autogen.sh --prefix=/usr --sysconfdir=/etc
#    make || return 1
#    make GCONF_DISABLE_MAKEFILE_SCHEMA_INSTALL=1 DESTDIR=$pkgdir install || return 1

    # Merge schemas file in a single file and remove trash
#    gconf-merge-schema $pkgdir/usr/share/gconf/schemas/$pkgname.schemas \
#               $pkgdir/etc/gconf/schemas/*.schemas
#    rm -rf $pkgdir/etc/gconf
}

Last edited by wonder (2009-09-08 22:31:02)


Give what you have. To someone, it may be better than you dare to think.

Offline

#4 2009-09-09 00:33:12

illusionalsagacity
Member
Registered: 2009-08-26
Posts: 22

Re: [Request] Anjal

Alex_anthony created a package for it in his moblin-git repo
git clone git://gitorious.org/moblin-and-gnome-devel-packaging/moblin-git.git
there is an anjal PKGBUILD. I can't get it to build at the moment, it exits with this error:

mail-message-view.o: In function `mmv_finished_loading_webkit':
/home/rob/build/moblin-git/anjal/src/anjal-build/src/mail-message-view.c:655: undefined reference to `webkit_web_frame_get_height'
em-webkit-stream.o: In function `emws_sync_close':
/home/rob/build/moblin-git/anjal/src/anjal-build/src/em-webkit-stream.c:124: undefined reference to `webkit_web_frame_get_height'
/home/rob/build/moblin-git/anjal/src/anjal-build/src/em-webkit-stream.c:125: undefined reference to `webkit_web_frame_get_height'
collect2: ld returned 1 exit status
make[2]: *** [anjal] Error 1
make[2]: Leaving directory `/home/rob/build/moblin-git/anjal/src/anjal-build/src'
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory `/home/rob/build/moblin-git/anjal/src/anjal-build'
make: *** [all] Error 2

Offline

#5 2009-09-09 08:28:49

wonder
Developer
From: Bucharest, Romania
Registered: 2006-07-05
Posts: 5,941
Website

Re: [Request] Anjal

seems that the version of webkit is too old.


Give what you have. To someone, it may be better than you dare to think.

Offline

#6 2009-09-09 09:04:50

haTem
Member
Registered: 2008-10-24
Posts: 9

Re: [Request] Anjal

Aha! I didn't know there was a gnome-unstable repo, that simplifies things a bit. Unfortunately, I'm having trouble compiling the rest of the dependencies. First, nbtk fails with this error:

LINK  nbtk-create-image-cache
Traceback (most recent call last):
  File "/usr/bin/g-ir-scanner", line 38, in <module>
    sys.exit(scanner_main(sys.argv))
  File "/usr/lib/gobject-introspection/giscanner/scannermain.py", line 277, in scanner_main
    transformer.register_include(include_obj)
  File "/usr/lib/gobject-introspection/giscanner/transformer.py", line 111, in register_include
    filename = self._find_include(include)
  File "/usr/lib/gobject-introspection/giscanner/transformer.py", line 129, in _find_include
    % (girname, searchdirs))
ValueError: Couldn't find include 'Clutter-1.0.gir' (search path: ['/usr/share/gir-1.0', '/usr/local/share/gir-1.0', '/usr/share/gir-1.0', '/usr/local/share/gir-1.0', '/opt/kde/share/gir-1.0', '/usr/share/gdm/gir-1.0', '/opt/kde/share/gir-1.0', '/usr/share/gir-1.0', '/usr/share/gir-1.0', '/usr/share/gir-1.0'])
make[3]: *** [Nbtk-1.0.gir] Error 1
make[2]: *** [all] Error 2
make[1]: *** [all-recursive] Error 1
make: *** [all] Error 2

Could this be because I'm using clutter from the arch repos and not clutter-git? I can't get clutter-git to compile either :-/. Does anyone have a repo or the i686 binaries up somewhere for these packages?

Offline

#7 2009-09-09 15:51:44

aymara
Member
From: Argentina
Registered: 2008-07-08
Posts: 59
Website

Re: [Request] Anjal

haTem wrote:

Aha! I didn't know there was a gnome-unstable repo, that simplifies things a bit. Unfortunately, I'm having trouble compiling the rest of the dependencies. First, nbtk fails with this error:

LINK  nbtk-create-image-cache
Traceback (most recent call last):
  File "/usr/bin/g-ir-scanner", line 38, in <module>
    sys.exit(scanner_main(sys.argv))
  File "/usr/lib/gobject-introspection/giscanner/scannermain.py", line 277, in scanner_main
    transformer.register_include(include_obj)
  File "/usr/lib/gobject-introspection/giscanner/transformer.py", line 111, in register_include
    filename = self._find_include(include)
  File "/usr/lib/gobject-introspection/giscanner/transformer.py", line 129, in _find_include
    % (girname, searchdirs))
ValueError: Couldn't find include 'Clutter-1.0.gir' (search path: ['/usr/share/gir-1.0', '/usr/local/share/gir-1.0', '/usr/share/gir-1.0', '/usr/local/share/gir-1.0', '/opt/kde/share/gir-1.0', '/usr/share/gdm/gir-1.0', '/opt/kde/share/gir-1.0', '/usr/share/gir-1.0', '/usr/share/gir-1.0', '/usr/share/gir-1.0'])
make[3]: *** [Nbtk-1.0.gir] Error 1
make[2]: *** [all] Error 2
make[1]: *** [all-recursive] Error 1
make: *** [all] Error 2

Could this be because I'm using clutter from the arch repos and not clutter-git? I can't get clutter-git to compile either :-/. Does anyone have a repo or the i686 binaries up somewhere for these packages?

Same problem here... thanks for trying!!!


http://archlinux.me/aymara/ ----> Newbie forever...  ¬¬

Offline

#8 2009-09-09 17:48:29

illusionalsagacity
Member
Registered: 2009-08-26
Posts: 22

Re: [Request] Anjal

wonder wrote:

seems that the version of webkit is too old.

It needs to be patched, I'm working on getting the patch to apply but it's not working at the moment.

HaTem wrote:

I can't get clutter-git to compile either :-/.

Try using --disable-introspection on the ./autogen.sh or ./configure in the PKGBUILD


----
EDIT:
Here's a working pkgbuild and patch for webkit. I used webkit-newest, so I recommend that's what you try.

mkdir libwebkit-newest
cd libwebkit-newest
yaourt -G libwebkit-newest
(edit pkgbuild and put webkit.patch in the same directory as the pkgbuild)
makepkg -sif

PKGBUILD

# Contributer: Andreas Radke <andyrtr@archlinux.org>
# Maintainer: Nezmer <Nezmer@gmail.com>

pkgname=libwebkit-newest
_pkgname=webkit
pkgver=1.1.14
pkgrel=2
pkgdesc="an opensource web content engine, derived from KHTML and KJS from KDE"
arch=('i686' 'x86_64')
url="http://webkitgtk.org/"
license=('custom')
depends=('libxt' 'libxslt' 'icu' 'gstreamer0.10-base' 'libsoup>=2.27.90' 'enchant>=1.4.2')
makedepends=('gperf' 'gtk-doc>=1.11')
provides=('webkitgtk-svn' 'libwebkit=1.1.12')
conflicts=('webkitgtk-svn' 'libwebkit')
replaces=('webkitgtk-svn' 'libwebkit')
source=(http://webkitgtk.org/webkit-${pkgver}.tar.gz webkit.patch)
options=('!libtool')
md5sums=('bff87d1ddc562223cb99201950d7e138'
    'f8fb155d2c8c81e92541a0102bbeadb2')

build() {
  cp webkit.patch ${srcdir}/${_pkgname}-${pkgver}/
  cd ${srcdir}/${_pkgname}-${pkgver}/
  patch -p2 -i webkit.patch
  cd ${srcdir}/webkit-${pkgver}
  ./configure --prefix=/usr \
    --enable-video \
    --with-font-backend=freetype --enable-gtk-doc \
    --enable-jit --with-unicode-backend=icu
  make || return 1
  make DESTDIR="$pkgdir" install || return 1

  install -Dm644 ${srcdir}/webkit-${pkgver}/WebKit/LICENSE $pkgdir/usr/share/licenses/libwebkit/LICENSE
}

webkit.patch

--- /webkit-1.1.14/WebKit/gtk/webkit/webkitwebframe.cpp    (revision 44495)
+++ /webkit-1.1.14/WebKit/gtk/webkit/webkitwebframe.cpp    (working copy)
@@ -490,6 +490,31 @@
     webkit_web_frame_load_data(frame, content, NULL, NULL, baseURL, unreachableURL);
 }
 
+/*
+ * Detect whether a cursor is in a blockquote
+ */
+gboolean
+webkit_web_frame_is_cursor_at_blockquote (WebKitWebFrame *frame)
+{
+    Frame* coreFrame = core(frame);
+
+    return coreFrame->editor()->numEnclosedBlockquotes() != 0;
+}
+
+/*
+ * Execute arbitary commands in frame.
+ */
+void
+webkit_web_frame_execute_command (WebKitWebFrame *frame, const gchar* command)
+{
+    g_return_if_fail(WEBKIT_IS_WEB_FRAME(frame));
+
+    Frame* coreFrame = core(frame);
+    String commandString = String::fromUTF8(command);
+
+    coreFrame->editor()->command(commandString).execute();
+}
+
 /**
  * webkit_web_frame_load_request:
  * @frame: a #WebKitWebFrame
@@ -828,3 +853,12 @@
     WebKitWebFramePrivate* priv = frame->priv;
     return priv->loadStatus;
 }
+
+int
+webkit_web_frame_get_height (WebKitWebFrame *frame)
+{
+    Frame* coreFrame = core(frame);
+    FrameView* view = coreFrame->view();
+
+    return view->contentsHeight();
+}
--- /webkit-1.1.14/WebKit/gtk/webkit/webkitwebframe.h    (revision 44495)
+++ /webkit-1.1.14/WebKit/gtk/webkit/webkitwebframe.h    (working copy)
@@ -92,7 +92,20 @@
 webkit_web_frame_load_uri           (WebKitWebFrame       *frame,
                                      const gchar          *uri);
 
+WEBKIT_API gchar*
+webkit_web_frame_get_inner_text     (WebKitWebFrame       *frame);
+
+WEBKIT_API gboolean
+webkit_web_frame_is_cursor_at_blockquote (WebKitWebFrame *frame);
+
 WEBKIT_API void
+webkit_web_frame_execute_command    (WebKitWebFrame       *frame,
+                                     const gchar          *command);
+
+#define webkit_web_frame_break_quote (frame) \
+webkit_web_frame_execute_command (frame, "InsertNewlineInQuotedContent")
+
+WEBKIT_API void
 webkit_web_frame_load_string        (WebKitWebFrame       *frame,
                                      const gchar          *content,
                                      const gchar          *mime_type,
@@ -134,6 +147,9 @@
 WEBKIT_API WebKitLoadStatus
 webkit_web_frame_get_load_status    (WebKitWebFrame       *frame);
 
+WEBKIT_API int
+webkit_web_frame_get_height         (WebKitWebFrame       *frame);
+
 G_END_DECLS
 
 #endif
--- /webkit-1.1.14/WebCore/editing/Editor.cpp    (revision 44495)
+++ /webkit-1.1.14/WebCore/editing/Editor.cpp    (working copy)
@@ -223,6 +223,14 @@
     return client() && client()->isSelectTrailingWhitespaceEnabled();
 }
 
+int Editor::numEnclosedBlockquotes()
+{
+    SelectionController* sel = m_frame->selection();
+    Position start = sel->selection().start();
+
+    return WebCore::numEnclosingMailBlockquotes(start);
+}
+
 bool Editor::deleteWithDirection(SelectionController::EDirection direction, TextGranularity granularity, bool killRing, bool isTypingAction)
 {
     if (!canEdit())
--- /webkit-1.1.14/WebCore/editing/Editor.h    (revision 44495)
+++ /webkit-1.1.14/WebCore/editing/Editor.h    (working copy)
@@ -291,6 +291,7 @@
     PassRefPtr<Range> nextVisibleRange(Range*, const String&, bool forward, bool caseFlag, bool wrapFlag);
     
     void addToKillRing(Range*, bool prepend);
+    int numEnclosedBlockquotes ();
 private:
     Frame* m_frame;
     OwnPtr<DeleteButtonController> m_deleteButtonController;

Last edited by illusionalsagacity (2009-09-09 18:19:40)

Offline

#9 2009-09-09 18:42:35

schuay
Package Maintainer (PM)
From: Austria
Registered: 2008-08-19
Posts: 564

Re: [Request] Anjal

looks sexy! too bad it's not a standalone app/depends on evolution sad

in kde:

$ sudo pacman -S evolution
resolving dependencies...
looking for inter-conflicts...

Targets (27): gnome-keyring-2.26.3-1 [1.48 MB]  libtirpc-0.2.0-1 [0.22 MB]  rpcbind-0.2.0-1 [0.03 MB]  fam-2.7.0-14 [0.09 MB]
              gnome-mime-data-2.18.0-4 [0.69 MB]  gnome-vfs-2.24.1-2 [1.22 MB]  esound-0.2.41-1 [0.09 MB]
              libbonobo-2.24.1-1 [1.00 MB]  libgnome-2.26.0-2 [1.30 MB]  libart-lgpl-2.3.20-1 [0.12 MB]
              libgnomecanvas-2.26.0-1 [0.30 MB]  libbonoboui-2.24.1-1 [0.56 MB]  libgnomeui-2.24.1-1 [1.25 MB]
              perlxml-2.36-2 [0.22 MB]  perl-xml-simple-2.18-2 [0.06 MB]  icon-naming-utils-0.8.90-1 [0.01 MB]
              gnome-icon-theme-2.26.0-1 [3.50 MB]  gtkhtml-3.26.3-1 [1.23 MB]  libproxy-0.2.3-1 [0.05 MB]
              libsoup-2.26.3-1 [0.34 MB]  db4.1-4.1.25-3 [0.80 MB]  libgweather-2.26.2.1-1 [6.47 MB]
              evolution-data-server-2.26.3-1 [4.61 MB]  gnome-pilot-2.0.17-1 [0.63 MB]  libpst-0.6.37-1 [0.43 MB]
              libytnef-1.5-2 [0.03 MB]  evolution-2.26.3-1 [34.82 MB]

Total Download Size:    61.25 MB
Total Installed Size:   191.49 MB

Proceed with installation? [Y/n] N!!11!!1!

Last edited by schuay (2009-09-09 18:46:53)

Offline

#10 2009-09-09 20:24:23

haTem
Member
Registered: 2008-10-24
Posts: 9

Re: [Request] Anjal

illusionalsagacity wrote:

Try using --disable-introspection on the ./autogen.sh or ./configure in the PKGBUILD

That worked.  Had to do that for both clutter-git and nbtk-git.

Your PKGBUILD and webkit.patch also worked nicely, but the md5sum for the patch was wrong (maybe the forum altered the whitespace a bit?).

I now have anjal working, thanks!

Offline

#11 2009-09-09 21:20:42

illusionalsagacity
Member
Registered: 2009-08-26
Posts: 22

Re: [Request] Anjal

haTem wrote:
illusionalsagacity wrote:

Try using --disable-introspection on the ./autogen.sh or ./configure in the PKGBUILD

That worked.  Had to do that for both clutter-git and nbtk-git.

Your PKGBUILD and webkit.patch also worked nicely, but the md5sum for the patch was wrong (maybe the forum altered the whitespace a bit?).

I now have anjal working, thanks!

Awesome. Have fun!

Offline

#12 2009-09-10 18:08:57

aymara
Member
From: Argentina
Registered: 2008-07-08
Posts: 59
Website

Re: [Request] Anjal

Wow!!! You made it!!! 

Thanks to all of you... Arch community rules!!!

Any chance to make an script to make the install more easy for me and all the newbies like me??? (or I should say... lazy like me??)


http://archlinux.me/aymara/ ----> Newbie forever...  ¬¬

Offline

#13 2009-09-16 18:33:25

alex_anthony
Member
From: UK
Registered: 2007-09-25
Posts: 344

Re: [Request] Anjal

now you can try

yaourt -S anjal-git

if you have the new evolution and yaourt installed. For i686, new evolution is in [gnome-unstable]

Offline

#14 2009-09-16 21:27:38

aymara
Member
From: Argentina
Registered: 2008-07-08
Posts: 59
Website

Re: [Request] Anjal

alex_anthony wrote:

now you can try

yaourt -S anjal-git

if you have the new evolution and yaourt installed. For i686, new evolution is in [gnome-unstable]

Thanks!!! great job!!


http://archlinux.me/aymara/ ----> Newbie forever...  ¬¬

Offline

Board footer

Powered by FluxBB