diff --git a/japanese/font-firge-nerd/Makefile b/japanese/font-firge-nerd/Makefile new file mode 100644 index 000000000000..bae1ccc25088 --- /dev/null +++ b/japanese/font-firge-nerd/Makefile @@ -0,0 +1,61 @@ +PORTNAME= firge-nerd +PORTVERSION= 0.1.0 +PORTREVISION= 0 +CATEGORIES= japanese x11-fonts +MASTER_SITES= https://github.com/yuru7/Firge/releases/download/v${PORTVERSION}/ +PKGNAMEPREFIX= ja-font- +DISTNAME= FirgeNerd_v${DISTVERSION} + +MAINTAINER= ume@FreeBSD.org +COMMENT= Firge is a composite font of Fira Mono and GenShin-Gothic + +LICENSE= OFL11 + +USES= fonts:fc zip +NO_ARCH= yes +NO_BUILD= yes +PKGINSTALL= ${WRKDIR}/pkg-install +PKGDEINSTALL= ${WRKDIR}/pkg-install +SUB_FILES= pkg-install +WRKSRC= ${WRKDIR}/${DISTNAME} + +OPTIONS_MULTI= FONT_FAMILY +OPTIONS_MULTI_FONT_FAMILY= FIRGENERD FIRGENERD_CONS FIRGE35NERD FIRGE35NERD_CONS +OPTIONS_DEFAULT= FIRGENERD FIRGENERD_CONS FIRGE35NERD FIRGE35NERD_CONS +OPTIONS_SUB= yes +FIRGENERD_DESC= FirgeNerd +FIRGENERD_CONS_DESC= FirgeNerd Console +FIRGE35NERD_DESC= Firge35Nerd +FIRGE35NERD_CONS_DESC= Firge35Nerd Console + +.include + +.if ${PORT_OPTIONS:MFIRGENERD} +FIRGE_FONTS+= FirgeNerd-Regular FirgeNerd-Bold +.endif +.if ${PORT_OPTIONS:MFIRGENERD_CONS} +FIRGE_FONTS+= FirgeNerdConsole-Regular FirgeNerdConsole-Bold +.endif +.if ${PORT_OPTIONS:MFIRGE35NERD} +FIRGE_FONTS+= Firge35Nerd-Regular Firge35Nerd-Bold +.endif +.if ${PORT_OPTIONS:MFIRGE35NERD_CONS} +FIRGE_FONTS+= Firge35NerdConsole-Regular Firge35NerdConsole-Bold +.endif + +do-install: + ${MKDIR} ${STAGEDIR}${FONTSDIR} +.for FONT in ${FIRGE_FONTS} + ${INSTALL_DATA} ${WRKSRC}/${FONT}.ttf ${STAGEDIR}${FONTSDIR} +.endfor + ${MKDIR} ${STAGEDIR}${PREFIX}/etc/fonts/conf.avail \ + ${STAGEDIR}${PREFIX}/etc/fonts/conf.d + ${INSTALL_DATA} ${FILESDIR}/20-unhint-${FONTNAME}.conf \ + ${FILESDIR}/62-fonts-${FONTNAME}.conf \ + ${STAGEDIR}${PREFIX}/etc/fonts/conf.avail + ${LN} -s -f ../conf.avail/20-unhint-${FONTNAME}.conf \ + ${STAGEDIR}${PREFIX}/etc/fonts/conf.d/20-unhint-${FONTNAME}.conf + ${LN} -s -f ../conf.avail/62-fonts-${FONTNAME}.conf \ + ${STAGEDIR}${PREFIX}/etc/fonts/conf.d/62-fonts-${FONTNAME}.conf + +.include diff --git a/japanese/font-firge-nerd/distinfo b/japanese/font-firge-nerd/distinfo new file mode 100644 index 000000000000..567168c8b37c --- /dev/null +++ b/japanese/font-firge-nerd/distinfo @@ -0,0 +1,3 @@ +TIMESTAMP = 1626607186 +SHA256 (FirgeNerd_v0.1.0.zip) = 239048c643207db4912e248d7fd3aaab948f9be78756b0f59e23cd93eab436f6 +SIZE (FirgeNerd_v0.1.0.zip) = 27770907 diff --git a/japanese/font-firge-nerd/files/20-unhint-firge-nerd.conf b/japanese/font-firge-nerd/files/20-unhint-firge-nerd.conf new file mode 100644 index 000000000000..685f4737f02c --- /dev/null +++ b/japanese/font-firge-nerd/files/20-unhint-firge-nerd.conf @@ -0,0 +1,35 @@ + + + + + + + FirgeNerd-Regular + + + FirgeNerd-Bold + + + FirgeNerdConsole-Regular + + + FirgeNerdConsole-Bold + + + Firge35Nerd-Regular + + + Firge35Nerd-Bold + + + Firge35NerdConsole-Regular + + + Firge35NerdConsole-Bold + + + + false + + + diff --git a/japanese/font-firge-nerd/files/62-fonts-firge-nerd.conf b/japanese/font-firge-nerd/files/62-fonts-firge-nerd.conf new file mode 100644 index 000000000000..144ea51ce88f --- /dev/null +++ b/japanese/font-firge-nerd/files/62-fonts-firge-nerd.conf @@ -0,0 +1,17 @@ + + + + + monospace + + FirgeNerd-Regular + FirgeNerd-Bold + FirgeNerdConsole-Regular + FirgeNerdConsole-Bold + Firge35Nerd-Regular + Firge35Nerd-Bold + Firge35NerdConsole-Regular + Firge35NerdConsole-Bold + + + diff --git a/japanese/font-firge-nerd/files/pkg-install.in b/japanese/font-firge-nerd/files/pkg-install.in new file mode 100644 index 000000000000..d76ef0b91b83 --- /dev/null +++ b/japanese/font-firge-nerd/files/pkg-install.in @@ -0,0 +1,104 @@ +#!/bin/sh + +catfontsdir() +{ + while read _IN + do + case "${_IN}" in + *-misc-firge*nerd*-*|[0-9]*|"") ;; + *) echo ${_IN} ;; + esac + done +} + +ROMA="" +BOLD="ds=y" +RITA="ai=0.08" +ROBL="ai=0.08" + +make_xlfd() +{ + _enc=$1 + _file=$2 + _vendor=$3 + _fname=$4 + _poc=$5 + _weight=$6 + + case "${_poc}:${_enc}" in + p:jisx0201.1976-*) PFIX="bw=0.5" ;; + c:jisx0201.1976-*) PFIX="bw=0.5" ;; + p:*) PFIX="" ;; + c:*) PFIX="" ;; + esac + + set -- "" ${_weight}-r \ + ${RITA} ${_weight}-ri \ + ${ROBL} ${_weight}-ro + while [ $# != 0 ]; do + _prefix="${PFIX}:$1"; shift + _variant=$1; shift + [ ${index_type} = "scale" -a ${_prefix} != ":" ] && continue + printf "%s:%s -%s-%s-%s-normal--0-0-0-0-%s-0-%s\n" \ + $_prefix $_file $_vendor "$_fname" $_variant $_poc $_enc + done | sed -e 's,::,:,g' -e 's,^:,,' +} + +addentries() +{ + for ENC in iso8859-1 iso10646-1 jisx0201.1976-0 jisx0208.1983-0 jisx0208.1990-0 jisx0208.1997-0 jisx0213.2004-1 + do + make_xlfd $ENC FirgeNerd-Regular.ttf misc "firgenerd" m medium + make_xlfd $ENC FirgeNerd-Bold.ttf misc "firgenerd" m bold + make_xlfd $ENC FirgeNerdConsole-Regular.ttf misc "firgenerdconsole" m medium + make_xlfd $ENC FirgeNerdConsole-Bold.ttf misc "firgenerdconsole" m bold + make_xlfd $ENC Firge35Nerd-Regular.ttf misc "firge35nerd" m medium + make_xlfd $ENC Firge35Nerd-Bold.ttf misc "firge35nerd" m bold + make_xlfd $ENC Firge35NerdConsole-Regular.ttf misc "firge35nerdconsole" m medium + make_xlfd $ENC Firge35NerdConsole-Bold.ttf misc "firge35nerdconsole" m bold + done +} + +nfonts() +{ + _L=0; while read _IN; do _L=$((${_L}+1)); done; echo ${_L} +} + +install_fontsdir() +{ + index_type=${1:-"dir"} + index="fonts.${index_type}" + tmpfile="${index}.tmp" + touch ${index} + (catfontsdir < ${index}; addentries ${index_type}) > ${tmpfile} + nfonts < ${tmpfile} > ${index} + cat ${tmpfile} >> ${index} + rm -f ${tmpfile} +} + +deinstall_fontsdir() +{ + index_type=${1:-"dir"} + index="fonts.${index_type}" + tmpfile="${index}.tmp" + catfontsdir < ${index} > ${tmpfile} + nfonts < ${tmpfile} > ${index} + cat ${tmpfile} >> ${index} + rm -f ${tmpfile} + if [ -r ${index} -a $(wc -l < ${index}) = 1 ]; then + rm -f ${index} + fi +} + +case "$2" in +POST-INSTALL) + cd %%FONTSDIR%% + install_fontsdir dir + install_fontsdir scale + ;; +POST-DEINSTALL) + cd %%FONTSDIR%% + deinstall_fontsdir dir + deinstall_fontsdir scale + ;; +esac diff --git a/japanese/font-firge-nerd/pkg-descr b/japanese/font-firge-nerd/pkg-descr new file mode 100644 index 000000000000..d005f77e5467 --- /dev/null +++ b/japanese/font-firge-nerd/pkg-descr @@ -0,0 +1,3 @@ +Firge is a composite font of Fira Mono and GenShin-Gothic. + +WWW: https://github.com/yuru7/Firge diff --git a/japanese/font-firge-nerd/pkg-plist b/japanese/font-firge-nerd/pkg-plist new file mode 100644 index 000000000000..c2625f11309f --- /dev/null +++ b/japanese/font-firge-nerd/pkg-plist @@ -0,0 +1,12 @@ +etc/fonts/conf.avail/20-unhint-firge-nerd.conf +etc/fonts/conf.avail/62-fonts-firge-nerd.conf +etc/fonts/conf.d/20-unhint-firge-nerd.conf +etc/fonts/conf.d/62-fonts-firge-nerd.conf +%%FIRGENERD%%%%FONTSDIR%%/FirgeNerd-Regular.ttf +%%FIRGENERD%%%%FONTSDIR%%/FirgeNerd-Bold.ttf +%%FIRGENERD_CONS%%%%FONTSDIR%%/FirgeNerdConsole-Regular.ttf +%%FIRGENERD_CONS%%%%FONTSDIR%%/FirgeNerdConsole-Bold.ttf +%%FIRGE35NERD%%%%FONTSDIR%%/Firge35Nerd-Regular.ttf +%%FIRGE35NERD%%%%FONTSDIR%%/Firge35Nerd-Bold.ttf +%%FIRGE35NERD_CONS%%%%FONTSDIR%%/Firge35NerdConsole-Regular.ttf +%%FIRGE35NERD_CONS%%%%FONTSDIR%%/Firge35NerdConsole-Bold.ttf diff --git a/japanese/font-firge/Makefile b/japanese/font-firge/Makefile new file mode 100644 index 000000000000..4f4c82dfb445 --- /dev/null +++ b/japanese/font-firge/Makefile @@ -0,0 +1,61 @@ +PORTNAME= firge +PORTVERSION= 0.1.0 +PORTREVISION= 0 +CATEGORIES= japanese x11-fonts +MASTER_SITES= https://github.com/yuru7/Firge/releases/download/v${PORTVERSION}/ +PKGNAMEPREFIX= ja-font- +DISTNAME= Firge_v${DISTVERSION} + +MAINTAINER= ume@FreeBSD.org +COMMENT= Firge is a composite font of Fira Mono and GenShin-Gothic + +LICENSE= OFL11 + +USES= fonts:fc zip +NO_ARCH= yes +NO_BUILD= yes +PKGINSTALL= ${WRKDIR}/pkg-install +PKGDEINSTALL= ${WRKDIR}/pkg-install +SUB_FILES= pkg-install +WRKSRC= ${WRKDIR}/${DISTNAME} + +OPTIONS_MULTI= FONT_FAMILY +OPTIONS_MULTI_FONT_FAMILY= FIRGE FIRGE_CONS FIRGE35 FIRGE35_CONS +OPTIONS_DEFAULT= FIRGE FIRGE_CONS FIRGE35 FIRGE35_CONS +OPTIONS_SUB= yes +FIRGE_DESC= Firge +FIRGE_CONS_DESC= Firge Console +FIRGE35_DESC= Firge35 +FIRGE35_CONS_DESC= Firge35 Console + +.include + +.if ${PORT_OPTIONS:MFIRGE} +FIRGE_FONTS+= Firge-Regular Firge-Bold +.endif +.if ${PORT_OPTIONS:MFIRGE_CONS} +FIRGE_FONTS+= FirgeConsole-Regular FirgeConsole-Bold +.endif +.if ${PORT_OPTIONS:MFIRGE35} +FIRGE_FONTS+= Firge35-Regular Firge35-Bold +.endif +.if ${PORT_OPTIONS:MFIRGE35_CONS} +FIRGE_FONTS+= Firge35Console-Regular Firge35Console-Bold +.endif + +do-install: + ${MKDIR} ${STAGEDIR}${FONTSDIR} +.for FONT in ${FIRGE_FONTS} + ${INSTALL_DATA} ${WRKSRC}/${FONT}.ttf ${STAGEDIR}${FONTSDIR} +.endfor + ${MKDIR} ${STAGEDIR}${PREFIX}/etc/fonts/conf.avail \ + ${STAGEDIR}${PREFIX}/etc/fonts/conf.d + ${INSTALL_DATA} ${FILESDIR}/20-unhint-${FONTNAME}.conf \ + ${FILESDIR}/62-fonts-${FONTNAME}.conf \ + ${STAGEDIR}${PREFIX}/etc/fonts/conf.avail + ${LN} -s -f ../conf.avail/20-unhint-${FONTNAME}.conf \ + ${STAGEDIR}${PREFIX}/etc/fonts/conf.d/20-unhint-${FONTNAME}.conf + ${LN} -s -f ../conf.avail/62-fonts-${FONTNAME}.conf \ + ${STAGEDIR}${PREFIX}/etc/fonts/conf.d/62-fonts-${FONTNAME}.conf + +.include diff --git a/japanese/font-firge/distinfo b/japanese/font-firge/distinfo new file mode 100644 index 000000000000..21a3af7f0230 --- /dev/null +++ b/japanese/font-firge/distinfo @@ -0,0 +1,3 @@ +TIMESTAMP = 1626607081 +SHA256 (Firge_v0.1.0.zip) = d94ef9db6016d9dbf043b03ab45f36dd266ca930063294f464976fc09fa99489 +SIZE (Firge_v0.1.0.zip) = 23905564 diff --git a/japanese/font-firge/files/20-unhint-firge.conf b/japanese/font-firge/files/20-unhint-firge.conf new file mode 100644 index 000000000000..ad08194f7145 --- /dev/null +++ b/japanese/font-firge/files/20-unhint-firge.conf @@ -0,0 +1,35 @@ + + + + + + + Firge-Regular + + + Firge-Bold + + + FirgeConsole-Regular + + + FirgeConsole-Bold + + + Firge35-Regular + + + Firge35-Bold + + + Firge35Console-Regular + + + Firge35Console-Bold + + + + false + + + diff --git a/japanese/font-firge/files/62-fonts-firge.conf b/japanese/font-firge/files/62-fonts-firge.conf new file mode 100644 index 000000000000..06eda4e5ec35 --- /dev/null +++ b/japanese/font-firge/files/62-fonts-firge.conf @@ -0,0 +1,17 @@ + + + + + monospace + + Firge-Regular + Firge-Bold + FirgeConsole-Regular + FirgeConsole-Bold + Firge35-Regular + Firge35-Bold + Firge35Console-Regular + Firge35Console-Bold + + + diff --git a/japanese/font-firge/files/pkg-install.in b/japanese/font-firge/files/pkg-install.in new file mode 100644 index 000000000000..8790197d3730 --- /dev/null +++ b/japanese/font-firge/files/pkg-install.in @@ -0,0 +1,104 @@ +#!/bin/sh + +catfontsdir() +{ + while read _IN + do + case "${_IN}" in + *-misc-firge(|35)(|console)-*|[0-9]*|"") ;; + *) echo ${_IN} ;; + esac + done +} + +ROMA="" +BOLD="ds=y" +RITA="ai=0.08" +ROBL="ai=0.08" + +make_xlfd() +{ + _enc=$1 + _file=$2 + _vendor=$3 + _fname=$4 + _poc=$5 + _weight=$6 + + case "${_poc}:${_enc}" in + p:jisx0201.1976-*) PFIX="bw=0.5" ;; + c:jisx0201.1976-*) PFIX="bw=0.5" ;; + p:*) PFIX="" ;; + c:*) PFIX="" ;; + esac + + set -- "" ${_weight}-r \ + ${RITA} ${_weight}-ri \ + ${ROBL} ${_weight}-ro + while [ $# != 0 ]; do + _prefix="${PFIX}:$1"; shift + _variant=$1; shift + [ ${index_type} = "scale" -a ${_prefix} != ":" ] && continue + printf "%s:%s -%s-%s-%s-normal--0-0-0-0-%s-0-%s\n" \ + $_prefix $_file $_vendor "$_fname" $_variant $_poc $_enc + done | sed -e 's,::,:,g' -e 's,^:,,' +} + +addentries() +{ + for ENC in iso8859-1 iso10646-1 jisx0201.1976-0 jisx0208.1983-0 jisx0208.1990-0 jisx0208.1997-0 jisx0213.2004-1 + do + make_xlfd $ENC Firge-Regular.ttf misc "firge" m medium + make_xlfd $ENC Firge-Bold.ttf misc "firge" m bold + make_xlfd $ENC FirgeConsole-Regular.ttf misc "firgeconsole" m medium + make_xlfd $ENC FirgeConsole-Bold.ttf misc "firgeconsole" m bold + make_xlfd $ENC Firge35-Regular.ttf misc "firge35" m medium + make_xlfd $ENC Firge35-Bold.ttf misc "firge35" m bold + make_xlfd $ENC Firge35Console-Regular.ttf misc "firge35console" m medium + make_xlfd $ENC Firge35Console-Bold.ttf misc "firge35console" m bold + done +} + +nfonts() +{ + _L=0; while read _IN; do _L=$((${_L}+1)); done; echo ${_L} +} + +install_fontsdir() +{ + index_type=${1:-"dir"} + index="fonts.${index_type}" + tmpfile="${index}.tmp" + touch ${index} + (catfontsdir < ${index}; addentries ${index_type}) > ${tmpfile} + nfonts < ${tmpfile} > ${index} + cat ${tmpfile} >> ${index} + rm -f ${tmpfile} +} + +deinstall_fontsdir() +{ + index_type=${1:-"dir"} + index="fonts.${index_type}" + tmpfile="${index}.tmp" + catfontsdir < ${index} > ${tmpfile} + nfonts < ${tmpfile} > ${index} + cat ${tmpfile} >> ${index} + rm -f ${tmpfile} + if [ -r ${index} -a $(wc -l < ${index}) = 1 ]; then + rm -f ${index} + fi +} + +case "$2" in +POST-INSTALL) + cd %%FONTSDIR%% + install_fontsdir dir + install_fontsdir scale + ;; +POST-DEINSTALL) + cd %%FONTSDIR%% + deinstall_fontsdir dir + deinstall_fontsdir scale + ;; +esac diff --git a/japanese/font-firge/pkg-descr b/japanese/font-firge/pkg-descr new file mode 100644 index 000000000000..d005f77e5467 --- /dev/null +++ b/japanese/font-firge/pkg-descr @@ -0,0 +1,3 @@ +Firge is a composite font of Fira Mono and GenShin-Gothic. + +WWW: https://github.com/yuru7/Firge diff --git a/japanese/font-firge/pkg-plist b/japanese/font-firge/pkg-plist new file mode 100644 index 000000000000..09df3de38581 --- /dev/null +++ b/japanese/font-firge/pkg-plist @@ -0,0 +1,12 @@ +etc/fonts/conf.avail/20-unhint-firge.conf +etc/fonts/conf.avail/62-fonts-firge.conf +etc/fonts/conf.d/20-unhint-firge.conf +etc/fonts/conf.d/62-fonts-firge.conf +%%FIRGE%%%%FONTSDIR%%/Firge-Regular.ttf +%%FIRGE%%%%FONTSDIR%%/Firge-Bold.ttf +%%FIRGE_CONS%%%%FONTSDIR%%/FirgeConsole-Regular.ttf +%%FIRGE_CONS%%%%FONTSDIR%%/FirgeConsole-Bold.ttf +%%FIRGE35%%%%FONTSDIR%%/Firge35-Regular.ttf +%%FIRGE35%%%%FONTSDIR%%/Firge35-Bold.ttf +%%FIRGE35_CONS%%%%FONTSDIR%%/Firge35Console-Regular.ttf +%%FIRGE35_CONS%%%%FONTSDIR%%/Firge35Console-Bold.ttf