CSS Template(s) erstellen ?

Started by opnsense_user12123, January 09, 2018, 05:52:39 PM

Previous topic - Next topic
January 25, 2018, 10:37:18 AM #15 Last Edit: January 25, 2018, 10:58:59 AM by opnsense_user12123
Also...ich bin schon weitergekommen mit meinem Template. Werde jetzt aber noch auf die final release warten um das css dann abzugleichen bzw die Änderungen in das css file vom neuen release zu übernehmen.

was ich aber dringend benötige wäre eine "github for dummies" Beschreibung!.

Ich verwende github Desktop für Windows und kann dort "pushen" und "pull", also upload und download machen. Benötige ich einen eigenen User oder reicht der OPNsense user ?

Zweite Frage.
Da ja auch schon jemand anderer im englischen Forum ein eigenes template erstellt hat, und hierfür über das makefile irgendetwas erstellen musste, was mir aber überhaupt nicht klar ist.
Ich habe mir dieses neue template bereits angesehen und es in einem "misc" ordner gefunden. kann ich meine files mit dem auch in das misc Verzeichnis uploaden? oder muss ich da vorher noch irgendetwas mit dem makefile machen?

3. Mir wurde in diesen Thread vorab gesagt ich muss das css nicht aus dem sass file erstellen. Im englischen Forum wird dies aber verlangt. Ist dies jetzt unbedingt nötig?

Wie gesagt. ich kenn mich da wirklich zu wenig aus und möchte nichts falsch machen. bitte um Detail "opnsense github for dummies" like!

DANKE!

> Benötige ich einen eigenen User oder reicht der OPNsense user ?
Wofür, der hat doch mit Github gar nichts zu tun?
Was für Github für Dummies brauchst du denn?
"It doesn't work!" is no valid error description! - Don't forget to [applaud] those offering time & brainpower to help you!
Better have some *sense as no(n)sense! ;)

If you're interested in german-speaking business support, feel free to reach out via PM.

January 25, 2018, 02:47:54 PM #17 Last Edit: January 25, 2018, 02:51:27 PM by opnsense_user12123
ok. github user habe ich.


die restlichen fragen habe ich ja oben beschrieben. ich schreib meine fragen jetzt nicht nochmals!

Kein Grund Puls zu bekommen :o Ich habe lediglich den Github User hinterfragt. Deine anderen Themen scheinen beim drüberfliegen ja nichts direkt damit zu tun zu haben, deshalb die Frage.
"It doesn't work!" is no valid error description! - Don't forget to [applaud] those offering time & brainpower to help you!
Better have some *sense as no(n)sense! ;)

If you're interested in german-speaking business support, feel free to reach out via PM.

January 25, 2018, 03:21:24 PM #19 Last Edit: January 25, 2018, 03:30:58 PM by opnsense_user12123
Also nochmals Fragen!

