Ich bin ja immer noch auf der Suche nach einer ansprechenden Selbstgehosteten Photosoftware. Nachdem Zenphoto fast schon das Rennen machte, bin ich nun doch auf Piwigo umgeschwenkt.
Das Einlesen von hochgeladenen Bildern ist bei Piwigo einfach mal um Welten schneller. Davon abgesehen gibt es viel mehr Plugins, Mobile Apps und Themes. Was letztere angeht, ist mir da zwar bisher noch kein so richtig geiles untergekommen – aber minimalistisch und auf die Bilder fokussiert ist ja auch nicht schlecht.
Ich experimentiere momentan mit einer neuen Photoalbum-Software. Bisher hatte ich Gallery3 im Einsatz, was im Grunde auch alle meine Wünsche erfüllte. Ok, ein moderneres Theme wäre schon schön, aber der Grund für die Ablösung ist nun, dass das Projekt nicht mehr weiter entwickelt wird. Es wird also auch keine Security-Updates mehr geben.
Leider sieht die Open-Source-Landschaft in diesem Bereich nicht so rosig aus. Gallery3 war da schon sehr weit fortgeschritten. Schlussendlich bin ich bei Zenphoto gelandet, bin aber auch noch nicht ganz von Piwigo weggerückt.
Piwigo scheint technisch besser zu sein, was ich an der Anzahl Plugins und der Geschwindigkeit festmache. Dafür hat Zenphoto ein sehr tolles Theme: libratus.
Die Situation ist wie gesagt recht bedauerlich. An den Komfort und die schöne Bedienung von flickr, picasa oder google+ werden die selbst-gehosteten Lösungen wohl nie heran reichen. Aber das nehme ich dann doch lieber in Kauf, als meine Bildrechte alle (mehr oder weniger) abzugeben.
Wer noch einen Tipp für eine schöne selbt-gehostete Photo-Software hat, die hoffentlich nicht so bald in der Entwicklung stehen bleiben wird – her damit.
Nach einem Update der Diskstation-Software sowie einem dazugehörigem Update des Mac Cloud Station Clients wollte ich die neuen Möglichkeiten auch nutzen. Die bestehenden Einstellungen ließen sich erst mal nicht wie gewünscht anpassen.
Ein neu erstellter Satz Synchronisationsregeln lassen sich schnell erstellen. Anschließend stoppte der Vorgang aber immer mit der seltsamen Fehlermeldung „Status nicht normal“.
Nach etwas herumprobieren ließ sich das nur folgendermaßen beheben:
Cloud Station Client beenden
Terminal öffnen
Folgenden Befehl ausführen:
rm -rf ~/.CloudStation
Auf der DiskStation in meinem homes Verzeichnis das CloudStation-Verzeichnis löschen (siehe unten)
Cloud Station Client starten
Einstellungen erneut vornehmen
Werbung
Punkt 4. habe ich vorgenommen, da ich einen komplett neuen Satz an Dateien abgleichen will und gut auf das vorherige Backup verzichten konnte.
Jetzt läuft das Backup – und hoffentlich ist das nur beim ersten Abgleich alles so langsam.
Update
Mich hat heute diese Mail erreicht:
Nachdem ich wie Sie bei Punkt das CloudStation-Verzeichnis gelöscht habe merkte ich, dass CloudStation in beide Richtungen synchronisiert!
Somit war nach dem ersten Sync auch die zu sichernde Quelle gelöscht.
Bitte bei solchen Operationen am offenen Herzen genau aufpassen, was man macht, und niemals das einzige Backup löschen! Wie es zu dem beschriebenem Verhalten kommen konnte, ist mir rätselhaft. Ich kann nur betonen, dass das beschriebene Verfahren in meinem Setup das Problem gelöst hat.
Für meine Domains kann ich beliebig viele E-Mail-Adressen einrichten, und diese in ein Postfach bündeln – oder auch davon ausnehmen und blockieren. Das mache ich mir zunutze, wenn ich mich auf einer neuen Seite registriere. Dann verwende ich eine neue E-Mail-Adresse, die einen für mich eindeutigen Namen für die Seite hat.
Wenn dann mal wieder eine Seite gehackt wurde, wie zum Beispiel das Nokia Developer Forum, und ich dann wie heute Phishing-Mails mit dubiosen Anhängen an diese Adresse erhalte, kann ich die Adresse einfach dem Postfach „Feuertonne“ zuweisen, und habe meine Ruhe.
Meine angeblich immer so sicher verwahrten Nutzerdaten wurden in den letzten Jahren übrigens schon mehrfach durch Hacker-Angriffe auf große und kleinere Sites geklaut, davon mindestens auch einmal inklusive der Kreditkartendaten, die eigentlich gar nicht gespeichert werden dürften. Und das sind nur die Fälle, die bekannt wurden. Oft bemerken es die Betreiber selber nicht, bis sie jemand darauf aufmerksam macht, dass auf einmal Spam an eine Adresse kommt, die eigentlich kein Dritter kennen dürfte.
Überlegt euch demnach lieber zweimal, wo ihr eure Lieblings-Mailadresse überall hinterlasst. Dass man ein extra Passwort für jede Anmeldung verwendet, sollte mittlerweile ja eh klar sein, oder?
Im heutigen Fall war im Zip übrigens eine ganz primitive HTML-Datei, die wiederum dazu auffordert, seine E-Mail mitsamt Passwort einzugeben. Ganz billiger Trick also.
Damit ist mir dieses Land noch sympathischer geworden!
A major new patent bill, passed in a 117-4 vote by New Zealand’s Parliament after five years of debate, has banned software patents.
The relevant clause of the patent bill actually states that a computer program is „not an invention.“ Some have suggested that was a way to get around the wording of the TRIPS intellectual property treaty, which requires patents to be „available for any inventions, whether products or processes, in all fields of technology.“
Adobe has released a monospaced font specifically intended for displaying source code, called Source Code. You can download it on SourceForge, and I will show you how to use it in your favorite IDE on your favorite OS.
2) Open a terminal and enter the following commands to unzip the font, and recreate your font cache:
mkdir ~/.fonts
cd ~/Downloads
unzip SourceCodePro_FontsOnly-1.010.zip -d ~/.fonts/
fc-cache -f
3) Restart IntelliJ, open the settings (CTRL-ALT S), and filter for „font“
4) Create a new font scheme by clicking „Save as…“, if you don’t already have a scheme
5) Select „Source Code Pro“, and you’re finished.
So far I like it just a little bit more than the default „DejaVu Sans Mono“, but enough to keep using it. I really like how they used a very minimal design for the lower case i, and that there is a highly noticeable difference between 0 and O.
The blog entry by Paul goes into a lot of detail on what requirements he wanted to adress with his design on a font specifically for source code.
Ein SSH-Zugang ist für die Administration des Servers unerlässlich. Gleichzeitig bedeutet ein unsicherer Zugriff die größte Gefahr. Natürlich kann man argumentieren, dass mit einem sicheren Passwort schon sehr viel getan ist, hier soll noch ein wenig darüber hinaus getan werden.
Was die Distribution angeht habe ich mich für Ubuntu Server 8.04 entschieden. Ich arbeite am Desktop schon länger mit Ubuntu, und habe auch sonst meist mit Debian-basierten Systemen zu tun gehabt. Mit Suse oder CentOS komme ich zwar auch klar, aber so richtig warm geworden bin ich mit denen nie. Der Longterm-Support von Canonical ist von persönlichen Präferenzen abgesehen aber auch ein wichtiges Argument.
Als virtuelle Maschine verwende ich die kostenlose VirtualBox 2.1. Mit dieser Version wurde zu VMware weiter aufgeholt, insbesondere ist die Netzwerk-Konfiguration bedeutend einfacher geworden.
Ohne besonderen Grund und wie sich schnell herausstellte auch eher unbedarft änderte ich gerade in meiner pom.xml die verwendete log4j-Version von 1.2.14 auf 1.2.15. Keine große Sache sollte man meinen, doch bei der Aktualisierung des Projektes fielen mir dann schon die Fehlermeldungen auf:
[WARNING] An error occurred during dependency resolution.
Failed to retrieve com.sun.jmx:jmxri-1.2.1
Caused by: Unable to download the artifact from any repository
Try downloading the file manually from the project website.
Eclipse monierte dann auch prompt einen fehlerhaften Build Path. Offenbar hatten sich da einige Abhängigkeiten geändert. Warum das so ist, ist mir nicht klar – im Changelog findet sich da nichts erhellendes. JMX-Unterstützung scheint es schon länger zu geben.
Ärgerlich ist halt, dass diese Abhängigkeit in keinem meiner vier Repositories gefunden wurde. Und Bibliotheken manuell in seine lokale Sammlung aufzunehmen ist sehr nervig, vor allem wenn man eigentlich gar nicht weiß, wozu das ganze. Ist mir aber mit Sun-Bibliotheken schon öfter passiert.
Auf der Suche nach einer besseren Lösung lud ich mir erst mal log4j direkt herunter, und analysierte dessen pom.xml. Daraus wurde ersichtlich, dass es ein Maven Repository auf java.net gibt, was mir bisher nicht bekannt war. Da finden sich zwar nicht die vermissten JMX-Bibliotheken, aber offenbar alle sonstigen Sun-Bibliotheken, die in den Open-Source-Repositories immer fehlen. Tollerweise funktioniert nicht mal ein mvn install mit dem heruntergeladenem log4j tarball.
Einziger Ausweg für mich aus dieser JAR-Hölle: wieder zurück zu 1.2.14. Ich werde nichts vermissen, außer der Zeit, die mir diese eigentlich kleine Änderung gestohlen hat.
Man biete einen Newsletter an, z.B. den von Dr. Web.
Als Absender stellt man eine feste Adresse ein, z.B. bmail (at) drweb (punkt) de. Die Empfänger können so in ihrem Mailprogramm einen entsprechenden Filter einrichten, der meinetwegen alle Newsletter in einen gemeinsamen Ordner verschiebt.
Warten, bis man ganz viele Abonnenten hat.
Nun ändert man diese Absendeadresse, z.B. auf bmail (at) drwebnewsletter (punkt) de. Geschafft! Der Filter greift nicht mehr. Entweder landet der Newsletter jetzt direkt im Spam, oder man hat einen Abonnenten verärgert, da der Newsletter ungefiltert im Posteingang landet.
Man sieht, auch Webwork-Spezialisten machen nicht immer alles richtig. Ich habe meinen Filter jedenfalls angepasst – ist ja doch meistens interessant, was der Onkel Doktor so zu schreiben hat. Und nach fast 10 Jahren entwickelt sich auch zu einem Newsletter eine gewisse Treue.
Update: mittlerweile wurde der Dr. Web Newsletter komplett eingestellt. Schade darum, ich hatte ihn immer gern gelesen, und das von fast Anfang an. Zum Glück gibt es noch ein Archiv und als Alternative ja schon länger das Weblog.
Am Donnerstag erschien die neueste Version 7.04 Feisty Fawn der freien Linux-Distribution Ubuntu. Nachdem ich vor zwei Jahren bereits einmal komplett auf Ubuntu umgestiegen war (mit dem ergrautem Igel), und seitdem jede Version zumindest mal ausprobiert habe, bin ich mal wieder so weit für einen Neuversuch. Gestern lief auf Arte auch noch der Film "Die Silicon Valley Story", der jedem anständigen Menschen die Lust auf Windows oder Mac vergällen kann. Windows XP kam ja vor einem Jahr mit dem neuen PC, und verrichtet seitdem seine Arbeit mehr oder weniger gut, im großen und ganzen jedenfalls zufriedenstellend. Aber ein neues, modernes OS wäre schon mal was feines. Vista habe ich mit der RC1 auch noch parallel drauf; das hat mir zwar besser gefallen als erwartet, aber auch nicht wirklich begeistert. Da diese Version ab Juni nicht mehr funktionieren wird, kann die Partition auch für den Datenaustausch mit Linux genutzt werden. Meine Ansprüche an Ubuntu sind eigentlich recht klar:
Meine vorhandene Hardware soll vollständig genutzt werden können. Also zwei Bildschirme, alle Maustasten, Multimediatasten, Scanner, Drucker, Handy etc.
Ich will am besten nie zurück nach Windows booten müssen, weil es irgendeine Software für Linux nicht gibt, oder die vorhandenen Alternativen nicht gut genug sind.
Meine E-Mails und sonstigen Daten sollen hinübergerettet werden.
Die Oberfläche soll modern sein. Also angenehme Farben, sinnvolle 3D-Effekte, Sidebar und Widgets.
Mit ist klar, dass das alles nicht supereinfach wird. Ich bin da durchaus geduldig. Aber klar, je mehr davon out-of-the-box läuft, desto besser. Gerade die ersten beiden Punkte konnte mir aber Vista zum Beispiel nicht erfüllen.
I just got a weird NullPointerException using Hibernate JPA. When creating my EntityManagerFactory, the usual logging started to appear and finished in stacktrace containing this:
Exception in thread "main" java.lang.NullPointerException
at org.hibernate.hql.ast.ParameterTranslationsImpl.getNamedParameterExpectedType(ParameterTranslationsImpl.java:63)
at org.hibernate.engine.query.HQLQueryPlan.buildParameterMetadata(HQLQueryPlan.java:296)
at org.hibernate.engine.query.HQLQueryPlan.(HQLQueryPlan.java:97)
at org.hibernate.engine.query.HQLQueryPlan.(HQLQueryPlan.java:56)
at org.hibernate.engine.query.QueryPlanCache.getHQLQueryPlan(QueryPlanCache.java:72)
at org.hibernate.impl.SessionFactoryImpl.checkNamedQueries(SessionFactoryImpl.java:400)
at org.hibernate.impl.SessionFactoryImpl.(SessionFactoryImpl.java:351)
at org.hibernate.cfg.Configuration.buildSessionFactory(Configuration.java:1218)
at org.hibernate.ejb.Ejb3Configuration.buildEntityManagerFactory(Ejb3Configuration.java:691)
I could root it down to a NamedQuery in one of my Entites; when commenting it out, the creation went through fine. The Query definition looked like this:
@NamedQuery(
name = "User.find",
query = "SELECT user FROM User user WHERE user.id =: id"
)
We use cookies on our website to give you the most relevant experience by remembering your preferences and repeat visits. By clicking “Accept All”, you consent to the use of ALL the cookies. However, you may visit "Cookie Settings" to provide a controlled consent.
This website uses cookies to improve your experience while you navigate through the website. Out of these, the cookies that are categorized as necessary are stored on your browser as they are essential for the working of basic functionalities of the website. We also use third-party cookies that help us analyze and understand how you use this website. These cookies will be stored in your browser only with your consent. You also have the option to opt-out of these cookies. But opting out of some of these cookies may affect your browsing experience.
Necessary cookies are absolutely essential for the website to function properly. These cookies ensure basic functionalities and security features of the website, anonymously.
Cookie
Dauer
Beschreibung
cookielawinfo-checkbox-analytics
11 months
This cookie is set by GDPR Cookie Consent plugin. The cookie is used to store the user consent for the cookies in the category "Analytics".
cookielawinfo-checkbox-functional
11 months
The cookie is set by GDPR cookie consent to record the user consent for the cookies in the category "Functional".
cookielawinfo-checkbox-necessary
11 months
This cookie is set by GDPR Cookie Consent plugin. The cookies is used to store the user consent for the cookies in the category "Necessary".
cookielawinfo-checkbox-others
11 months
This cookie is set by GDPR Cookie Consent plugin. The cookie is used to store the user consent for the cookies in the category "Other.
cookielawinfo-checkbox-performance
11 months
This cookie is set by GDPR Cookie Consent plugin. The cookie is used to store the user consent for the cookies in the category "Performance".
viewed_cookie_policy
11 months
The cookie is set by the GDPR Cookie Consent plugin and is used to store whether or not user has consented to the use of cookies. It does not store any personal data.
Functional cookies help to perform certain functionalities like sharing the content of the website on social media platforms, collect feedbacks, and other third-party features.
Performance cookies are used to understand and analyze the key performance indexes of the website which helps in delivering a better user experience for the visitors.
Analytical cookies are used to understand how visitors interact with the website. These cookies help provide information on metrics the number of visitors, bounce rate, traffic source, etc.
Advertisement cookies are used to provide visitors with relevant ads and marketing campaigns. These cookies track visitors across websites and collect information to provide customized ads.