Maybe the data/ files get slower over time and need to be deleted once in a while, maybe it's slow because it indexes 3 branches at the same time. We should be able to improve it either way.
Would you like me to take over maintenance of that OpenGrok server? On Thu, Sep 24, 2026 at 9:29 PM <[email protected]> wrote: > > Am 24.09.2026 um 20:21 schrieb Damjan Jovanovic: > > From what I see, OpenGrok indexing is very quick, even on my 10 year > old PC > > with 16 GB RAM. And we could trigger it less often, eg. daily. > The server needs hours. lol. > > > > It isn't only C++ that OpenGrok indexes, but many other languages. I used > > it to search for the "portable" PKGFORMAT, and tried to understand how it > > is processed and what it means, which involved Perl code. > > > > > > > > On Thu, Sep 24, 2026 at 3:44 PM <[email protected]> wrote: > > > >> i am sorry. I did not care much about the server. One of the first > >> things i depriorized. > >> > >> And it seems that the server does not have the CPU power to deal with > >> the re-indexing that is triggered all the time because we really moving > >> now. > >> > >> I have added a language server Protocol tool to bazel-migration. it > >> produces an xml file which resolves the uno calls in our code. > >> > >> Sadly the C++ resolution does not work on my experimental IDE (i tried > >> lapce). But if i create maybe one that can do this too, there is no need > >> for opengrok at all? > >> > >> Am 24.09.2026 um 15:26 schrieb Damjan Jovanovic: > >>> Hi > >>> > >>> I've lost hope in http://opengrok.openoffice.org/ working when I need > >> it, > >>> and got OpenGrok running on my PC instead. > >>> > >>> Also recently FreeBSD finally got Podman working, which now supports > >>> FreeBSD upstream, is compatible with Docker images, and able to run > Linux > >>> Docker containers at full performance using its Linux compatibility > layer > >>> :-). > >>> > >>> After some exploration, I got it working quite easily: > >>> > >>> 1. Make these directories: > >>> /opt/opengrok/data - empty > >>> /opt/opengrok/etc - empty > >>> /opt/opengrok/openoffice-git - clean working tree with the branch you > >> want > >>> (eg. trunk) checked out > >>> > >>> 2. Copy the XML below and paste it as > >>> /opt/opengrok/etc/opengrok_custom_config.xml. It was derived from > >>> images/opengrok/opengrok_custom_config.xml in > >>> https://gitbox.apache.org/repos/asf/openoffice-devtools.git but > changed > >> to > >>> use 4 spaces per tab (in a way that works): > >>> > >>> <?xml version="1.0" encoding="UTF-8"?> > >>> <java version="1.8.0_121" class="java.beans.XMLDecoder"> > >>> <object class="org.opengrok.indexer.configuration.Configuration" > >>> id="Configuration0"> > >>> <void property="projects"> > >>> <void method="put"> > >>> <string>openoffice-git</string> > >>> <object class="org.opengrok.indexer.configuration.Project"> > >>> <void property="name"> > >>> <string>openoffice-git</string> > >>> </void> > >>> <void property="path"> > >>> <string>/openoffice-git</string> > >>> </void> > >>> <void property="tabSize"> > >>> <int>4</int> > >>> </void> > >>> </object> > >>> </void> > >>> </void> > >>> <void id="IgnoredNames0" property="ignoredNames"> > >>> <void id="IgnoredFiles0" property="ignoredFiles"> > >>> <void property="items"> > >>> <void method="add"> > >>> <string>*.log</string> > >>> </void> > >>> <void method="add"> > >>> <string>*.tmp</string> > >>> </void> > >>> <void method="add"> > >>> <string>*.xls</string> > >>> </void> > >>> <void method="add"> > >>> <string>*.jpg</string> > >>> </void> > >>> <void method="add"> > >>> <string>*.ods</string> > >>> </void> > >>> <void method="add"> > >>> <string>*.otp</string> > >>> </void> > >>> <void method="add"> > >>> <string>*.ods</string> > >>> </void> > >>> <void method="add"> > >>> <string>*.odt</string> > >>> </void> > >>> <void method="add"> > >>> <string>*.zip</string> > >>> </void> > >>> <void method="add"> > >>> <string>*.txt</string> > >>> </void> > >>> </void> > >>> </void> > >>> </void> > >>> </object> > >>> </java> > >>> > >>> > >>> 3. podman run \ > >>> --name opengrok-aoo \ > >>> -d \ > >>> --restart=unless-stopped \ > >>> -v > >>> > >> > /opt/opengrok/etc/opengrok_custom_config.xml:/opengrok/etc/opengrok_custom_config.xml > >>> \ > >>> -v /opt/opengrok/openoffice-git:/opengrok/src/openoffice-git \ > >>> -v /opt/opengrok/data:/opengrok/data \ > >>> -v /etc/localtime:/etc/localtime:ro \ > >>> -e READONLY_CONFIG_FILE=/opengrok/etc/opengrok_custom_config.xml \ > >>> -e SYNC_PERIOD_MINUTES=0 \ > >>> -e NOMIRROR=1 \ > >>> --network=host \ > >>> docker.io/opengrok/docker:latest > >>> > >>> On FreeBSD you also need: > >>> --os linux > >>> -v /compat/linux/proc:/proc > >>> to enable Linux compatibility, and mount linprocfs from the host's > >>> /compat/linux/proc to the container's /proc. > >>> > >>> Note how: > >>> - you can replace "podman" with "docker", they use the same command > line > >>> options. > >>> - mounting into /opengrok/data persists data across restarts. > >>> - mounting /etc/localtime is for timezone. > >>> - I needed "--network=host" but "-p 8080:8080" should also work, still > >>> investigating. > >>> - the syncing and mirroring could also be left on. > >>> - podman wants the full URL docker.io/opengrok/docker:latest instead > of > >>> opengrok/docker:latest, it's also more secure that way. > >>> - you can monitor logs with "podman logs -f opengrok-aoo". > >>> > >>> It works remarkably well and requires no further setup, just visit > >>> http://localhost:8080 and start using it :-). The project will only > >> become > >>> visible after indexing finishes, which took about 15 minutes after > first > >>> start for me. > >>> > >>> If it takes a long time to start indexing, that's because it uselessly > >>> tries to contact a Perforce server ( > >>> https://github.com/oracle/opengrok/discussions/4572). It's possible to > >>> shell into the container and uninstall the Perforce apt packages to > skip > >>> that, as described on that bug report. > >>> > >>> Don't use your main working tree because it will index binaries and > >>> generated files, and chown all your files to user:group 1111:1111. Use > a > >>> separate, clean working tree, with no generated files. > >>> > >>> It's also MUCH faster locally :-), due to shorter round-trip times. > >>> > >>> Regards > >>> Damjan > >>> > >> --------------------------------------------------------------------- > >> To unsubscribe, e-mail: [email protected] > >> For additional commands, e-mail: [email protected] > >> > >> > > --------------------------------------------------------------------- > To unsubscribe, e-mail: [email protected] > For additional commands, e-mail: [email protected] > >