1. Wie kann ich meinen Template Folder hochladen?
2. Wohin kann ich meinen Template Folder hochladen (misc Verzeichnis so wie das andere neue Template "Dark Team" ?
3. Wozu ist das "Makefile" da und wozu benötige ich es und woher bekomme ich es ?
4. Reicht es jetzt einfach mal den Hauptordner (Template Ordner) mit dem modifizierten .css hochzuladen oder muss ich jetzt schon bevor es noch fertig ist das .sass file anpassen und konvertieren bevor ich es hochladen darf ? (wäre wesentlich aufwändiger)
5. Ich verwende Github Desktop für Windows. Gibt es ein besseres Tool für Github das unter Windows läuft?
6. Kann mir jemand bitte eine Anleitung wie eine Art "Tuturial for Dummies" was ich jetzt genau machen muss damit ich mein CSS-Template online stellen kann bzw es zuerst mal auf Github zum testen bereit stellen kann hier erstellen.

Ich bin im Bereich OPNsense und Github totaler Anfänger und möchte nichts falsch machen. Wie gehe ich richtig vor? Ich möchte nichts falsch machen bzw zerstören!Mein Ziel ist es das Template (bei gefallen) als Plugin der Allgemeinheit zur Verfügung zu stellen.

Danke!

Quote from: opnsense_user12123 on January 25, 2018, 03:21:24 PM
Also nochmals Fragen!

1. Wie kann ich meinen Template Folder hochladen?
2. Wohin kann ich meinen Template Folder hochladen (misc Verzeichnis so wie das andere neue Template "Dark Team" ?

git clone URL VON DEINEM REPOSITORY
cd plugins/misc
git checkout -b dein_design
cp -r theme-rebellion dein_design
cd dein_design
# Name im Makefile und der Paketbeschreibung ändern
cd src/opnsense/www/themes
mv theme-rebellion dein_theme

Jetzt kannst du die Dateien bearbeiten und auf eine VM kopieren etc.


Quote from: opnsense_user12123 on January 25, 2018, 03:21:24 PM
3. Wozu ist das "Makefile" da und wozu benötige ich es und woher bekomme ich es ?
Das kannst du aus einem anden Plugin kopieren und anpassen oder selber schreiben.
Die Datei ist dazu da, dass man daraus ein Paket (installierbares Plugin) machen kann und hat auch Kommandos zum Entwickeln.
Quote from: opnsense_user12123 on January 25, 2018, 03:21:24 PM
4. Reicht es jetzt einfach mal den Hauptordner (Template Ordner) mit dem modifizierten .css hochzuladen oder muss ich jetzt schon bevor es noch fertig ist das .sass file anpassen und konvertieren bevor ich es hochladen darf ? (wäre wesentlich aufwändiger)
Wenn es wartbar sein soll (offizielles Plugin), soll es schon mit den SASS-Dateien funktionieren.
Für den Browser funktioniert es auch mit den puren CSS-Dateien (für den internen- und  Heimgebrauch also völlig OK).
Quote from: opnsense_user12123 on January 25, 2018, 03:21:24 PM
5. Ich verwende Github Desktop für Windows. Gibt es ein besseres Tool für Github das unter Windows läuft?
Man kann unter Windows auch über die Powershell arbeiten (ist inkludiert in GitHub für Windows).
Ich nehme mal an, du fragst hier nach einer IDE die CSS, SASS und LESS unterstützt. Ein besserer Editor wie Atom kann hier auch helfen.

Hier ein paar Editoren und IDEs, mit denen man arbeiten kann (ich erhebe keinen Anspruch auf vollständigkeit):

* Aptana Studio (http://www.aptana.com/), Open Source
* Atom (https://atom.io/), Open Source
* Eclipse (https://eclipse.org/ide/), Open Source
* Emacs (https://www.gnu.org/software/emacs/), Open Source
* PHP- und WebStorm (https://www.jetbrains.com/phpstorm/), Kostenpflichtig
* Vim (https://vim.sourceforge.io/), Open Source
* Visual Studio Code (https://code.visualstudio.com/), Open Source

Im Falle von IDEs kann sich diese selbst oder mittels eines Plugins um GIT kümmern. Benutzer von Editoren verwenden Git häufig über die Kommandozeile. Wenn du deinen branch ausgecheckt hast kannst du mit folgendem Befehl deine Änderungen übernehmen:

git add .
git commit -m "Changes you did"


mit "git push" kannst du deine Änderungen veröffentlichen (in deinen Fork schreiben).


Quote from: opnsense_user12123 on January 25, 2018, 03:21:24 PM
6. Kann mir jemand bitte eine Anleitung wie eine Art "Tuturial for Dummies" was ich jetzt genau machen muss damit ich mein CSS-Template online stellen kann bzw es zuerst mal auf Github zum testen bereit stellen kann hier erstellen.

Hoffe, oben ist genug information.

Danke an Fabian dafür. Ich möchte aber auch sagen, dass man diese Informationen einfach selbst zusammentragen kann mit etwas Disziplin und Geduld. Da muss man nicht unbedingt das Forum beauftragen und kommt dann wieder wenn es eine spezifische Frage zu OPNsense auf GitHub gibt. ;)

@Fabian Danke Fabian. Ein wirkliches Howto for dummies. Ich denke eine große Hilfe für jeden der OPNsense unterstützen will.SUPER.  Genau soetwas habe ich gesucht.

@Franco Ich gebe dir Recht, aber ich investiere neben meinem Beruf und Privatleben freiwillig auch viel Zeit und Energie um ein brauchbares Template zu erstellen. Ich bin deshalb über jede Information die mir Stunden oder Tage von Zeitaufwand erspart sehr dankbar.

Quoteich investiere neben meinem Beruf und Privatleben freiwillig auch viel Zeit und Energie

Okay, ich lass das mal so stehen...  8)


Grüsse
Franco

QuotePosted by: opnsense_user12123
ich investiere neben meinem Beruf und Privatleben freiwillig auch viel Zeit und Energie um ein brauchbares Template zu erstellen.

Ich bin deshalb über jede Information die mir Stunden oder Tage von Zeitaufwand erspart sehr dankbar.

Ich denke, dass dir das keiner in Abrede stellen will. Jeder, der etwas beiträgt ist willkommen. Dass man das meist in der Freizeit machen muss ist klar, wenn man nicht beruflich für das Projekt/die Firma tätig ist.

Dennoch, OPNsense ist ein Projekt das weit über Templating hinausgeht. Es ist so umfassend, dass es leider nicht damit getan ist, ein Template per FTP hochzuladen und fertig. Die Entwicklung muss über viele Technologien und viele Contributer hinweg einheitlich gestaltet werden. Das fügt natürlich eine zusätzliche Ebene der Komplexität ein. Es bedeutet auch, dass du dich selbst mit Dingen befassen musst, die du nicht kennst und auch einiges Neues lernen musst. Das ist leider der unbequeme Teil, ohne den es aber nicht geht.

Aber niemand zwingt dich morgen fertig zu sein. Nimm dir ruhig die Zeit und du wirst sehen, es lohnt sich. Schritt für Schritt verstehst du mehr und wenn dein Projekt dann fertig ist, wirst du umso stolzer sein.

Was Franco meint ist, dass dir zwar hier geholfen wird was OPNsense angeht, aber Vieles drumherum musst du auch selbst in Erfahrung bringen. Denn auch wir verbringen unsere Freizeit hier und können kein "Mentor für alles auf Abruf" sein.

January 26, 2018, 06:22:36 AM #25 Last Edit: January 26, 2018, 06:32:45 AM by opnsense_user12123
Ich wollte mit meiner Frage niemanden verärgern. :-(

Ich weiß es auch sehr zu schätzen was Fabian hier geschrieben hat.
Mein Dank gilt auch Franco, der mir und vielen anderen schon sehr oft geholfen hat.

Und wenn sich Fabian schon die Mühe gemacht hat, das hier zusammen zu schreiben, wäre es vielleicht sinnvoll wenn man dieses "Mini Tutorial" auf das Wiki stellt, damit wären zumindest einige Fragen zum Thema Css Template / Plugin  / Github usw beantwortet und dadurch sollte es auch eine Entlastung an Fragen für die Community zu diesem Thema geben.

Sorry nochmals und Danke für die tolle Unterstützung! :-)

P.S Ich werde aktuelle News zu meinem Template in naher Zukunft hier posten. Ich warte halt auf die final Release um es dann auf die Neuerungen anzupassen. Ich bin leider ein Perfektionist und möchte für dieses tolle Produkt das Beste erreichen. LG


January 26, 2018, 10:25:02 AM #26 Last Edit: January 26, 2018, 10:28:24 AM by nasq
Man könnte ins Wiki vielleicht ein paar Eckpfeiler zu Templating und Styling schreiben.
Aber dennoch sehe ich das ein wenig anders. Ich will jetzt nicht klugscheißen, aber ich will dir erklären, wie manche Sachen funktionieren und warum manches so ist, wie es ist.

"Mini-Tutorials" wie du es nennst bilden eben nur einen Mini-Teil ab. Das kann im schlechtesten Fall dafür sorgen, dass ein Beiträger zwar gut anfängt, sich dann aber etwas in Details verrennt oder dann langsam "vom Weg abkommt" - weiß nicht wie ich es genauer beschreiben kann. Manchmal ist es eben nicht genug "nur ein bisschen" zu können/machen.

Allumfassende Tutorials sind mit extremem Aufwand verbunden und es wird dabei viel Wissen "kopiert", das man sich von woanders einfacher holen könnte. Es gibt in der Entwicklung die Begriffe Scope und Concern.
Je nach Kontext bedeuten sie unterschiedliche Sachen, aber im Falle hier verwende ich sie mal synonym. Gemeint ist die Zuständigkeit und wie weit sie reicht. Was also im Scope ist, und was nicht.
Wenn man die Zuständigkeiten nicht trennt und begrenzt ufert es aus.

Der Scope des Wikis, des Forums, der Webseite und des Codes hier ist und bleibt OPNsense. Daher findest du hier auch Infos und Dokumentation zu fast allem (auch der Architektur von Plugins).

Github zB. ist aber ein völlig anderer Scope, ein anderes Thema. Dahinter steckt nicht nur die Webseite, sondern in erster Linie auch die Versionsverwaltung Git. Beides auch Themen, zu denen sich schon ganze Bücher füllen lassen. Wenn jetzt jedes Projekt das mit Git arbeitet noch ein eigenes Git-Tutorial schreiben würde/müsste, kannst du dir den Berg an zusätzlicher Arbeit sicher erahnen ;-)

Wenn ich beim Bäcker um die Ecke ein belegtes Brötchen kaufe frage ich so gesehen den Bäckermeister ja auch nicht, warum man ein Schnitzel klopft. Der packt halt das Schnitzel einfach aufs Brötchen.

Wenn du Hilfe zu Github brauchst, schaust du hier: https://help.github.com/
Wenn du mehr über Git verstehen willst, für das Github nur eine Oberfläche ist, schau hier: https://git-scm.com/doc

Überall findest du auch leicht verständliche Tutorials und Erklärungen. Zuhauf sogar auf deutsch. Aber niemand wird hier einzeln alles zusammenklauben und komprimiert zur Verfügung stellen. Denn selbst das würde irgendwann in ein ganzes Buch münden.

Was fabian geschrieben hat sind kleine Tipps und Anhaltspunkte für dich. Ein Tutorial um es ins Wiki zu schreiben ist es nicht.

Keiner wird dich hier für Fragen köpfen. Auch nicht wenn es mal um ein anderes Thema geht wie externe Entwicklungstools und wie sie mit OPNsense interagieren. Aber man kann sich nun mal nicht hinstellen und sagen: Hier ist mein Fragenkatalog, bitte beantworten und danach ein Tutorial erstellen. Ich glaube so kam es nämlich ein bisschen rüber.

@nasq: Ich mag mich irren aber ich glaube die Frage/Aussage war eher bezogen auf das Mini-Tutorial und den Bezug auf opnSense bzw. die Entwicklung im Github dort, weniger Git/Github im spezifischen. Ich stimme dir sonst komplett zu was Git/Github angeht, das hat im Wiki sicher weniger bis nichts zu suchen. Aber was ich aus der Frage herausgelesen hatte war, dass es Sinn machen würde im Wiki/der Doku ggf. einen Stub oder ein "Mini-Howto" zu schreiben, wie man solche Dinge wie Plugins, Addons o.ä. angeht. Fabians Beitrag war da sehr zielführend, da hier klar war "nehme dir den Clone von Github aus Directory X, kopiere Y und Z in <dein_projekt> und beginne dann zu bauen, benutze ggf. die Makefiles etc. und wenns fertig ist, kannst du den ganzen Kram zusammenpacken und als Pull Request einstellen". Solch ein "How to make a Plugin/Addon/Template" Scaffold/Rohgerüst, wäre sicherlich nicht unpraktisch, denn mir selbst ging es auch schon an mancher Stelle so, dass ich überlegt hatte, ob sich das nicht besser als Paket o.ä. bauen lässt, wenn man allerdings nur schwer/umständlich oder mit großem Aufwand irgendwie alle Informationen zusammen trägt (aus Sicht des Willigen), ist da die Hürde relativ hoch. Gibt es solch ein kleines Howto etc. wie man sich da relativ leicht eine (nennen wir es ) Build Umgebung für Plugin/Addon/Paket/Template zusammenbrauen kann, ist auch die Hürde geringer, dass sich mancher daran versuchen kann/wird, so etwas zu bauen.

Und ich denke das ist dann schon im Scope des Wikis oder der Doku - oder zumindest dann im Scope des Projekts auf Github (wenn man Doku und DevDoku trennen möchte)?

Grüße
Jens
"It doesn't work!" is no valid error description! - Don't forget to [applaud] those offering time & brainpower to help you!
Better have some *sense as no(n)sense! ;)

If you're interested in german-speaking business support, feel free to reach out via PM.

Was die Einstiegshürde betrifft muss ich dir zustimmen. Gerade für Nicht-Entwickler ist sie ziemlich hoch und meiner Meinung nach fehlt dem Wiki ein vielen Fällen einfach ein "How to get started".

Es ist sehr viel Architektur dokumentiert und die Doku ist nun mal auch ziemlich code - und detailzentrisch.
Auch die einzelnen How-Tos lassen leider etwas Tiefe vermissen.

Aber das geht jetzt auch langsam aus dem Scope des Threadtitels.  ;D