init commit
This commit is contained in:
commit
e038aee33f
14
.gitignore
vendored
Normal file
14
.gitignore
vendored
Normal file
@ -0,0 +1,14 @@
|
||||
# Generated files by hugo
|
||||
/public/
|
||||
/resources/_gen/
|
||||
/assets/jsconfig.json
|
||||
hugo_stats.json
|
||||
|
||||
# Executable may be added to repository
|
||||
hugo.exe
|
||||
hugo.darwin
|
||||
hugo.linux
|
||||
|
||||
# Temporary lock file while building
|
||||
/.hugo_build.lock
|
||||
|
6
archetypes/default.md
Normal file
6
archetypes/default.md
Normal file
@ -0,0 +1,6 @@
|
||||
---
|
||||
title: "{{ replace .Name "-" " " | title }}"
|
||||
date: {{ .Date }}
|
||||
draft: true
|
||||
---
|
||||
|
77
config.toml
Normal file
77
config.toml
Normal file
@ -0,0 +1,77 @@
|
||||
baseURL = "/"
|
||||
languageCode = "en-us"
|
||||
title = "UCLA LUG"
|
||||
theme = "ezhil"
|
||||
paginate = 5
|
||||
|
||||
copyright = "© 2022 Copyright"
|
||||
|
||||
pygmentsstyle = "solarized-dark"
|
||||
pygmentscodefences = true
|
||||
pygmentscodefencesguesssyntax = true
|
||||
|
||||
summaryLength = 20
|
||||
|
||||
[permalinks]
|
||||
posts = '/:filename'
|
||||
|
||||
[params]
|
||||
subtitle = "UCLA Linux User Group. Free as in Freedom."
|
||||
logo = "lug-ucla-logo.svg"
|
||||
favicon = "/favicon.ico"
|
||||
disableDisqusTypes = ["page"]
|
||||
featherIconsCDN = true
|
||||
mode = "auto" # "dark", "auto", "light"
|
||||
# customCSS = "css/custom.css" # Custom CSS applied to default styles.
|
||||
# customDarkCSS = "css/custom-dark.css" # Custom styles applied to dark mode css.
|
||||
# customJS = ["https://code.jquery.com/jquery-3.4.1.js", "js/custom1.js"] # Custom JS scripts.
|
||||
|
||||
[[menu.main]]
|
||||
name = "About"
|
||||
url = "/about"
|
||||
weight = 1
|
||||
|
||||
[[menu.main]]
|
||||
name = "Membership"
|
||||
url = "/membership"
|
||||
weight = 2
|
||||
|
||||
[[menu.main]]
|
||||
name = "Articles"
|
||||
url = "/posts"
|
||||
weight = 3
|
||||
|
||||
[[menu.main]]
|
||||
name = "News"
|
||||
url = "/news"
|
||||
weight = 4
|
||||
|
||||
[[menu.main]]
|
||||
name = "Switch to Linux 🐧"
|
||||
url = "/linux"
|
||||
weight = 5
|
||||
|
||||
[[params.social]]
|
||||
name = "Discord"
|
||||
icon = "users"
|
||||
url = "https://discord.com/invite/EmGKCa48R6"
|
||||
|
||||
[[params.social]]
|
||||
name = "Instagram"
|
||||
icon = "instagram"
|
||||
url = "https://instagram.com/lug.ucla"
|
||||
|
||||
[[params.social]]
|
||||
name = "Github"
|
||||
icon = "github"
|
||||
url = "https://github.com/lug-ucla"
|
||||
|
||||
[[params.social]]
|
||||
name = "RSS"
|
||||
icon = "rss"
|
||||
url = "/index.xml"
|
||||
|
||||
|
||||
|
||||
[taxonomies]
|
||||
tag = "tags"
|
25
content/about.md
Normal file
25
content/about.md
Normal file
@ -0,0 +1,25 @@
|
||||
---
|
||||
title: "About"
|
||||
date: 2022-10-03
|
||||
type: "page"
|
||||
---
|
||||
|
||||
**Linux Users Group at UCLA (LUG@UCLA)** goal is to promote computer users freedom with Linux and other Free/Open Source software.
|
||||
|
||||
## Activities
|
||||
|
||||
1. **[Linux installfests](https://linux.ucla.edu/installfest.html)**: on the 2nd Friday of every quarter.
|
||||
1. **Linux Help & Advice**: in office hours and Discord.
|
||||
1. **Tech Talks**.
|
||||
1. **[Edit-a-thons](https://en.wikipedia.org/wiki/Edit-a-thon)**: Bi-quarterly group editing events aimed to contribute to free knowledge on Wikipedia, and other Linux Wikis.
|
||||
1. **Mirrors**: to give students quick access to Linux Distros and Software.
|
||||
|
||||
|
||||
## Visit us
|
||||
|
||||
If you want help installing Linux or just want to eat and hang out, come to installfest! The [LUG Lounge](https://linux.ucla.edu/wiki/index.php/Lounge), at **Boelter Hall 2763**, is a meeting/study/hangout place for the group and facilitates a lot its activities. Feel free to stop by and meet other Linux users (as well as people in ACM and UPE)!
|
||||
|
||||
|
||||
There is a makerspace on the floor below us, where you can go and 3D print things (as well as lasercut them).
|
||||
|
||||
There is also a trash heap outside the first floor (next to the Engineering IV building), where you can sometimes find old monitors/computers and old networking equipment.
|
65
content/constitution.md
Normal file
65
content/constitution.md
Normal file
@ -0,0 +1,65 @@
|
||||
## Article 1. Name
|
||||
|
||||
This organization shall be referred to as the Linux Users Group at the University of California, Los Angeles (LUG@UCLA). The University of California, Los Angeles will hereafter in this document be referred to as "UCLA," or "the University."
|
||||
|
||||
## Article 2. Statement of Purpose
|
||||
|
||||
Linux is both a powerful, freely-available computer operating system and a fascinating sociological event with few parallels, the product of an international programmer community that exists independently of any national boundaries.
|
||||
|
||||
The LUG@UCLA's purpose is to facilitate learning, creativity, and the advancement of computer science. To accomplish this goal, LUG@UCLA promotes the use of the Linux operating system at UCLA by encouraging its use among students, faculty, staff, and University departments; by providing a support network for Linux users; and by building a library of Linux- related materials.
|
||||
|
||||
In attempting to promote the use of Linux, we also encourage programming under this operating system in the form of student-coordinated projects. LUG@UCLA student projects must benefit the UCLA community, the Linux community, or any subsets of the two. All software produced under the auspices of LUG@UCLA shall be distributed under the GNU General Public License, or the GNU Lesser General Public License, as appropriate.
|
||||
|
||||
The group will have any number of projects being worked on at a given time, each with its own methods of organization and responsibility. The sole limitation on such projects is that they fall within the rules and focus of LUG@UCLA.
|
||||
|
||||
## Article 3. Membership
|
||||
|
||||
### Section 1. General Membership
|
||||
|
||||
LUG@UCLA grants membership to anyone who asks for it. There shall be no membership fee or interviews.
|
||||
|
||||
### Section 2. Policy of Non-discrimination
|
||||
|
||||
LUG@UCLA, in accordance with applicable Federal and State law and University Policy, does not discriminate on the basis of race, color, national origin, religion, sex, disability, age, medical condition, ancestry, marital status, citizenship, sexual orientation, or status as a veteran of the Armed Forces.
|
||||
|
||||
LUG@UCLA also prohibits sexual harassment. This non-discrimination policy covers organization membership, access to organization programs and activities, and the general treatment of members in the organization.
|
||||
|
||||
## Article 4. Offices and Elections
|
||||
|
||||
LUG@UCLA shall operate on a collaborative style of leadership, employing one President, three Vice-Presidents, and one Treasurer. LUG@UCLA shall elect officers once per academic year or as necessary. Only members currently enrolled as UCLA undergraduate and graduate students are eligible to hold office. All members of the group are allowed to vote in elections of the LUG@UCLA.
|
||||
|
||||
We will use the approval voting system. Voters select which candidates they approve of (they can select multiple), and the candidate with the most approvals wins.
|
||||
|
||||
Ties will be broken by a game of SuperTuxKart.
|
||||
|
||||
### President
|
||||
|
||||
This individual is the official liaison to the University, handles all school administrative issues, and is responsible for the group, its regular LUG or Officer meetings, dealing with other clubs, giving direction on LUG activity projects, and the delegation of tasks to be carried out on behalf of the LUG. This individual is one of the 3 signatories at club registration time.
|
||||
|
||||
### Vice President / External
|
||||
|
||||
This officer handles corporate relations, letters of thanks, company visits, guest speakers, room reservations, and arranging for a food sponsor at Installfests, etc. This individual is one of the 3 signatories at club registration time.
|
||||
|
||||
### Vice President / Marketing
|
||||
|
||||
The Marketing Director is responsible for the general improvement of the groups's reputation and profile through advertisement and other means, organizing materials & club T-shirts for quarterly events & resource fairs, directing publicity for the LUG, and growing LUG identity and spirit.
|
||||
|
||||
### Vice President / Internal
|
||||
|
||||
Internally, this person is responsible for the System Admin in the Lug lounge, general hardware upkeep and maintenance of the Lounge and its appearance, and is general ombudsman.
|
||||
|
||||
### Treasurer
|
||||
|
||||
The treasurer transfers LUG student club account funds and clears reimbursements. This person handles any financial matters, including making financial records available to authorized University officials upon request. This individual is one of the 3 signatories at club registration time. Leadership will act analogous to package maintainers in the open-source world. Anyone in the club is free to submit “patches” to the club. Officers should be involved in any meaningful changes to the club, but should not have absolute authority on patches to the club.
|
||||
|
||||
## Article 5. Meetings
|
||||
|
||||
LUG@UCLA shall hold general meetings at least once a quarter. The meetings shall be open to the public—membership is not a requisite to attend.
|
||||
|
||||
## Article 6. Amendments to the Constitution
|
||||
|
||||
This constitution may be amended by a two-thirds vote of the Membership at a General Meeting or a Special Meeting called for the purpose of voting to amend the constitution.
|
||||
|
||||
## Article 7. Provision to Make Financial Records Available
|
||||
|
||||
Financial records can be made available to University Officials upon request. Said requests can be submitted electronically via email and must provide a detailed description of the type of records requested.
|
11
content/description.md
Normal file
11
content/description.md
Normal file
@ -0,0 +1,11 @@
|
||||
**Please give a brief, but detailed summary of your organization. Be sure to include any history of the group, a mission statement and a brief account of the student population that the organization represent.**
|
||||
|
||||
The Linux Users Group (LUG) facilitates learning and advancement of computer science and free software by promoting the use of the open source GNU/Linux operating system and providing a support network for Linux users. There is no barrier to becoming a member; consequently, the LUG consists of students, non-students, inexperienced, and experienced alike. The LUG has been a group at UCLA for over 17 years, during which time it has helped expose free software to many people.
|
||||
|
||||
**Please explain the benefit students may derive from your organization. Include how your group stimulates discussion, benefits education, or provides enrichment of any kind.**
|
||||
|
||||
The LUG maintains a Linux computer lab and servers that host various digital services, which people can use to help familiarize themselves with Linux and other standardized technologies. The LUG is a constant source of Linux assistance to anybody that is in need. The LUG holds talks and presentations introducing various topics in computer science. Sometimes, group members engage in conversations surrounding the politics and economics of Linux.
|
||||
|
||||
**Please describe the goals of your organization.**
|
||||
|
||||
The goals of the LUG at UCLA parallels the goals of the thousands of other LUGs around the globe: to provide support and/or education for Linux users, both inexperienced and experienced. LUG at UCLA, being a university LUG, has secondary goals that are more student-oriented: to help with Linux-related coursework.
|
22
content/directory.md
Normal file
22
content/directory.md
Normal file
@ -0,0 +1,22 @@
|
||||
---
|
||||
title: Directory
|
||||
---
|
||||
|
||||
Here's a list of member-run websites:
|
||||
|
||||
- [Dylon](https://linux.ucla.edu/dylon)
|
||||
- [Liu](https://linux.ucla.edu/liu)
|
||||
- [Maksym](https://linux.ucla.edu/maksym)
|
||||
- [Ramsey](https://linux.ucla.edu/ramsey)
|
||||
- [Zeke](https://linux.ucla.edu/zeke)
|
||||
- [Mstfelg](https://linux.ucla.edu/mstfelg)
|
||||
- [Jshiffer](https://linux.ucla.edu/jshiffer)
|
||||
- [IDKYTM](https://linux.ucla.edu/idkytm.html)
|
||||
- [Holy Hell!](https://linux.ucla.edu/holyhell.html)
|
||||
- [Crafting for Cancer](https://linux.ucla.edu/craftingforcancer)
|
||||
- [Installfests](https://linux.ucla.edu/installfest.html)
|
||||
|
||||
Here's a list of test websites:
|
||||
|
||||
- [Arch User](https://linux.ucla.edu/archuser)
|
||||
- [Alpine](https://linux.ucla.edu/alpine/index.html)
|
15
content/eduroam.md
Normal file
15
content/eduroam.md
Normal file
@ -0,0 +1,15 @@
|
||||
Connecting to the eduroam WiFi network (on the UCLA campus) is easy with Linux. eduroam is available almost everywhere on campus, so this is probably the most convenient WiFi network.
|
||||
|
||||
## Using NetworkManager
|
||||
|
||||
Connect to the *eduroam* network using the following Wireless Security settings:
|
||||
|
||||
| Security | WPA & WPA2 Enterprise |
|
||||
| -------------------- | --------------------- |
|
||||
| Authentication | Protected EAP (PEAP) |
|
||||
| PEAP version | Automatic |
|
||||
| Inner authentication | MSCHAPv2 |
|
||||
| Username | your UCLA username |
|
||||
| Password | your UCLA password |
|
||||
|
||||
For other networks (like UCLA_SECURE_RES), going to the following website: http://nmcheck.gnome.org/ should bring up the "Accept terms and conditions" page.
|
41
content/emails.md
Normal file
41
content/emails.md
Normal file
@ -0,0 +1,41 @@
|
||||
**IMPORTANT: PLEASE CHOOSE A STRONG PASSWORD FOR YOUR EMAIL ACCOUNT**
|
||||
|
||||
[![img](https://linux.ucla.edu/wiki/images/thumb/3/34/Image.png/300px-Image.png)](https://linux.ucla.edu/wiki/index.php/File:Image.png)
|
||||
|
||||
Some hacking attempts on our email server
|
||||
|
||||
**WE GET SEVERAL BRUTE FORCE ATTEMPTS EVERY DAY. IF THE HACKERS GET IN TO YOUR EMAIL ACCOUNT THEY WILL SEND SPAM AND THE CS DEPARTMENT WILL GET MAD AT US.** **Please use a secure password, otherwise we might have to restrict access to only people on the UCLA VPN.**
|
||||
|
||||
## Logging in
|
||||
|
||||
I am using the following settings with Thunderbird to get in. I haven't tried it with another email client but you are welcome to.
|
||||
|
||||
SMTP:
|
||||
|
||||
Server Name: mail.linux.ucla.edu
|
||||
|
||||
Port: 587
|
||||
|
||||
[![img](https://linux.ucla.edu/wiki/images/thumb/9/9b/Hackerman.png/300px-Hackerman.png)](https://linux.ucla.edu/wiki/index.php/File:Hackerman.png)
|
||||
|
||||
Look at all the hackers getting banned for too many failed login attempts!
|
||||
|
||||
Authentication method: Normal password
|
||||
|
||||
Connection security: STARTTLS
|
||||
|
||||
IMAP:
|
||||
|
||||
Server Name: mail.linux.ucla.edu
|
||||
|
||||
Port: 993
|
||||
|
||||
Authentication method: Normal Password
|
||||
|
||||
Connection security: SSL/TLS
|
||||
|
||||
## Changing your password
|
||||
|
||||
To change the password, please ssh into your web server and ssh to [your username]@10.0.0.10. Then use passwd to change your password.
|
||||
|
||||
(Yes we know, this is a pretty crappy and inelegant solution, but it's good enough for now)
|
23
content/events/installfest.md
Normal file
23
content/events/installfest.md
Normal file
@ -0,0 +1,23 @@
|
||||
---
|
||||
title: "2022 Fall Installfest"
|
||||
date: 2022-10-03
|
||||
tags: events
|
||||
author: LUG Board
|
||||
---
|
||||
|
||||
(Free Pizza will be provided)!
|
||||
|
||||
Linux Users Group (LUG) at UCLA, invites you to attend the quarterly Linux Installfest! Please fill out the RSVP form.
|
||||
|
||||
* Date: 2022-10-07 Friday
|
||||
* Time: 18:00-21:00
|
||||
* Location: Mong Auditorium in Engineering 6 (Pending Approval)
|
||||
* RSVP: link
|
||||
|
||||
## General Info
|
||||
|
||||
LUG hosts a quarterly installfest on Friday of 2nd week. Attendees will be provided a USB drive and guide to dual booting their computers with Linux (most likely Debian or Arch Linux). However, attendees are welcome to bring their own flash drives and install any distro of their choice as well. Or if attendants do not feel comfortable with the possibility of losing their data, they can set up a Virtual Machine instead.
|
||||
|
||||
## Note on M1 and M2 Macs
|
||||
|
||||
We will not be able to install Linux on M1 and M2 Macs since they use custom Apple cores, however you can still set up a Virtual Machine to run Linux so feel free to come and chat with us! We plan on hosting a seperate event later about installing Asahi Linux, an Arch clone that works on M1 and M2 Macs.
|
29
content/join.md
Normal file
29
content/join.md
Normal file
@ -0,0 +1,29 @@
|
||||
---
|
||||
title: Join
|
||||
---
|
||||
|
||||
|
||||
|
||||
## Rules
|
||||
|
||||
I. Account Rules
|
||||
|
||||
0. No illegal activity
|
||||
|
||||
1. Do not use your account for personal gain. No crypto mining, business, or commercial activity please.
|
||||
|
||||
2. We do not have resource limits on our machines. That being said, please do not abuse this or your access will be revoked.
|
||||
|
||||
II. Lounge Rules
|
||||
|
||||
0. We share the room with ACM and UPE. Please be nice to them.
|
||||
|
||||
1. Don't make a mess! Clean up after yourself.
|
||||
|
||||
2. Do not leave the room unattended. Close the door when you are the last person to leave.
|
||||
|
||||
3. Do not take anything from the lounge that doesn't belong to you (unless you get permission)
|
||||
|
||||
III. Contact
|
||||
|
||||
0. Please send an email to board@linux.ucla.edu if you have questions.
|
202
content/linux.md
Normal file
202
content/linux.md
Normal file
@ -0,0 +1,202 @@
|
||||
So what's this Linux thing all about? What does Linux look like? What software runs on Linux?
|
||||
|
||||
## What is Linux about?
|
||||
|
||||
You can find a good introduction to Linux here, here, and here.
|
||||
|
||||
## What does Linux look like?
|
||||
|
||||
Over the last few years, Linux graphic user interfaces (GUI) have greatly improved. Click to view screenshots of the current desktop environments offered by the Gnome and KDE Project.
|
||||
|
||||
- GNOME Overview
|
||||
- KDE Overview
|
||||
|
||||
## How about software?
|
||||
|
||||
There is a large selection of software for Linux. For quick selection and comparison, see the fossfor.us site.
|
||||
|
||||
According to freshmeat.net (a large index of software for Linux and other Unices), there are currently over 23,000 projects in development. Many of these programs are Open Source and/or free.
|
||||
|
||||
## Getting Linux
|
||||
|
||||
Interested in trying out Linux? Our Getting started page will step you though the process of finding, installing, and tweaking Linux on your computer.
|
||||
|
||||
Installing Linux can sometimes be difficult, but the LUG is here to help!
|
||||
|
||||
1. back up all your data (see page on backups)
|
||||
2. pick a distribution
|
||||
3. decide if you want to dual boot with Windows/Mac or just overwrite everything
|
||||
4. install it:
|
||||
- come to quarterly installfest
|
||||
- stop by the lounge any time and somebody might help
|
||||
- do it yourself!
|
||||
|
||||
## Distros
|
||||
|
||||
Choosing a distribution can be challenging! (Though it actually matters less than you think.)
|
||||
|
||||
Here's a short and incomplete list to help you choose:
|
||||
|
||||
**Debian-based (easiest):**
|
||||
|
||||
1. MX Linux
|
||||
|
||||
2. Mint
|
||||
|
||||
3. Ubuntu
|
||||
|
||||
4. Debian
|
||||
|
||||
5. Pop! OS
|
||||
|
||||
6. Elementary OS
|
||||
|
||||
7. Zorin OS
|
||||
|
||||
8. Kali (for hackers)
|
||||
|
||||
|
||||
**Arch-based (harder):**
|
||||
|
||||
1. EndeavourOS
|
||||
|
||||
2. Manjaro
|
||||
|
||||
3. Garuda
|
||||
|
||||
4. Arch (hard)
|
||||
|
||||
5. Artix
|
||||
|
||||
|
||||
**Red Hat based:**
|
||||
|
||||
1. Fedora
|
||||
|
||||
2. Red Hat (usually used on servers, including the UCLA lnxsrvs)
|
||||
|
||||
3. CentOS (Red Hat but without the tech support)
|
||||
4. OpenSUSE
|
||||
|
||||
**Other:**
|
||||
|
||||
1. Void Linux
|
||||
|
||||
2. Gentoo (hard)
|
||||
|
||||
3. OpenBSD
|
||||
|
||||
4. FreeBSD (we run this on some of our servers)
|
||||
|
||||
|
||||
## Tips for selecting a distro
|
||||
|
||||
If you are a beginner and you don't want to mess with the terminal that much, choose a Debian based one like Mint. Most of the Debian ones just work straight out of the box. There's also tons of support.
|
||||
|
||||
If you have some experience (or you're a beginner who is fine with using the terminal), you can try one of the Arch-based distributions. Installing Arch takes a while, but it's actually not too hard. If you're too lazy to install Arch, choose a distribution with a graphical installer (like EndeavourOS).
|
||||
|
||||
Here's a quiz you can try: https://distrochooser.de/en/
|
||||
|
||||
## Comparing Arch and Debian
|
||||
|
||||
Choose Arch-based distributions if you want a minimal distribution. Choose Debian based distributions if you want stability or ease of use.
|
||||
|
||||
# Desktop Environment
|
||||
|
||||
The **desktop environment** (DE) is what makes up most of the user interface. It may include system panels, docks, window borders, backgrounds, and desktop widgets, among other things. GNU/Linux has a wide variety of DEs avaliable—this page will outline some of the most popular ones.
|
||||
|
||||
It is important to note that no DE is tied to a particular GNU/Linux distribution, or vice versa. Thus, if your distribution of choice is Debian, you may use GNOME, or KDE, or both GNOME and KDE (if you installed both). You can install as many different DEs as you want and try them all!
|
||||
|
||||
The three main desktop environments are XFCE, KDE, and GNOME.
|
||||
|
||||
**XFCE:**
|
||||
|
||||
XFCE is designed to be fast and minimalist
|
||||
|
||||
**GNOME:**
|
||||
|
||||
GNOME is simpler to use, and looks nicer. Of course, this comes at the cost of performance (the difference isn't that much though).
|
||||
|
||||
**KDE:**
|
||||
|
||||
KDE is in between GNOME and XFCE in terms of performance and features. If you are unsure, KDE is a good choice.
|
||||
|
||||
### Tiling windows managers:
|
||||
|
||||
Tiling window managers are a lot more difficult to use, and aren't for beginners. Navigation is usually done using the keyboard as opposed to the mouse.
|
||||
|
||||
## FOSS Software
|
||||
|
||||
Below is an overview of some popular software for Linux. For more software and downloads, check out our Software Downloads section.
|
||||
|
||||
### Web Browser - Firefox, Chromium
|
||||
|
||||
Firefox is a standards-compliant open source web browser developed by the free software community with the cooperation and support of Mozilla Corporation. Firefox provides all essential features of a browser for the modern web, and also a wide variety of add-ons that will undoubtedly satisfy anybody's needs and wants.
|
||||
|
||||
Chromium is the open source web browser project from which Google Chrome draws its source code.
|
||||
|
||||
### Office Suite - LibreOffice
|
||||
|
||||
LibreOffice is a free and open source office suite. It includes key office applications such as a word processor, spreadsheet, presentation manager, and drawing program, all with a user interface and feature set similar to other office suites.
|
||||
|
||||
Sophisticated and flexible, LibreOffice also works transparently with a variety of file formats, including those of Microsoft Office. It primarily supports the Open Document Formats (ODF), such as .odt (documents), .ods (spreadsheets), and .odp (presentations). Here at the LUG, these are the formats we primarily use. Also, many European governments are adopting ODF as the official format for electronic documents. ODF and LibreOffice promotes total interoperability and information integrity.
|
||||
|
||||
### Instant Messaging - Pidgin, Empathy
|
||||
|
||||
Pidgin is a messaging program that supports multiple protocols, including XMPP/Jabber (e.g. Google Talk), IRC, MSN, AIM, ICQ, amd Yahoo!. It features many plugins and has a large community surrounding it.
|
||||
|
||||
Empathy is a messaging program that supports XMPP/Jabber (e.g. Google Talk), SIP, IRC, MSN, AIM, ICQ, and Yahoo!. It supports voice and video calls (only for XMPP and SIP), and has excellent integration with the GNOME desktop.
|
||||
|
||||
### Audio Player - VLC, MPlayer, Clementine
|
||||
|
||||
VLC is famously known as the player that "plays everything." It can handle DVDs, (S)VCDs, Audio CDs, web streams, TV cards and much more. You don't need to keep track of a dozen codec packs you need to have installed. VLC has nearly all codecs built-in. It can even play the file or media if it is damaged!
|
||||
|
||||
- Comparison of audio player software - Wikipedia
|
||||
|
||||
### Movie Player - MPlayer, VLC
|
||||
|
||||
MPlayer is a movie player for Linux. It plays most MPEG, VOB, AVI, VIVO, ASF/WMV, QT/MOV, FLI, NuppelVideo, yuv4mpeg, FILM, RoQ, and OGG files, and some files for RealMedia. You can watch VideoCD, SVCD, DVD, 3ivx, FLI, and even DivX movies too.
|
||||
|
||||
Another big feature of MPlayer is the wide range of supported output drivers. MPlayer supports displaying through a number of hardware MPEG decoder boards such as the DVB and DXR3/Hollywood+ . And what about nice, big anti-aliased shaded subtitles (9 supported types!!!) with european/ISO 8859-1,2 (hungarian, english, czech, etc), cyrillic, korean fonts, and OSD.
|
||||
|
||||
### Graphics Software - GIMP, Inkscape
|
||||
|
||||
GIMP is a professional *raster* image manipulation program, and part of the GNU project. It is suitable for tasks such as photo retouching, image composition, image authoring, or any other task that requires manipulation of raster images.
|
||||
|
||||
Inkscape is a professional *vector* image manipulation/creation program.
|
||||
|
||||
### Programming - Gcc, Eclipse, Qt
|
||||
|
||||
The GNU Compiler Collection contains frontends for C, C++, Objective C, Chill, Fortran, and Java, as well as libraries for these languages. It is a full-featured ANSI C compiler, with support for K&R C as well.
|
||||
|
||||
GCC provides many levels of source code error checking traditionally provided by other tools (such as lint), produces debugging information, and can perform many different optimizations to the resulting object code.
|
||||
|
||||
### Games
|
||||
|
||||
A quick list of popular games that have been ported to Linux:
|
||||
|
||||
- Civilization: Call to Power
|
||||
- Counter Strike
|
||||
- Counter Strike: Source
|
||||
- Descent 3
|
||||
- Doom 1/2/3
|
||||
- Half Life
|
||||
- Half Life: Source
|
||||
- Half Life 2 , HL2: E1, HL2: E2
|
||||
- Homeworld
|
||||
- Kerbal Space Program
|
||||
- Never Winter Nights
|
||||
- Postal 2
|
||||
- Quake 1/2/3 (see ioquake3-based projects, such as OpenArena)
|
||||
- Sid Meier's Alpha Centauri
|
||||
- Simcity 3000 Unlimited
|
||||
- Soldier Of Fortune
|
||||
- Team Fortress 2
|
||||
- Tribes 2
|
||||
- Unreal Tournament
|
||||
|
||||
Here are some fun open source games:
|
||||
|
||||
- SuperTux
|
||||
- SuperTuxKart
|
||||
- Xonotic
|
36
content/lug-ucla-logo.svg
Normal file
36
content/lug-ucla-logo.svg
Normal file
@ -0,0 +1,36 @@
|
||||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<!-- Created with Inkscape (http://www.inkscape.org/) -->
|
||||
<svg xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:cc="http://creativecommons.org/ns#" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:svg="http://www.w3.org/2000/svg" xmlns="http://www.w3.org/2000/svg" xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd" xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" width="260.60037" height="178.36432" viewBox="0 0 260.60037 178.36432" id="svg2" version="1.1" inkscape:version="0.48.4 r9939" sodipodi:docname="color.svg">
|
||||
<defs id="defs4"/>
|
||||
<sodipodi:namedview id="base" pagecolor="#ffffff" bordercolor="#666666" borderopacity="1.0" inkscape:pageopacity="0.0" inkscape:pageshadow="2" inkscape:zoom="1.728" inkscape:cx="111.55166" inkscape:cy="79.556749" inkscape:document-units="px" inkscape:current-layer="text2990" showgrid="false" showguides="true" inkscape:guide-bbox="true" fit-margin-top="0" fit-margin-left="0" fit-margin-right="0" fit-margin-bottom="0" inkscape:window-width="1366" inkscape:window-height="741" inkscape:window-x="0" inkscape:window-y="-5" inkscape:window-maximized="1">
|
||||
<inkscape:grid type="xygrid" id="grid3046" empspacing="5" visible="true" enabled="true" snapvisiblegridlinesonly="true" originx="-54.142838px" originy="-833.75736px"/>
|
||||
</sodipodi:namedview>
|
||||
<metadata id="metadata7">
|
||||
<rdf:RDF>
|
||||
<cc:Work rdf:about="">
|
||||
<dc:format>image/svg+xml</dc:format>
|
||||
<dc:type rdf:resource="http://purl.org/dc/dcmitype/StillImage"/>
|
||||
<dc:title/>
|
||||
</cc:Work>
|
||||
</rdf:RDF>
|
||||
</metadata>
|
||||
<g inkscape:label="Layer 1" inkscape:groupmode="layer" id="layer1" transform="translate(-54.142838,-40.240506)">
|
||||
<g id="g3019" transform="matrix(5.8213333,0,0,5.8213333,-1093.4914,-1265.1383)">
|
||||
<g style="font-size:40px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#536895;fill-opacity:1;stroke:none;font-family:Serif;-inkscape-font-specification:Serif" id="text2985">
|
||||
<path d="m 201.0491,248.70871 c -2.60417,0 -3.90625,-1.30208 -3.90625,-3.90625 l 0,-20.56194 5.85938,0 0,19.53125 15.625,0 0,4.93694 -17.57813,0" style="fill:#536895;fill-opacity:1;font-family:Monkirta Pursuit NC;-inkscape-font-specification:Monkirta Pursuit NC" id="path3049" inkscape:connector-curvature="0" sodipodi:nodetypes="cscccccc"/>
|
||||
</g>
|
||||
<path sodipodi:nodetypes="ccccccssscc" inkscape:connector-curvature="0" id="path3055" style="font-size:28.46161461px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#ffb300;fill-opacity:1;stroke:none;font-family:Monkirta Pursuit NC;-inkscape-font-specification:Monkirta Pursuit NC" d="m 208.22721,225.9924 0,13.09067 6.94864,0 0,-13.09067 4.16918,0 0,13.96676 c -2e-5,1.85297 -0.9265,2.77946 -2.77946,2.77946 l -9.72809,0 c -1.85297,0 -2.77945,-0.92649 -2.77945,-2.77946 l 0,-13.96676 4.16918,0"/>
|
||||
<g style="font-size:5.79042149px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;line-height:125%;letter-spacing:2.50120091px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Monkirta Pursuit NC;-inkscape-font-specification:Monkirta Pursuit NC" id="text2990">
|
||||
<path d="m 200.97408,249.79106 c 0.56546,0 0.8482,0.28274 0.8482,0.8482 l 0,4.24103 -1.2723,0 0,-1.69641 -2.12052,0 0,1.69641 -1.27231,0 0,-4.24103 c 0,-0.56546 0.28274,-0.8482 0.84821,-0.8482 l 2.96872,0 m -2.54462,0.8482 0,1.69642 2.12052,0 0,-1.69642 -2.12052,0" style="font-size:8.68563175px;fill:#ffb300;fill-opacity:1" id="path3540" inkscape:connector-curvature="0"/>
|
||||
<path d="m 209.83683,249.79106 0,0.8482 -1.69642,0 0,4.24103 -1.27231,0 0,-4.24103 -1.69641,0 0,-0.8482 4.66514,0" style="font-size:8.68563175px;fill:#ffb300;fill-opacity:1" id="path3542" inkscape:connector-curvature="0"/>
|
||||
<path d="m 214.45854,249.76985 0,4.26224 2.12052,0 0,-4.26224 1.27231,0 0,4.26224 c -1e-5,0.56547 -0.28274,0.8482 -0.84821,0.8482 l -2.96872,0 c -0.56547,0 -0.84821,-0.28273 -0.84821,-0.8482 l 0,-4.26224 1.27231,0" style="font-size:8.68563175px;fill:#536895;fill-opacity:1" id="path3544" inkscape:connector-curvature="0"/>
|
||||
<path d="m 225.86591,254.03209 0,0.8482 -3.81693,0 c -0.56547,0 -0.8482,-0.28273 -0.8482,-0.8482 l 0,-3.39283 c 0,-0.56546 0.28273,-0.8482 0.8482,-0.8482 l 3.81693,0 0,0.8482 -3.39283,0 0,3.39283 3.39283,0" style="font-size:8.68563175px;fill:#536895;fill-opacity:1" id="path3546" inkscape:connector-curvature="0"/>
|
||||
<path d="m 230.06352,254.88029 c -0.56547,0 -0.8482,-0.28273 -0.8482,-0.8482 l 0,-4.24103 1.27231,0 0,4.24103 3.39282,0 0,0.8482 -3.81693,0" style="font-size:8.68563175px;fill:#536895;fill-opacity:1" id="path3548" inkscape:connector-curvature="0"/>
|
||||
<path d="m 241.04679,249.79106 c 0.56546,0 0.8482,0.28274 0.8482,0.8482 l 0,4.24103 -1.27231,0 0,-1.69641 -2.12051,0 0,1.69641 -1.27231,0 0,-4.24103 c 0,-0.56546 0.28273,-0.8482 0.8482,-0.8482 l 2.96873,0 m -2.54462,0.8482 0,1.69642 2.12051,0 0,-1.69642 -2.12051,0" style="font-size:8.68563175px;fill:#536895;fill-opacity:1" id="path3550" inkscape:connector-curvature="0"/>
|
||||
</g>
|
||||
<g style="font-size:40px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#536895;fill-opacity:1;stroke:none;font-family:Serif;-inkscape-font-specification:Serif" id="text2985-14">
|
||||
<path d="m 236.04991,243.77177 0,-6.5465 -4.93694,0 0,-4.59338 10.79632,0 0,16.07682 -17.57813,0 c -2.60417,0 -3.90625,-1.30208 -3.90625,-3.90625 l 0,-16.65569 c 0,-2.60414 1.30208,-3.90622 3.90625,-3.90625 l 17.57813,0 0,4.59338 -15.625,0 0,14.93787 9.76562,0" style="fill:#536895;fill-opacity:1;font-family:Monkirta Pursuit NC;-inkscape-font-specification:Monkirta Pursuit NC" id="path3052" inkscape:connector-curvature="0" sodipodi:nodetypes="ccccccssscccccc"/>
|
||||
</g>
|
||||
</g>
|
||||
</g>
|
||||
</svg>
|
After Width: | Height: | Size: 5.9 KiB |
19
content/membership.md
Normal file
19
content/membership.md
Normal file
@ -0,0 +1,19 @@
|
||||
## Board
|
||||
|
||||
| Name | Position | Contact |
|
||||
| --------------------- | -------------------- | ----------------------- |
|
||||
| Mustafa Alelg | President | me@mstfelg.com |
|
||||
| David Zheng | Vice President | |
|
||||
| Lawrence Liu | Programming Director | |
|
||||
| James Shiffer | Secretary | jshiffer@linux.ucla.edu |
|
||||
| Professor Paul Eggert | Faculty Advisor | eggert@cs.ucla.edu |
|
||||
|
||||
## Join us
|
||||
|
||||
Becoming a member is easy, and there's no membership fees or interviews! Fill out the [application form ](https://linux.ucla.edu/application.pdf) and email it to us at [board@linux.ucla.edu](mailto:board@linux.ucla.edu) (or hand it to one of the officers in person)
|
||||
|
||||
**Member benefits include:**
|
||||
|
||||
- SSH access
|
||||
- Free web hosting
|
||||
- Free server space
|
8
content/news.md
Normal file
8
content/news.md
Normal file
@ -0,0 +1,8 @@
|
||||
---
|
||||
title: News
|
||||
---
|
||||
|
||||
1. 2022-10-03: Github account for LUG has been created. Website is moved to Hugo.
|
||||
2. 2021-12-11: Come play [SuperTuxKart](https://supertuxkart.net) on our new server (it's literally called "LUG Server")!
|
||||
3. 2021-12-03: Some members now have their own personal websites and emails. If you want your own website and email, please fill out the application form and email it to board@linux.ucla.edu
|
||||
4. 2021-12-01: In order to support free software, we have set up an IRC to Discord bridge. You can now chat on IRC and messages will be relayed to Discord.
|
7
content/ucla-vpn.md
Normal file
7
content/ucla-vpn.md
Normal file
@ -0,0 +1,7 @@
|
||||
The UCLA VPN allows you to access campus resources even when you are away from campus. This is useful for downloading scientific journals, for example.
|
||||
|
||||
Connecting to the UCLA VPN is easy.
|
||||
|
||||
Open NetworkManager and add a Cisco AnyConnect VPN connection.
|
||||
|
||||
Set the gateway to **ssl.vpn.ucla.edu**. The username/password are the same as your school login. Please note that you will need to have your phone ready to do the two-factor authentication.
|
BIN
favicon.ico
Normal file
BIN
favicon.ico
Normal file
Binary file not shown.
After Width: | Height: | Size: 67 KiB |
18
layouts/partials/now.html
Normal file
18
layouts/partials/now.html
Normal file
@ -0,0 +1,18 @@
|
||||
<style>
|
||||
span.magic {
|
||||
font-weight: bold;
|
||||
font-size: larger;
|
||||
color: #e84545;
|
||||
animation: 3s linear 0s infinite normal both running magic;
|
||||
}
|
||||
|
||||
@keyframes magic {
|
||||
0% { color: #e84545; }
|
||||
33% { color: #45e845; }
|
||||
66% {color: #4545e8; }
|
||||
}
|
||||
</style>
|
||||
<ol>
|
||||
<li><a href="/installfest"><span class="magic">10-07: Installfest, Friday 18:00-19:00 in Mong Auditorium in Engineering 6</span></li></a>
|
||||
<li>10-11: General meeting</li>
|
||||
</ol>
|
2
themes/ezhil/archetypes/default.md
Normal file
2
themes/ezhil/archetypes/default.md
Normal file
@ -0,0 +1,2 @@
|
||||
+++
|
||||
+++
|
0
themes/ezhil/layouts/404.html
Normal file
0
themes/ezhil/layouts/404.html
Normal file
32
themes/ezhil/layouts/_default/list.html
Normal file
32
themes/ezhil/layouts/_default/list.html
Normal file
@ -0,0 +1,32 @@
|
||||
<!DOCTYPE html>
|
||||
<html>
|
||||
{{ partial "header.html" . }}
|
||||
|
||||
<body>
|
||||
<div class="container wrapper list">
|
||||
{{ partial "head.html" . }}
|
||||
|
||||
{{ if isset .Data "Term" }}
|
||||
<h1>Entries tagged - "{{ .Data.Term }}"</h1>
|
||||
{{ else }}
|
||||
<h1 class="page-title">All articles</h1>
|
||||
{{ end }}
|
||||
|
||||
{{ with .Content }}{{ . }}{{ end }}
|
||||
|
||||
<ul class="posts">
|
||||
{{- range .Data.Pages -}}
|
||||
{{- if (in (.Site.Params.excludedTypes | default (slice "page")) .Type) -}}
|
||||
{{- else -}}
|
||||
<li class="post">
|
||||
<a href="{{ .RelPermalink }}">{{.Title}}</a> <span class="meta">{{ dateFormat "Jan 2, 2006" .Date }}{{ if .Draft }} <span class="draft-label">DRAFT</span> {{ end }}</span>
|
||||
</li>
|
||||
{{- end -}}
|
||||
{{- end -}}
|
||||
</ul>
|
||||
</div>
|
||||
|
||||
{{ partial "footer.html" . }}
|
||||
</body>
|
||||
|
||||
</html>
|
55
themes/ezhil/layouts/_default/single.html
Normal file
55
themes/ezhil/layouts/_default/single.html
Normal file
@ -0,0 +1,55 @@
|
||||
<!DOCTYPE html>
|
||||
<html>
|
||||
{{ partial "header.html" . }}
|
||||
<body>
|
||||
<div class="container wrapper post">
|
||||
{{ partial "head.html" . }}
|
||||
|
||||
<div class="post-header">
|
||||
<h1 class="title">{{ .Title }}</h1>
|
||||
<div class="meta">Posted at — {{ dateFormat "Jan 2, 2006" .Date }}{{ if .Draft }} <span class="draft-label">DRAFT</span> {{ end }}</div>
|
||||
</div>
|
||||
|
||||
<div class="markdown">
|
||||
{{ .Content }}
|
||||
</div>
|
||||
|
||||
<div class="post-tags">
|
||||
{{ if ne .Type "page" }}
|
||||
{{ if gt .Params.tags 0 }}
|
||||
<nav class="nav tags">
|
||||
<ul class="flat">
|
||||
{{ range .Params.tags }}
|
||||
<li><a href="{{ "/tags/" | relLangURL }}{{ . | urlize }}">{{ . }}</a></li>
|
||||
{{ end }}
|
||||
</ul>
|
||||
</nav>
|
||||
{{ end }}
|
||||
{{ end }}
|
||||
</div>
|
||||
{{- $.Scratch.Set "isDisqus" true -}}
|
||||
|
||||
<!-- Disable if content type is excluded in config -->
|
||||
{{- if and (isset .Params "type") (in .Site.Params.disableDisqusTypes .Params.type) -}}
|
||||
{{- $.Scratch.Set "isDisqus" false -}}
|
||||
{{- end -}}
|
||||
|
||||
<!-- Check if content has flag to enable/disable disqus explicitly -->
|
||||
{{- if and (isset .Params "disqus") (eq .Params.disqus false) -}}
|
||||
{{- $.Scratch.Set "isDisqus" false -}}
|
||||
{{- else if and (isset .Params "disqus") (eq .Params.disqus true) -}}
|
||||
{{- $.Scratch.Set "isDisqus" true -}}
|
||||
{{- end -}}
|
||||
|
||||
<!-- Check if disqus short name is given -->
|
||||
{{ if not .Site.DisqusShortname }}
|
||||
{{- $.Scratch.Set "isDisqus" false -}}
|
||||
{{ end }}
|
||||
|
||||
{{- if eq ($.Scratch.Get "isDisqus") true -}}
|
||||
{{- partial "disqus.html" . -}}
|
||||
{{- end -}}
|
||||
</div>
|
||||
{{ partial "footer.html" . }}
|
||||
</body>
|
||||
</html>
|
32
themes/ezhil/layouts/_default/terms.html
Normal file
32
themes/ezhil/layouts/_default/terms.html
Normal file
@ -0,0 +1,32 @@
|
||||
<!DOCTYPE html>
|
||||
<html>
|
||||
{{ partial "header.html" . }}
|
||||
|
||||
<body>
|
||||
<div class="container wrapper tags">
|
||||
{{ partial "head.html" . }}
|
||||
|
||||
<h1 class="page-title">{{ .Title }}</h1>
|
||||
|
||||
{{ with .Content }}{{ . }}{{ end }}
|
||||
|
||||
{{ $biggest := 1 }}
|
||||
{{ $smallest := 1 }}
|
||||
{{ $max := 3 }}
|
||||
{{ $min := 1 }}
|
||||
{{ $size := $min }}
|
||||
|
||||
{{ $data := .Data }}
|
||||
<div class="tag-cloud">
|
||||
{{ range $key, $value := .Data.Terms.ByCount }}
|
||||
{{ $size := (add (mul (div $value.Count $biggest) (sub $max $min)) $min) }}
|
||||
{{ $size := (cond (eq $biggest $smallest) $min $size) }}
|
||||
<a style="font-size: {{ $size }}rem;" href="{{ $.Site.LanguagePrefix | absURL }}{{ $data.Plural }}/{{ $value.Name | urlize }}/">{{ $value.Name }}</a>
|
||||
{{ end }}
|
||||
</div>
|
||||
</div>
|
||||
|
||||
{{ partial "footer.html" . }}
|
||||
</body>
|
||||
|
||||
</html>
|
42
themes/ezhil/layouts/index.html
Normal file
42
themes/ezhil/layouts/index.html
Normal file
@ -0,0 +1,42 @@
|
||||
<!DOCTYPE html>
|
||||
<html>
|
||||
{{ partial "header.html" . }}
|
||||
<body>
|
||||
<div class="container wrapper">
|
||||
{{ partial "head.html" . }}
|
||||
|
||||
<div class="recent-posts section">
|
||||
<h2 class="section-header">
|
||||
Upcoming events
|
||||
</h2>
|
||||
{{ partial "now.html" . }}
|
||||
See <a href="/tags/events/">past events</a>.
|
||||
</div>
|
||||
|
||||
<div class="recent-posts section">
|
||||
<h2 class="section-header">
|
||||
Recent posts
|
||||
</h2>
|
||||
<div class="posts">
|
||||
{{ $pages := where .Site.RegularPages "Type" "in" .Site.Params.mainSections }}
|
||||
{{ $paginator := .Paginate (where $pages "Params.hidden" "ne" true) }}
|
||||
{{ range $paginator.Pages }}
|
||||
<div class="post">
|
||||
<div class="meta">{{ dateFormat "Jan 2, 2006" .Date }}{{ if .Draft }} <span class="draft-label">DRAFT</span> {{ end }}</div>
|
||||
<a class="title" href="{{ .RelPermalink }}">{{.Title}}</a> —
|
||||
<span class="description">
|
||||
{{ if isset .Params "description" }}
|
||||
{{ .Description }}
|
||||
{{ else }}
|
||||
{{ .Summary }}…
|
||||
{{ end }}
|
||||
</span>
|
||||
</div>
|
||||
{{ end }}
|
||||
{{ template "partials/paginator.html" . }}
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
{{ partial "footer.html" . }}
|
||||
</body>
|
||||
</html>
|
17
themes/ezhil/layouts/partials/disqus.html
Normal file
17
themes/ezhil/layouts/partials/disqus.html
Normal file
@ -0,0 +1,17 @@
|
||||
<div id="disqus_thread"></div>
|
||||
<script type="text/javascript">
|
||||
(function () {
|
||||
// Don't ever inject Disqus on localhost--it creates unwanted
|
||||
// discussions from 'localhost:1313' on your Disqus account...
|
||||
if (window.location.hostname == "localhost")
|
||||
return;
|
||||
|
||||
var dsq = document.createElement('script'); dsq.type = 'text/javascript'; dsq.async = true;
|
||||
var disqus_shortname = '{{ .Site.DisqusShortname }}';
|
||||
dsq.src = '//' + disqus_shortname + '.disqus.com/embed.js';
|
||||
(document.getElementsByTagName('head')[0] || document.getElementsByTagName('body')[0]).appendChild(dsq);
|
||||
})();
|
||||
</script>
|
||||
<noscript>Please enable JavaScript to view the <a href="http://disqus.com/?ref_noscript">comments powered by
|
||||
Disqus.</a></noscript>
|
||||
<a href="http://disqus.com/" class="dsq-brlink">comments powered by <span class="logo-disqus">Disqus</span></a>
|
12
themes/ezhil/layouts/partials/footer.html
Normal file
12
themes/ezhil/layouts/partials/footer.html
Normal file
@ -0,0 +1,12 @@
|
||||
<div class="footer wrapper">
|
||||
<nav class="nav">
|
||||
<div>{{ with .Site.Copyright }} {{ . }} | {{ end }} <a href="https://github.com/vividvilla/ezhil">Ezhil theme</a> | Built with <a href="https://gohugo.io">Hugo</a></div>
|
||||
</nav>
|
||||
</div>
|
||||
|
||||
{{ if not .Site.IsServer }}
|
||||
{{ template "_internal/google_analytics_async.html" . }}
|
||||
{{ end }}
|
||||
{{- with .Site.Params.Social -}}
|
||||
<script>feather.replace()</script>
|
||||
{{- end -}}
|
26
themes/ezhil/layouts/partials/head.html
Normal file
26
themes/ezhil/layouts/partials/head.html
Normal file
@ -0,0 +1,26 @@
|
||||
<div class="header">
|
||||
<base href="{{ .Site.BaseURL }}">
|
||||
<h1 class="site-title"><a href="{{ .Site.BaseURL }}"><img width=117 height=80 src="{{ .Site.Params.Logo }}"></img></a></h1>
|
||||
<div class="site-description">
|
||||
{{- if isset .Site.Params "subtitle" -}}
|
||||
<h2>{{ .Site.Params.Subtitle | markdownify }}</h2>
|
||||
{{- end -}}
|
||||
<nav class="nav social">
|
||||
<ul class="flat">
|
||||
{{- range $index, $key := .Site.Params.Social -}}
|
||||
<a href="{{ $key.url }}" title="{{ $key.name }}"><i data-feather="{{ $key.icon }}"></i></a>
|
||||
{{- end -}}
|
||||
</ul>
|
||||
</nav>
|
||||
</div>
|
||||
|
||||
<nav class="nav">
|
||||
<ul class="flat">
|
||||
{{ range .Site.Menus.main }}
|
||||
<li>
|
||||
<a href="{{ .URL }}">{{ .Name }}</a>
|
||||
</li>
|
||||
{{ end }}
|
||||
</ul>
|
||||
</nav>
|
||||
</div>
|
52
themes/ezhil/layouts/partials/header.html
Normal file
52
themes/ezhil/layouts/partials/header.html
Normal file
@ -0,0 +1,52 @@
|
||||
<head>
|
||||
<meta charset="utf-8" />
|
||||
<meta http-equiv="X-UA-Compatible" content="IE=edge">
|
||||
{{- $title := ( .Title ) -}}
|
||||
{{- $siteTitle := ( .Site.Title ) -}}
|
||||
{{- if .IsHome -}}
|
||||
<title>{{ $siteTitle }} {{ if isset .Site.Params "subtitle" }}- {{ .Site.Params.Subtitle }}{{ end }} </title>
|
||||
{{- else -}}
|
||||
<title>{{ $title }} - {{ $siteTitle }}</title>
|
||||
{{- end -}}
|
||||
|
||||
{{- if isset .Site.Params "favicon" -}}
|
||||
<link rel="icon" type="image/png" href={{ .Site.Params.favicon }} />
|
||||
{{- end -}}
|
||||
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1">
|
||||
{{ with .OutputFormats.Get "rss" -}}
|
||||
{{ printf `<link rel="%s" type="%s" href="%s" title="%s" />` .Rel .MediaType.Type .Permalink $.Site.Title | safeHTML }}
|
||||
{{ end -}}
|
||||
|
||||
{{- template "_internal/opengraph.html" . -}}
|
||||
{{- template "_internal/twitter_cards.html" . -}}
|
||||
<link href="https://fonts.googleapis.com/css?family=Ubuntu:300,400,300italic,400italic|Raleway:200,300" rel="stylesheet">
|
||||
|
||||
<link rel="stylesheet" type="text/css" media="screen" href="{{ .Site.BaseURL }}css/normalize.css" />
|
||||
<link rel="stylesheet" type="text/css" media="screen" href="{{ .Site.BaseURL }}css/main.css" />
|
||||
{{- if isset .Site.Params "customcss" }}
|
||||
<link rel="stylesheet" type="text/css" href="{{ .Site.BaseURL }}{{ .Site.Params.customCSS }}" />
|
||||
{{ end }}
|
||||
{{- if or (eq .Site.Params.mode "auto") (eq .Site.Params.mode "dark") -}}
|
||||
<link rel="stylesheet" type="text/css" href="{{ .Site.BaseURL }}css/dark.css" {{ if eq .Site.Params.mode "auto" }}media="(prefers-color-scheme: dark)"{{ end }} />
|
||||
{{- if isset .Site.Params "customdarkcss" }}
|
||||
<link rel="stylesheet" type="text/css" href="{{ .Site.BaseURL }}{{ .Site.Params.customDarkCSS }}" {{ if eq .Site.Params.mode "auto" }}media="(prefers-color-scheme: dark)"{{ end }} />
|
||||
{{- end }}
|
||||
{{- end }}
|
||||
|
||||
{{ if and (isset .Site.Params "social") (isset .Site.Params "feathericonscdn") (eq .Site.Params.featherIconsCDN true) -}}
|
||||
<script src="https://cdn.jsdelivr.net/npm/feather-icons/dist/feather.min.js"></script>
|
||||
{{- else if (isset .Site.Params "social") -}}
|
||||
<script src="{{ .Site.BaseURL }}js/feather.min.js"></script>
|
||||
{{ end }}
|
||||
<script src="{{ .Site.BaseURL }}js/main.js"></script>
|
||||
{{- if isset .Site.Params "customjs" -}}
|
||||
{{- range .Site.Params.customJS }}
|
||||
{{- if or (hasPrefix . "http://") (hasPrefix . "https://") }}
|
||||
<script src="{{ . }}"></script>
|
||||
{{- else }}
|
||||
<script src="{{ $.Site.BaseURL }}{{ . }}"></script>
|
||||
{{- end }}
|
||||
{{- end }}
|
||||
{{- end }}
|
||||
</head>
|
15
themes/ezhil/layouts/partials/paginator.html
Normal file
15
themes/ezhil/layouts/partials/paginator.html
Normal file
@ -0,0 +1,15 @@
|
||||
{{ $pag := $.Paginator }}
|
||||
{{ if gt $pag.TotalPages 1 }}
|
||||
<ul class="pagination">
|
||||
<li class="page-item page-prev">
|
||||
{{ if $pag.HasPrev }}
|
||||
<a {{ if $pag.HasPrev }}href="{{ $pag.Prev.URL }}"{{ end }} class="page-link" aria-label="Previous"><span aria-hidden="true">← Prev page</span></a>
|
||||
{{ end }}
|
||||
</li>
|
||||
<li class="page-item page-next">
|
||||
{{ if $pag.HasNext }}
|
||||
<a {{ if $pag.HasNext }}href="{{ $pag.Next.URL }}"{{ end }} class="page-link" aria-label="Next"><span aria-hidden="true">Next page →</span></a>
|
||||
{{ end }}
|
||||
</li>
|
||||
</ul>
|
||||
{{ end }}
|
73
themes/ezhil/static/css/dark.css
Normal file
73
themes/ezhil/static/css/dark.css
Normal file
@ -0,0 +1,73 @@
|
||||
body {
|
||||
color: #ddd;
|
||||
background-color: #000;
|
||||
}
|
||||
|
||||
::-moz-selection {
|
||||
background: #666;
|
||||
text-shadow: none
|
||||
}
|
||||
|
||||
::selection {
|
||||
background: #666;
|
||||
text-shadow: none
|
||||
}
|
||||
|
||||
hr {
|
||||
border-color: #333;
|
||||
}
|
||||
|
||||
blockquote {
|
||||
border-color: #ddd;
|
||||
}
|
||||
|
||||
h1,h2,h3,h4,h5,h6 {
|
||||
color: #ddd;
|
||||
}
|
||||
|
||||
a,a:hover {
|
||||
color: #ff7979;
|
||||
text-decoration: none;
|
||||
}
|
||||
|
||||
.site-description a,
|
||||
.site-description a:hover {
|
||||
color: #ddd;
|
||||
text-decoration: underline;
|
||||
}
|
||||
|
||||
a:hover {
|
||||
opacity: 0.8;
|
||||
}
|
||||
|
||||
.post-tags .tags a {
|
||||
border: 1px solid #ddd;
|
||||
color: #ddd;
|
||||
}
|
||||
|
||||
.site-title a {
|
||||
color: #ddd;
|
||||
text-decoration: none !important;
|
||||
}
|
||||
|
||||
.header nav,
|
||||
.footer {
|
||||
border-color: #333;
|
||||
}
|
||||
|
||||
.highlight {
|
||||
background-color: #333;
|
||||
}
|
||||
|
||||
table th {
|
||||
background-color: #333;
|
||||
}
|
||||
|
||||
table th, table td {
|
||||
padding: 10px 20px;
|
||||
border: 1px solid #666;
|
||||
}
|
||||
|
||||
pre code {
|
||||
display: inline-block
|
||||
}
|
416
themes/ezhil/static/css/main.css
Normal file
416
themes/ezhil/static/css/main.css
Normal file
@ -0,0 +1,416 @@
|
||||
body {
|
||||
font-family: "ubuntu", sans-serif;
|
||||
font-weight: 400;
|
||||
color: #333;
|
||||
line-height: 1.6;
|
||||
font-size: 16px;
|
||||
}
|
||||
|
||||
a, a:hover {
|
||||
color: #a00;
|
||||
text-decoration: none;
|
||||
word-break: break-word;
|
||||
}
|
||||
|
||||
html,button,input,select,textarea {
|
||||
color: #333;
|
||||
}
|
||||
|
||||
::-moz-selection {
|
||||
background: #b3d4fc;
|
||||
text-shadow: none;
|
||||
}
|
||||
|
||||
::selection {
|
||||
background: #b3d4fc;
|
||||
text-shadow: none;
|
||||
}
|
||||
|
||||
hr {
|
||||
display: block;
|
||||
height: 1px;
|
||||
border: 0;
|
||||
border-top: 1px solid #ccc;
|
||||
margin: 1rem 0;
|
||||
padding: 0;
|
||||
}
|
||||
|
||||
img {
|
||||
margin: 10px auto 10px auto;
|
||||
max-width: 100%;
|
||||
display: block;
|
||||
}
|
||||
|
||||
a img {
|
||||
border:none;
|
||||
}
|
||||
|
||||
figure {
|
||||
margin: 0;
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
fieldset {
|
||||
border: 0;
|
||||
margin: 0;
|
||||
padding: 0;
|
||||
}
|
||||
|
||||
textarea {
|
||||
resize: vertical;
|
||||
}
|
||||
|
||||
blockquote {
|
||||
margin-left: 1rem;
|
||||
font-style: italic;
|
||||
font-size: 1.4rem;
|
||||
font-family: Georgia,bitstream charter,serif;
|
||||
border-left: 3px solid;
|
||||
border-color: #a00;
|
||||
padding-left: 20px;
|
||||
}
|
||||
|
||||
blockquote cite {
|
||||
font-size: 70%;
|
||||
opacity: .8;
|
||||
}
|
||||
|
||||
blockquote em {
|
||||
font-weight: 600;
|
||||
}
|
||||
|
||||
a,a:hover {
|
||||
color: #a00;
|
||||
text-decoration: none
|
||||
}
|
||||
|
||||
a:hover {
|
||||
text-decoration: underline
|
||||
}
|
||||
|
||||
h1,h2,h3,h4,h5,h6 {
|
||||
font-family: raleway,sans-serif;
|
||||
line-height: 1.2;
|
||||
color: #333;
|
||||
font-weight: 200;
|
||||
}
|
||||
|
||||
h1 {
|
||||
font-size: 2.75rem;
|
||||
}
|
||||
|
||||
h2 {
|
||||
font-size: 2rem;
|
||||
}
|
||||
|
||||
h3 {
|
||||
font-size: 1.6rem;
|
||||
}
|
||||
|
||||
h4 {
|
||||
font-size: 1.2rem;
|
||||
}
|
||||
|
||||
h5 {
|
||||
font-size: 1rem;
|
||||
}
|
||||
|
||||
h6 {
|
||||
font-size: .9rem;
|
||||
}
|
||||
|
||||
.align-center {
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
.align-left {
|
||||
text-align: left;
|
||||
}
|
||||
|
||||
.align-right {
|
||||
text-align: right;
|
||||
}
|
||||
|
||||
.container {
|
||||
max-width: 800px;
|
||||
}
|
||||
|
||||
ul {
|
||||
padding-left: 15px;
|
||||
}
|
||||
|
||||
ul.flat {
|
||||
margin: 0;
|
||||
padding: 0;
|
||||
}
|
||||
|
||||
ul.flat li {
|
||||
display: inline-block;
|
||||
list-style: none;
|
||||
margin-left: 0;
|
||||
}
|
||||
|
||||
.prevent-collapse {
|
||||
min-height: .1rem
|
||||
}
|
||||
|
||||
.page-title {
|
||||
margin: 0;
|
||||
}
|
||||
|
||||
.smaller {
|
||||
font-size: 70%;
|
||||
}
|
||||
|
||||
ul {
|
||||
list-style: disc inside;
|
||||
}
|
||||
|
||||
.site-title a {
|
||||
color: #333;
|
||||
text-decoration: none !important;
|
||||
}
|
||||
|
||||
.post ul li {
|
||||
margin-bottom: 10px;
|
||||
}
|
||||
|
||||
.post ul li p {
|
||||
display: inline;
|
||||
}
|
||||
|
||||
.highlight pre {
|
||||
margin-bottom: 0;
|
||||
margin-top: 0;
|
||||
padding: 20px;
|
||||
background-color: transparent !important;
|
||||
}
|
||||
|
||||
.highlight {
|
||||
background: 0 0;
|
||||
background-color: #FAFAFA;
|
||||
}
|
||||
|
||||
pre code {
|
||||
display: inline-block;
|
||||
}
|
||||
|
||||
|
||||
.wrapper {
|
||||
max-width: 760px;
|
||||
margin: 0 auto;
|
||||
}
|
||||
|
||||
.container {
|
||||
margin-top: 50px;
|
||||
}
|
||||
|
||||
.header {
|
||||
margin-bottom: 20px;
|
||||
padding-bottom: 20px;
|
||||
}
|
||||
|
||||
.header h1,
|
||||
.header h2 {
|
||||
margin: 0;
|
||||
padding: 0;
|
||||
font-size: 2rem;
|
||||
line-height: 1.3em;
|
||||
}
|
||||
|
||||
.header h2 {
|
||||
font-size: 1.125rem;
|
||||
}
|
||||
|
||||
.header nav {
|
||||
margin-top: 20px;
|
||||
border-top: 1px solid #f4f4f4;
|
||||
}
|
||||
|
||||
.header nav ul,
|
||||
.header nav li {
|
||||
margin: 0;
|
||||
}
|
||||
|
||||
.header nav ul.flat {
|
||||
padding: 0;
|
||||
}
|
||||
|
||||
.header nav ul.flat li {
|
||||
display: inline-block;
|
||||
list-style: none;
|
||||
margin-left: 0;
|
||||
margin-right: 10px;
|
||||
margin-top: 10px;
|
||||
text-transform: capitalize;
|
||||
}
|
||||
|
||||
.header .site-description {
|
||||
display: flex;
|
||||
justify-content: space-between;
|
||||
}
|
||||
|
||||
.header .site-description nav {
|
||||
margin: 0;
|
||||
padding: 0;
|
||||
border: none;
|
||||
min-width: 50px;
|
||||
margin-left: 15px;
|
||||
}
|
||||
|
||||
.header .site-description nav ul svg {
|
||||
max-height: 15px;
|
||||
}
|
||||
|
||||
.section .section-header {
|
||||
font-size: 0.75rem;
|
||||
font-weight: 600;
|
||||
text-transform: uppercase;
|
||||
color: #999;
|
||||
margin-bottom: 20px;
|
||||
letter-spacing: 1px;
|
||||
}
|
||||
|
||||
.recent-posts .posts .post {
|
||||
margin-bottom: 30px;
|
||||
}
|
||||
|
||||
.recent-posts .posts .post .meta,
|
||||
.post .post-header .meta,
|
||||
.list .posts .post .meta {
|
||||
font-size: 0.725rem;
|
||||
color: #999;
|
||||
margin-bottom: 4px;
|
||||
}
|
||||
|
||||
.post .post-header {
|
||||
margin-bottom: 30px;
|
||||
}
|
||||
|
||||
.post .post-header .title {
|
||||
margin: 0;
|
||||
}
|
||||
|
||||
.post-tags a {
|
||||
margin-right: 5px;
|
||||
}
|
||||
|
||||
.post .post-header .meta {
|
||||
padding-left: 5px;
|
||||
margin-top: 10px;
|
||||
}
|
||||
|
||||
.post .draft-label {
|
||||
color: #a00;
|
||||
text-decoration: none;
|
||||
padding: 2px 4px;
|
||||
border-radius: 4px;
|
||||
margin-left: 6px;
|
||||
background-color: #f9f2f4;
|
||||
}
|
||||
|
||||
.post-tags .tags li {
|
||||
margin-bottom: 0;
|
||||
margin-top: 20px;
|
||||
}
|
||||
|
||||
.post-tags .tags a {
|
||||
display: inline-block;
|
||||
border: 1px solid #a00;
|
||||
border-radius: 4px;
|
||||
padding: 0px 6px;
|
||||
color: #a00;
|
||||
line-height: 20px;
|
||||
font-size: 12px;
|
||||
text-decoration: none;
|
||||
margin: 0 1px;
|
||||
}
|
||||
|
||||
.list .posts .post .meta {
|
||||
margin-bottom: 0;
|
||||
margin-left: 5px;
|
||||
}
|
||||
|
||||
.footer {
|
||||
text-align: right;
|
||||
font-size: 0.75em;
|
||||
color: #999;
|
||||
border-top: 1px solid #f4f4f4;
|
||||
padding: 20px 0;
|
||||
margin-top: 40px;
|
||||
}
|
||||
|
||||
.page-title {
|
||||
margin-bottom: 0;
|
||||
}
|
||||
|
||||
.tag-cloud {
|
||||
margin-top: 20px;
|
||||
}
|
||||
|
||||
.tag-cloud a {
|
||||
margin-right: 15px;
|
||||
}
|
||||
|
||||
.pagination {
|
||||
margin: 0;
|
||||
padding: 0;
|
||||
text-align: left;
|
||||
display: flex;
|
||||
justify-content: space-between;
|
||||
}
|
||||
|
||||
.pagination li {
|
||||
list-style: none;
|
||||
display: inline-block;
|
||||
margin: 0;
|
||||
padding: 0;
|
||||
}
|
||||
|
||||
.pagination .page-prev {
|
||||
margin-right: 20px;
|
||||
padding-right: 20px;
|
||||
}
|
||||
|
||||
.pagination .page-item.page-prev {
|
||||
text-align: left;
|
||||
}
|
||||
|
||||
.pagination .page-item.page-next {
|
||||
text-align: right;
|
||||
}
|
||||
|
||||
table th {
|
||||
background-color: #f4f4f4;
|
||||
}
|
||||
|
||||
table th, table td {
|
||||
padding: 10px 20px;
|
||||
border: 1px solid #dddddd;
|
||||
}
|
||||
|
||||
@media (max-width: 767px) {
|
||||
body {
|
||||
padding: 20px;
|
||||
}
|
||||
|
||||
h1 {
|
||||
font-size: 1.8rem;
|
||||
}
|
||||
|
||||
h2 {
|
||||
font-size: 1.6rem;
|
||||
}
|
||||
|
||||
h3 {
|
||||
font-size: 1.2rem;
|
||||
}
|
||||
|
||||
h4 {
|
||||
font-size: 1rem;
|
||||
}
|
||||
|
||||
.container {
|
||||
margin-top: 10px;
|
||||
}
|
||||
}
|
1
themes/ezhil/static/css/normalize.css
vendored
Normal file
1
themes/ezhil/static/css/normalize.css
vendored
Normal file
@ -0,0 +1 @@
|
||||
/*! normalize.css v3.0.3 | MIT License | github.com/necolas/normalize.css */img,legend{border:0}legend,td,th{padding:0}html{font-family:serif;-ms-text-size-adjust:100%;-webkit-text-size-adjust:100%}body{margin:0}article,aside,details,figcaption,figure,footer,header,hgroup,main,menu,nav,section,summary{display:block}audio,canvas,progress,video{display:inline-block;vertical-align:baseline}audio:not([controls]){display:none;height:0}[hidden],template{display:none}a{background-color:transparent}a:active,a:hover{outline:0}abbr[title]{border-bottom:1px dotted}b,optgroup,strong{font-weight:700}dfn{font-style:italic}h1{font-size:2em;margin:.67em 0}mark{background:#ff0;color:#000}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sup{top:-.5em}sub{bottom:-.25em}svg:not(:root){overflow:hidden}figure{margin:1em 40px}hr{box-sizing:content-box;height:0}pre,textarea{overflow:auto}code,kbd,pre,samp{font-family:monospace,monospace;font-size:1em}button,input,optgroup,select,textarea{color:inherit;font:inherit;margin:0}button{overflow:visible}button,select{text-transform:none}button,html input[type=button],input[type=reset],input[type=submit]{-webkit-appearance:button;cursor:pointer}button[disabled],html input[disabled]{cursor:default}button::-moz-focus-inner,input::-moz-focus-inner{border:0;padding:0}input{line-height:normal}input[type=checkbox],input[type=radio]{box-sizing:border-box;padding:0}input[type=number]::-webkit-inner-spin-button,input[type=number]::-webkit-outer-spin-button{height:auto}input[type=search]{-webkit-appearance:textfield;box-sizing:content-box}input[type=search]::-webkit-search-cancel-button,input[type=search]::-webkit-search-decoration{-webkit-appearance:none}fieldset{border:1px solid silver;margin:0 2px;padding:.35em .625em .75em}table{border-collapse:collapse;border-spacing:0}
|
13
themes/ezhil/static/js/feather.min.js
vendored
Normal file
13
themes/ezhil/static/js/feather.min.js
vendored
Normal file
File diff suppressed because one or more lines are too long
0
themes/ezhil/static/js/main.js
Normal file
0
themes/ezhil/static/js/main.js
Normal file
Loading…
Reference in New Issue
Block a user