diff --git a/www/netsurf/Makefile b/www/netsurf/Makefile index 02e2a9559e62..0e41f353deb9 100644 --- a/www/netsurf/Makefile +++ b/www/netsurf/Makefile @@ -1,90 +1,90 @@ # Created by: Andrew Pantyukhin PORTNAME= netsurf PORTVERSION= 3.10 -PORTREVISION= 3 +PORTREVISION= 4 CATEGORIES= www MASTER_SITES= http://download.netsurf-browser.org/netsurf/releases/source/ DISTNAME= ${PORTNAME}-${PORTVERSION}-src MAINTAINER= nc@FreeBSD.org COMMENT= Lightweight web browser LICENSE= GPLv2 MIT LICENSE_COMB= multi BUILD_DEPENDS= duk:lang/duktape \ nsgenbind:devel/nsgenbind \ p5-HTML-Parser>=3.72:www/p5-HTML-Parser \ xxd:editors/vim LIB_DEPENDS= libcss.so:textproc/libcss \ libcurl.so:ftp/curl \ libdom.so:www/libdom \ libexpat.so:textproc/expat2 \ libhubbub.so:www/libhubbub \ libnsbmp.so:graphics/libnsbmp \ libnsgif.so:graphics/libnsgif \ libnspsl.so:dns/libnspsl \ libnsutils.so:devel/libnsutils \ libparserutils.so:devel/libparserutils \ libpng.so:graphics/png \ libutf8proc.so:textproc/utf8proc \ libwapcaplet.so:textproc/libwapcaplet \ libwebp.so:graphics/webp RUN_DEPENDS= ${LOCALBASE}/share/certs/ca-root-nss.crt:security/ca_root_nss \ duk:lang/duktape USES= bison cpe desktop-file-utils gmake gnome iconv:translit jpeg \ localbase pkgconfig shebangfix ssl CPE_VENDOR= ${PORTNAME}-browser USE_GNOME= cairo glib20 gtk30 librsvg2 SHEBANG_FILES= utils/split-messages.pl perl_CMD= ${PERL} MAKE_ARGS= CC="${CC}" \ CCOPT="" \ HOST="${OPSYS}" \ HOST_CC="${CC}" \ OPTCFLAGS="${CFLAGS}" \ Q="" \ TARGET="gtk3" \ WARNFLAGS="" MAKE_ENV+= COMPONENT_TYPE="lib-shared" \ FLEX="${LOCALBASE}/bin/flex" ALL_TARGET= #empty CFLAGS+= -I${OPENSSLINC} LDFLAGS+= -L${OPENSSLLIB} -lssl -lcrypto WRKSRC= ${WRKDIR}/${DISTNAME:S/-src//} post-patch: @${REINPLACE_CMD} '/CFLAGS/d' \ ${WRKSRC}//Makefile.defaults @${CP} ${FILESDIR}/buildui.pl ${WRKSRC}/utils/ do-configure: @${CP} ${FILESDIR}/Makefile.config ${WRKSRC} post-install: cd ${STAGEDIR}${PREFIX}/bin && ${LN} -sf netsurf-gtk3 \ netsurf-gtk .for d in applications pixmaps ${MKDIR} ${STAGEDIR}${PREFIX}/share/${d} .endfor ${INSTALL_DATA} ${WRKSRC}/frontends/gtk/res/deoptions.gtk3.ui \ ${STAGEDIR}${PREFIX}/share/netsurf ${INSTALL_DATA} ${WRKSRC}/frontends/gtk/res/enoptions.gtk3.ui \ ${STAGEDIR}${PREFIX}/share/netsurf ${INSTALL_DATA} ${WRKSRC}/frontends/gtk/res/froptions.gtk3.ui \ ${STAGEDIR}${PREFIX}/share/netsurf ${INSTALL_DATA} ${WRKSRC}/frontends/gtk/res/itoptions.gtk3.ui \ ${STAGEDIR}${PREFIX}/share/netsurf ${INSTALL_DATA} ${WRKSRC}/frontends/gtk/res/nloptions.gtk3.ui \ ${STAGEDIR}${PREFIX}/share/netsurf ${INSTALL_DATA} ${WRKSRC}/frontends/gtk/res/netsurf-gtk.desktop \ ${STAGEDIR}${PREFIX}/share/applications ${INSTALL_DATA} ${WRKSRC}/frontends/gtk/res/netsurf.xpm \ ${STAGEDIR}${PREFIX}/share/pixmaps .include diff --git a/www/netsurf/files/patch-frontends_gtk_preferences.c b/www/netsurf/files/patch-frontends_gtk_preferences.c index 337e1bf73f03..b3b09646026c 100644 --- a/www/netsurf/files/patch-frontends_gtk_preferences.c +++ b/www/netsurf/files/patch-frontends_gtk_preferences.c @@ -1,33 +1,33 @@ --- frontends/gtk/preferences.c.orig 2021-04-01 17:51:28 UTC +++ frontends/gtk/preferences.c @@ -962,11 +962,26 @@ GtkWidget* nsgtk_preferences(struct browser_window *bw return GTK_WIDGET(priv->dialog); } - res = nsgtk_builder_new_from_resname("options", &preferences_builder); - if (res != NSERROR_OK) { - NSLOG(netsurf, INFO, "Preferences UI builder init failed"); - return NULL; + const char *client_lang; + char ui_lang[10] = "en"; + client_lang = getenv("LANG"); + + if (strlen(client_lang)>1) + { + strncpy(ui_lang,client_lang,2); } + + strcat(ui_lang,"options"); + + res = nsgtk_builder_new_from_resname(ui_lang, &preferences_builder); + if (res != NSERROR_OK) { + //LANG not found, so fall back to english i guess -+ res = nsgtk_builder_new_from_resname("enoption", &preferences_builder); ++ res = nsgtk_builder_new_from_resname("enoptions", &preferences_builder); + } + if (res != NSERROR_OK) { + NSLOG(netsurf, INFO, "Preferences UI builder init failed"); + return NULL; + } priv->dialog = gtk_builder_get_object(preferences_builder, "dialogPreferences");