개발 환경 설정을 한후에, 예전에 Intel기반의 Macbook Pro 2013 Late에서 설정했던 LODE를 이용하여 빌드 환경을 설정하였습니다. https://wiki.documentfoundation.org/Development/lode 빌드 환경 설정이 완료되어서 core (LibreOffice의 빌드 소스) 디렉토리로 이동하여, 다음의 명령어로 빌드를 실행하였습니다.
configure: error: in `/Users/sungdaehyun/dev/lode/dev/core':
configure: error: online update or breakpad/crashreporting are enabled, but no --with-privacy-policy-url=... was provided
해당 이슈에 대해서 왜 나오는지 이유를 알 수 없어, 내용을 IRC로 문의를 하니 다음과 같은 답변을 받았습니다.
10:25 PM <dhsung> Hello
10:25 PM <dhsung> Today, I bought new Apple M1 MacbookAir. So, I prepare autogen option for build. But, I found the message "online update or breakpad/crashreporting are enabled, but no --with-privacy-policy-url=... was provided" What is mean?
10:26 PM <mst___> either disable those features or use an arbitrary value for the url, it's just shown in a dialog somewhere
To build, run:
/Users/****/dev/lode/opt/bin/make
To view some help, run:
/Users/****/dev/lode/opt/bin/make help
After the build has finished successfully, you can immediately run what you built using the command:
open instdir/LibreOfficeDev.app
If you want to run the smoketest, run:
/Users/****/dev/lode/opt/bin/make check
HOST config (config.warn)
*************************************
* WARNING : Cannot find Clang headers to build compiler plugins, plugins disabled.
이후에 make로 빌드를 실행하였습니다.
Apple M1에서 빌드가 완료되고, 다음과 같이 빌드 완료된 프로그램 실행을 해보았습니다.
open instdir/LibreOfficeDev.app
실행이 아주 잘됩니다!
여기까지, Apple M1에서 LibreOffice(리브레오피스) 빌드 및 실행해보기 기록이였습니다.
올해 처음으로, 대한민국 과학기술정보통신부에서 주최하고 NIPA(정보통신산업진흥원)에서 주관하는 오픈소스 프로젝트 지원 사업인 "오픈소스 컨트리뷰톤 2020"에 "LibreeOffice 한국어 사용성 향상 및 공헌자 양성 프로젝트" 멘토(Mentor)로 참여를 하였습니다.
이 행사에 처음 참여하였고, 참가 후기를 정리하여 공개합니다.
컨트리뷰톤(Contributon)은 공헌(貢獻), 기여(寄與), 컨트리뷰트(Contribute)와 마라톤(Marathon)의 합성어로 6주간 자유 오픈소스 소프트웨어 프로젝트에 참여, 공유, 오픈, 협업하여 다양한 방식의 기여(Contribute)를 직접 경험하는 프로그램이라고 소개를 하더군요. 이 행사는 2016년부터 시작된 행사라고 합니다.
올해의 "오픈소스 컨트리뷰톤 2020"이 2016, 2017, 2018, 2019년에 이어 5번째로 열리는 행사라고 하더군요.
첨언. 저는 국가에서 Open Source Software를 "공개 소프트웨어"로 번역하여 사용하는 것에 대하여 좋게 보지 않습니다.
그 이유는, 번역어 "공개 소프트웨어"에서 "Source"가 빠져있기 때문에 실행파일만 공개하면 되는 것이 아닌가란 오해를 사기 쉽기 때문입니다.
그래서, "Source"에 대한 번역 낱말이 빠져있기 때문에, 저는 OSS(Open Source Software)에 대해서 "공개 소프트웨어" 또는 "공개 SW" 대신 오픈소스 소프트웨어 혹은 "공개 원천 소프트웨어"(북한은 Open Source Software에 대하여 "공개 원천 쏘프트웨어"로 번역함)으로 부르겠습니다.
참고 2. "Open Source Software"를 "공개 소프트웨어"로 번역하면 "Open Source"에 대한 번역을 "공개(Open)"로만 번역을 해야 하는 문제가 있음.
English(영어, 英語): Open Source
Korean(한국어): 오픈소스/공개 원천
Japanese(일본어, 日本語): オープンソース
Traditional Chinese(중국어 번체, 繁體中文): 開源 / 開放原始碼
Simplified Chinese(중국어 간체, 简体中文): 开源 / 开放原始码
ps. 개인적인 의견입니다.
해당 행사의 주최는 과학기술정보통신부(科學技術情報通信部, Ministry of Science and ICT), 주관은 정부통신산업진흥원(情報通信産業進興院, National IT Industry Promotion Agency, NIPA), 후원(Sponsor)으로는 Microsoft(MS Korea), LINE, 카카오(Kakao), 가비아(gabia), 네이버(NAVER), SK텔레콤(SK Telecom), 래블업(LABLUP), 넥스클리퍼(NexClipper)등의 회사가 참여하였습니다.
준비단계
스프린트서울(SprintSeoul) 행사 참여를 하다 보니, 어느 분께서 스프린트 서울 프로젝트 참여하시는 분께서 "2020 오픈소스 컨트리뷰톤" 행사에 멘토로 참여하는 것에 대해서 어떻나는 글을 보았습니다.
위의 내용을 보고, 리브레오피스(LibreOffice)가 선정되면 정부기관인 NIPA가 ODF 포맷으로 문서를 공개할까란 생각을 했습니다만 꿈같은 소리...
NIPA에서 HWP, DOC 기준으로 문서를 작성하다 보니 ODF로 문서를 만들 생각은 안 하는 듯합니다.
어튼 doc파일로 신청서를 리브레오피스(LibreOffice)에서 작성하였습니다.
프로젝트 이름을 무엇으로 지을까 고민을 했습니다만, 정직하게 "LibreeOffice 한국어 사용성 향상 및 공헌자 양성 프로젝트"라고 이름을 지었습니다.
다행히, 리브레오피스(LibreOffice)의 OOXML형식의 호환성 지원은 상당한 수준이라 편집하고, 주최 측에 전달을 일단 해보았습니다.
그리고, 혼자서 고민도 안 하고 회사일 하느라 바쁜데 준비과정 없이 신청하였고, 리브레오피스(LibreOffice)로 작성을 하였다 보니 호환성이 안 맞아 내용이 깨져서 주최 측에서 서류 탈락으로 처리하여 떨어질 수 있을 거란 생각을 했습니다.
그러나, 프로젝트 선정(무려 26개 프로젝트)이 되었습니다.
제가 참여한 프로젝트가 아닌 다른 프로젝트(25개 팀)를 보니 쟁쟁한 프로젝트들이 있어서 엄청 걱정했습니다.
이후, 참가자 선정 관련으로 주최 측에서 프로젝트 소개 등을 요구하였습니다.
그런데, pptx 포맷으로 전달받아서 pptx로 작성하였습니다.
MacOS에서 네이버의 Nanum Square 글꼴 설치 전의 리브레오피스(LibreOffice)의 프로젝트 소개 슬라이드 보기
MacOS에서 네이버의 Nanum Square 글꼴 설치 후의 리브레오피스(LibreOffice)의 프로젝트 소개 슬라이드 보기
컨트리뷰톤 시작 전부터 글꼴 fallback 버그를 발견하니 이거 컨트리뷰톤 진행하면 대박 터질 것 같은 느낌이 들었습니다.
실행할 때부터 버그를 발견하고, 리브레오피스(LibreOffice)의 버그질라(Bugzilla)에 보고하면 엄청난 큰 수확이 되지 않을까란 생각을 했습니다. (이미 리브레오피스를 직접 사용해본 사용자라면 한국어 사용할 때 버그는 확실히 보입니다.)
거기에, 몇 년 동안 소프트웨어의 번역도 누락된 것도 꽤 크고, 위키의 한글 문서화도 제대로 되지 않았다 보니, 여기서 참여하면 리브레오피스(LibreOffice)라는 프로젝트가 전 세계에서 유명한데, 한국에서도 이름이 알려질 수 있고, 이 행사에서 아무리 못해도 "장려상"을 받을 수 있지 않을까란 꿈같은 생각을 해보았습니다.
(그러나, 꿈은 꿈일 뿐 진행해보면서 회사일 하면서 시간 쪼개면서 하다 보니 전달력이 부족하다는 것을 느꼈음. 내가 생각한걸 다른 사람에게 전달하려면 정말 부단히 시간 투자를 해야 하는 것을 느꼈음.)
"LibreeOffice 한국어 사용성 향상 및 공헌자 양성 프로젝트"이란 제목에서 저의 의도는 리브레오피스(LibreOffice)의 한국어 사용성 향상을 위해서 버그 발견으로 멘티들이 버그를 많이 발견하고 보고를 하는 것을 생각하였습니다. (그 이유는 제가 리브레오피스 사용하다 보니 한국어 사용 관련으로 꽤나 많은 버그를 확인하였으나, 회사 다니면서 바쁘게 살다 보니 제대로 보고를 안 한 버그가 꽤 상당함)
그러나, 저의 의도와 다르게 버그 발견 및 보고에 대해선 생각보다 활동이 많이 저조했던 것에 대해서 아쉬웠습니다. 그러나, 코로나19(COVID-19)로 약 3주가량만 오프라인 미팅을 하였고, 나머지 3주를 온라인 미팅으로 진행하다 보니, 면대면(face to face)가 아닌 온라인으로 컨트리뷰션을 알리는 것이 쉽지 않은 과정임을 알게 되었습니다.
멘티 선정
프로젝트 멘토 선정 이후에, 주최 측에서 멘티 모집 공고를 냈습니다
멘티 모집 공고 관련으로 트위터와 페이스북에 홍보를 하였습니다.
멘티 선정은 신청받은 사람 대부분 수락하였습니다. 처음 진행을 하는 것이라 보니, 멘티 선정을 어떻게 해야 하는지에 대한 걸 알 수가 없었고, 일단 뽑고 대학생의 수준이 어디까지인지 확인해야 알 수 있기 때문에 거의 대부분 묻지마 선정을 하였습니다
참가지원서에서 간단한 자기소개, 지원동기, 프로젝트 개발 경험을 공개했는데 개발 경험이 학교 과제로 간단하게 한 수준이기 때문이기 때문에 자유 오픈소스 프로젝트(FLOSS)에 관심 있으면 무조건 선정했습니다.
자기소개에 앱 개발하면서 돈을 벌기 위해서나 돈과 창업을 목적으로 한다 등 상업적으로 나가는 자기소개서를 작성한 경우가 아닌 이상, 대학생과 회사원 모두 선정하였습니다.
이 부분에서 후회되는 건, 선정된 분들의 수준을 전혀 모르고 뽑다 보니 진행이 조금 난감한 경우가 있었습니다. (뭐 이런 프로젝트가 처음이라 어찌 되든 잘 되겠지 생각을 하였습니다.)
멘티 선정 고민의 결과로 상업(돈, 창업)을 목적으로 한 사람들 제외하고 대부분 선정하였습니다.
이번 경험을 토대로 내년에 열릴 정부의 오프소스 소프트웨어 지원사업인 컨트리뷰톤에 멘티 선정 때 고려를 많이 해야 할 것 같습니다.
멘티 선정 이후, 주최 측에서 ZOOM으로 26개 프로젝트의 멘토들을 모아서 컨트리뷰톤에 대한 내용에 대하여 설명하였습니다.
이때 왜 ZOOM으로 컨퍼런스를 여는 것에 대하여 좀 이해가 되지 않았습니다. (오픈소스 프로젝트 및 기여자(寄與者)/공헌자(貢獻者)/컨트리뷰터(Contributor)를 후원하는 정부기관에서 보안 이슈가 있는 Zoom을 사용하는 것이 좀 꺼림칙했었음)
발대식
주최 측에서 코로나19(COVID-19)여파로 발대식은 4번에 나눠서 진행하였습니다. 저는 욕심이 엄청 과하여 8월 1일 시작 전에 발대식을 진행을 해보았습니다.
발대식에서 선정한 멘티분들을 만나게 되었습니다. 저와 같이 오픈소스 프로젝트 기여(寄與)/공헌(貢獻)/컨트리뷰션(Contribution)을 할 분들을 만나 뵈어서 반가웠습니다.
그러나, 회사일이 바빠서 발대식 하기 전에 참가자(멘티)와 원활한 커뮤니케이션을 못한 것이 아쉬웠습니다.
진행
이 컨트리뷰톤 행사는 8월 1일부터 9월 14일까지 6주간 진행되었습니다. 진행하는 동안 앞서 3주 동안은 주말에 면대면(face to face), 오프라인 모임 및 온라인 모임을 지속적으로 진행하였습니다.
주최 측에서는 줌(ZOOM)을 이용하는 것을 추천하였습니다. 그러나, 저는 여기서 jitsi라는 웹 기반 자유 오픈소스 프로젝트로 된 비디오 컨퍼런스, 인스턴스 메시징 플랫폼으로 온라인 컨퍼런스를 진행하였습니다.
그리고, 문의사항 및 토론으로 gitter를 사용하였습니다.
첫 3주 동안은 뭔가 잘될 것 같았습니다.
그러나 8월 15일 기점으로 갑작스러운 코로나19(COVID-19)확산으로 면대면(face to face), 오프라인 모임이 할 수 없었기 때문에 온라인으로 진행하였습니다.
면대면(face to face), 오프라인으로 모임을 하는 것도 어려웠지만, 온라인(online)으로 진행하는 것은 생각보다 매우 어려웠습니다.
그리고, 다른 사람을 가르치려면 정말 준비를 많이 해야 하는데, 회사일도 바쁘고, 다른 프로젝트와 다르게 혼자 멘토로 참여하다 보니 시간이 지날수록 몸이 피곤해짐을 느꼈습니다.
그리고 회사일이 바빠진 데다, 대학생 참가자분들이 9월 1일 기점으로 개학을 하다 보니 연락이 힘들었습니다
적극적인 직장인 분과 학생 몇 분 제외하고는 거의 피드백(feedback)을 받지 못하여 전달이 되는 건지 진행을 하는 건지 확인할 길이 없었습니다.
저도 회사일이 바빠서 8월 후반부터 컨트리뷰톤관련 기여에 대하여 일일이 챙기지 못한 것을 아쉬워합니다.
그리고 8월 후반부터 온라인으로 진행하다 보니, 제가 사용하는 2013년도형 맥북프로(Mac book pro 2013 Late)의 성능이 부족한 데다, 2013년도에 생산된 HP랩탑이 구형에다 GPU 성능이 좋지 않아서, jitsi를 이용한 화면 공유가 원활히 되지 않은 이슈를 확인하였습니다. 그래서 결국, CUDA 연산이 되는 GPU 달린 새로운 게이밍 랩탑을 구매하여 진행하였습니다.
새로운 랩탑 구매 후에 저 나름대로, 기존보다 빌드가 빨라져서 컨트리뷰션 관련 소스코드 리뷰를 빨리 할 수 있어 편리하더군요. 그리고 jitsi 화면 공유가 원활히 되는 것을 보며, 온라인으로 뭘 하려면 기기 투자가 중요하다는 걸 느꼈습니다.
중간평가
중간평가 시에는 몇 분이 도중에 포기한다고 하였습니다. 멘티들이 제가 생각한 대로 따라가기 어렵다고 느꼈고요.
9월 16일 부로 공식적으로 멘티들의 컨트 리뷰톤 행사 진행이 끝났습니다. 그래서 메일로 결과 서류 관련으로 작성 및 공유를 하였습니다만 몇몇 분들 빼고는 피드백이 없어서 답답하였습니다. (그 이유는 온라인으로 진행하다 보니 관심도가 떨어졌고, 9월 1일 기점으로 대학생들의 2학기 개강으로 참여도가 많이 떨어짐)
컨트리뷰톤 결과
리브레오피스 QA/쉬운 해킹(LibreOffice Easy Hacks)에 한국어에 대한 자동교정(Auto correct) 확장 추가
자동 교정 내용 추가 및 리브레오피스의 단위 테스트(Unit test)의 파이썬 관련 소스코드 수정 등이 있었습니다.
현재, 소스코드 기여 관련으로 huspell-ko의 한국어 맞춤법 기능 적용 관련으로 커미터에게 적용 요청을 하고 있습니다.
꾸준히 위키 번역을 해주신 분이 계셨습니다. 다음에 매 5월 및 11월에 리브레오피스 스티커를 받는 행사를 소개하고 번역에 대해 열중하도록 독려를 해드려야 할 것 같습니다.
소프트웨어 번역 관련으론 꾸준히 하시는 분들이 적어서 불만이긴 합니다. 이 부분은 제가 독려를 하고 계속 푸시를 했어야 하는 점이 있는데, 회사 일이 바빠서 번역 관련으로 못 챙긴 것이 아쉽습니다.
1차 서류 평가
8월 16일 이후 온라인으로 진행하다 보니, 대부분의 많은 기여(寄與)/공헌(貢獻)/컨트리뷰션(Contribution)이 8월 1일부터 3주간 동안만 진행되었습니다. 후의 3주간은 다들 강의를 들어도 시간 투자를 많이 못해서인지 참여도가 확실히 떨어지는 문제가 있었습니다.
서류 평가는 생각보다 후하게 받은 것 같습니다. 26개 팀에서 상위 18개 팀 선정이 된 것에 놀라웠습니다.
2차 발표평가
발표 평가 관련으로 발표자료 정리하여 메일을 전달하였으나, 발표자로 진행하려는 사람이 없었습니다. 대부분 메일 답변하는 사람이 없었습니다. 다행히, 가까스로 발표평가 관련으로 멘티 선정을 하였습니다
발표 평가는 온라인(ZOOM)과 26개 팀에서 선정된 상위 18개 팀의 멘토가 참여하여 평가를 진행하였습니다.
참, 이 행사에서 주최 측이 ZOOM을 엄청 좋아하더군요.
줌(ZOOM)의 보안 이슈가 있는데도 행사 시작부터 끝까지 ZOOM으로 진행하는 것이 뭐랄까 뭔 똥고집인가란 생각을 하였습니다.
참고로 Zoom은 보안 이슈가 있다 보니, 대만(臺灣, Taiwan)에서는 Zoom을 사용 금지를 하였습니다.
대만(臺灣, Taiwan)의 디지털 장관인 오드리 탕(唐鳳)씨는 대만 교육부에서는 상용 프로그램인 CyberLink U Meeting, Microsoft Teams, Cisco WebEx, Adobe Connect, Google Hangouts Meet과 자유 오픈소스 프로젝트인 Jitsi meet 등을 사용한다고 소개하였습니다.
정부 기관이 보안 이슈가 있는 Zoom을 사용하는 것에 대하여 고민이 없는 것 같고, 후원사인 MS사에서 Teams를 왜 밀지 못하는가란 생각이 들었습니다. (제가 이 행사 담당자라면 Zoom을 제외하고 MS Teams, Google Hangouts meet을 사용할 것 같습니다. 최소한이라도 오픈소스 프로젝트에 관심 있는 기관이었으면 jitsi등의 컨퍼런스 관련 오픈소스 프로젝트를 사용하는 것에 대하여 최소한 고민을 한 흔적이라도 있어야 하는데 아쉽습니다)
어튼, 아래 사진은 발표 평가 장소에서 찍었으며, 저는 심사위원으로 참여하였습니다.
다음에는 발표자를 미리 선정후, 직접 발표 교육을 시켜야 할 것 같았습니다.
결과
어튼, 특별상은 받았습니다.
특별상을 받은 기념으로, 참여한 멘티에게 기프티콘을 전달 및 수상 관련 메일을 전달하였습니다. 그러나 대다수의 멘티가 이제 리브레오피스 컨트리뷰션에 대한 관심이 사라졌는지 제가 메일 전달한 것에 대한 답변은 정말 별로 없네요...
이 행사를 통해서 한국의 오픈소스 커뮤니티에 리브레오피스(LibreOffice)가 있다고 이름 정도는 알린 것에 대하여 의의를 두었습니다.
욕심대로라면 컨트리뷰션을 하는 사람을 많이 만들려고 했습니다. 그러나 제가 리브레오피스를 왜 사용해야 하는지 이유등 의도를 제대로 전달을 못하였다는 문제를 확인하였습니다. 그래도 리브레오피스(LibreOffice)에 관심 많은 사람 몇 명을 찾은 것은 다행이라고 봅니다. 다음에는저의 의사전달 능력을 키워야 할것 같습니다.
후기 정리
1. 이번 컨트리뷰톤(Contributon)을 진행하면서, 회사일 하면서 다른 사람을 가르치는 일이 엄청 벅찼음. 작년에는 회사일로 거의 오전 9시부터 오후 9시까지 일하다 보니 커뮤니티 쪽으로 한 번도 챙기지 못하여 올해는 그나마 커뮤니티를 챙기려고 노력을 하였음. 어떻게 하면 커뮤니티 활성을 할까 고민하다 컨트리뷰톤행사 멘토로 진행을 해보았습니다. 일단 의도대로 리브레오피스(LibreOffice)라는 프로젝트가 있다고 이름을 알렸음.
2. 코로나19(COVID-19)이후로, 면대면(face to face)가 아닌 온라인 중심으로 진행하다 보니 일방적으로 진행한 것 같음. 멘티들이 많이 못 따라가는 걸 확인하였고 앞으로 어떻게 정보 전달을 해야 할지 고민을 해야겠음. 이 프로젝트에 포기한 사람도 몇 사람 생기고 , 따라가지 못하고 아예 잠수한 사람도 몇 명 있었음.
"LibreeOffice 한국어 사용성 향상 및 공헌자 양성 프로젝트"이란 제목에서 저의 의도는 리브레오피스(LibreOffice)의 한국어 사용성 향상을 위해서 버그 발견으로 멘티들이 버그를 많이 발견하고 보고를 하는 것을 생각하였습니다. (그 이유는 제가 리브레오피스 사용하다 보니 한국어 사용 관련으로 꽤나 많은 버그를 확인하였으나, 회사 다니면서 바쁘게 살다 보니 제대로 보고를 안 한 버그가 꽤 상당함) 그러나 저의 의도대로 버그 발견 관련으로 버그 보고가 많이 활성화되지 않은 것에 대하여 아쉬웠습니다.
그러나, 코로나19(COVID-19)로 약 3주가량만 오프라인 미팅을 하였고, 나머지 3주를 온라인 미팅으로 진행하다 보니, 면대면(face to face)가 아닌 온라인으로 컨트리뷰션을 알리는 것이 쉽지 않은 과정임을 알게 되었습니다.
오랜만에 사람들을 가르치니 정보 전달 및 강의 방식에 문제가 있다는 걸 느꼈습니다.
참여한 멘티 대부분(거의 대학생)들이 질문도 없고 피드백에 대한 내용도 없으니 내가 전달한 내용이 제대로 이해했나는 생각이 들었음. 그러나 코로나19(COVID-19)로 인하여 제대로 의사소통을 하는 것이 어려웠기 때문에 어떻게 하면 온라인으로 의사소통을 무리 없이 할 수 있을까란 숙제가 주어짐.
3. 주최기관에서 신청서나, ODF양식이 아닌 한글과컴퓨터의 HWP 또는 MS사가 밀고 있는 OOXML의 docx, pptx를 사용. 대한민국 정부와 정보통신산업진흥원은 과연 ODF를 지속적으로 사용하려는 의지가 전혀 없어 보임. 대한민국 정부 표준으로 ODF를 선정하였으나 사용한다는 증거가 없음.
KS X ISOIEC 26300 "정보기술-오픈도큐먼트양식"이 대한민국 ODF 규격 표준입니다.
이 행사를 계기로 정부기관에 리브레오피스(LibreOfice) 소프트웨어가 있다는 걸 알림. 그러나, 정부기관 특성상 보여주기 행사나 행정을 하고 왜 ODF를 사용해야 하는지에 대한 고민이 없을 거라 다음 컨트리뷰톤에서도 ODF포맷으로 된 신청서나 결과 보고서 파일을 공유할 것이라는 보장이 없다고 봄.
4. NIPA등 여러 한국의 정부기관이 컨퍼런스 도구로 Zoom을 엄청 좋아하는 것에 대하여 우려를 하고 있습니다.
Zoom은 보안 이슈가 있다 보니, 대만(臺灣, Taiwan)에서는 Zoom을 사용 금지를 하였습니다. 대만(臺灣, Taiwan)의 디지털 장관인 오드리 탕(唐鳳)씨는 대만 교육부에서는 상용 프로그램인 CyberLink U Meeting, Microsoft Teams, Cisco WebEx, Adobe Connect, Google Hangouts Meet과 자유오픈소스 프로젝트인 Jitsi meet 등을 사용한다고 소개하였습니다
전 세계에서 Zoom의 보안 이슈 관련으로 금지를 하려는 추세인데, 오픈소스 기여자/공헌자/컨트리뷰터(Contributor)를 양성 관련으로 관심 있는 정부기관이 Zoom을 쓴다는 것에 대해서는 이상하게 보입니다. 차라리 오픈소스 jitsi 같은 플랫폼을 발굴해서 서버 구축하는 것이 좋지 않을까란 생각을 하기도 하고, Zoom보다는 후원사로 오픈소스 프로젝트를 활성화하는 MS사의 Teams를 사용하는 것이 낫지 않을까란 생각을 할 정도였습니다.
5. 처음 참가한 행사 치고는 성과가 생각보다 많이 나서 놀랍긴 하였음. 다음에 컨트리뷰톤(Contributon)행사가 추진되면 아마 같이 보조로 활동할 분을 선정하여 진행을 해야 할 것 같습니다. 혼자는 너무 힘들었음. 다음 행사 참여를 한다면 올해보다 더 활발하게 진행할 수 있게 고민을 해야겠습니다. 그리고, 많은 사람들에게 리브레오피스의 공헌(貢獻)/기여(寄與)/컨트리뷰션(Contribution)에 대하여 지속적인 관심을 가지는 방법에 대해서도 고민을 해야겠습니다. 이런 행사만 챙기면 컨트리뷰션은 반짝하고 끝날 것이 뻔하게 보이더군요.
6. 이 행사 내용을 토대로, 10월 15일~17일 3일간 열리는 openSUSE +LibreOffice 가상 컨퍼런스에서 발표자로 참여하는데, 해당 오픈소스 컨트리뷰톤 참여 내용을 전 세계에 공유할 예정.
gerrit에 SSH키 등록을 하였으면 ${HOME}/.ssh/config 파일 생성하거나 아님 기존 파일이 있으면 기존 파일에 에 아래와 같이 내용을 추가합니다
Host logerrit gerrit.libreoffice.org
IdentityFile /path/to/your/private-key
User YOUR_USERNAME_HERE
Port 29418
HostName gerrit.libreoffice.org
IdentityFile 속성에는 생성한 ${HOME}/.ssh/id_rsa를넣으면 됩니다. User 속성에는 gerrit에 등록된 id를 넣습니다.
이후, logerrit 실행을 해봅니다
$ ./logerrit test
There seems to be trouble. Please have the output of:
ssh -vvvv logerrit
at hand when looking for help.
일단 실행해보니, 우선 ssh -vvvv logerrit을 실행하라는군요
아래와 같이 실행해봅니다.
$ ssh -vvvv logerrit
테스트가 성공하면, SSH키에 대한 비밀번호 입력하라고 나오고, 입력이 완료되면 아래와 같은 메세지를 확인할 수 있습니다
**** Welcome to Gerrit Code Review ****
Hi {Your Name}, you have successfully connected over SSH.
Unfortunately, interactive shells are disabled.
To clone a hosted Git repository, use:
git clone ssh://{your user id}@gerrit.libreoffice.org:29418/REPOSITORY_NAME.git
debug2: channel 0: written 292 to efd 6
debug3: send packet: type 1
debug1: channel 0: free: client-session, nchannels 1
debug3: channel 0: status: The following connections are open:
#0 client-session (t4 r0 i0/0 o0/0 e[write]/0 fd 4/5/6 sock -1 cc -1)
debug3: fd 1 is not O_NONBLOCK
Connection to gerrit.libreoffice.org closed by remote host.
Connection to gerrit.libreoffice.org closed.
Transferred: sent 3928, received 2040 bytes, in 9.5 seconds
Bytes per second: sent 415.1, received 215.6
debug1: Exit status -1
이제, logerrit이 제대로 실행되는지 확인해봅니다
$ ./logerrit test
Enter passphrase for key '/home/${HOME}/.ssh/id_rsa':
Your gerrit setup was successful!
gerrit시스템 설정이 제대로 되었으면 위와 같이 나옵니다.
소스 커밋하기
저장소에 수정한 내용을 git commit으로 커밋합니다.
커밋한 소스코드를 리브레오피스 gerrit 소스코드 리뷰시스템에 전달하기
커밋된 내용을 저장소에 적용을 하기 위해서, gerrit소스코드 리뷰 시스템에 이제 전달해야겠죠?
이제, logerrit을 이용하여 gerrit 코드 리뷰시스템에 커밋한 소스코드를 제출합니다.
$ ./logerrit submit master
Enter passphrase for key '/home/${HOME}/.ssh/id_rsa':
오브젝트 나열하는 중: 96, 완료.
오브젝트 개수 세는 중: 100% (96/96), 완료.
Delta compression using up to 4 threads
오브젝트 압축하는 중: 100% (50/50), 완료.
오브젝트 쓰는 중: 100% (57/57), 8.84 KiB | 55.00 KiB/s, 완료.
Total 57 (delta 45), reused 16 (delta 5), pack-reused 0
remote: Resolving deltas: 100% (45/45)
remote: Counting objects: 119475, done
remote: Processing changes: refs: 1, new: 1, done
remote: commit 6821939: warning: subject >50 characters; use shorter first paragraph
remote:
remote: SUCCESS
remote:
remote: https://gerrit.libreoffice.org/c/core/+/97344 Hardcode script for "Noto" CJK fonts & add USCRIPT_JAMO [NEW]
remote:
To ssh://logerrit/core
* [new branch] HEAD -> refs/for/master
이제, LibreOffice의 gerrit 코드 리뷰 시스템 설정 및 소스코드 제출 방법을 확인해보았습니다.
코로나-19(COVID-19) 전염병 대유행에 둘러싼 불확실성과 이 대유행으로 여행, 컨퍼런스 계획, 물류 및 참석자들이 행사에 올 가능성에 대한 영향으로 실제 오프라인 컨퍼런스 행사를 온라인 행사로 변경을 하게 되었습니다.
이 컨퍼런스를 온라인으로 변경하는 것은 좋은 소식이며, 행사주최를 하는 사람들은 행사 기간 동안 사교 활동을 원하는 사람들을 위한 통찰력 있는 발표, 기술적인 프레젠테이션 및 회의로 가득찬 훌륭한 컨퍼런스를 제공하려고 생각하고 있습니다. 비디오 컨퍼런스 도구를 이용하여, 참석자들은 오픈수세(openSUSE)와 리브레오피스(LbreOffice)의 신 기술을 배우고 개발자와 채팅으로 질문할 기회를 갖게 됩니다. 마케팅(Marketing), 디자인(Design), QA 및 기타 주제과 관련된 커뮤니티는 온라인으로 만나 아이디어를 포착하고 교환할 수 있습니다.
발표제안(Call for Papers; CfP)는 7월 21일까지 발표를 계속 제출할수 있습니다. 발표제안(CfP)의 제출은 https://events.opensuse.org 의오픈소스 이벤트 관리자(OSEM; Open Source Event Manager) 인스턴스에서 계속 진행됩니다. 제출물 모음은 OSEM도구로 구성하지만, 온라인 행사는 최근에 openSUSE Virtual Summit — https://opensuse.reqmagic.com 에서 사용된 것과 같은 다른 웹사이트에서 진행됩니다. 이 플랫폼은 파이어폭스(Firefox), 크로미움(Chromium) 및 여러 오픈소스 브라우저에서 동작합니다. 이 소프트웨어는 다양한 API(유투브[YouTube], 돌비[Dolby]등등)을 사용하여 플러그인이 필요 없는 전적으로 HTML5기반의 웹 기반 서비스를 지원합니다.
컨퍼런스의 일정과 시간 할당에 대한 더 많은 정보는 곧 전달할 예정입니다.
트랙(Tracks)
다음은 오픈수세(openSUSE)에 관련한 발표를 제출할때 선택할 수 있는 트랙 목록입니다.
a) 오픈수세(openSUSE) b) 오픈소스(Open Source) c) 클라우드와 컨테이너 기술(Cloud and Containers) d) 임베디드(Embedded)
다음은 리브레오피스(LibreOffice)에 관련한 발표를 제출할때 선택할 수 있는 트랙 목록입니다:
a) 개발(Development), APIs, Extensions, Future Technology b) 품질보증(Quality Assurance) c) 현지화(Localization), 문서화(Documentation), 모국어 프로젝트(Native Language Projects) d) LibreOffice에 마음을 끌게 하는 것: 사용 편의성, 디자인, 접근성 등 e) 개방 문서 형식(오픈 도큐먼트 포맷, Open Document Format) , 문서 해방(Document Liberation), 호환성 및 상호운용성(Interoperability) f) LibreOffice의 옹호, 촉진, 홍보, 마케팅
발표는 15분의 짧은 발표(short talk), 30분의 일반 발표(normal talk) 및 60분의 워킹그룹(workgroup session) 세션을 선택할수 있습니다. 조직위원회는 온라인 컨퍼런스 중에 참석자의 참여를 유지하기 위해서 발표를 단축시켜야 한다고 생각했습니다. 이 변경사항은 휴식 시간, 소셜 비디오 세션 및 각각 발표가 끝난 후 질의 응답에 대한 추가 시간에 대한 조정을 하는데 도움이 됩니다.
사용할 라이브 플랫폼을 사용하면 제한된 대역폭으로 접속하는 발표자가, 라이브 발표를 원하지 않는다면, 녹화한 발표를 실행시키는 것을 허용합니다. 발표자는 동영상을 시스템에 내장된 중지, 되감기, 빨리 감기 등으로 제어하는 것이 가능합니다.
소규모 회의(Mini-summits)
오픈수세 + 리브레오피스(openSUSE + LibreOffice) 조직위원회는 지역 언어로 회의와 함께 진행할 소규모 온라인 회의를 조직하는 거에 관심이 있는 커뮤니티 회원의 의견을 즉시 듣고 싶습니다. 이 아이디어는 소규모 온라인 회의가 리브레오피스 스페인어 커뮤니티에서 조직하는 정기 월례 행사가 열리는 것 처럼, 커뮤니티의 행사를 조직하는데 기꺼이 도움을 줄 수 있는 커뮤니티를 위해 많은 청중들에게 다가갈수 있을 것입니다. 오픈수세 + 리브레오피스(openSUSE + LibreOffice) 컨퍼런스는 영어로 진행되지만, 소규모 온라인 회의는 지역 언어로 진행할 것입니다.여러 나라의 활발한 커뮤니티에서 사용하는 언어(예를들어, 프랑스어, 독일어, 스페인어)를 사용하는 것에 대한 노력은 모든 자원봉사자들을 참여하기 위해서 조정을 해야합니다. 관심 있는 분은 제목으로 “openSUSE + LibreOffice Conference Mini-Summit”을 작성후, 다음의 이메일 주소 ddemaio@opensuse.org 로 메일 전달해주시기 바랍니다.
하나 이상의 주제와 관련되도록 발표제안을 작성하십시요. 예를들어, 발표가 보안 또는 데스크탑인 경우, openSUSE에서 응응프로그램 설치법이나 데모 시연등을 포함하는 것이 좋습니다. 발표에서 참석하는 사람이 무엇을 배울지 분명하게 작성하십시요. 예를들어, 발표에서 주요 기술 및 소프트웨어의 소개 및 발표의 주요 주제 등입니다.
libreoffice디렉토리로 이동하였으면 아래와 같이 빌드환경 설정을 해주는 스크립트를 아래와 같은 명령어로 실행하였습니다.
./autogen.sh --with-locales="ko" --with-vendor="me" --disable-werror --with-build-version="Built by me" --with-lang="ko" --enable-dbgutil
빌드 실행시 아래와 같이 오류가 나오면 libkrb5-dev 패키지를 설치햅니다
checking for library containing krb5_sendauth... no
configure: error: could not find function 'krb5_sendauth' required for Kerberos 5
Error running configure at ./autogen.sh line 299.
libkrb5-dev 패키지는 아래와 같은 명령어로 설치합니다.
$ sudo apt install libkrb5-dev
설치후, 다시 빌드 환경 스크립트 autogen.sh를 실행해줍니다.
****************************************************************************
To build, run:
/usr/bin/make
To view some help, run:
/usr/bin/make help
After the build has finished successfully, you can immediately run what you built using the command:
instdir/program/soffice
If you want to run the smoketest, run:
/usr/bin/make check
*************************************
* WARNING : no suitable nasm (Netwide Assembler) found for internal libjpeg-turbo
빌드 환경이 구성되었으면 make로 빌드를 해줍니다.
빌드는 2013년도에 생산된 i5 듀얼코어 4세대 하스웰+램16GB이면 아마 반나절 정도 오랫동안 걸릴겁니다. 자기전에 빌드하고 컴퓨터를 켜보면 빌드가 되었을겁니다.
윈도우의 WSL2에 설치한 리눅스 배포판에서 리브레오피스(Linux)를 실행하여 한글 정상적으로 나오게 하는 부분은 추후에 추가하여 공유를 하겠습니다.
실행 후, 빌드에 대한 옵션이 제대로 들어갔는지 확인해봅니다.
역시, 위에 벤더이름(me)가 잘 들어갔습니다.
상세하게 Build version 설정을 확인해보니 "Built by me"옵션도 제대로 들어갔구요. 그러나 로케일은 우분투(Ubuntu)기본 설치할때 들어가는 C.UTF-8이 들어가는 것이 아쉽더군요.
간단하게 실 사용을 해보겠습니다.
MS사의 워드격인 리브레오피스 라이터(Writer)에서 영어낱말은 잘 작성되는데, WSL2의 내부 Xwindow글꼴 설정에 한국어 설정한 것이 없으니 한글이 깨져나옵니다. WSL2의 기능에서 배포판에서 사용자 언어에 맞게 설정이 안되고, Xwindow설정에서도 당연히 사용자 언어에 맞게 설정되지 않은 문제라보니 이건 아쉽군요.
WSL2의 우분투(Ubuntu)에서 실제로 리브레오피스(LibreOffice)를 빌드 및 실행을 해보았습니다. 실행후 가볍게 사용해보니 불안정한 문제는 없고 리눅스위에 실행한 것과 동일한 경험을 제공하였습니다. 다만 "한글"이 나오지 않은건 "한국어" 글꼴 렌더링 설정이 안되어서 입니다. 뭐 기본 로케일이 C.UTF-8이니 Xwindow설정에 한글 글꼴 관련 렌더링이 없어 한글 당연히 깨집니다.
MS사의 리눅스(Linux)지원 행보를 보면, 예전과 다르게 오픈소스 친화적으로 변하면서 여러 리눅스에서 돌아가는 응용프로그램을 윈도우에서 실 사용할수 있게 지원함을 알수 있습니다.
여기서 좀 더 확장해가면 MS사가 윈도우 자체 기술은 가지되, 실제 커널 부분을 리눅스(Linux)로 옮겨서 리눅스용 응용프로그램을 품지 않을까란 생각이 들긴 하더군요. (이건 저의 뇌내 망상이라 흘려 들으시기 바랍니다)
앞으로 WSL2가 발전되어 윈도우 언어에 맞게 리눅스 설정이 자동으로 되면 리눅스 개발도 윈도우에서 하는 재미있는 상황이 생기지 않을까란 생각을 해봅니다.
WSL2에 GPU지원한다길래, WSL2에서 리브레오피스(LibreOffice)를 실행할수 있을까에 대한 궁금증으로 시작한 주말의 삽질기는 여기까지입니다.
실제 사용이 가능한지는, 제가 직장인이라 윈도우를 집에서 항상 쓸일이 없어서, 다음 주말에 실행해봐야겠군요. (당연 Xwindow에 한글 글꼴 설정 및 입력 관련으로 삽질을 해봐야 할것 같구요.) ㅎㅎ
제가 2011년 이후부터 주로 Mac OSX와 openSUSE 랩탑 2개로 집에서 작업하다보니, 집에서 윈도우를 네이티브(Native)로 실사용을 거의 오랜만(9~10년)에 해보았습니다. :)
안녕하새요. 질문이 있어요.
어떻게 이 repository로 commit할 수 있어요?
https://gerrit.libreoffice.org/admin/repos/WhatCanIDoForLibreOffice
logerrit없어요. 모르겠어요~😭
이본어 번역을 commit하고 싶어요...😢
Translated into English
Hello, I have a question.
How to commit the files on the repository, WhatCanIDoForLibreOffice
https://gerrit.libreoffice.org/admin/repos/WhatCanIDoForLibreOffice
I have no logerrit file. I don't know~😭
I want to commit the Japanese translation.
------
I corrected his Korean writing.
안녕하세요. 질문이 있습니다.
어떻게 이 repository로 commit할 수 있어요?
https://gerrit.libreoffice.org/admin/repos/WhatCanIDoForLibreOffice
저는 logerrit이 없어요. 모르겠어요~😭
일본어 번역을 commit하고 싶어요...😢
He want to add Japanese translation on "What Can I Do For LibreOffice" repository, controlled by TDF Gerrit code review system.
I added Korean translation on the "What Can I Do For LibreOffice" Homepage.
I summarize the log to add add my translation(Korean) on "What Can I Do For LibreOffice" repository. (It can also apply to translation for CJK languages such as Japanese, Chinese[Traditional, Simplified], etc.)
For the first time, You need to set yourself up LibreOffice gerrit code review system.
Below is Detail contents about Setup yourself up for gerrit.
And then, add /locales/[your-language code].inifile and modify index.html and locales.ini files.
I'm Korean and My mother tongue is Korean, so My Language's ISO Language code is ko-KR. So, I added ko-kr.inifile.
(For example, If you are Japanese, You can add Japanese code ja and add ja.inifile. Also you are Simplified Chinese speaker, You can add zh-cn.ini file for ISO's Simplified Chinese Language code zh-CN, you are Traditional Chinese speaker, You can add zh-tw.ini file for ISO's Simplified Chinese Language code zh-TW.)
With this opportunity, I would like East Asian developers to collaborate on various developments and uses on LibreOffice.
Collaboration
Korean: 협업(協業)
Japanese: 協力, コラボレーション
Simplified Chinese: 合作/协作
Traditional Chinese: 協作/合作
우리말로 쓴 글
2020년 6월 17일 수요일.
일본의 문서재단(The Document Foundation)회원인 노가타 준(Jun Nogata, 野方純)님께서 페이스북의 "리브레오피스 (한국어)"채널에 글을 올리셨습니다.
안녕하새요. 질문이 있어요.
어떻게 이 repository로 commit할 수 있어요?
https://gerrit.libreoffice.org/admin/repos/WhatCanIDoForLibreOffice
logerrit없어요. 모르겠어요~😭
이본어 번역을 commit하고 싶어요...😢
(여기서는 일본분의 글을 아래와 같이 어법에 맞게 고쳐보았습니다.)
안녕하세요. 질문이 있습니다.
어떻게 이 repository로 commit할 수 있어요?
https://gerrit.libreoffice.org/admin/repos/WhatCanIDoForLibreOffice
저는 logerrit이 없어요. 모르겠어요~😭
일본어 번역을 commit하고 싶어요...😢
저는 "What Can I Do For LibreOffice" 홈페이지에 한국어 번역을 하였습니다.
저는 "What Can I Do For LibreOffice"의 저장소에 한국어 번역을 추가한 기록을 다음과 같이 정리하였습니다. (이 글을 참조로 하여 일본어[日本語], 중국어[번체繁體, 간체简体] 등등 동아시아 언어 사용사는 사람이 "What Can I Do For LibreOffice"의 저장소에 번역을 올릴 수 있습니다.)
그리고, /locales/[your-language code].ini 파일을 추가 및 index.html 과 locales.ini 파일을 수정합니다.
저는 한국인이며, 모국어가 한국어입니다. 그래서 한국어의 ISO언어 코드는 ko-KR입니다. 그래서 저는 ko-kr.ini파일을 추가했습니다.
(예를들어, 일본어를 사용하는 일본사람이라면, 일본어 언어 코드가 ja 이니 ja.ini파일을 추가하여 번역을 적용할 수 있습니다. 또한, 간체 중국어를 사용하는 사람이라면 간체 중국어에 해당하는 언어 코드가 zh-CN 이니 zh-cn.ini을 추가하여 번역을 적용할 수 있습니다. 그리고 번체 중국어 사용하는 사람이라면 번체 중국어에 해당하는 언어코드가 zh-TW 이니 zh-tw.ini파일 추가하여 번역을 적용할 수 있습니다.)
이 글을 계기로, 여러가지 개발 및 사용관련으로 CJK 지역의 협업(協業), (Japanese: 協力, Simplified Chinese: 合作/协作, Traditional Chinese: 協作/合作, English: Collaboration)을 이루었으면 합니다. :)
IBM Plex Sans
IBM Plex Serif
IBM Plex Sans Condensed
IBM Plex Mono
This includes some changes to the vertical metrics of the font files as well as a few changes to the available glyphs.
Breaking
Changed IBM Plex Sans Condensed to IBM Plex Sans Cond, this won't impact web applications, but could for other third party applications
New
IBM Plex Sans KR (Korean) ```
링크에서 글꼴을 다운로드 받아 Mac에 설치하였습니다.
이후, Mac의 LibreOffice에 Plex글꼴을 사용해보았습니다.
IBM Plex 글꼴설정하고 한글을 입력해보니 한글이 제대로 표현되는 것 같습니다.
그러나 한자(漢字, Chinese Character, Hanja; Korean name for the Chinese characters)의 경우 한국어에서 사용하는 KSC5601에 등록된 한자 4888개의 글자 범위 이외 일본어, 중국어[번체,간체] 한자입력시 글꼴이 □로 찍혀 나옴을 확인함.
예를 들어 "Translation"에 대한 한자를 테스트 해보았습니다.
Korean: 飜譯 번역 "beon yeok"
Traditional Chinese: 翻譯 "fānyì" ㄈㄢㄧˋ
Simplified Chinese: 翻译 "fānyì"
Japanese: ほんやく"honyaku"
아래는 한자(漢字)에 대한 각 나라별 코드 포인트(code point)를 정리하였습니다.
Korean: 飜(U+98DC)譯(U+8B6F)
Traditional Chinese: 翻(U+7FFB)譯(U+8B6F)
Simplified Chinese: 翻(U+7FFB)译(U+8BD1)
Japanese 翻(U+7FFB)訳(U+8A33)
옛날 KSC5601에 등록된 한국어의 한자 목록에 있는 한자 이외, 중국어 및 일본어에서 사용하는 한자는 □로 찍혀 나옴을 그림에서 확인하였습니다.
그러나, 오픈오피스(openOffice)최신버전에서는 IBM Plex글꼴에 포함이 안된 글자(code point)등에는 fallback 처리를 하여 렌더링시 글씨가 보이도록 처리하는 것 같더군요.
아마, openOffice에서 LibreOffice로 전환을 하면서 CJK관련 이슈를 제대로 모르고 개발된 느낌이듭니다.
이 부분은 Fallback font이슈 관련으로 조사 후에 issue등록을 해야할 것 같습니다.
아마 IBM Plex 의 중국어(Chinese) 및 일본어(Japanese)는 올해 말이나 내년쯤에 나올 것 같습니다.